<?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>210673</bug_id>
          
          <creation_ts>2020-04-17 14:33:06 -0700</creation_ts>
          <short_desc>Horizontal overflow overlay scrollbar is misplaced in RTL</short_desc>
          <delta_ts>2020-04-21 11:17:28 -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>Compositing</component>
          <version>Safari Technology Preview</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>koivisto</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1642844</commentid>
    <comment_count>0</comment_count>
      <attachid>396801</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-17 14:33:06 -0700</bug_when>
    <thetext>Created attachment 396801
See the third box. turn layer borders on

We put the horizontal scrollbar in the wrong place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642845</commentid>
    <comment_count>1</comment_count>
      <attachid>396802</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-17 14:33:32 -0700</bug_when>
    <thetext>Created attachment 396802
Screenshot</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1642847</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-04-17 14:33:46 -0700</bug_when>
    <thetext>&lt;rdar://problem/61950751&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643777</commentid>
    <comment_count>3</comment_count>
      <attachid>397055</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-20 22:39:13 -0700</bug_when>
    <thetext>Created attachment 397055
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643810</commentid>
    <comment_count>4</comment_count>
      <attachid>397055</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-04-21 02:16:16 -0700</bug_when>
    <thetext>Comment on attachment 397055
Patch

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

r+ but please consider the comment.

&gt; Source/WebCore/rendering/RenderLayer.cpp:3185
&gt; +    IntRect hBarRect, vBarRect, cornerRect, resizerRect;
&gt; +    getOverflowControlsRects(hBarRect, vBarRect, cornerRect, resizerRect);

I&apos;d much prefer a function that returns a struct over one that requires awkward out parameters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643902</commentid>
    <comment_count>5</comment_count>
      <attachid>397090</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-21 09:32:59 -0700</bug_when>
    <thetext>Created attachment 397090
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643905</commentid>
    <comment_count>6</comment_count>
      <attachid>397055</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2020-04-21 09:42:29 -0700</bug_when>
    <thetext>Comment on attachment 397055
Patch

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

&gt; Source/WebCore/rendering/RenderLayer.cpp:3364
&gt; +    auto cornerRect = [](const IntRect&amp; boundsRect, IntSize cornerSize, bool placeVerticalScrollbarOnTheLeft) {
&gt; +        if (placeVerticalScrollbarOnTheLeft) {
&gt; +            auto bottomLeftCorner = boundsRect.minXMaxYCorner();
&gt; +            return IntRect { { bottomLeftCorner.x(), bottomLeftCorner.y() - cornerSize.height(), }, cornerSize };
&gt; +        }
&gt; +        return IntRect { boundsRect.maxXMaxYCorner() - cornerSize, cornerSize };
&gt; +    };
&gt; +
&gt; +    if (scrollbarsAvoidCorner)
&gt; +        scrollCornerRect = cornerRect(overflowControlsPositioningRect, cornerSize, placeVerticalScrollbarOnTheLeft);
&gt; +    else
&gt; +        scrollCornerRect = { };

You could include &apos;if (!scrollbarsAvoidCorner)&apos; branch into the lambda as well. 
Not sure this single use lambda really needs arguments at all, it could just capture the variables: [&amp;] {

Other branches in this function would probably benefit from similar use of lambdas.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1643936</commentid>
    <comment_count>7</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2020-04-21 11:17:28 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/260445/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>396801</attachid>
            <date>2020-04-17 14:33:06 -0700</date>
            <delta_ts>2020-04-17 14:33:06 -0700</delta_ts>
            <desc>See the third box. turn layer borders on</desc>
            <filename>scrollbar-placement.html</filename>
            <type>text/html</type>
            <size>1157</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICAgIDxzdHlsZT4KICAgICAgICAuc2Nyb2xs
ZXIgewogICAgICAgICAgICBtYXJnaW46IDQwcHg7CiAgICAgICAgICAgIHdpZHRoOiAzMDBweDsK
ICAgICAgICAgICAgaGVpZ2h0OiAyMDBweDsKICAgICAgICAgICAgYm9yZGVyOiAxMnB4IHNvbGlk
IGdyYXk7CiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDsKICAgICAgICAgICAgcGFkZGlu
ZzogMTBweCAxMnB4OwogICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IGJsYWNrOwog
ICAgICAgIH0KCiAgICAgICAgLmNvbnRlbnRzIHsKICAgICAgICAgICAgd2lkdGg6IDEyMDBweDsK
ICAgICAgICAgICAgaGVpZ2h0OiAyMDAwcHg7CiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6
IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoc2lsdmVyLCB3aGl0ZSAzMDBweCk7CiAgICAgICAg
fQogICAgICAgIAogICAgICAgIC5jdXN0b20uc2Nyb2xsZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHsK
ICAgICAgICAgICAgd2lkdGg6IDE2cHg7CiAgICAgICAgICAgIGhlaWdodDoxNnB4CiAgICAgICAg
fQoKICAgICAgICAuY3VzdG9tLnNjcm9sbGVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7CiAg
ICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTsKICAgICAgICB9CiAgICA8L3N0eWxl
Pgo8L2hlYWQ+Cjxib2R5PgogICAgPGRpdiBjbGFzcz0ic2Nyb2xsZXIiPgogICAgICAgIDxkaXYg
Y2xhc3M9ImNvbnRlbnRzIj5TY3JvbGxlZCBjb250ZW50czwvZGl2PgogICAgPC9kaXY+CgogICAg
PGRpdiBjbGFzcz0iY3VzdG9tIHNjcm9sbGVyIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjb250ZW50
cyI+U2Nyb2xsZWQgY29udGVudHM8L2Rpdj4KICAgIDwvZGl2PgoKICAgIDxkaXYgZGlyPSJydGwi
PgogICAgICAgIDxkaXYgY2xhc3M9InNjcm9sbGVyIj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0i
Y29udGVudHMiPlNjcm9sbGVkIGNvbnRlbnRzPC9kaXY+CiAgICAgICAgPC9kaXY+CgogICAgICAg
IDxkaXYgY2xhc3M9ImN1c3RvbSBzY3JvbGxlciI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNv
bnRlbnRzIj5TY3JvbGxlZCBjb250ZW50czwvZGl2PgogICAgICAgIDwvZGl2PgogICAgPC9kaXY+
CjwvYm9keT4KPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>396802</attachid>
            <date>2020-04-17 14:33:32 -0700</date>
            <delta_ts>2020-04-17 14:33:32 -0700</delta_ts>
            <desc>Screenshot</desc>
            <filename>Screen Shot 2020-04-17 at 2.33.17 PM.png</filename>
            <type>image/png</type>
            <size>79961</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">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
AGBXV5X/y6RZri7jtciIssR8VCjeGgKA6wDgq0ShGN2iUHzdiTR7F4DOgnFNrzQsouWbjUt4Howb
xb+Bf9q43v/LjP9cgbIDN/DP9U9NGBoJQ2LlaAAAAIplWElmTU0AKgAAAAgABAEaAAUAAAABAAAA
PgEbAAUAAAABAAAARgEoAAMAAAABAAIAAIdpAAQAAAABAAAATgAAAAAAAACQAAAAAQAAAJAAAAAB
AAOShgAHAAAAEgAAAHigAgAEAAAAAQAAAxKgAwAEAAAAAQAAAkoAAAAAQVNDSUkAAABTY3JlZW5z
aG90g+eLJgAAAAlwSFlzAAAWJQAAFiUBSVIk8AAAAdZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAA
ADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUu
NC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIy
LXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAg
ICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAg
ICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+Nzg2PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAg
ICAgICAgPGV4aWY6VXNlckNvbW1lbnQ+U2NyZWVuc2hvdDwvZXhpZjpVc2VyQ29tbWVudD4KICAg
ICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjU4NjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAg
ICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpIA51FAAAA
HGlET1QAAAACAAAAAAAAASUAAAAoAAABJQAAASUAAKNW7KkbagAAQABJREFUeAHsfQeAXVW19p5J
T+gdpCTUJLSAiPr8kYQaiiDVrjxAuoqKIljh+fT57B1QEdt7Si8qKiUBFAs8KSF0AtJ7SUimz/zf
t9Ze5557c2cyk9yBm/DtZM7ZZ/fz3b3XXt/ZraUPJskIASEgBISAEBACQkAICAEhIASGgECLiMQQ
0FJQISAEhIAQEAJCQAgIASEgBAwBEQlVBCEgBISAEBACQkAICAEhIASGjICIxJAhUwQhIASEgBAQ
AkJACAgBISAERCRUB4SAEBACQkAICAEhIASEgBAYMgIiEkOGTBGEgBAQAkJACAgBISAEhIAQEJFQ
HRACQkAICAEhIASEgBAQAkJgyAiISAwZMkUQAkJACAgBISAEhIAQEAJCQERCdUAICAEhIASEgBAQ
AkJACAiBISMgIjFkyBRBCAgBISAEhIAQEAJCQAgIAREJ1QEhIASEgBAQAkJACAgBISAEhoyAiMSQ
IVMEISAEhIAQEAJCQAgIASEgBEQkVAeEgBAQAkJACAgBISAEhIAQGDICIhJDhkwRhIAQEAJCQAgI
ASEgBISAEBCRUB0QAkJACAgBISAEhIAQEAJCYMgIiEgMGTJFEAJCQAgIASEgBISAEBACQkBEQnVA
CAgBISAEhIAQEAJCQAgIgSEjICIxZMgUQQgIASEgBISAEBACQkAICAERCdUBISAEhIAQEAJCQAgI
ASEgBIaMgIjEkCFTBCEgBISAEBACQkAICAEhIAREJFQHhIAQEAJCQAgIASEgBISAEBgyAiISQ4ZM
EYSAEBACQkAICAEhIASEgBAQkVAdEAJCQAgIASEgBISAEBACQmDICIhIDBkyRRACQkAICAEhIASE
gBAQAkJAREJ1QAgIASEgBISAEBACQkAICIEhIyAiMWTIFEEICAEhIASEgBAQAkJACAgBEQnVASEg
BISAEBACQkAICAEhIASGjICIxJAhUwQhIASEgBAQAkJACAgBISAElplInDvrLKEoBISAEBACQkAI
CAEhIASEwHKCwJEzjmtISUUkGgKjEhECQkAICAEhIASEgBAQAssHAisUkXjh6b70wlN9ywfygyxl
y4iUJk5pHWRoBRMCQkAICAEhIASEgBB4rSHQ0vLqvPEKQyRWRBLBKkEiMWmqiMSr0zyUqxAQAkJA
CAgBISAEhEB/CDQtkRhKwR6Y05Pmzent7x2X2r2v79Uf3RgxKqUZh45c6ndQRCEgBISAEBACQkAI
CIHlH4GWpRx2WNp49RCrXdM8FH29Xnrh1vA1EoMt2NKSiGYgCQHeQHcSiemHYFhCRggIASEgBISA
EBACQuA1i8BgCMFgwhDAwYarBXuFIhJLSyIIiohEbdXQsxAQAkJACAgBISAEhEAzI7AkArAk//K7
DSVsxFthiMRQSMRQSMNQwgaow3nniMSuB2uNxHBirLSFgBAQAkJACAgBIdBsCAyk6PfnV8+9nlu8
60B+EaZ8XyGIRCNJxFCIw1DClkFfFruIxLKgp7hCQAgIASEgBISAEFg+ERhIya/1G+pzGZHauGW/
WvtyTyQGQyIGUviX1q8WyIHSqQ27LM8kEm896FXa02tZCq64QkAICAEhIASEgBAQAkNCYCClvtav
/Fy2M8Pyc9le61dbuNqwtf7LNZFYFhLRn+I/VPdaQOO5v3TCf2nvJBK7vH1pYyueEBACQkAICAEh
IASEQLMisCTFneUuhynby35l93r2sls5Hu21pjZs2X+5JRKNJhFlxb9sD7DquYVfvftQw9dLo54b
icT/O/DV34a2XtnkJgSEgBAQAkJACAgBIbD0CAyktDPVWv/yc9jL97BHifhcz61e2hFnIL/lkkgM
RCL6U+Br3Zf1maDWplEGfLjsJBL/9rae4Upe6QoBISAEhIAQEAJCQAi8CgjUKvi1Raj1ryUF5ecI
O9R75Bnx4pn3em7LHZEYiETwJesp92W3wdhr0+kvDsP1Z8px+guzNO4kEm/ev3tpoiqOEBACQkAI
CAEhIASEQBMjUE9ZZ3Fr3eOZ9/7sEa8//7J7hOWdJvz8ya/13JYrIjEQiehPcS+7j+p5OY3rezGN
7X0RjKM3tbeskha1rJo6WlcGAalAFXHiTp/+7JVY1bYIP7r35bRW9wOFZ1vrqumFkROL56FaSCTe
uG/nUKMpvBAQAkJACAgBISAEhECTI1BPWa91i2fe44+vFfa413Or5xfhynfaaRg+TNkebssNkdh1
rQ+meXN6o9yL3UNxL3vQbUzv/DSp4y9ple5HU2tfV0EIIjzvfS2t6aXW9dNDo/8tLWxdw5IIfz6E
vfZezivsEcaf+9I2iy5LK/c8Ed5pwYh10x3jDy6eh2ppHdmX3jCzfajRFF4ICAEhIASEgBAQAkKg
SRCop5SXi1brX36mvfaPcWvdhvIc8cv3Wnu95+WCSLzwdF/arudolr9fU63AI1hvT9qg65a0Yec/
U0tvl8WLMLyX7fT055b0xMip6V+jd049LaP7CRNhLcmqS6QZjht23pw26rgpHu3eCCLx+r0WVaWp
ByEgBISAEBACQkAICIHlFwEq/bWm1i2eB0MQWltb+yUW/fkx/3Ie5edy2SIM3ZqeSJBEvPBUX+KI
RH+mVoHn8xbtV6e1uu6rIgMRjveB7PNHvC7dMW5/hPEca8NHOSKNeOY93FbueRKjEZfSpezdkBGJ
absvqEpTD0JACAgBISAEhIAQEALLLwJl5ZxvUX4Oe/lOe/yVicGS7P35R1rlvMv51SIbfk1PJGI6
U39EIhT3eEE+r9l1f9qy/apCqadbhOtOo1Jby8oYpehOY/vmY+Si2/xuuukfkYTdHx39hvQw/pbG
jOzrTNsv+k0a07e4wr9gxHppzriln9rU0oo3WP/vS1MsxRECQkAICAEhIASEgBB4DSFwwgknJJKH
IBBlO8lAuAeRCILQ370MHcMs10QiyEG8FJ9H9rWnHRb+TxrR6+sIgkS0ta6e7h8zPc1vXceIg7v3
prU670kbt/8l3X7znyOZfG9Jt45/Z1qEeEM1W7X/Ka3ZfX/daCISdWGRoxAQAkJACAgBISAEhECD
ETj22GMLIlEmEbX2MpHoj0SEexRxhSISQSrWxA5JWyz6o71jkIh27JR067jDU09qLZEIH6VgGO7m
1PPnU42EBDi8zxvz1vTkqG3KTku0r9t1d9qs49p+w4lI9AuNPISAEBACQkAICAEhIAQaiMDRRx+9
GJEIEhF3EgLaeS//sRjxHPZy0ei3woxIBJHYqP2v6XWdtxSEgS9819iZ6fkRmxRuQTB6e3sLt0dv
+g3WVVxTxic9M3Jyum/sblVuAz2M630JU5rOB13xxd31wopI1ENFbkJACAgBISAEhIAQEAKNRuCI
I44wkjBixIjEvyAPtXeSgnpkYoUlEkEcAvAgB1PbrkirdD1izu6W0t8mHF01GlEmEGGfe+tNaeeF
P4nk7L4Q06BuG39olVt/D62pN2276KI0ofeZIkh762rId1SVm4hEAY8sQkAICAEhIASEgBAQAsOI
wHvf+14jCCNHjuyXUJBglIkECQVNuIW9fA/7cjkiUY9E8IXobsp891PFSEMvNk3660rH4Nn9gziU
77TffcctaeeXf8xkCvPiiI3SnePeVjwPZJnY8VfbbjbC9GFcYg7Oi5jYcWNapefxcMauTVpsXYAh
ixAQAkJACAgBISAEhMCwIfCOd7wjkUTEiET5TsJQHqUI4lBvZIIFpH/5TvtPZ59tbnE5csZxYV2m
ewuU+up9T4eYXDCcers2lZMOe9w3b7sqrdl5b0Ek6H7buEPTy61rmhtJQy2J4POTt1+ZJrf/vqqU
XB/BdRJLMqv1PJo4ElLe6vURnEXxyOid0jZtl4pILAlA+QsBISAEhIAQEAJCQAg0HIFDDjnEyALJ
RJlQlEcoSBxq/0ga6v2xgEEoaF+hiARJA9dHcJ0E7fH3Usva6Y6xB6SevpYqMhGkoqWnI43955nY
rhXbwZbMPOzy9OSoqSWXxa2jsEvUNGz1OqpvYeG5YMT6OIfi7ThBokVEokBFFiEgBISAEBACQkAI
CIFXEoEDDjjACEQQibiXRybKoxJBKEgWljQywfdYrokEiUKYIA2je+an7Rf+GudEdBZEgoThRRwy
98CoN6eFaTUbkQgSMa7r6TRx0TXpiXtujKTs3tmyUvrnhPdg5cOIKvfahyltv0+r9zxUOPek0enW
Ce9IHTirgkYjEgU0sggBISAEhIAQEAJCQAi8ggjss88+adSoUQWZoJ3EoZZQkDTUEooymWCRyyMU
8QorHJEgoViv4/a0SfsNVVOY6N6LBRMvtqyb2vrGmH1U9/w0vvMx2HvSvHkPBCZ2v2/snti1aYsq
t9qH9bvuSJM6rq9yvm/sHoi3ZeEmIlFAIYsQEAJCQAgIASEgBITAK4jAnnvuaaSBBCIIRdxJJpY0
MkGCQVMmEbSHWa6IRHkEgi8Qz7zX/q3deScOmrsxtfa0GaGIEYi49/T0mHvcH3roQcOkN41MD47Z
JT01akpgVPc+vvf5tN2iC7GkurvwfxbE414QkLIRkSijIbsQEAJCQAgIASEgBITAK4XA9OnTjUAE
kYh7jEgEmYh7TG0q38skguUOIsH7CkskWns70sZtf05rdcxdjEiQPASBCPsjjzxsv+nC1rXT3eNm
FlOT6v3QrdjUdftFF6RxIBNhOBWKJ2F3t4wOJ7uLSFTBoQchIASEgBAQAkJACAiBVwiBt7zlLUYk
Ro8eXXUvj0oEieC9dooTyQLdgkyw2CsEkSiPRvClyiMSY7ufTZMXXZFGdi8w9yANHI0IexCIuD/2
2KNMxgzXOdw7bq/0woiNw6nqvhmmM62LaU0V05LmjjswvTRig4pTtolILAaJHISAEBACQkAICAEh
IAReAQR23nnnRBJR/otRiSATvA80xSlIRPnOovOZIxJcshyznZp6+9cgDyx82INAhBtJxNYLL04t
Pe0Wpkweunpb04K0elrYtzIIRVca3fV8GoPF1n3dHemJJypnPVhaWGR96/jDU1vr6nwszJrdD6Wt
araJfXz0Dumh0W8uwpQtIhJlNGQXAkJACAgBISAEhIAQeKUQ2HHHHQsSMWbMGLMHkSC54ChEEIp6
ZIJkoTwiEWSC5V+hiEQQiqkLL0krdT1WkAhfE9GXnmjdIs0b+YbU0TvKRiViJKK1++W0/sIbU8tj
1wGS3qrfdT5GGLiNa5jR2OKVW72OxJavYTgVas74QxDTF6OEe9xFJAIJ3YWAEBACQkAICAEhIARe
SQS23XbbRAIRJKI8MkF7kAgSipjiFIQi1knUIxN8h+WeSNSOSkzofjJt/fKFNSSiN90/+v+lx1sn
VxEIEonu7m5z4z09cWPaov3qxX7be8bum54bOREnQvTZoXOr4vC5MFyYfZuNWqwWTovdRSQWg0QO
QkAICAEhIASEgBAQAq8AAlOmTCmIRC2hIIkYaFQiiESMSMSdBIJmuSUSZQLBF4nRiIlt16d1sPUr
n2N3pudaXpfmjtlnQBJBIvHcc8+nLduvSmt138ckC/PY6Nenf41+Y5rQ+xwWWP+mcKelq2U8Dqzb
psqt9mH9rjkYwWgrnLtbxqQnRm1fPNPCHaI6WyZUufX30NLanUat//f+vOUuBISAEBACQkAICAEh
IAQMgS222MKIxNixYwtCQfJAUhFEgvfyyETtiESZQMToBBNf4YjEVguvSKt2/asgESQTd46ZmZ5t
2bCKSJRHImjn3wsvvJhW7nkybdt2cVXVe37kpunusTPrEomqgMvwEKMeg0lCRGIwKCmMEBACQkAI
CAEhIASEwKRJk1KQiLiXRyaCTPS3ViJGJUga4o9uNCsEkYjRCN63f/l/0pju54sRCU5funnce9Ki
vnGLEYkgEDHF6cUXX8Ly6s70xpd/XFXr2lrXSLdgW9d6IxJVAZfhQURiGcBTVCEgBISAEBACQkAI
CIG6CGy88cZVRKJMJsrrJZZEJGpHJYJULDe7Nr11zaMLgEgaaMokokwkYloT738b94HU2ecLrOuN
RAShmD9/gaX55pfPwnqIyqLrha3rYB3EoSISho4uQkAICAEhIASEgBAQAssLAhtssIERCRKI8l/t
qER5ehOnNpFYkDzQHiQi7iQRNLyfd9050Mdpd0SadvvXwRCJzRf+Ia3RdX8xtYmjDXPGHpBeSOsU
IxJBHMr3rq6u9PLLC9PYvvlpx4W/dCTy9WmsX7h/zAyMVnSl9TvnVPkN5mE9nDcxuu/lImh3y9j0
+KhpxTMtT4/aSmskqhDRgxAQAkJACAgBISAEhMCyIrDuuuumcePGVZGIIBTltRJlIlFv9yaShhWe
SKzffnPasO2vBZHgiMQTrVume0ft0i+RIIkgqVi4cBEOmbs7bdZxbdVv9tAY7Pg0arsqt6E8TG6/
Mq3R/WARZcGI9dKccQcXz0O1aI3EUBFTeCEgBISAEBACQkAIvDYRWHvttY1EBJmIe3lEgoSilkiU
yUSQiBWeSKzSicPisOC6PLWJoxK3jXlbehGjEuVRiLAHkehZ+Ax2ZTq/6owIVrm5OEei3onVg62O
IhKDRUrhhIAQEAJCQAgIASEgBBqJwBprrGEjEiQQQSJiRKJMJvojEiQP5T+SCv7R8L7cTm2qXSdB
8jCity1NW/ALO9WazyQRvHf0jkwPjNg5Pd6yubmRRASB4H1cx6Npgxf/mMZji9eyebl1XRw2dzBO
kMgTv8qeg7SLSAwSKAUTAkJACAgBISAEhIAQaCgCq622WhWRCDJBEkFCwXt5RIKEgqMRtWskyqMR
tNOscESC5GLVzgfTlgt/awSCRKL890LfmumFvrXTy70TUm9XR+rpWpTGtj+SVm5/IHV0VE6rJjh9
WBVx2/jD0iLs2rQsJojElTuPtmR60qjU1tr/AXZLyoskcOXVh05sdtjyrUtKWv5CQAgIASEgBISA
EBACryACD185d1hzW2WVVYxIjB8/frERiTKRCDJBAkEyEWdJxGLr1wyR4AjE69r+ljZov6mKRMRU
JhKL8mhEjE50dnZU/ZCPjN45PTJ6pyq3pXkQkVga1BRHCAgBISAEhIAQEAIrPgLDTSRWXnnlxUYk
OCpRHpGgneSBZCJGI3gPMhFTm2Ja0wozIlGe3kQCwWfee3t70iZtN6S12m5PvT2+mJoEIshEkIfy
PYhEbxoJAvGG9Pjoacs0pSmqvohEIKG7EBACQkAICAEhIASEQBmB4SYSK620Ul0iEaMRJBExvWkg
IkESEaMSrwEi4esjRne/mDbALk6rtd1VrI0IMsFRifLIRFdXZ5o/4nXY6nV6am9dtfwbL5N9y/ar
0lrd9yVNbVomGBVZCAgBISAEhIAQEAIrHALDTSQ4pSmmNcU9FluXyURMbSqvkSiPSLymiARHHzgy
EesjRnc9m8Z3PpZGdT6bRnY+l0Z2PJt6ujvSgp7x6aWeldJ8/vWukhZgcfVwmb6d7q1KepcNj6l6
HuzDiFEt6Q17jFhi8P+dfRYXehTmXTOOK+yyCAEhIASEgBAQAkJACLzyCFx604VVmQ43keA0pjKZ
4HMsuA4iQRIRf7FGonZq02uaSNROaypPaYqRia6u7qofttEPIhKNRlTpCQEhIASEgBAQAkJg+ULg
1SASQSaCRJSJBMlEkAjeX3NEgusi4s/XR3CNhP/FiISIREoakVi+BI1KKwSEgBAQAkJACKx4CLzS
RIJEYUkjEv2tkSCpiIXWcY+RCf4ytC/X50gEgYh7EIi4L4lIVEYjuCC7Z1hrq0YkhhVeJS4EhIAQ
EAJCQAgIgaZH4JUmEiQJQSRijUSMSNAvRiSCTJA8xF95jcRrmkhwKlPtqESZRPiiaxGJpm99KqAQ
EAJCQAgIASEgBJZjBF5NIhFTnEgeaCd5iL+Y3tTfYmsRidL2r04c/HTrIBQakViOW6WKLgSEgBAQ
AkJACAiB5QCBV5pIkCBwJGLChAlV28CSTPBPRGIQayRqRyREJJaDlqYiCgEhIASEgBAQAkJgBUPg
1SISMb2JIxExtUlEokQiuE4i1kbEPdZI1CMStWRCIxIrWEvV6wgBISAEhIAQEAJCoMkQeDWJRExt
EpGoIRBLWmxdJhK1BCKeRSSarKWpOEJACAgBISAEhIAQWMEQeDWIRBCIGJWINRL1RiT62/5VayTy
GokgDryX/3p6eoe1qmrXpmGFV4kLASEgBISAEBACQqDpEXiliQQXTweB4J2kIv5eE0QCgw/Ypzal
I3Y9xs6LYA3h1KXaqUzlaUxBFjo7OxP/Ojo67K+9vT21tbUVf4sWLUrxxzjDadbepXRqNt7nXdOH
96RpnWw9nL+m0hYCQkAICAEhIASEwNAREJEYHGYtUPRBAZbenDvrLIssIrF0GIpILB1uiiUEhIAQ
EAJCQAgIgeFCQERicMiKSNTgpBGJGkD0KASEgBAQAkJACAiB1xgCIhKD+8FFJGpwEpGoAUSPQkAI
CAEhIASEgBB4jSEgIjG4H1xEogYnEYkaQPQoBISAEBACQkAICIHXGAIiEoP7wUUkanASkagBRI9C
QAgIASEgBISAEHiNISAiMbgfXESiBqeuzau3l52+1QGpD/9a8C8MV6e3wq0XbrzT10OU163TXo7D
EK1ww05WsHl6fWn2vZcnOJhh6F2Rn8erpDWc+VsRI3/c+6zIvCh/+1EMCf/FKs+N+/2Ff6Wqtaj+
qf1J/qBBSP6q/1H/W+lvB9//vv71r49oDbmLSAwORhGJGpy6Nu/JLtajJRKJimDPmk4r/LBNVbW4
ryTkO1iRXJBq4B+Dg5/YHa6MSQJCdXTWPZd5xJzY9K3e5jLUA3vWRU6Nz99oDdlDK9NmUfJd+eff
gZjELy38TdNtYP1X/YM0UPuT/JH8Vf+j/neZ9Q8RiREpDqPjvQV6HO+mxcB+3nXnUHU1XZRuR85o
zPEGIhIGceXStUVpRAKAz4BiH3zY2rkFpQ0/Dj+hGkFwclBJBTbonvaF1RxBJvDr9VE5d229CDr7
HoxImJuPUew6mcQlGyRPOjKc+XtOfB+WESXxOlc4K3/hr/rnbZOtpGgYDWr/lfTU/iR/JH/V/4SM
wV39/5D1HxEJEYmmOJAupjbZB3k05Oklxd7JAFgeWjjpBjs+U8Czsu+aOJUOVzmMOMTIBTkEQ/Pr
o1FC3JDJdXdf5qFJPOC/6xYHWsKRvzlaTDqTjDQ2f0vTCubl7utlQaA65mIq/ww+bsJf9U/tT/Kn
kfJf8pcfaihc1f/YRzv1v8ukf7x+R01t0ohEE5xs3Y01Ek4DTLal6VtijUSNVu1EwZo9Atl/cAPS
AFfAe2FnFJv+lOMWadLZg1J6puswtanyzBEQrsmgqaQxnPnbWxTlye+i/IW/6l/RhtX+ICD48YPC
zq5uNxUQTiY+llL+Sf6QnAPU3EFUrJL/0Yeq/aFWqP2Z5FmS/NGIhEYkmmJEwogEpXk2pthD0rfY
uLvLe84744HgcLVOwDrDHIaEoiIA0cnmDoLC0L9oWyyTC0xnNkckcu/BeE5cIvdKJz1c+bMgLqiR
l5Ujd2y5CO7Ed8KL+H/YG/f+yl/4q/6hlaFtqf1B6Jg8kvwLBJZH+dvZ2ZEeeOCBNGXqlH77v/b2
jjRv3rw0dcqUV7z/6e3pTs8++1xad911c31T+1tR5M+OGpHQGomOJhiR4BqJUP4pzHfd6kD/4hYt
zTp8XEgiwg4m0IdIpAjWEfJuiZhLIaysU8jauCnjsM+++/KsQCAYUuVUKpv+ZE+kKMyJfpaZBTKl
Hq6NyJ8sxkkC82IeLLrnyAflL/xV/9T+JH+WXf7OveOOdN3s69LjTzyennnmmbT22muniRMnpS22
2DztMG2HdN/996Wzzz47/fAHP0wjR47wPmY5kf/PPv9sumPOHem2225Ld911V+rq6ko//slPrO9y
ctiSnn/uuTRnzpzqMD9GGPtINbz9z8tti9Ldd96Vbrv9tnTbrbcB94npox/7KBq2+r9XAn/7kBp6
jDWl/Hs3GP8dd9wRuTTOaNemwWGJj+RUR5fenDvrLIvsSm1KR+x6DOSGJ9nbi2lCsPMefz09PYl/
3d3dJmx47+zstL9mIBLdIBJW/KxLz5h8oCnTfEmOKFDr95u/o9GHjCD1b1e9LbQp/eZGfxOWvDNh
mBxn9r2+RsJc4Tad+Vl4huFUqVKKw5A/y5UpkJcJBVH+wJ4/iPBX/VP7C1E1LPLvtSB/ert70nk/
Oy/deOONECpu1ltvvTSidUR64sknrG8Md96/8pX/TmuuteZyI38uuvDC9Kc//cn69fJ7/AQkIfq/
Cy/qJ8xPfjzs/c91s2enX/3qV1U4b7vttunkj5xs/bL6v/jgiV9vOe//Xy8ioRGJZiASNiJRkobT
MSJRa0LPtx62UMThyv9QPPwDC8UTjV+LOHAJ1Z1uXGxtxoPlEZByaPcuXwtfs5RSw/NQ82dZzeT8
PW2/lvMs2wtfsyh/74gABv8P8fcX/rlmqf4ZEN62/Fpuc2V74WsWtb9mb3+/+93v0sUXX2w/4bRp
09JBhxyUNtxgQ+s+Xnz+hXTZ5Zelv/zlL4Wie/rpp6XNNtu8/JNX2Zvt9+/uwdYj+Ojyxz/+sXhP
FvgnIAnR/3Xj42HdMCAbZoax/fMj5sJFi9KFF1yQ/vznP1t2O+ywQzrxpJOsrx7u/Jl+8ZuZvaix
yp/A0DTo999R50iISDQDkeAaiajUrN+7YrE1RxF8IM6ZO0dZYqQg1/8aQVGVBFIpixGmCpOdZsc5
Eu6KNRK+a1OkYKM7w5h/zrZSICtXpbzKH1gI/2Gr/6p/gUBuc2p/aG8rjvxZMH9+OuUTn7AR+PHj
x6evfe1racyYMYX8j1//qquuSr/+9a/t8YTjT0iv38l3n1me5O+LL7yQTjnllHglEIlMEqKzg88L
SwozjPX/73//ezrnnHOsfFyUe8IJJxRlLX6QYcy/lFmRXcUt1/lhzP8OTK279dZb03vf+95XJf/K
u8KWXzfcirK9B2VbhvavqU1abN0Ui637G5Go1PuKrbo1hDu+ENq8P28i4RoNhvdw4527NpXdYk1G
JZR5F3Gq3SOlcgpDy7+WCFVSrNjKqSv/Mi717MJ/KPVf9a+6fVdqVMWm9leWOmVc6tmbq/3dhjUB
3/nWt+xHXmedddKXv/zlQpbXlv4XP/95uu6669K73vWutMceuyNOtI7l4/07OjqrlHMSifI7EoRO
hDn+hOMND16CbES4uJffmOHqu1dcKyH6//1vveWW9N3vfY/JpTe84Q3p2OOOKxCOlOJeSc+CNyR/
T6mSciWvem5l34p/2VbfXv/9SeC+8IUvpMmTJ6fjjj/e3rucQ9jjXp12+akSouxasdfPP96d90gh
7vXKVgnlMSNstXvFNdxFJEQkmoJIcI1E2dSb2lT2L6oyLL5GInyzj92KUPAsu6e02IhEnalUkWK9
e5EyLEuTf1GeeokPwk355+5e+Kv+Qe9bTPWzBlK0ErSobC+cCssgWtviQYrYsKj9Nx/+V155ZboQ
awjCnPkfZ6bXbfC6ohqULLYA+7TTTkv7zJyZDjn00Igy4L2Zfv927NZ0Yukrv5EEK2BRytTR2Z5O
OP7E4p3K058KxyFYipRhWVL9v+XWW9L3vutEYuedd07HHnsscipSGEKulaBF7EHk77FyjHLEktSo
pDw4WzmZ/t6/G7tUffWrX033339/2gkjXcdjxKvy2kUKg8uwJlQRG5b+8i+PMBQZ54hcI1sp204o
W4Vk1mRV97E2f62REJFoGiJRVE5U3SURCa/d5Rh163u/jrVEYs8Nd0cbx7HmLVz07Yc/MXVOr+Ec
UzdUV8JOP8RAK3aX8PM7o7GF4ztB/gqR3c2ZdkYPXz65XfkLf9U/tT+XHBQSkBWSPxSQMC5D3c7H
/uXvFVdcjulMXy+CTp8+PX3+85/HQutWiOXF5e/HsJMQd3M6/fRPLVH+c9rTggUL0korT0gjWkYs
Uf4vfPnlNGGllVEW7wsWtrUlTrcaSP739WJtA8rZgvIu6fdva29Pe++9d/GuHF2p7X/asO3r3nvv
VQlz/fUD5h/1j32bo8Wog8O/r68X+MxPK6+0Csrfkv6C9RGnf/rTlvceu++ePovfwVJbhv6P07G7
e7rSSuNXWiL+XurKtQf58vCwgfCP94/21w6Mx44dh2JX+v+Fi17uN//u7i6MRJyRbrjhBntX1r8z
zjjDEaxT/5guawf7/14cjgfYPCeGXUL75+9fKZu/56JFC9MEw2Zx/aMTJOIMjJLUli3yr9f/tI0Z
m156aX5addVVsLPZSHsnLyHzS0kjEiISTUMkcu2026CIRLWUy9HrOpaTNnsQiQi914Z7WFMOwREy
k6sz2MSzZGbfZcY6Iy7rsAbvjt6EaYfwLwJS/MKH4SAQPIw9WodGodtqiZTyoeDIAZV/CRf8DgWs
xEz4q/6xXbF9wniTUfuT/GlN9953T/rg0R+0ehGXN77xjel0jDystvrqXlcgQ0L+Pv/cC6kXsnjN
tdZyxa1G/nZB+fof7EDEaTr33HtvWrhwYRo1alTabNPN0uHvODzttttuJse9LramRW0LbcvZyy7D
7oCQ51wjMBu7GJ1//vmJ89K33nrr9LWvfz2NGze2kP+3z7k9cSTlvvvuSw8++GAaPXp02nTTTbEA
fLN06GGHpY022rCu/Gtrb6shEtejMXibsK4Lb9ve0Z722qtCJK4H2WAfFu8fH70Y63KU+aabb0p3
YdvW+Vhrwp2uWN6jjj4qrbPW2gZnvf7vRixcv+K3V+D95lo8kiXu0jR16tT005/+1OIZkfjc5xbD
P/IfqP+944456dJLLk333HNPevTRR22R/GqrrZaopL/73e9O6+F8isC//P6c1vWb83+T5s6da9g+
h+1wN9hgA8N1p512Sgcc8Db8BiSEeHvri3lP6ZGHH0nXX3d9uu766+z3/tX//Co9NO/B9Lvf/94W
6T/22GOWxgEHHJDe/va3+zshjba2jnQaCOkt/7wlql6aMGFC2mSTTSzMRhtvbPUw8GdVu+yyy9NN
NwHzu+9O8196qcD86KOOTmutjTrJciHt+FkfxvtzS+Pro2yomw+hzvzu979D2W5M5bId9PaD7H1Y
D9tBYj+FNnAL6nEYlm3iJhPt/TdG2Tg6l1/GsP4epqUtGDHS8B4xYoRht/7666fV0Y4OP/xwS0ZE
QkRi+SUS0RKW4h5EIqJyRMKaKi6mvFOiotXa2Q5wYyMsWpdFYkC42bii33NbN18XaEwRwRCO0S1d
OllSLhRwzbKLtpwcbJ6d8hf+rGeqf2p/JjSy8MCNlULyZ0D5+2l8BY/dgogYzaqrror1BCemvWfu
hc89kLP4c92xf/n72OOPpc9B+aWCT2X8LW95i225yilEVNho9t57Zvr0p0+3ML/85S9ty1l+NaeZ
PHmrdPDBh6QvfelL9hyXT33qU2mfffaFgtaTzj33XNsqleThkEMOSWussWa686656UYohW1Q/rhQ
/CgolYcddqh9TS///u0dIBJ7VUYkqPzW9j9tbTWjFlBArfqU3n8RyNF//OcXLc9tt90ubbTxhlBO
H0p33nmnFZnE4PTTT0+77LILnqvr38/O+znIwrk20sJFxSQeTz75lLk98cQT8cpYg7JH+uxnP2d1
tzZ/pOjdKX+Xoo/kb9SX/vd//zf96Ec/SmuuuSYwOMyU8n/84x/F9DUqw9/97nfT5nnXrXj/+3FG
yJlnnpn+9a9/Gakh4ePaAG4JzClHNNtss0069dRT0yZQotmdP/vMs7Z4nWQuzOte97r0vve9P33j
G1+3LfPDPe5nnHFmmjFjOl4gpXtBNM/50TlWN6J+rAWCSlJIs+GGG6aPnPwRw//lhYvSfwJz7h62
HUjXhhtvNCDmzzzzdPoENhEYStnOPPOMtOuu0/lLp3vuuzf9CKSW5eqvbCeffLLhP/fOO9KHP/Rh
q3sfxWjK9tvvgDiPpl/84hc4WPDZVF44LyIhIiEigcZNIkHZSEHABmeCKH+dyDfvcCwQ5WAWVYhj
nZHFYAI0mQBkO4VTlpAWz5xzOiHwcsb5pvyFPysiKxfqkt9U/4iD2p+JD8mfJctffnn++Mc/luaV
FEKXvQlK0fbplI+fkjbeZGM4mYAu3Sry9+mnnkpHHHGEfZH+6EdPTm8/6OAC/7/+7W+mgEaa3/r2
t22Ugl+Jr7j8irQIW5+G4ejF7pjWc/vtt6fHH3/cnL/9rW+naTtMs4Xgf/jDH8ztO9/5Tpq2/TTr
TdjgOQLy8Y9/3HafYoAPoCxHHnlkVf9j05ZKow38gu6HmzIGcMLrteMreXlqE8lG9sWtxcgM1y5Q
CabyeMihhxTyhwp6rDehwv6zn/8cIxNrIWUPcvbZ5xgJItH4OkZZpm49tcj/+eefS0f8+7+nF198
0fIjkfjcZz9redJhMP3fD37w/fSb35xvijhHcUgmWP978ce5/TyIj4a/6XdQVpMSeOmHH344HXnU
kab4U+n9+je+AfLopre3L536qVMTd5SiWWWVVdIvfvmLtNqqq6Xuru7017/9NV2AbWt50F/ZvPnN
b04zsZZmfYzS8OA/khkaTou78KKLclDv/4nZd777HXPbC0Tv05/5tJXbAxHz3nTMsccY5h/60Icw
6oT1OVn/YLwqzH/2s7TOOmunTpTtb38duGzrrb9e4lkiVWW7EGVDPSBuNBfiuapsIMGVZuD1n7tr
cRTnUNSF4z4F/2yee/759AVMT9tiiy3Shz/8YXMVkRCREJFAU9hrIxAJGCoqbEbRqvzZPOgNEx2Y
aTU5mLV+Y/Gu9CENjkIgNLsou9oDLhBwPI3biUU5BO3KX/ir/qn9hVygDGF9MMHAK4zkj6FjghZw
EBwqRxTHvNm9In87MH/8S1/6sk0rInplQ+X+Ax/4QHoPvqCP4KR0mFr5w6/nXHNARfSb3/imhYj8
e3Dg3WGHH2ZfZxmXX+tnztwb5WhJV131x/TFL/4nnc1wR6jjjz8u9XT3plnXzUorTVgpvfFNb8QU
k1txQNtHLAzjnnY6lM2i5/DfnwfPkWDQcH76j3/8Y/+6bQUhSWhLe1WtkcD6h5r+px0jEnuV10iQ
SLAf8tqVfnvFFbb4dgccLPbtb/E9DVjDow2EaL/99isOvtt3330TR1NYTI7WvP/977dDbt/znvdg
ITUPxq3gz1R+9KMf21dsWNOee+6ZPvPZzyAufEr5+zsvjv999z+AKWpHm9LNKTb8ah/403LpZZdi
lOAbTDpxus1vfvPrIv+P4OA7TuHh7/zTc38K0riR5Rv9L9c4HHXkUSlGTGy0xKZdOS53Y5rRMccc
Y2nzcuwxx6b3vOfdRf6PPfpYete731X4/x5TnlZaaUKR/wX43b77HRKblGZixOr0T2PKUKn//y2m
gXHBcwXzyvsvWtRWhfl+++6XSau3f07vqiobcH/3u99T1P/HH38Uu5C9uyjblb+/Eut0xhf5X3jB
RRjB8Tq1N4jRp3GGCk3U/87OLht9I9l55zvfmY4+5RNFWrT8/Gc/T8+BJH70ox81dxEJEYkmIhIu
vFgzfY1Efq44W6Wtf6kNVPtcHat2atNeG+0B0YmvBCYmKEbRYLHo2ibi41b5wuPpUNSYQe/Fsy1M
8FpPBh8TFkiNzzT0hnHx5HZ7Mm/k1Io0KHyVv/BX/bMGovYn+dNI+Xv11Vfb1BdOa6k1O+y4Axaf
npFWX231Kvlz8823pI99DKcww1BZ5Xz6MFmyp79iigzXP3Bu+Sc/8UlbgE35fyeU0OOg3NFQ+efX
7TX4JT0SYDvH/3/H6MIDDzxgrlQ6t5u2vdnL9b8Li4oPOvAgW+BNT06t+hK2szWDPoZTqKrXP2Bq
E/qkcv/DxcJVYTBq4aIG6ye62tM7D39neh5fmg866KC0/9vehnJW17/T8UX6KYzO0PBLNL/G03we
ivfs2bOtDzwfowbrrrcO0kXsUv5//NMfMX3HSRXL8JnPgEjk92fnOFD/d9JJJ6Q52MqX049+8IMf
WJ68BP5dnZ02ojNv3jxMPXqfb9+L/K/HIufPYASAhofgfRujRYxTi///YMrUWWedZeF4+RFI2pZb
bmnv//TTz+FrvI9A0Y/vyUXaNJH/gVgfEaMtZ/3wLIzGTCne/yL85vHVn6MYp4FoRv4dWLPyjsPf
kZ5HfTzo4IPS2/Yn5tX6x2mnVWMeW/Yy/6efeSYdiilwYWZjvYSttcwfKYn/gVj7UZQN7zgFa1Ui
/wsvRNmC5OwDkoO8yvl3d3WC9O1lBI6jUF/83vdtaljkx2l+12PB/lFHHWVOIhIiEk1EJKKaBpGo
PPdrQ8uwthMBqNSHAh9ude6z77kcriEOfGoTo5qoqZY4FQEEd37NYINzRzhkgdlLIsD4Rf6RCO/Z
UMDCakFyvMILZbb4Rdrhk7PiIyIrf+Gv+qf2J/kDeUjBn+XoYOTvgvkvp7POPiv99re/RRdRkstI
atKkSVA2v5VWA5lwbJONAsT0kssvv9ymvQxW/j744DyMdhyBlBNGDyal8847j8K7Sv63YU0CFcww
F1wARXzd9Yr8w50l/ToO1GMZaDjf/uKLcGJ3fv8OjEjsWV4jAQWvkoi/pxOJyjqK66BoB9HgGojj
cLbDYA3Xa1z1p6tSV3dF2VwLi7AvvpjTZ9g2mSf/2CH22TqV0zHSQhNEokw06M7fo7b/exm7XXH0
g4YE56Mnf3TQ/R+nQ/3617+xuD6Ccioyqcaf7/8MFHKuueCXdxquP6BSz6LTj+tVwsyeNTu1jKD0
rcifE088yYgOw3zzm9/EgYYgm/n9bfpQHkni70xl3VBB9LmYjnU8ppIN1gTmUf9qyzYLZRsxgl88
WTbHv7ps30iv33GnIn8fLfERCSM5WGBdi//RGAniVDeaidN2sA0FDjjwABtNK8qN7FgNOarSSHPp
TZWtm5nuw1fObWTyi6XFUStOzYu/cePGYSME/xs7dqytE+FvwDVM/OPHAcbhnQvQ+UeSGX/8uByk
k/bzrjvHfhbHOKUjZwy+vS1W2JID6rD92iWnoVnPneUsmqmwcEfsyiFFViB8Q0ejoJ33+Ovp6bGh
Se4f3NXVZXMuO8Hm+ccvGvyjsOHCrvjjHM/4Y5zhNEs6RwKvaI0gyuDPta7hW+dOkDI+tM66+7Kq
QByRoLEUCWMkzXt+pKjJj9Z4evHEIWQaDjhSwFjUiG8++YJM+ZswhJ3O7dGyZyWC8s8/k/D3Cq/6
Z22EMKj9Sf7k5rBM8pfTXf7rv75STGnJQtiU3M/ia7l1E8joYx/7WLr55ptNYbj2mmuGVP8efOhB
mzbFtLnI9jzMca+V/5x/Hvv3UxG5BnnY9rTRHcQdafDrr3/J99Je+bvfp/ErrWz9z2KjDTZtycPF
tZ2jFphWFIbphfnDH6606V98/gROyJ48BV/Vawxxjy6LCtSkTSameQ/9C+/4PgvJdRH8Im9FLpWb
nlzwzmlfNFynwffIXbG5lQWd5ZPjz7l9TjrxJD/7gtN4OAVtsL//KZ84pVgjwDUlXKdRi3/OPB2B
dScc0aA5DOeIfAhrRJjRYso6RiT4+9Cw22f//6EPnWjrXuhGIrEjpsCZSoD4tkYiE4l98nSw6P+v
vPIPxeJ7nko+JWNu78/EasxoYL7xxInF+z8LknNwieTMmj0LZfOtiCP/k046qVI2HM7IUYPI/4IL
KtPl9tlnH9+pCXla/hl/1n2WjTrkJli3Q0PlmtPcZoK4tqDORq3QiISIRJMRCW9KNrVpsVaVHRZz
tzrujYDWOv61TpWpTe4TRMIisyXmxhTS0x8RFlsE9mE+rTVWz7a4WkoMSFnDe8m4HxyN0MAbDnRb
vLD0QDjGt0gWKD/CQfkLf9U/tb8a+VJIErpL/ixR/r6Mffa5l34stiV+/IJ4/vkXpHXWxRanwJFf
wblgm+b32JaV6xoGK38fnFdNJH6GEQkqsmX5f0OJHPDjEqdfjRo1uq78r52vz3USnIJDsxiRuAEk
oaZ+cK3InphWFOY65B39zznnnJ240xQNd7raG2s1BtP/lMkNT27mbkBGEGrqX5lIFF/m2c1ZjryW
C0sPPOP/5VfgLJCvfs1CcZvRk076ENwH1/8egdGgIAec8nTMBz+4GP6R/6mnfjL9FQuYaTht7Mv/
9WXL/5lnMSKB3bbC+PQheJXkb1lZ/xaJxI6vL9pfmUjYqAh2horfn7s6VWFerHGpvP9A/f+zT9eM
lmSSU8Z/8bJh1CDrHxdcxPUbPiJRrHmxF63O/y9//kv6j//4j7T2Fl7XAgtuZcv011hjDXMSkRCR
aDIi4VW1co6EDSTCEd/80Qg4HEmxQyFAZbxKBkXLy22BoTw0wmUTUWqnNu2NEYmyOIvwzIRtb8D8
KfeYZ938y99Rc7ktcYbGqBHslLs0yt9xqLoKf9U/tT+TDv3KP8mfKvnLnZF+iu1Uv4HF0S0mXK0C
mVihzeVsS+rA+Qv8Uh3bYDLAf//3f6c3velNFvbggw8uFlKf9cMfpqmYp1+3/6mD/0PzHkzvx0Ju
GhuR4NQmmHL+t992azoJu/WE4Ran3Ga0ymT5x20/y1+gL7v00rT6mlDikHftQurrQST8Q1f0MFgH
sdgaCUxtyv3Pz1G2nwAvGm7dWl7EO1D/dzkXC//3Vy0ezxTgWQhWILxkOf8/QxmNEQkjEjY6seT+
74q8AJwZ8ERs7tg0WPxPxkLrf/7zn1a2mE7FhzL+8f5f/cpX0m9/9zsLyzMh+BWepnZEYjYW3Y+A
MsD6Y+ngchKmNrG+0Xzzm9/CovwdzZPvz+lDsUieX/G5xWzkf955P8OWv77O5H0Zc6a7mOmn/1t8
RIKjJXmEAJkw/xPLIxKcdsXREmTAfMokh2X7FMrWX/7PglD9CgvJOUJRNqyr/F059UdEQkSiyYiE
V/UZW73dWoMxbNReFztR1aM5sMXAE85xVgO1LhM2dKexhgg6EVHpBr/Zd2ehlxOwEQkmh/AkH8yP
rTHiDSl/bC1n67T7zR/pWwCEI0tBeCuG8hf+qn9qf5I/yyR/5865Ix1/wvHp81/4fNp9N2yiUZLj
FMmU6yF/L7r44vQtTPsIc9qnTkv77LuP5X8ytnv9v//7P/PiydH8Wu8Gghq/kQntbG1vX5RuvfW2
9CZsD9oCeT7vXxiReP8HLHiZSJhDzv+l+S+l/fff35x4+SLOE9h1l13r1n+e5/D+D7zfwq6yyqpY
53EF7OwwMpHYqzJt6QZMbartf3iORHmx9Q3X34D43v9cc9XV6QycNUDDnY/4pXx0Hhmp1//dfPP/
QWdot/nkH8k7TjGuESGckcD3L+f/l7/cgKkzPrXJiAR2Lwr8B+r/bp9zW+I8fxqOFvH8go022ghP
GfT8/vwp+BtzB6xNJk5Ma2AL129+51u+jgSheaBfHIjHtMq/P/PndrRcSE1DAnLwIQcj5Zb0zLMg
b1UjErPzvPdK/idh6lWFSPgaiXj/C0vTh4JIWCYo67VXz0pfOOML9hiYjxo9CkWrr3/8HzDnoYIc
MeH7k1iW129cd91sYADWTP0n419NcpxIRP7ctamW5BicpfxvufWfaRrWRtB04ZTsu++527b5LRPv
Aw88EAf6HQgi4eEscAMuWiMxOBCh60YTHVyE2lAr3hoJCmb+uZlOIkGDRucGjZeQZaJgbtmp8DcL
1yAUQRElKADvMPTDbfbdl1rouOy90Z5Q6uHjWVg88xswfwhMpO8m7oPL394FEaNMJDzKX/ir/lkT
r7Qrtb+KfFlM/kn+1JO/L774gik3VDrPxbafY8eMRrOqlv8hf3kQmJ3km1HmmQnTsHMS0+Wc90su
waJmGCqyPDRuUyil/FBlBnWT4TiHnCRj5MhRmAZypvU/8+ZVT23iF+iQ9RY7p1Ee9XjrW9+KLWO/
mPuv3J/k+v+Pf9yEcy8+btnyyzKn0bBvZP61ow03YEQiVxXzp2rKsyb2KpGNWCPBXO67/z6cTXGU
vxOuJ+OwtIMPxpkGNDXt717s1nPSiSfa2o7p03dNBx6Y+2kEfec734XD/o5frP/9y59BJPIaCZuP
T3t+/8CkXv/3Ek54ftvbKkRrxowZIDzAN8eN92cxb8d6ilNO+bjt7LTFFptjYbpvrUo/mp/+9Dwc
VreZdbhl/Jn/cTiLgutVaLjF7Pbbb2e4+YjEwebOC8lGK9YFlPM/8cQPlYiEj0iE/lH+6k8C9Wku
OEeGzP8+LGKOHY+YthGYQ5EXPD2+IWP4c8EzSQHX0xyEUTLmz7KVR6hs2pWt36joH+WpTRwt2Qn1
JvK/kDtK5alNUbay/tHZ2W07YHFUaJVVV0mdIBL8zTqxVpajc3G+BqfXcaRFIxIakWiSEQk2L2vi
uLdg+9cDXPDiCnGJxoU7vdG+2MTIw9yNXUQ2FsYD2Vco+FijRwAKXLpFFrOKXZssNZwjgS868Pcg
7ubpDk/+LLWVB3fnlMhN+Qt/q6Kqf2yoan+Ua5I/SyP/eSYDNwrxqSpUwFur5H/I31/84pe2fSuR
5jaXPE9hBAgB6x+/NPOgsPjmx1Oxv4KpT1tjG83of7gxCZVPrm/gl3zuqMTf7KGH5uF8hQ8w2TRp
0qT0s5/9vG7+l156mR3ixnDcAeZiHGq22upr4Km6/nPU5GKMntCQ7PDwtej/atc/XI/Rhtr+rw0H
0lUTCQ9j9Qt96TE4I+Huu/1gN+5cw3MiZkyfjtwq9e+pp57G7k7HGnE6//zzbScbjkjEFKKVVlop
ff/738f7blqVP6dNnXfeeUgLU5Te8AZ738A/8ue9Xv93Ms4piFEhxueXfe6sRGIX708SQDLIERcq
z0yrA6d9vw/4P5lP1T700MPSRz7CNRZMxdElRs8/j+1XsRaGZJDK8LeBsyPfhxOu6yjr2BnJpHPW
P7jbVZAQ/kauUHvf/tvf/i59BdOmaIz88XyOUv7HHvtBHKZ3t/kb5qcB812nF/kzn6exFuLYAvML
0miQYnevGZHIJCd0Cb7bccfjQLk77rD0jUjstGORP6dylctG/zL+Xdj+lQconvrJU9N++++XurA+
KPQvnlvCdkHMJk2alLhBgXZtEpFoMiLBZpLSjMkHWqWH/o87mnam+XxGM7UwUbH5UBAG+lIZ80sO
yWdrJ3ZnwrOLXZssg7TXxnt6GozhyTOYhx+G/HPxWHL8Ubqw3H5X/oCDRvir/lnzaHz7V/vLsm0F
lT9HHn0kvvreZ2Lk3/7t33AI2mfTylSGTLajPkG2PPHUk4kHki1YsMDCHQ+lkId6leUvF97yoLEw
3Ppx2rRptu6BOyDyy/7TTz9th8rxNGgqoUx7ztw56QQocjQrr7xy+h3SqNQ5z59l4QnLJ+YThBmW
Z1V87Wtfs+0kQ/7Nx5d5HmjHclK5+wIWidNEd/Hkk0+mw7GFaZg/YEeg8fnwMXtdePBdq8NciTAT
4GMNDKcl/y198pOfjCTsPh1Eggriqjj1mQegXXbZZaYrsHwsJ/PnaMbROEsgyBbXSpx5xplpm+22
Sb09fVjEfKONsnDUhGYCyMbHQA42whSoyVO5O5Tn31//9/Cjj6QjsNakvGvkhojLsyGI678efjjd
iFGlddZZB0TuF2nM2HEZ5z6809/xTp+wfLkr1te/9vW04074Ks9fKfct5/7ESQ79ua6GJCh+fy7W
5oGFYS4BkVtz7bX4C5sT358H0j326KP2zC/z+2Gqmqfdl267lUTUp2aRKPAQt7VwOjW3GV4f2/xO
nDSpLuYkIzxpezHMMaIQ+k+9sq2FskX9o/7zrne+G+t/KmXbf7/9i/p/O6bhxfocli1OK//2t7+T
eDL2odi9arfddrM1O2effXYat/4GVuGY/4L5C2xHMxKJfUHsOMVqR/wejTSa2jQ4NKEzmhgYXOg6
oVbcqU3eSKdPPoDt3X9sEB8AAEAASURBVBstnGC1BupQmAdd8Ae79w4WhoHYkM3P4vEZFv4H5DYn
E76V7V+t6dmIRF+LbeiaBTTTZTSPyyQ9XaZtHnRx+1Lkz1RoWA34jYOlUP7Cn/XNJAMrm+of0FD7
IwSSP0OTv5/7/OfTrFmzXMjiynno03fdFQeGbW07zfArMkcQ5s+fb2H2wnaWn/ksT5Wubn/059f5
O/KX3SLBkoU7+3z4wx/Gwm7OUe9LC16aj3UX305XXX1VEYpbkO4PpWttKLxlQ/n/xGOPp9NxeFoc
TDdz5j44qO6ItP5666fnnn0O04JOw2jB3fa1m0r6qphqwjrBS2dnR/r+936QLs5TsOj6IXyVP+yw
w1Ee9it9qaujK30f5yrEiIaFwRdlnp9AE/3P93/wPZy98Gtzq3ehsv3xj33cpxvl/Fkzz//NBZY+
Fcsw3CY0tpnn6EHZj8/TQVLOOOOMQfV/v7/y9zaKwa3q65l11103/SdOEd9yq60M/3L/z3UVPMiN
29+TeHwWhJIkiGW4Ejtx8WRpbmf7iVM+mfaaiY+J+ffnqdfnnH0OprZdUmTJqUjve+/77LyG7p5u
nF5+dbGFKwMxXZI8Ei/+Ni++9KKNdpBw0sQZBBz54ugFCRFHcJaIOaa02SGBFAIwCxeibNj16eKL
q8v2XpZtZGvq6ULZMEL2pS99ySPgyrJxl7JVMKpGw4PqOBJTLhvXaHBnMpZtnXXXwfqi3S0s1/h8
DiMWG2Jx9YsvvJguufQS29J3TRyw+LnPgaCvtAoIp4gE61T88cM37TS06xyJfJZE+YuAodPgS/cW
uZVYun0YkajMvUSbNIHDxkn5FZ0qWTef6YoPO/jBcqEsPN0tpF+zG2OTWMy6h2skIgL2t954j5ww
Mygn5sGc9zUuf8sMBfYS5nLHg/Iv/ZjCn9VU9c8bB1us2XBZlvav9gcAV2D5czaUwIuwa84RRxxh
Cvo//vGP4pTfLG3tRoLBaRq77LJLrlisYI5NhOvFlqPnYY4957zH6AX9+OX2OBwqtsfuexT9D6fw
lE8gjjTiTsJxGKbZ1NY/9q8//MEP00U41C2Ubm6tydOmOeWJIxJH4YAwO2cCsaksX3DhBemHmK9e
r2+mssrpPhwtWVKYXUGwzCDNSy+7NP3oRz8qCJZ7JNtq9lQQqi232KJu+/vr3/5uX9ofzV/nGW99
4DN9+gw7UZkLmreCos81ErvN2C2tvvpqQ6p/JFncIeouHOQW+PCAsDe96Y12ovjKWIDeX/9PEsi1
J7FImLsMUcnj1LeJEycaoaGyHJ0x12bwKzvP1qo1xJW7MX0a6zx4HkmtIdn6CXZj2nRTrKVBgpdc
cqkp5lHmyVMmpy//55cxBW7N4v25A1d/mJPEbrElMGedRIocnRqobKyj3Empv7L9+Cc/TptvujnS
QtmQL0lDlG3K5Ck4Mf1LaS0QhC6Qnz1x7ggXqnP043Vbb2OYeTlSeuPOb0yHHnYoSPnqKFVLmqYR
iYJEsG6JSLyqB9KFYt+XpoNI2BPajzUhkxL84uFheOW6h9RKX3vAJfxsVq05h3AopIS3R4xIOJGw
dBBy7412t9EK+5qBi49TMN3hyd9yQPn5WkaCkBFHS5Q/f0bhr/rnpF3tT/JnaeT/Q/96OD311FOY
k79z7hb6cCbE8+n+++5PT2KaD7+4Ttx4YlpvvXXh79/kByN/H330MTtbYmMs5F59dSiDS9n/9Cf/
O7C70v0P3IdpLffa9Katttwqbbb55vY1m0egVfo41Itl6P/6yz/6n0fwnlwQzHUPm222eeLX58Hk
TyX8kYf/lVZfY03fyhY/Hr/McwH8xImTcmXmzT/oDbX/4+5TDz30kBGqTaEQjxw9AuWCyYo2rVTg
KT/NWOWhDSM/TzyZ7rn7nvT4E4+nDTfaME3ZagqmRK097P3vyxhBePDBeXZq+TprY0QKRav3/o88
VsIcv/maPKMB5bdXIFDD8PtzdOOBeQ+m9dAe1sbITvz+xO/FF15Iq+Okdy6wfgK4L1jwEtbFjLVp
ZOMx4lSufzvk3Z0M8wZcNLVpcCBqalMNTsWIBNsLWs6MrQ4MmZlDumrlotTtbGD8oyynTDXZkR35
bG2PftmrCAC/WXddloO7714YkWASvNgHqUokusI0Nn8WivlRoNBWZKf8hT/rRlEhWPdoVP9ILRrV
/tng1P4kfyR/XdAU4kb9j/ofysaiQnjv04l1FAPJ32ma2qQRCQ7h8Y8LorgLRfxx6C/+6g2fehVr
zLVnS4h0Vt5sOLXJvixYb+9dvvf82U7FCkzBh9o4Fy1qPluBS8MI6Umyy+CXJ1dFZt1zmUWJMDM3
wYF0xkaiEGw2iGMBcqiyfRnzj3fxlPkuKI7yz78jfzHhr/qn9if5Q5Eg+VvprDIW6n+Wqf9X/+vt
arD6B4lEYGZ1sab+7bDDNHbaDTMakRgclBqRqMGpGJFABaVWbQfS0U69nrXdbiQbeOAiMvAB3ODN
8PRlWFhoZ5ywgFr7IS9FMuZti62LsFwjge1fzYfpwSM6L6bFcHZrXP6eIPOxwlrqyp9YCH/VP7U/
yR8KXcgCigTJX4BAGNT/NKr/d0DV/w5W/+gcP2HA+qepTdr+tYm2fzVpaf3GdE5t4iOUeo46xLBa
K4iBTT3KY28ULBSw0duQWORv2YwMd3ZG7tKLR5IKhueIROjwDMWpTZYGw8C/8Bum/JFJJQ8vpfIn
KMJf9U/tryIbJH+ARePlv+Sv+p+ij1f/Sy1pQP2DJ1tzLkd/+pcWW4tINA2RgA6ZK3RKu2Fqk9ED
EgdWcdTiPhuCYKfCcNQ4SRLwALsdwMNRBPP0jof+FBZlYmGkA+Guxa5NFj1H2WsjXyNhyZFswJ12
P9gH9wbnb0VFBr7zDEplnWV+HeUv/FX/1P4kfyR/h6n/U/+DPl3976D1j66xEwbUvzS1SUSiOYgE
1kiQA4ThYmujA1SoTKOHjynbULrhRiGQ1W48eCwjDbRTQNAJbKA4O6LKsyXNBpGwdBkMf3ttwj2k
Swaew5m/ERUrAGkOyouL8hf+BQKqf2p/kAguJ1ArTEj4B5JGyD/JH8hcyV+rWOp/1P8uSf/oxLa3
A+lf07RrkxZbN8Ni61gjER3njCl5sTU7U6gUuQvFnX2qjSvganXbOlknFvT0sLBlEmE2i2MLK5AB
05jN7V89MQawA+no4FOp4IDEq/ONctB92fNn2Y3J8IWzVfkLf9U/tK3cLtX+ynJP8sfrg+Sv+h/1
v6G6FLKSDjSD1H+Gqn90YGrTQO1vB5z23kijxdaDQ1OLrWtw4q5NptjTHcr1jK1wsrWxCj7nwNZq
sEMT5xmZY+5o2YiwB6yvl4A9WllYGa+ksNM66y6MSOR0SUL2xohEOf8gHeW0XMNpTP5Ml9Oa+B4c
NSneFS5uxzsO4/srf+Gv+qf2J/kj+av+R/1voWv0o39wsfVA+s807dqkEYlmGJGw7V9NrXZ9frfJ
WGwNTT90aXPFg+ncaPcxFOc6uCsEbAMeAAwhK+fhY3c6Z/28ikggGndtqv7+x7SGL39yCC7+psk3
5Q8EgHjGAcAI/2Gr/6p/an+SPyZ+JX8dBvU/6n/67X99+9f+9S9NbdIaiaZYI2EjElmg8VacbM0H
atpkArUGbvyq2op/JAFmirCwkEzEERP0xKMRE3jNuhNTmxgWF86VnTmxMiJB5xjzYIjhyN8zYJlR
drCbFt/LtshO+eefR/ir/rFB5uZtDSQucFva9q/2BxBtRFTyR/JX/Y/6XwjZLGPr6T+d4zAiUWtK
8nf7advX+i7Ts6Y2DQ4+TW2qwcmJROVrtO3aFAoEKqwRAFZ0dn6s8/xabcMSoBB4tuFZeNgXbRAD
c8t50K+vpcwoQCS4RiIMkrSpTYhNQsKrpTOM+SMDa7h2s/diYZS/8Ff9U/uT/JH8RStQ/+PKLbt8
YMHvgo3q/9X/Dk3/6MJi64Hw32F7rZFobcUn7fzHtY6009B+3nXnGH6sxzRHzjjOLct4FZGoAbB2
RIInW9O4LLVuJRMGypaQsOGfE6PkxVoJBDDDUNVf9ukHV/yvjEh4WD+QLseDvzUaPDKN3K03NP+i
YJ6BZ5yvhdBU/sJf9U/tD63APjFAVvA7SiPkn+RPFq6Sv6xQVUb9j/r/Wv2nCydbm+rUj/yZpsXW
BYkggRCRaGtLbflv0aJFKf66urqqhE2jH3q2ZIoVieZEIneglpl/rcdPlEPlsNa5em/QBwlooeCV
XXDH0L33vjkV74hn3X2JPcdl5sZ7IVIvCAQThKslP3z5WymQT6XBMl/lL/xV/9T+JH8kf9kzqf/x
Xt+x4Gh1o/p/9b/4HDEE/aMTuzYNhL+mNmmNRJOskaCwoKEG34ID6fwcCWvweGYlDgUjGgBZHzXx
qi90cLP9wXF3/uDjCUXKcGQOXGztBmnAZW8jErR6/p6j+xXi3B+LBrgs+VvellVOtCAwyr/SgQr/
4ar/qn/W7FHV1P5Yx2KkVvJP8lfyN3p89T/R/3RgRGIg/Wua1khoRKJZdm0y5cZqa0q74RwJ6+Ds
SlIAAW/EgaGcPGQVwEOYQuA+xhSQTvE1gwGzIblgi7jWRiQqKczErk3M2r6IM4TFscBIrvH5F29Q
Gi1R/sJf9c8bq9of5ZTkj6Mg+dvo/k/9T/7AqP43xMyA+k/XOBIJKkjeIuPzbEgoTW3SiESTjEiw
SlKJ8PtuUzAiUXylpw9EXyYLrMpR+wu6kMMW+r/rI/aBLVJl8r7wuiWPSESeXGy9B5JEaiZYLOCw
5s83sLLYO9uD8hf+qn9qfyYHOJw6nPJP8kfyV/2P0ym2BbY39f/96z++RiIrVQYYdSfA5ppZmqbF
1hqRaI4RCVbLimLvRAIV1Vgw3MskgtOZMjt25xzP3KN6s5YjHFZb27xKtIFK6n3pWpvaxIbhrjNx
IB2nRHl+Oa5ly4hmYcJuGpC/ZxsTqLyBKn/hr/oXDZWK9PC1f7U/iDIIT1elJH8o2CV/JX8lf+vL
384JK7nu4w1lMf1rexEJEYnmIRKVusrtX8EAfNsl3KlUuOGgGg2vdGRniKtbYYPJDvyiZ0SDbaM3
L9SiHf6+2DqnhNveG+WpTYhurkxjGPNngbl9Lf4nO0Iiby9VvIbyF/6qf8PW/tX+JH8kf9X/qP8d
nP7RUZwjUV//mra9zpGIrV+1a1N7e7FjE3duih2beH9ldm0iC3BFfjqmNvmwmVMFkoI4s41VGXsx
pV4wAvuC4NGcP5AFGOtgbP/iRmbBOEYQPJRNbaKuTj/mUFkjQf21BadO45Ae/HNffh1tbP7lshmb
YFFQQBZd+Qt/1T+1P8kfyV/1P8PT/6v/rehGg9E/OsatNKD+tb2IhEYkmmFEondLV/Zdn+5LM6Yc
ZIo1NXnjBqFlmwNc+B9+xo9d+/ZRBxuuZyo5osWD2ECYPjtjwjsn27XJE7a09tl4D0/L9Plcluzv
N1yNoDBd2Pl/GfK39/SEfVSC5WOiyh8oCH+rC7l++A1X1T+0DrU/yR+0Bf6X/PU+g3KBo/YcdR9k
/2f9jAsW9T/AoVX974D6Rwe2fx2o/9H2r1ps3SSLra1voJpgxndtQgvPQtI8suDLQYqwnAFSIRTs
XaiKOnnwuU05VcS307Dhew3WSBTJwcJzJPiMkxwsedqtRMOUP3Px/HG1HpHfSJS/8Ff9yy1P7Y8S
QfLHlGQTyy4wWT3MZKlOHdrkvWMF10HIf8lf9T9enXBV/2tthnj01/92cmrTAO1vO41IaESiGUYk
/EA67yBYX2fY9q+suyAFaOhs6zS9sLT2cWITDKYf2UQg+5pABzjxiww735pK710NCYaba+8GkcBD
PHOxdRifO+s+w5U/F4v7V5DItXJX/v6bExHhPzz1X/VP7U/yhyOfixvJX8lfO8RW/U/R/3blNRL9
6V8iEhqRaI4Ria3QaiHVQ//fbSoWW+dnF/UkAaHce1jfDrYqUCUOEiKf4IiEEYb83JoZyTV3xoF0
nufeE0EkLKmcTy4Ib24am7+VrUgZWRf5KX/7nQs8hL/qHxFQ+2uk/JP8CbmS+5xC3kj+Sv5mnaJK
tXhty5842dolMa7Apqx/bb+dFltrsXVHh5GJ9ldxsXXvlhVlmmxiN66RMIMaG6aibXvgYkiB361p
vKv1UQmPxHMhmIJ9ZXKbhbPtXxEpSMY+mNoUyZtjTpFpFiYCWKcTkek79PwtTUsCAgqF8K9gcPXC
WpoWRvk7DLwKf4JQ0XyWof4bqKp/ud2p/Un+UA5785L8t07IRIT6P/X/rAid4zG1KRqItRPrPHL1
aEnbb79dri+NuV1604VVCT185dyq50Y/jBo1Ko3H6d3xN27cuBR/Y8eOTWPGjLG/0aNHJ/6NHDky
MQ7vI0aMsD8RiWYgEhiRsCab9SRObWJ9da2Jt4pw8/2+zdMv8DJfjD7QZnZekAKf3BXKvidobtdi
RILPFhYhZ24CIsEn/PfwkXOO1OD82Sg9fy9flFX5C3/Vv0q7jFbY6Pav9if5I/nrvaX3cPmLu/o/
9f+mRYXk9drROQEnWxsyqDMYzgxdCo4mrDW1SVObmmJqU4xIZLU9j0hkGoCKy90obCGQaf5Z9FHv
hztFoNVmMmZ6mbsFZDXPTvnZbn1+srWF8/D7kEjk6BbJLsOXP0vt5WT+JBP+RYzFrxjlbzRrGH5/
4a/6p/YH0UOBI/kj+av+R/0/ZEF/+kc3DqQbSP/abjuNSGhEohlGJLakIh1f57HYerJPbXLmGyQA
d3PIDKAYJYDCHV/4S0GsVVhUV8jz7q9GO6696xLT16Ph7LPx3sXZEfRA3+r+FsAScccG5Y/EkH4m
QSRDvZWzE5ix8jf485cP4W8inpVC9Y+tA//Z6+V6geehtn+1P8fOPsJI/kj+qv9R/5/Pzqqnf3CN
hCkl/fQ/22mNhHZtaoZdmzgiEYo/dQRu/8p5u+HGe6FHmSqRT6q2/jAUiqweZLf8nZ/tAqpGVtpz
mtfeCSKBNN0vJa6R8LyglOTGMpz5Zx5R5F/RiZS/8GfFRI0dxvqv+geIS+1f7S/jASGr9qf2J/kj
+VvufzonTBhQ/xKR0NSm5pjaxF2baIwEtKTd8/avfPQ5eU4EuOErbbz6Nq9BEOACbYD0whMxUchQ
eK4YSx6PMSLh2kSfrZGweKa85TQRjo886IcLuJkWPty4glfOn1oICtaCIY8+bE1r6TAeIveXv4WB
r+fvb2Vuyh+QVHAT/qgVqn9qf5I/kr/qf9T/vkr6RxemNpn+YxqL6y1l/UtTm0QkmoRIsJpy3MAV
8Nj+tRUO2dUU+DhTggomjYV3K8L5sz3igQMLTDNcK2FbQCQuzrH8NnOTvUEa+BXC83cLTqmwNDwm
GXoRhk4wlTSZV+QEy0D5W8EY2k1OvZK2kQkWRPkLf1YD1T9DQe2vIiMkf0x4Sv5aN2FYsEfJ1cIc
++3/1P8AH/W/rn2EDlPSberoH53Y0Wgg/UdEQkSiSYhEVGu/c/vXEIre5Ctikjaud7DRAdi9M4ku
xWMFKamI1ojfi/Ct6Zo7QSQoUE39912bLGc4GZnI6dKN7coFT6TdT/4WkQkwuKt/mc3kRBnf8w82
z8zoWsg1RkdRo7TwUv4FQLQ4NnV/f+HvlQUwqf6p/VlrcW1S8idkg+Sv9X/qf9DDsm2o/x2U/tE5
rrRrE/rg2v53Wy221hqJplgjYVOb2PVRhS6fI2GPuPh0F/eNJ/qFS4SjX7hW4sR4h/u1pGswIkF7
GG7/6ko/FBB4mGJfSQjBKmkxoj0xa3ZQNFEM+sHuj5U4VfkjAyM6CFTkxTTyQ+Gm/ANIgoN/Pr4k
/DMarGSqf2w5lXqi9if5I/mr/seEQqXPUP/rn1ZNpVgK/YOLrYv+F9g6shXBqxEJjUg06YjEwVZx
vaq6Rl2uvOFCDcJ0KTiYXoUIvLOqu3FXNgK6xfWavGuTh2nBGok9PQbTsQSQW1bSuNbB8qlTInNn
eCyNsLRx8eg5fyaGhtuS736LQKWw8LAYyl/4ewVS/VP7M/Ek+SP5a/2M+h/vW3GNGmG4UF6q/x1W
/cOmNg1Q/7bVgXQakWjGEYndpxxsyrvpVNViIz9RmLg4ySp4frK+1+KGsIlQTi48RTvZOoKiCe4z
EedIBGGwCDlWye4jBSQYFF81+SNZj4FEaaE/3CxUDm9zlNwxkwsPa9NQGEb5O24GpF3ytC63C3+v
I6p/bFdqf1XyT/JH8tekp/cp1vOo/1H/i1YR/cWy6B9OJKxW5XZWLX+3225bVLzGGZ1sPTgs8YGa
36aX3pw76yyLnD90pyN2PQaKqCfZ24ujQ2DnPf56enoS/7q7u1NXV5fdOzs7E/+ag0hQWaTxdyCR
cGXBK2/lSj09RhY8PKt0xItUGIopxZUhPYyH4NQm+oYbiYQb5gofKPWVhdUersIB4IdAnhLCs6Uy
Ft3cEfacs0UqHJmy/c+5WPmiSSp/IiD8Vf/QRNT+JH8gO118unyV/LUuBn2M+h/1v6ZGeH/5Cugf
vtg61z/TWkr541lEQlObmoxIuDrN7V9NoaLinY0/hwrujtVKON08VI4SammhsNOdKn711CacIzER
uzYhakEESjEjySJ/WHw3Iebm3wUjv5pEPBUoRb41Ld6FefjFoliadsmdQ/G68Z4eB5EYy+KynMrf
8RD+qn9Fk2GLqm7Ean+UGpI/kr9gYZSVrA7qfwwE9b8Ul/gjQafiUy06q/WP4hwJxLDghh7je/+z
rUYkNLWpOUYkcs20G8+R8JOtvarTsUpdsMocMdwnC0pzjOrNh6j27m9CFGnVEomZE7FGIgflFCMn
FEyZZzzAwK0oAsLxMYzHQ/oWxuPwi6qFR+u0L0goB0vVyjv8zJvpYG4n45uv8jfMhL/qn9ofpYvL
EpMzIU/4IPkj+av+x5oFL+p/HYTh1D86x+Fk65KhqhKGVVFEQiMSTTwiUfO1lT1ooc2zGsdzVOuS
dC18XYGnj4f2Zz+QLuJj+9dJe3nKOSkSDm7UailGsDJlh1sxymApMwOELhXB6Ewfppm1tMKZ+dK7
Uh6WyMPARkIBfwuUwyl/4V/UCVpU/9jo2Eqsnaj9ufwohIbkj+Rvbh7eRCA/1f+o/22A/sERCet/
ygqOKSvWMYFIbGdiuVEXrZEYHJJaI1GDU+9WXiGjJyifI+EdpUvIQqdH/EJmRlRLE50rlQ0q+nx2
q3+1iIoPt2vuvASekRqmNtn2r6bWxxhEkX5Z+S+dQZ39kZgNKTA3xufp154puIFxC+bSik6+D0Ld
FKGIkvO3mFYU5U/qkMeAhD/qDY3qX4V8q/2ZSCtJrhAmJkUkfyR/1f+o/zXVppH6Rwe2f6XQCY0p
7rmDSttuq8XWra2txfQmzkLhs/XfsJ933TlV3wGPnHGc+S3rRUSiBkEnEhXHytSmilvFhmpswqJU
ndGP2gfbSqCSrRIubLVTm4rF1lD4XQ7lkMVXYD7D2Fe/TAjoR3UXN5D+1Mu4FoYOtITJ4fBY2Gix
lh5h8l35C3+rUrmmqP55W7eWwwYEcFrU/qrkH6qK5I/kr/of9b/DpX9wsXWIYFd42EkV2oymNo3Q
1KbmnNo0FWskWE/Lhq2k1o3+xYgAHyqVm09VJuLj7iMSFV/b/hXuDFIkYcSAX0OzyeSl2FEmB/X8
MyvIip+lY/60eQpl7uPrIjyUh+BIivI3ROInFP6oj6p/an+SP4aA5C+6EoxaQy7ajoLRs1hnov7H
+ln1v1AiMqGy+uHaBdvPsugfneMxtYmmEMb+aFfUv2231dQmjUh0dBiZaG9vT21tbcXfokWLUvxx
y9jhNAOOSFTagmvahaKJEpX9WEDTRHNJy+Gyk90QpppI4ByJSXubgPaWEpNJcrsp52GtkY0SiYdA
JwMIhc/ytwucEAZWE/xsgXzEcw5ufv7gX1htgba1VOXvk1kMsoxT/gGFf65Hqn9qf1mhlPyR/FX/
Yz2n9//qf623bKD+0TmOaySQKqGtc9dia41INOeIBHdtikrLVtGfvdaPzzDsW6nrF6YcH46LTW0C
kag0EF+rwK8+Lp2QFhTYOKfDdFl4Be/3fpxxaJwE0K21lD/XbVTK46MPTJtp8R7rOvw9lT+xFf6s
GFapVP/U/iR/qBjBSP5CLAAK9T/e46r/RaNAhRhO/cNGJHJf5DqKNUW/IGOtkRCRaE4iUZ7a5C3E
K225MkddphvDlO/0CzfaaUrpVI9IYLE1RySKBDx4KHFGSvBg6n2Rf35mIP633o15+LMJeeTnfR8j
4QF+piB7BM/EyuT+yj/jlOEnTDTCn7VH9U/tD9IjtwlaQpq4OKGwQWOR/DEcJH/Z36j/Uf9rPSgF
g8mGpdU/OsdhjUQkxTuSKwzkjkYkRCSahkiwbkY/aYuty5WVtdY6ylx9IyCnhsZWLtmL4UKvD6ci
YTogXRKJcn774kA6TleyBWvwsNEHJOIKHKPARtYPNytGzt+2bc35mzt8KbxaEQ4bv3o8xoA2nGNa
/gxrs1oR2BRl+it/4W/1QPVP7Q8SQvLHZCZlpeSv+h/1v6+e/lE1tYk6FBslTda/RCREJJqGSHjN
9OvuHJGgsV7ENHtTwN0x3POT9zQ5bPazo59zbY9Kz+BkDzCLjUgYkaBPdWIuvNBa8tat/h2QwZCQ
pYXwsMc0HBIN4w3IH1tzeWqlYvje994xknHYlCcmhzCMapEtYS+H8qfwFP6qf76OSO2PHycoJnAN
eSH5I/kbI1Hqf9T/UiVpsP7RMW4cpU7FuHriz7CLSIhINCmROBiVlLUVhh0mv/ob+2UHmt3pFxU6
O5tPeFtHizC8h1u+F2sksh9HJHxaAEkBo9AjDzWEtZQ/k6Ez07XwjAO7jULQgQYONibBRzIFxuCN
xt4hR6KbJQIL7mZV/gBF+FudYf2pqf+5Nll9svqSq5LqH1ocAaFR+5P8gRy1DzSSv2wQ6n/U/5po
HKr+0TEWU5usH8odjafi9QlOWiMhItFURMI+qKCx24gEG70p7y4Do+4W91ynQzYU7oUFAexTf+Fg
7Yds/Zo7L64IVXjvi5OtqfS3UvkIRaQq/0wKKkmZouI7MpUdy/YYjnY3Sw6XXn4tIKPgf+RlO0Dh
QfkLf9U/tT/JH8htGhOYuNv3BMlf+yhlwOQL+ir1P9aTllEp2dX/+owGh8SaEy5Lo3908ByJWlPS
v0QkRCSagkj04WRrVvQwMbXJVe6Kj3UxeCQZYAcTU4UiXtWdgS0MwmeGQiemVp7aRC+OSFRyiVRM
tYe79WTmyPgMWJ0/Y5oPvErink69eEYGtfkzGRqG53oK3Pi/xih/UAvgIvyjfqn+WaNR+6uSf5I/
0T4kf9X/UGcwo/63YfpHB7d/hanf/2hEYoQOpOtsCiLBcyRYSaNL3G0qpjZx+g/+Zw6QqzFD0JRD
ezg6OfGgP8NZtXeyURAKemFE4q6LI3lLfx+ukSjFojiOAOX8vaNCwFJoc8vZlfMPkW6LqEEoSBg4
2BGjEPn1nGhg5ET5V3414a/6p/bnck3yhzLTZa7kr/cT6n8qvaX6X9SJYdY/2jm1qdBQqvUf9toa
kdCIRNMQiainFBG72WLrLCzihrv1JwhYLGSmG6cHwce++rOOZ6WcFZ9Cxg0ChuYOh2uxaxNN+O7L
cyQinyJe4WABrUO3WMueP0vMRC1/XvhYZBflLhyUPzAS/lFfVf+Wtf2r/Un+SP6q/1H/a2rIEvUP
rpEYqP/ddtttkFDjzKU3XViV2MNXzq16bvTDqFGj0nhM34q/cVhcHn9jx45NY8aMsb/Ro0cn/o0c
OTIxDu8cjdCIRGdzjEj0TUbHhlZtOjWsMbXJlzhQsaYpfbXPOnbhkp/9RjWBxCJXNxINJsAT4mDn
DkvXzAWRyHF43y8fSMf0WloqU2mGK39/Ub4SMrf/LJu/ofIX/l45UR9QJ7w2sy4Xtd2EetQXqzi5
LvttyfVf9Q9wGljW+GBV+4v6JPkj+SP5Q+Eg+Rv9T7udI9F//6MRCY1INMWIBNdIWMP1W15szQfT
pOzm2pOFwjP88ggD1Sb+t0oPN1usaFGNFmQ/T8d3dOlLV+dzJCLP/SbOpNVIhgtRKhaWSPHYyPyR
uukxvJLYxE4zto2s+Sh/4a/6h0ao9pergeQPgaDJsnEZ5L/kr/ofr03qfwejf/iuTf23v200IpFa
W1uLP66L5TMN7eddd07WT80pHTnjOLcs4xUj81R7l96cO+ssi+zKc0pH7HoMCupJ9vZiE0jYeY+/
np6exL/u7u7U1dVl906MRvCvo6PD/trb21NbW1vxt2jRohR/jDOchmskzODG/mH3rQ9CdwGKAHtt
RTfiwFeFp53DgPUHThngGONvHtHihi7C9BmOpmqNBJ55srUZy98LMZz5sxhWRGTKEvENlL+DYaSK
v+0w/v7CX/VP7c9UcskfyV/1P+p/B9Q/Osf6YmvTxSgxavSvbbbd1uM36KqpTYMDUkSiBieb2hRu
qKQkEvZFmlo2DdzyLKDKM2y+dSonJljNRiCnFKalWxfpcbHS2cgVQ1J1v2Yutn+N9gCXfSdxRKKS
hkUtZ9jg/IusYPFX5FX5+48CHAwOXBwcg6b8cxAqQ4vaIAIN9fcvoIbFs7AMLS3WIeXP6ij8Vf9Q
D2jY3krVwZ7hvLTyV+2P4BFWyR9K3ixwMyiSv83W/3BEYqD2v802WiOhEYkmGJGw7V/ZUbleiKlN
B0dfY8LWRE2fHyrhpzZa3+bhsxyiQLJRGYxK2OAM06Mb/iwmSUYesbiauzYxHq4U5pzaZA3F8vdC
5KIMS/7eKL1k1pnAqvzj9xf+Xi+j/hIPYtO4+q/6Fwhze2HIBbU/yR/2FyZ6JH+idXj/KfnzWpe/
HVgjMVD/o6lNWiPRFFObYkQi5DiJRJXJDCOIgfu5wCdrsClOVRHygzEK2tlL2H9THOIciZxCMSLB
70OWVW1aDc6fJeG72EnEZmOGptIof++3qn8B4Q88vM5U4Fn6+h9pqf5Zi891Te1P8k/yX/1fdddj
T6/x/qdj/LgB+x9NbRKRaCoiEU2YRMIOm8OnU6pL/i3WiYBf4crPqvQgWWBD5zNNtvoTOgb4YRmF
qeu44Y5dm+68NMfz8Ptu6outGT3McOZvB61ZuZGbFyqyLe7KH4rdMP3+wh9f4lX/ykKhaHdhUftT
+5P8GZ7+V/J3+ZK/XRiRqOxlRs0qK1lZ/9LUJhGJJiESViOjD8fUpkNcv47PI1S2zcXDeVWuaOD+
XdECuXJQqfWZQMTXXA9zzZ0XV+nv+03aB8+l+FmBpTJhxm68NCZ/psnUTExjuhUXGCv/jLX9uN6B
Cf+Mid14Uf1jy1nW9q/2J/nD1iT5CxTU/6j/XYL+Ybs2mcZSv/8RkRCRaFIicRCEPNUFV7BdcfBr
uGH9tA1GUCkwE9548Fhe6bMvHCE00WAYjNu/elfqvvuCSLh/hI4pD8OTv6Vu5YlSoFT52Uug/Ifz
9xf+QFf1zxofFUpKDLU/ykeXPrSo/bGnkPznBy4iEdfAZFn6X8nf5Uv+dmJEYqDfX0RCRKIJiURL
2iPv2mTnKrBzi36e9xBqNjWDT3DL0zSsshdTNjykx2AoJMTF1rjbrk10yqntu+k+noY55Xhk6aHc
w8msvCNMJR8+0Y9pl90ZyEN6DIaq5B/JRmr+VYgvCpPLyPjKH5gQFkAp/L1Kea1iZYv6RGxoJ1Th
DsxU/wiCVx5czZ7bltqfI2OVJsslq0OESfLH64rkr/qfEBQQq6/l/qcDpz4P9P7bbL01JUfDjLZ/
HRyUkNns+ZferGjnSPRNjtEDtFgY3/7Vuzl2bISLX8hcLciTgOBOFzuAzmJVILVUqFPBnQ3AU8rf
VuBeIRIepxiRMEUsR4KXp9P4/Jmu5WzvRTtcrKC408NarfIX/qwLqn+Nbv9qf5I/kr/shKznUf+j
/ndA/aN97Dgg1L/+tc02IhLa/rUZtn+dbCojtSZKNxCJQ8yGB3s22hVfylil0QvY4SimdFPRQjBE
rSgIsGfF3L0y4YAb1yNcfedFHsG09pT242LrnBYTq94FinEZPFJf9vxJabzALsjxoPwDY+Gv+mcf
CaxVWMNQ+wMMkj8hJJdZ/kv+qv9R/0uFaXD6RzvOkRhI/mytEYniVGsSCp1s/SqdbO3bv1JRp6kQ
CVMg4GJ9aCjfFgahsiz0XoVtgg2DdycC9A8OzTTZZOwZiV09l0SC/h5iP5xsbeTB0oywOQ+Gs6JF
hhZ1mfK3jgzJtSJh31HKy+zcR/n7byX8h6v+q/6h8an9Sf5I/qr/gRygFqD+3z+QUp+q7X87MbXJ
BCaQClPWv7aZqgPpNCLRFCMSnNpUMXvwHImos2joRhbY3GlnNYcfKzsuvo9NhHVvCIWIXmkU9HLT
ByLBxdY0lridI2FJeJKRXSmIh2tU/lY6JGmjKvm9lD/gFv5eI726qf4RAcNC7Y+NQ/LHK8Syyv8Q
NJK/rjKyXqn/Qd1S/1MWt2xsJn/jHIn+5M9UTW3SiERHExCJNIX7Knu9Zc3dY+tD8YA9XNmwcaIv
vtvjmd8NfAyB9ICuvMeWmIxtAtEkIkLjoRc9jj9GDKRjU5suZvBs+tL+m2H7V7IPSyDSHL78jegw
G2bJd0E5lb/wV/1Do7BhOX5YUPsz+TAM8k/yJ1czyV/1P+p/l6h/dI4ba8pKf/rX1ltPzbpUY25a
bD04HLXYugYnX2xNR2rXKRMJ2Atlm3QBKjd7QOw71+c6BnoDWIwq5IA5fjEkQaWEcWrM1XPLRCKv
kbAwTk14YI5lPkz5R2mZZdnOJ39W/sIfNSFXDt4aWf9zsqx+kYXZVf/U/rxuSP5I/qAmZEHBm+RP
4/SPDKvJ3LK9WeVvO7Z/Hej31xoJbf/aRNu/ui5DtX/3rQ8OGWaOHFfohUv+TgkuwQ7fv+JzXKJi
Fm+WTgoQm6MTRiowtQkH0kU05ucnW9PGVN2rnFKj8y8yQV4VrqP8hb/qn9qf5A9lr+SvfyIDFOgu
Gtv/qf/JFYzYoqL5t0b1v/31v53jJgyof4lIiEg0DZEIBYKCc08jEhUXa+z5BJzq5s7QEQ53s/oo
hc2jhZCgEI7vjD5FqjVdlRdbMzyj7DtpZkWgMA4cKyodnilsGpi/lRBpplbmQkKEO/Ow8it/4a/6
p/aXhQElnOSP5K/6HwjFkAqVtoHWgRbCzhR3sy65/1f/6zJlsPpHJ3ZtGkj/0dQmEYnmIBJYI1EY
yIQ9cSCdq9iZBGRZYUo3etUYWTDxAT/eeaECyrs94yF2cLK550UGONnapjYxFFMEkdgM27+GYTpI
YTjz96yYf17pwUKEUf7CX/VP7c9k0/DIPxc1kj+Sv+p/rIWp/w3tw/Womv6HB9LBySSSb7vvihYl
CHWuqVN1joR2bWqCxdaxRsK+RKN27rENdm0yY9QhKxU+rsAKHQTArbjiUz4FAg2nMBVfLkxAkFDQ
AxfwFRKEa+7w7V85AsAgdiAdfTyqOzIxbzoWJ3fpTCC7hxUOQ8zfyoOEbLoV73koQvkDSuJrv1vg
HKSucb+/8Ce2qn9qf1m+Sv5Ye5D8lfxV/4OmUNP/tmNq00D6z9YiEtq1qdl2baIw5/avQQhcmXfF
x2q4aYGs6bUKONzcuTQyYVo/nOnH8GwkTiSs78zJ7o8RCVfmzduk6XDm7yMlzBwGZfIOjIVX/sSC
P5TwBxC5V/OakRlWA+q/6h/rlzU3tT/JH8lfEzXeICR/1f/U9r+dWGxtgjLrUdBS7Dk+gGqNhKY2
NcXUJtv+FVXTq2deI4Ge3k+ndn2KpwWi+7dpTVQC7CmHYYWuCED4ZZ3LpidlpdTDww8Br8aIBNMI
JZ4nW+colXtOG6FMn2tk/pWGyvJYDpV88WhFU/7D9vsL/yBqqn9qf5I/7Agk/3O/o/5H/S/qgOtU
bBUp8WTrgfQfTW0SkWgaIlFIclTc3aceYo3ZRhFgM107ApjExwWKdhwolDV9IwdGIlj7SSCwQI3P
1hxwodJAu01tMm3dnzki4ZEZEVaGpQWRjYzQ3sD8neggE74Dc7Cy4GKZKn/hr/qn9if5I/mr/kf9
b+P1n6HqH1UjElSgTKmq6F9Tp+ocCa2RaII1EsWBdKZQY0Rim0NMr6fu7pU+K9d8QBhjy1ahYWe9
tisstggCwhdhTBGhk2mlpX3R4XT1nRiRwN3CwLKfHUiXHRDe2Dc94Tcc+ds7lPK35yiQ8hf+YJas
w6p/an+SPy4oTYw3SP5L/ka/6TJG/Y+rCcSB+oL6/+r+h4utB2p/W4tIaI1Es6yRQBMuzB5bH1LY
w0I92+kAW3ve4g2als3TMwGASyvcTQPzWKGb8yl2G6D3NXOw2Jpxstlv033C2u+9kfkX5+j1m9vi
Hsq/cb+/8Ef9KtX/xWvb4i6qf6p/jZK/an9qf5I/i8vYgVxeTfnbgTUSA+U/VSdbi0g0BZGYPCJ/
evSmxKlNFDR2mmKWOKzI1H3izpA28kAH2vGXxx1yOB8Uzd4Whh+0uIj36rkX2nNc9pu0L75C8Mg7
167IvmkdrvxZWn+XnBFeRPkLf9U/tT/KJMkfyV/1P+p/m0X/CCLhOovrYSan4ECdSlObtEaiKdZI
9E0ZESo862cqj0hwhiBnioaxdQ54jErtNh+JMD8EJFngzjQ0rpr4UXRcvE3na/KBdAxB/303JZGA
JceBrTDDkb+XiXQi3oNEAg/Kv8A9LMK/8fVf9c9rl9qf5I+JXfQCkr/qf9T/UiJWG/a/7ePGFY5s
J1RTvN3QuQVEYkrh3wjLpTdVf+h9+Mq5jUi23zRGjRqVxmP6VvyNw/vG39ixY9OYMWPsb/To0Yl/
I0eOTIzD+4gRI+xPaySaZI2E/8pePffY+lBUT1/rYO6suFaBy9W3omBxTiPVcp4Q7VWcsbKdXtlu
IxJI2UckKmntn6c2xTgB0xjO/Dk1q4XjJ14gFtCM8o/fRPir/g1f+1f7k/yR/FX/o/4XOhLVpGz+
P3tfsiTHdWUZSAwJoL6iMIOT+g9kbUYQpEgQoFqs2spqIatPktVC1ssuiWrTTgApM1mvtegmKf6A
PgJITJl9hnvdPSIHJIFwyqk6LzPc33w9btzR33Sc/fFUuzahqqaNu0FpaLXMiERGJBYxIuHtX02a
NOLvvI1zJEii5f7avGwjs6geRjhPuDZts6wD8lWVphh7a14pNkEht39t54KtPq5zJHY4vemgTvtk
wUzw1TWcHj8R4dAJgmoL/OA/9GcnPvwX+RP5S+utdNioycga1Bmvq//cPPon+rfsplfYH9y1qalQ
tLdBf2/dzq5NGZFYxIgE1khMzP73sWsTk+31jnsYm4x1WBlmM8lhEBOwLpvQdfCbFqWrDxZytEIj
F7h/palNbsEeP7n6M5W341CdzQafMPvANX0HQNJoSinOwCeC5vv9g//QX/hPQtEyNPIn8hd6MfrP
PBH9u65/n13+J9lWMLUUNu2v23Eksth6EYutsUZiGrRGAjwtwiVv06qsYbXB8EZeOxosU34TOuuz
FG3VGknVZRrxcWoTyzEigalNKsJFdzefDf7wNgmw13yHwA/+QRPU6UTEXPQf+oPsgMwQmoFn2VDE
e/gv/Bf+i/yJ/F3TP1ojcYL9lRGJTG1ayNSmHpGAFIcqex9TmzQKAYbuBdKjA8EanArEMmh+BQ/T
MqWYiB4JGgk2F1RLC7CR99Vf/7fSLGUlrpHg9rBMtnNyPHzW4BSo14cvGAKHiyACdOAH/6G/8B8w
IBkG2WYZg5RkDUUWyyJ/In+jf6J/fzj7wydbt/yxFJri//btLLbO1KZFTG3ixq0mVFqTd975RaUn
N9rctPQZ9Bqfd3xE0XVbcyxcrCubyVCHIsb9T3IklIkCTm3CydYIPcbRLZln50SFfUGmPJQqRD9M
8rYJX43x3VSICnwLWs+x2pm8Fa3vFfh244xYYr9QzAh/ru/7+wf/QFnoL/xH4RT5E/kb/RP9aznw
feyPPayROEn/3s6BdJnatMSpTXfewWJrGN18/8bBBcamQTal7EqY3m28M3NQlo6qTTVVcXXy1V97
ezEXfoKTres9XzXhW0AuusabHy250EMMduxh+ChfcxbQG9MMR8BnR8wmjAM5FP6OgFZNAj/4D/2F
/yJ/In+py6J/rDClHktLSoGW/o/+ndP+eHbxn4z4um7aPxmRyNSmhU1tstV9h4utJ0SrXFAv3yaM
TgXJmSUwuie5bjaWVTeuW9lfademsURrJOiEsL9uWsWS4czD5xB8ODF0GLiZop5RIxVVWTmMdxj7
5mKlHbTrUvkggQ9EjThqrAX/NCSADXxCf1NOB0LCf5E/kb/RP9G/s9ofz7D965H6p2ycLLaOI7Eg
R6JNxxWmNo2OROfSlpKxzgwmGNYyOH5RRteQr1q6TNtvOhKfXPtIfbJZdz22NBhsEjWAo2GnMQVG
1Mi968os5DHOQo+q4AqFpwlcLHOhalQ1NQj8xtuIGsaIl+DfeBA+QD+hP1BF+M9EIYEyyr/In5Yj
kb/RP3hhB4aI/n19+2N6sjX1z2AkUTEjZEQijsSPwpGg3W2aHWOi4M3LScVUttSwCJuOxD1MbeKb
b130+lfVzDDIV9M2Z6WlkWlvQhU9HsHpSEjSW+Cd9auOulYnQyErILiOqqlStXFh4NfvGfyTUkgg
tedxD9OIzros9Bf+A4kMIqZkCWhEoiXyB4gYkFMS1jiK/IWqEZEUzUT/GAPRPxIeWmwtjBRCmj7q
HkcijsSPwpHYoNvvkTya8A87EjhHotxsydOCYOONCb/VsF+gd8EWvC5ybTkphAfe043vgvo9ut+M
saxqwKdBKRI7JcADvzHTOKIMI3IYgn++VQv9iRJsGI+kYRIJ/4lPiIzIH2Eh8jf6h9ygj8frWrdA
lkb/ntr+0PavZKljQhyJOBL/4I7E0ZS/6UhwsTXljcx9vLnzAm4Yr7ZtnV8ugAUTC9SAVwTXVTs0
0tsd5dsU1mFzSuPCZn79g3pIjEAMJ/CD/zKKR9LQBIWiIFJc6C/8R0Gif9EDaSXyx/I08rdEhTQK
VUwpMmaTZqJ/zDPRv6eyPzi16aQQRyKORBwJcMg9nmyt171+U8EdoxT8ag9R5FtTIw6hXHacspRT
DgMKrMzVRD6CTUCXU4hLpJdgl72IqvQ8Ap94Df59bkroj2xRr9YZCf9F/oAMyBeRv9E/EgmlX0kR
0b/mjHnsj6dcbH1CiCMRRyKOBBjkEzgS1lGeQkMJZVOuDToIK+ivNvz5hocOg+/ogN5Bp9kSDoiF
Gwta0JUCVA7rKIJ6zKcBzYqB36M0Rk8hCbfgP/QX/iuZEfkT+dv6RnoDdNHp6J/o3y3bH5natLva
3d1dXbhwQZ9z586tzp8/v+L97Nmz+uRAukUcSMeTrcdw1K5NY+nRsZanR5eu525Obbp37We2VCWE
q67te+VPpwz43cdGdSl25JV3IOcAcQ1o0AhGl+PzoZYyOFbBYJdDlnLgG1FGC/0rITr4JxHRySR6
iBQlhSulQn9yxMN/RRslcSJ/wChASeSvxeqgb6J/gJDo34EexCTFJRYhYprWv5naFEditb+/v3r5
8qU+L168WD1//nzF+7Nnz/RZ5oF0h7d/nYpCWVKvuJAfzCiuOE1PHQnmf3L1YxhpPg0CNhlA4YJ/
GW0DY3UPKmAlfFTZTMecaqeWKOYBc234UWy1oYOqCoTlfURQGvjCVfAP0gj9hf8ifyJ/qWOoZhhs
1TFSedE/wgURBJTgP/p3Jvtj7+IlYte0h+tmyNSmTG1a1tSmotW1EYnj6Vf0fKj4UAaqbeRNHQmW
cY3E2JlEktO8qu2YpxgufTgYi7n7Uk+7YH0aw37fUdfKo7iTY6EKY5mk4BGwmBX4wIG9C6Ej+AdJ
hP7CfyACypLIn8jf6J/o3zntj71dOhJHB8qfW7dvH134mrl/+MsXay3/9sfv1tLbTnCa0uXLl4fP
pUuXVv25ePGipjVlatOPbUQClHnn7c0RCZIrTUgERO14V4R5VVTF0ySzpGwnVYZzJMh8tFE5tUlq
mYnNrcaHHmor11fCn4w8ECjro3eNRlS6bnI+8PPoHvgwioL/0F/4b02eSfxIgkX+lDB9hfyP/JWu
IeFE/0T/bsH+4DkSg1A6wv65fSuORNZILGSNBOhzGL29884vRsItN4Dv3qgiGFRXsUl8mjmtVPle
HM3GB6s/fft7tXZvmNoER0L2y9DHEGEDfGTm11Qlx9mWnx1cNOo8bYL8fkjNa0edKXw6Qgx1cz9M
D30MEeQGPjHF399TxYJ/84LpJ/RXfDNlGTJXpcN/QEXkT+Qv1wRQ4YAYon8oICw/+x79X3JURslU
mJ5Z7eGt/En2V0YkMrVpEVObzrx11kIOXE0Sfh+OhNwG0XMRdccpBaUYcVsjelZAUD0am6xWeTLV
ncMqX30HR4J9qM5q9el1jEiUFd/tToaPniWY+QD9CrVgqYNN+DSBdwBvfKtIr8Gw2Be/i1N9DXy4
jUKGMWJkIa7fP/gP/dEwCv9F/kT+SplJQEIdSVxG/1hr8MoQ/fsm9gcdiXX9iyRQ2/bX7du3jOYt
XTO16XSIxAwO/wSnq3641m/+/Gtlshf+oL/86a9KqYJlMFeG3fPenx/FYmtzvgj2ztuTEYmi2KEY
aX1vYEAjFCxgoE2BuP2MykSiD99RHVRgG62RGDrkGomPu6H6mAwNII2KAKiWNP5xFPXBMB2JP0AB
p9XLf2RZjPN5joavZ6l+1V5t1dD92YKuRw784D/0F/6D5Ir8ifyN/on+/YHtj71djkiUiXWE/ZWp
TRmRWMSIxOp2bf9qW1xrJGyXw3ygEU/ipV1ON4C2O6kageaV5tWTzEXpLpSD4QxUqkE5lTvOEQn2
w8BsTm1SrLph4SZ8jiXsbAk+gU7h+1EMnM8T+MF/6I8cOfJ/+C/yJ/J3O/ov+if69/vYH9z+lTbK
cfZXpjbFkViMI0EDmsYTKfYDTG2yIVUuARIqo+uAch1axorIlOGNTE0NUnu5F6D6ErqswTjuZAS2
+fK7L6ofMkcdSDfAd5+EJ8ZBPkc1mObDbQO++vajCL6cpcA3joEcolo4Ar6BpuAfyCA+Qn/hv8gf
ygZJCAkJsYVkPWLKfrX8l2yJ/C0ZCzTCqhTq6tLx6L/oH+rfp7twJEgUx9g/tzK1aZXF1ktYbI01
EqJT0ioCd22SOkCmPGdJNiuIVgKy6C3+1Ib1JvoFeTBIkUmlY4GoTqR8/gRHgkFtcP/k+sdr8Fkw
J3yPqAAGvoyeChfehxD4wT8ognRCGjWRbI/+Q3/ktPBf5E/kb/SPTILo38H4oGhct390sjXyZEnR
VpFOGhTT6lZ2bYojsZgD6UigpuHVnXdrsbVJ10YlFT/KRcy6j0aWCBt5pHCSe0WHNJc5H9TCBvbx
p7/CkWg+QJoH0rGt+q78dj7W79uBr+WBtBBt0ZWxGPjBP+kUBCleKGEuujfVu4gUqSpjXWYwnJL+
Q3+UHUBa+E9kY5qL/In8ifyJ/KUe4f+of55g+1enmX9Y/9y+lcXWGZFYwIgEd22yRiMRn8GIxM91
HyymLjyACYQToEnOgydAIwp7YPbbtfU2rDYxGKrlV99+MQzrIgvnSMCRYGBfNC7G1dQG1YVbgk84
GllRv5NL4Af/ob/wX+RPyQHK45aPFJrbkf+Rv9E/0b8T1pqw2FH2j0+2Pp7/MrUpayQWsUZC279O
dIZPtqbvC4HXRE77HgmOPqwLAdYobVNOQ9fpEt3ZvnY7+AojEl3G7ulItP89QpwPPp+23SHG+SyB
7zeiwT+pgSH017xR6Nga/4f/In8if601m8eif6J/1jXOmJIjAUI5zv7K1KY4EotxJCzWbN6//87/
aNdgzLZtZTuzLIEDjETs4C0VhWAbG44W1WsOR4lKVNHLXiQ5IjFtcI9rJOidqHEffLZ5qCWhAAAj
CklEQVRWZVrdzwRN9Lrw+3GHjvBggR/8h/7M/z54MPwnDDRbMNFx3iN/In9fU/9F/4iziqHASNG/
J9ofe7uXjLBj5M/NWzcboVu55xyJ06Ex50hs4MlTm3pWHndt+hyjDjAqBv8AZe0Og+kdBVWzThM3
+qQPTafC5oiBeHRiUgnZHJGYBk9tGuGrnxnh9zOvP1Xg+61Y/Y7B/2z0H/oD96+LDmSE/8J/fCsd
+RP9B1kQ/TPon6dYI3GS/XXrZtZIZI3EktZIlHV/B9u/MtjQLvcACfK2FL4jlQa9s+I+LnhDIy+C
tcrhGDNYxk7gSHwDRwLlDgfjGgm1QzXBUVV0t334ntfkZxmA1dPwsQLfyOAvFPyH/mTik122xP/h
vxJ0YrASdpE/wkDkb/RP9K+FQevfpzjZWqbTMfL3ZhZbZ9emJezadOatc6DcUaHZkRgNKHsKbVKS
yKuujAuSO3IYR75GK6qGD7JDXfy7FmviHIm//k737ufTa58gmyeCq5PKng++3vzJ0fH3IKTAD/5D
f+E/CSqJhcifdiC3Lf8jf6FLo3+g76N/bRGdbH/s4RwJGkWWSGxhvMlsgc2UqU1ZI7GQNRJ0JBhI
oGdWH7zrcyToFcjIRn4fQgSSr2qIoZw1mrCHUQjyBbpyb2zQTVifayR+3zks8ohEdwzGOIPG6ncm
+PyOfHaOiujphwdFJPCD/9Bf+K9kxBzyL/In8jf6J/r3tPbHnkYkZKnIXrFhZR6inXQrayQyIrGM
EYna/tVkCkeCU5toXfMKVdqGtrJs5JusUQGFVLZMc5GmDHE2RFzVWVBB/aDm4REJniOBFhyRQODw
Ntv7un347htA/EBDMvCDf9Jc6M+cF/6jaIj82bb8HwRu5C9ZbEBH9E/0D8lhU/885WJrouYY+ytr
JDIisZARCToSZVjDmNeIhN7Mg3ZBvB7itrNg857kbgdCMdaxDGByCPXSX324ezgXqOhdm9iTG927
/jN0h/65xoJrLaBgKFTZ5xzw+YA6dXulbaUEL/CD/9Bf+C/yJ/I3+if6d0n2h9dIHG9/3byZXZuy
2HoRi617jYQNe45IcDzhDA3tPvyhzX5Y9vs7IOreCFxusi1+2P6q5Rt6QB2das1u6GywGPW/1Pav
TDHzzOpTniOBCpwa1WFO+IYh98gw8RiBH/yH/sJ/kT/GQOTvfPov+ocYiP4Vj+lt6cn2x94lrpEo
++kI++tmdm3K1KZlTG3qNRKiV2z/iqlNfFnPLZ5x34ehbTKmcGWinIBOdRarKYBFakSBVQ/QgRwK
xlF3uv0r+eje1ZrahLbsWSBmhC9/pZ5ZfFxO0fA1GAn82X7/4L9oHMQe+qN8AD4oG3wL/0f+RP5G
/0T/lP31WOdI0DI62v66lRGJOBJLcyRIru9jsTUH0qzYcdW0I+t3xVGyzxEEjEywkkm8rAB6Cmrt
Nw5uhRqq5LI+kI4phk9xIJ0C+4JltY+/OeH3IKHg+5ECnxgI/kN/4b/In8jf6B9gwKoR1y3r/+hf
W0zEbyGZsWP1L3dt4gtd17dlNLW/MrUpayQWsUZi562zIFISN+39A6yR+FyGP30CkzyuchBUQZlc
J+c2rqRRBxghzqMr7f4khNAWB2CjgXvT1CZH1df9az+rdmSSej1ZIF2tEn7AN4ZPhtTj8XnwRbxe
gpACP/gP/ZnBzPLhv5JzW5R/kT+Rv9E/ZQ9E/77S/niCA+lOsr/iSMSRWIQjwXMkbDDQUsfJ1u9h
ahONbCpPOQDIpORrZapavtg/rgx7F3IKaJyzTY9LEMCZciQeYY3EAA8RniPhtGfmcvvXOeFLkeOR
5fQUrMAnPoJ/0kToL/wX+QOJOJP8j/yFLoz+if4lFZzC/tjTrk3Fj2Vq9Y0W1o2bNzq5lfsf/oID
gyfhb3/8bpLafvT8+fOry5cvD59Lly6t+nMRW9/u7u7qc+HChRU/586dW7EN72fPntUni60Xs9ja
BEIBR0dCaxwQ51H1pHUGH15dQ57IlNEFZaM7roOzcQTNs9/qBtu/wpFAotPD1CbUIWOwcE743Dlq
R8/NbzV9ssAP/kN/4b/In8hfScJZ9F/0T/Tv97E/tP0rLJXj7K8bWSORNRKLWCPxNhZblx/A+x04
EnIePP5KbwLZdBfG4BSuqMMyBfbBCC58maURCdw1EKFs13v0DTxeVqz6927gZGs00K45NPBRNid8
P9sIX4ftBX7wT3oP/YX/In8if0t/SUltWf9F/8gYGPR/9K/1znH2D9dInGR/3biREYmMSCxgRGIH
U5tk7Et4YkSCayQUbPgzymlJchhA8+0FyNhv90K8UI5FNfMJ1ayNtoP0XGH719+pC7Yn3PuY2jTC
r4cgmHZQCHGL8FuCqU/A7+cQOHswgh748/z+wT/wKroDX4T+wn8lByN/JOh5ifwVBiJ/ixD+S+v/
vYuXTvz+mdqUNRKLWCOxwxEJBNr6FOGjI6FsW9ot3FWJtSjkcEeaoxMavEBM8a7Du2p2uVNf1ohE
9YBdmzAiwbYFf1QkrI8wNe67b9R/Xfi23gSRTy4QgR/8h/6a85onijXCf5Y1REfkD4jkzeR/5C/w
h//SlsVkkb+Rv0fL371LF0+UP5naFEdiUY5ESbRyJCzmqDh3oDj2abjT0Mc+ZCphEvkcp1BBG+TK
756sc6ajEaz71be/xw29lD66z6lNh8J88HewgpzPZPg1pSrwNzAQ/NMpnoP+Q3/hv8ifyN/oH6gc
6GFN6dnQPrQTIn+tf57hQLqT7K9MbYojsQxH4q3zMKrFtmLnOzW1aXjxpFw6DGX593yMSh9gb1dN
Y0KVoU1VlS2Gi90Pioea2lS9sev71+5hIZHPjmCadRiGvpTaHnxDKCeIzhBWMQV+8N+jU6E/MVz4
r2VY5A8wEPm7Lf3XuNRLuOif6N9X2B+c2tQ0o/uG/XXjxk0L7C1ds2vT6RCJnUnhBr9B+M2ff63W
7IXG7i9/+iu94Wbm/j58RxTw3p+XL1+u+Hnx4sXq+fPnuj979mzFzxIWW3ONhHwCPD8Rc/ddbP86
zaBCnQTW0a6wjPS0h1a607zRJUBFFIgB4Eh84zUS7JLVuUaiO6Q741GOAqr+WHMMzHoT+AKKDvjo
OjVg0mHgB/+hvwnTTaLNgRN2eS3+D/9ZgEX+RP5G/5QIKYUe/XtY/+5hO9Rp2JS/cSQyIrEMR6LW
SJhYz6zu6hwJ2/08aI5DjzSu9nknFdPJgLOkqU2091lnB2mfOqfimjfkurIc7DSwuhZb414VhzUS
ShcsNqHfMQd8gR7g1wFkekYADHw7csF/6C/8F/kzg/yP/G0MUBtG/7QdEP1/tP3xFFObTrK/bly/
3gS1lXtGJE6HxoxIbOBp521MbcIfxRqtpw9+wnMk+iw65vZ7AteRL4Fcl7DReuhBCvbpWl2XjMIR
id+uNfj0+j2ARd+sTu9BTsl88PXl6gn8HcCmgR/8h/7Cf5E/kb/RP7Pq/+jftqBGu+gk+2MPh7L5
Ve7R9lfWSGREYmEjEjaruWsTCZcOBPWq/AGmYWyTlHfwlkr5KHKxy3o7VdcHs+DtvuL0ENiA6yAw
avGIjgTLXHHFxdaeJsb67X64fA74mtlG+HQe8BQMgc+fJPgP/YX/qObnlH+RP6UbIn+jf6R9o39P
sj90sjUp5Rj763rOkciBdItYI6GpTTSpqUK5/eu/iGgrOShVlskfQA4Jn4StoJsJfcwafWjv+WTV
TAdCjoQaEibWSFz/GP0ijk59c19zwZephGem4SwGBqDAD/5Df+G/yB+K4chf6bZSb+1UUldtQ/9F
/wCx0b+ntj+eXrxMyiP5HUl/N67nQLocSLeEA+mOcCS4C5MIF5KT8/No4ct5QBxqpq7IVpnJnE3U
itoYAXPIZKDz3u3Zr062Vg3WPoM1Eh/jauVlGEjNCF/cCMjeqYrfi98p8PXGwz9g8B/6M4fOwP/h
P8vHyB/L3cjf6J/o3+Ptj6eY2tT2U1tetsJoPR2sMiKRqU0Lmtpk5UZCvcsRicFBYL7JtsQdUuux
qsobKVvEzYRqIe03MHYO6Ch8+e0XrFnhQFOb1AplciD42ocdqK3jffX9zeCTKWUnsn86EeyUTx34
wT8JI/QX/ov8ifylfqASmlydiv6R4Q+8CD9W1YhLjb5S/0f/fj/7w2skTIVH0V8WW8eRWIgjcZ4i
AEGiQI6EF/+AbPHPXHq+HPKm0S2Du+prShDKuD7C1jm7QZyhjTIl3QuzPbWJmc4bD6STy6G+5oRv
8Wf4rRL4XHwePRGeP/D7N+1faXu/f/DfVDdiIvQX/ov8ifyN/qHZEP07tT+e4ByJk+yvOBJxJBbm
SNicufve5zKp/dahTZxyJkDSJGqneJ0G53eOzKRyMGQ6WUrW1Kaxrhdb00lhnsNhE4u7OGELWkD0
4XZ8in6WsdX0iQ7Dx9NiwbfrFPy+4TkDP/gfKamN/abH0F/4L/In8jf6J/rX1skPZX/wQDqbKW0V
dcqWzPVs/5rF1stZbE2DyW4BHYnRfEJMzkBlrZcMjoSnBfmdmkcn2A4Er3lDEwZAX4++xYF0k3D/
xsdsqLpDE/VMox/h1PDpXHBnKDoMbAdWB3xCJ9NLAKJMxYSnQ3AEIPCD/9AfeaVZNvwHwRD5Q+kY
+Vv6RMjwheKSwRpTqqZ0TfRP9O927Y+9XSy2bkIz2cGecWB2HImMSCx0RALnSIByRbsyMEm0Q6Si
k7Rp+vB1tEqqtQ16nWw96e/+TZxs3QHdljtgO38AUxE+FPQ7Rw/4jGsBSc2mUiYSB6xob8Gt3cat
yrlAgc7R646QDvx+8wrcFNrrRydygv/QX/gv8ifyN/qntabv0b+z2B8+2XpQxKWKx3QciTgSi3Qk
PsCIhI1tyoeRYDvW93Up8orUpNGjbzgiMWbcx4F05EAOXuCICgXBl2Aq459lKGlHQeV8SmWMU5yG
bVwJwZVQBRE5NcxDXcT5RyeDTsPBvvsJ/OA/9Bf+IwYkOiQWIn/0Ugm4iPyN/on+nVouthtoaNCO
YJjD/nii7V9HuKPlJJAZkTgbR2KRjsQwtWmTYpXezDQxH50r1sJFatkVcbUjMSRr1yakyZAYQBgO
bKJVR+teAeoM5Qdc4yBngIzFsnZA0FZJPsk0SA0Wm1c+qwzTmiZ1Az/4D/2F/3okNfIn8jf6Z1Ca
0b9/H/uDuzYpyMjSZWK0ZGrT2TgSz5btSKyR62kSh4n8qFabjsQDnmw9+gv2O2jUw/xnjww+PK6c
AtRVGevgFYkPUEIlTWVCXjUaRx+sDz1Nh+VoQwWBegbLtMAoz/5J4Af/ob/wn+VC5A+kAeSmpGLk
b/QPdXP07w9if3Cx9UkhU5syIvEP5kicRO5j2aYjwTUSmn4kt8HmK+16GTGKlFHfxn9NZ9IWabT6
6Riwe9b1RXmMDu5AOQ1yGBivftWS9boALZin4u6OApO5ga8fRbtbASfBvw2r0F/4L/KnRS8lJwLf
2lCuWnJabjC7BGvkr5ER/VN00oRR9BL9K5YRD+3txpHY3d1dXbhwQZ9z586tzp8/v+KdoxEZkXj2
jzYiQQ3y6rDpSDy4eU96h4qHkd5pSVzUaWlqlrEK1ZOD5A8N/0GT2+D3adrsDx9prYozg30wG58u
p94LfOIj+A/92Zk2oxQ9kD/ALOE/skjkT+Qv+QG0UEok+ofYIDKif3smRKEDaCluKRnK/DY3TmN/
ZERidxVHYn9/9fLlS31evHixev78+Yr3Z3Ai+FnG9q99IB2FwWo1rJFwcrhaTAzJ145sOhL34UjQ
dLEgqm7FdBbUNmu4fSvSqsb3OH7XxWZmXN6Zy0q4FrNWb8zsFuV0uFqXB37wH/oT95glwn/Cg0WJ
5U3kD2Rm5C/ERPTPoE2jf2e3P/Z2vUaC0rnEcpstumdqU6Y2LcaRmBLpcY7EGvUyMW00KTwme6hB
R2Ja58ENOBIQzjzsSPnUVvDi24HoPL8pHs09KfniLN7kDKipW1aO4LIPcaEi7oPqQAEdBX7wH/oL
/7WsifyJ/I3+aYeJDiRcB+hk69lBbY4v5ZAV/QvszGB/tCNhrE+uElZZbJ2pTT+CEYlWJxPyfXXU
8x9Uz3Z7GfZF+EePSLB6iynfKbx2sI3TQS2itlhjNXSkjsf6XvglkPWGwG4C3yKy/j76PrODPDoN
yhu76V4CvzER/Esthv7Cf5E/kb/RPxCH7VZZnw5KVJHSq1Ks1KvQsZCd1CLRv29ufzzG+oCTQkYk
MiKxmBGJKaHefe9fSP3OonAY7MtOTGtLxqhOtdgonCRVASdbf/NbyyF0B3mz4ohEySPfldCu5ev5
dd5DPw6fiz7FTj2WRRc7BUxNWkWcZf0F2CUzsIWs3AlWZd3usO+BD6QE/6aVCX2E/oCSgcvEN+G/
yJ/IX8uIgTOifyQnBvnZCjb6F4Ty/e2PJxcwtYl2DIWtcInbJMSRiCOxKEeiBxKGqU2dMSHaIUp+
gMCkzCwqH4uK6C1Yh+ziBTsSU37QYmuU7sDA54iBAjumhtJe7uypRhK6OwDXvtZKC2CX8OWJmE6j
EEOun3cfffYQ7DiK4f4DP/gP/YX/JDIifyJ/o3+ifxdgfzzpcyQmtgyNqba/4kjEkViEI3H27fNT
u3519yefy0OwyW1XgTRcJoaGLtmgJiyJvGW7N6EPFasNLHvvQW7HYzq1iUb/gxufojvCqV50o+uA
aU39Zrzho9qBBDxq19tRgnXL6oMJBgw3eORhHb4L+SycOoXKcF4CP/hvKjIxhf7Cf5E/kb81Mgul
IbUS/RP9+wPbH09q+9fBrJHNQnq01RJHIo7EIhyJHTgSJFIOBvD+wbuY2qQ3/pSeNsJdQmOTQbUn
d0fHEYI2StkcxI5k908gj77F1CYKZDZDwX0utkbc8AmPBRxxcAU6IeyBbMN61dvk7uhp4Xff7t7f
L/CD/9AfOSv8F/lDeRr5G/1DOrB+pGSI/v372B+PL3CNhCwU3Bk67nsciTgSi3EkmjZJmh+8hxGJ
aQYsbjvBLEUcmrZsfBj9MD0gcZvFPAqgWhI8asC+KJXZCOFL7NrEUMkVpzaN4CywJhmquE34GqXo
p9MXwcOYJ3EL/Pp1/Qs1XnDv3/hNf//g30gV/Yf+zHtNZ+G/kkwDQiL/wCOR/5G//1X1D9dInET/
169fozm1tfCHv3yx1tff/vjdWnrbCR4ud/ny5eFz6dKlVX8uYloXz5DIORI/gnMkzr6DcyQgrP1G
ludIeLE138zZsCbpmI1l95iqZQB4WziUqq5r9ZQjq0L0oEa4AADPenj0NRwJFlb4jI6EihuaW84F
n7AM3w9B1yHw+fME/6IFEQfcKZBFY4QEYqpE3hvSf+gv/Bf5Q+Ef+WssRP9E/x6vfx/rHInj9U9G
JDIisYgRCa6RoEynfc3wIUYkvOhUllQ5Am1ibYw+0KhiYGOOTLQ34qZr/VbN1cOva9cmNkPmZ1gj
YfjqBNHqh52i3I7I9uD3eg12rkPs6pn5zZgX+MH/nPQf+hveLYb/INw4JZNyLvIn8jf6J/p30/7Y
065Nx9s/165lRGJnZ2fVH77oY5yB8f/5f/7DLwUhYxn+7b//uyNveMXMDL5rfP3wmz//Wo31xhIP
98uf/goP6i73MQLBOO/9+TGcbD28ZMXX4GJrqnriXaK9sOWTo6Xx8AtB7fEH43eFImR7j7+xslqV
YqRodJbMBySG7V+rX51srW7Rj5pSpc4Hn4/Tz+RHA7TAN86Df9N26E88UuRANrHRz9ymkdfkf/YV
/iNCiQneIn8if0kH0X/R/xAItK1IC5INq5UcCcaRr9wN+Xv12nWUbi9katPpcBlHYgNPmtrUeSBS
79oEMpa2923cu0J07lOosV0rS5vsi76Hdt0lrXQ6V6xJD5EjEtPw4CZGJBDEON1JvaXr/G3CL59P
MK3N/UUDH9gI/k3gob+Bj8kX4b8BHXrZoZNoXlP+Rf6U6NVNAkexyN/I3+gfsAK9qYn+4cnWJ8nf
jEhkatNipjaZbiXKtUZCadJzCXtuBbnCCZ/celVvDZSPS+mBUQkga5qHKhxk0oiNXzutHnLXJrU3
PG3/iujog6M+0zPB93flQ+rJ9B2m35+PFvjBf+hPrEFuAG9uj//Df5R1kT+Rv9E/Vr6lb2UVkC8q
Hf0vKfEEi41Pkr/Xsth6mNbEKU2Z2vTkyepJfR4/frzqz/Pnz8Vcc10Oj0hgsbX5GQQMlSfPQbHO
LisT1j6ZfeoEIM483ehRMOKL85Di1CYGgmBxj0gwb8hkIcIc8N3v+ltWAeOlHyrwhZLgf/v0T8SS
7qdvmYRsXkJ/Rk74TyQR/gv/bVv/krAif3488vfxRW//ypcPJRbxAyJGwwu3OBIZkVjGiAR3bZqE
D7lrEwjVC043hQ5FUBFxvVDpsyLUBSmdVRSgBtVPp3FH+tHX2F6snQzUf3BrMrWJVVh9RvhnDnDQ
1AR+P299s8AP/kN/4b/Z5F/kT+Rv9A8U/5rC3UhG/gzyZ31qUyGNTkTZX9euXaXG3lrIGonToTJr
JDbwdPadC8ihB+Bw971/VYpOgAKJ1jngfefZN2Y+S/jerGKIbNro03J29WhjjcRnN+971IOyRe0N
ZS749RUsxwBPB9nxuwZ+8B/6kwIjl4f/iAWELcu/yB+jFazm0WzgV2/dI38jfyN/D8nfJxcukVPw
0fikmGdqf2WNREYkFjIiMXUkzmCNxC/KNfBgGuec0Tmg5U17GyslVjvKo4tgEp9GPArhkrEcdaWQ
V6uHOpCuOkRfD+BIqGNmqSMtZVScDLNt+HJs5Dj4+w1fLPCD/9AfaCD851cj88i/yB+PVNOLGAyi
epET+U+NGf4L/5EOzB97Fy+daH9dzfavWSPx9OlTORN7e3vD+giuk+j1EbzPv0aiHQkSL86RwPav
EvIt3OE06DRjFLsGCLz9AJJ7DUFQQaqAlSZv8din3A0ON0B1jCMSTj+4dd99sD2zUGdO+P21DAyw
6vspHfjBf+gv/Dd5S97ygSJN4gHXN5F/kT+S8JAzxGbkb9NX9E8zWPT/1P55AkfiJPvr2tVMbeoz
JLLYekGOhLd/pVgzY4OtQcgW/vSRFcop4DoKq4PKZ92hHVwLNUYNaF45GoiOjoQKvdjaFQsI8vE/
9rNd+HxeBm9JW98o8IER/k68Bf+hv/Bf5A/kwbpIQJICgjKCUhQy/TXkP1syRP5qbMoYjf4BRawT
W/gP+MA/T7YulXwk/2WNRKY2LWRqUy+2pog/wDkS/0r6dQAFY9dXKQ6XIko7ExfeqVD67Vy30QCF
CyUkqXzkRPAKxfPwm/9kQ3zUweqzW/cqijw6HBwhQKkC+tk2/Iar79DPUd8l8IP/0F/4L/In8jf6
BxiI/v272x+Pz1+UnTVYTBv219WMSGRq0zKmNtGRaNU5OhJyEFiit08bm1XaB+AIHGSNKFtdeAjO
zoXfXqkCbPdiA/T18Gs7EpWz+uzmPTsP6tNOh8qYngE+IfB5cCQGTuXmY5fxHPj8Menu2b0K/kN/
4b+ty7/In8jf6J/o39PaH1wjwXUzMrCkkXCRrWKz6tqVTG3K1KbFrJFoCsUaCW3/OqZJtTQtaXQr
LscCMaS1Axmt/g7WET3y3fSO0nYbDuBI/K5qmxt4jkR16frO7h5x3y58PYue0/3yewS+0S3UB/9r
Mjv0F/7bpvyL/IEuiPyFLxH9Q76K/j3Z/vCBdMfbX1ey/WtGJJYwInHu3Qti5rbcP8TUJnnAtK41
ktDe8OgMeCclWpy1mTEFggx+99I1nWIJThykV43+eLI1FYnrHKx+fhvbvxKOJApbsAR1Z4KvR1b3
fGbskAE4gR/8h/6KKcN/kT+Rv9E/0b+z2D/f1/54ssvNcGgT8UObCw6obBbbX1evXkHe9kLOkTgd
LjH7hhbr64ff/PnXatye9C9/+ivYIO5yfx+boyLOe39evny54ufFixfagYn3Z8+e6bMER8LnSPAr
4TuAQD/EORKK8yuRdnWDM0BjH+NxXLNAGeP6vFXFgc4RwdsWfeSIDN2IDR5uniNRB9KxP81PVxu0
nwk+n7zDBASyAj/4xzuy0J94IfwHNEjO8bY9+deyh/fInwHFwkbkT+RP5G8ZUiUcnnCx9Qny52qm
NmVEYlGOBO1/iPO7nNqEoBcSIGYN64OQOafPzhOUKmvC4CKBswavHEXAzEfE2Yg94V519pGkgGDN
h9/81r4HarCWT7ZWBaXLJ5sNPoEMMPyUfhINNU/Kqt62v3/gT3Ac/JNLQn9kivBf5B/lgRki8j/6
x/YGuMJnV5k2dE6VlOjr2R9q2jRGeqP4ZeZC5c/e7qUTv/+VLLaOI7EURwJsVAy1Wn2EqU1iLo4q
kMU4I6m8CNeb1jYzy7FQNtsgD23ldCDejoXcDTgTf8SuTewaUbKvtn/ttBwPZM4JX3AFv+eo4l7P
E/j87YL/0B/ZWFjYOv+H/4zacY585E/kr/Vh9E/0z6b+3cOuTSfZX5nalO1fl7H9K9ZIMNCop+nw
0Xuf4841DW1QMlJGNyR+Dz2y7kD0SAyDEMhnondw8iumoTeNSHQecx/c/pQtAM9Oh9rNCN9fjE9f
37ENpsCX0xf80/Wdj/5Df2A9vXYO/0kqRv5Q/IMtIv8peSJ/I3+n+ufJRWz/eoL9dSVTmzIisZQR
CQlyaDXq9w//G8+RkEjbuJewL6dBtkC9StJoAzrhHFdc9TKTbx7dglluRPP9Ebd/RWQckbjPCnZK
WIFOyIzw9Vh4Hs3HJRw9aODzp/NvGvyH/ubj//Cf5WHkT8mZyN/ov+j/Y+2fx5jaZH10tP2VNRIZ
kVjEiAR3bQIfO8Ca/BAjEqRqG5WIqowX7NDEeU4gazagAS6jABVkjCOhui5mDfWpWlWHxurD//ef
ciJUiCo/54iElAm7RoVazT0XfD4WpxU0fIIMfCIBIfgP/YX/xAeRP5QH+Jeo5GU78j/yN/on+vf0
9sfeBYxIyJY6mv+uZNemjEgsYURC279aZ4hcP/oJFlvTsC9jmwpV242hlNOaVETSVn45FDLGmVE0
jztqqwvVZ7p2e5o6Eqz+2S1s/6rabOMu5oRPIHwmhroFfvA/JV0TyEz0H/oL/0X+RP5G/0T/nsb+
eAxH4iT7K1ObMiKxrBGJouq7WGzdBG5xf8RVxjhdBXjJ8ihQh43oCTDCPBQ57TtfdnP3pkf/F1Ob
WBcXbpXLcyRUT3lrUVY6OrwBfA+q8EGxwxS8GzJp4AMdwb9ojZRRqFD6yEvoD8746/F/+I8EFvkT
+Rv9E/37avuD278eChP9c+XKPx8qfpOMnCNxOuxhLROt3NcP/2jnSPTUJr0lA2Y+whqJjkvf0aoi
xphAXFOalG77mwkWUTBibAF12ESBqD4z8SiQfIhdm4aA9GflSBgmjBMY9nPC74fT1+KjK4LvUhmB
H/yH/sAXZN0Jf2yL/8N/ln6RP9Qlkb/RP5Y10b/Ew2H7x4utyScUyKzimR6KI/vqlSu4bi/EkTgd
LuNIbOBJjsQkzydbdwZXOHi1g+1tX1m6rgiR2gGhUzFUaB3BpN5eggEoLMYRCVfk1KYOY+9jzrbh
D8s8DgPzd2rQum//+wc+EEvcB/9r/EJyO4yS0F/4f7vyN/In8ify90hhu0j5u7e76/e4eGSOAbfS
UAxGVtZIZGrTMqY2vbMLC2b0AHSyNUYFfAwMydWky3GFXmqtPBSVkywHgfF2HrzmgSbAGFSOfh9+
/b/GTMQ+u/kAoxA8csaw3Ml88NfZEQ9ADz/wg//Qn/lSTBz+m0v+Rf5MzaHI3+if6N+T7A9ObaJI
Ps7+upIRiSy2XsZiazgSCnYDPuRi6/J8aU74fZhraDkBqvXd9XhiHWri0DpPbUJcY9Yu5ZU90+vg
/RF2bZqGz249cMXpOPeM8OnQDEFuPT0i5AQ+kCBEDPc5fv/gf6C+QnfoL/wX+RP5S8UU+UtHu/EQ
/XNm9RgjEh3a7uo78ZQ1En+fEYn/DwAA//8QySZnAABAAElEQVTsvcmTJVeVJv4iMobMBBoQAoQQ
UmatfgUlNALVK4wdgwDNM0OzwPiTsFrwgxq6qsywLiEQqh1Wq2pQQVctaKtFrzDr3vSqW5mRUg4R
/X3fOef6fR4vXr7M9CeeUt/NfH6nc+9xP3FGv37dt46QZreQfvSrH2o0Z9nams2++8Xvz2rKw8ND
lZnX79q1azP+rl69Orty5Yryy5cvz/h7++239Xvrrbdmly5dar+Dg4NZ/ThmnWnn/r2cHhczO5p9
+YHncV1HKDGhDRfK65wdRT9qbM1+9mX7HFVZQTu7MmFKpK3Z6//2d8prhif/v28KgvNGG+ZfI35e
ma6AJ9Sds/Gb/ua/kFvL3/r0n/WP9a/tD30D299V/I9Le/tL/a8/+ZM/kf801eGVN346N9UfXv/9
XH3qyu7u7uzs2bPtd+bMmVn9Tp8+Pdvf39dvb29vxt/Ozs6MY5ifOnVKv+3t7Vn96I+yzMTyj//p
L+jCBg3R9r0v/UB9t3rYciAxT8IIJAYn8isPPivCi/IMIgCuY0QCbfAWAosjKQNCRFJJcOjjHw/N
dE1yBsBvzf7xX/8+W2PcE3/6DXQzeGAQto0cppaDGKCsAT/PBkwQ1xQV4zf9zX+WP+sf61/bH9vf
jfI/3to/vdT/+pPzDiQqiGDuQOKPtiKxD3danrvyLz/4nKq8ayJ3mw49+yMiUDDAssIAKh30MnZQ
N2A5iikCCUAxHsA/3YVB/roCiZwTcE/+6eOART/GamUnu9aFn6fHgIZnxSNP0PhNf/Of5c/6B8rR
+pemQfZqHfbP9sf290b8j7dOn5GvQr5h0tgUUzpe5x1ItNUIBxJ/1EebGEgM6csPIJCAMWFwwDz5
FwU6m4RLS4NcIAmnGVCuVYqA5TA67JxQU8z+sT3apBGzJ/BoE2FrGgYgAs+cmdJE+HlhsZoCNMR7
mDmQoMrLNH4QYl1/f9Pf/Gf5g+6kjFn/WP/a/tj+Uw+c4H8cYEVC6QT/50/On4/+iY5+tGk1QvrR
phGddu4fBxLPQrAzSAB7H+mxlxgUIQHbUKIVVOrXGwIirCTbSzzom0c5ViQ4MOraI0FBQpUzarY1
4g8ciZ/WnMn4TX/zn+UPqsD6J3R7aGdQY2L9b/0blk9H2x+ZX9tfcMMJ9udg74wCLRJqkf91/vz5
oOFERwcSqxHSgcSITsMeCXYczb7y4PMjiPSy0dc4WhBs5+2UFIIusBgmwKYXSQjGQmlSb473SDyF
PRIUkEhhvmo8W9XHOa6DfzuDD8FxAg0+jl9dvN3O80FlG0fjN/3JF8E7RYtkoWJw899S+bf8hT6x
/qFWRbL+BSvY/oztv1jD9ndl/0MrEhIpHJqPlQIG/+u8N1v70abNeGvT/IrEV7RHQlYAvnbEwGTb
PoWpqD7AVrAA66FWOf4YMfhkWak9EpwhOrlHgiVstcYxW3WnBg7+NmZjmQDRLZiF+AEbwQEepFqA
v/ZcBA4GD1DyqdCM3/Q3/1n+QjdQ14TCsf6x/rX9sf39Y/ofb2FFYpx6/+f8+fPj7luqe0ViNfJ5
RWJEp3i0iaxJ4znDigT2SIyTfPQKHNhZ8HE3P0byyPbqKzjm6Mvm4dEmts9mT/wp9khUZzdUs+WU
9PcPEShs5yqCAgCMYsBwyJwTMVqvgEaOABs5IRP7MgPcNuCqJ5qrM2ByRPkTQmf8pr/5L++6UyAt
f9Y/1r+2P7a/a/U/Lu1hjwTU7fxN3fRX0OHN1qe8IrGxKxL0pFtKb77q4uFRG/qKtQtMznu2Rh+P
s3xrU0Bxlic+je9IoKutGIymbu0xRE59vfUgJBgdGB84BqwMLBhoEJbxxbacH8ARMJNQJb6Gx/iD
mI1GdB4HosUiTiNaQKGbEGxt5DP9zX+WP+sf61/bHxgH29+woTfqf8TrX9MYM5OhbVZ2dv78+a7z
1otekViNhl6RGNFpvNk69kgE0xNUfDu4h2gZmDjKBcW80hgGeyn4KBFmG69IPIUViXiSAGPyTqew
BuLAn48aBOqE0ynS/WdKV7ehRTvmotBGgDDgF7imgIMMmHCMOUXOW9dn/Przigymv3jM/NfJieUP
xLD+sf4FG9j+yE6X6ZRc2P5O4n8cYEUitIwUrnSO/COyHXrOnz+HfLrkQGI1WjqQGNHpeCBRjzaF
iQim7cujCVRlfzE6G1in8858vq8PJNij70jImx8g2R41ZgwSUpQQGeAGV8OUwwAz4GAbx/Khp5gD
Y6MxxsEp1hw5FwOIeGVtQHO48QcNeTT9zX+WP+sfaVjrX9sf29931P+4hC87U/9G6n2saDl//nz2
TZM5kFiNjg4kRnQ6HkjwrU3lTvc5B8qcZM46UzF39UVruePj/j6QICQDCTqrNNWFjWMkPDRcak8c
EQFgFHDFf5Rz5SH7dPOcE2skejEHYWvFQS4BmuIme2I0flErqUFimf5kGvNf8gU5A8nyJ54o5UO1
IlkBefQ6bPCL9Y+IgsMQfFGUrH9BhLQzUK62P+KJtDi2v6lnpVlCp1BooE/mH20S0SRbOCidP39O
+VQHBxKrUdKBxIhOiwOJAkpBp+YLa1AdXZ3MzVQwUYvj8bbX//XvGgBHPvmnT0CpYvUAFrj5KWhX
We5sCJQapIHZySl4YBCRBouwMUhdih+goBSK5Gkwi/PMKVTFC2CN3/Q3/1n+UtVQLVj/SLtCy1r/
0qGz/Ql7SxNs+ysNgcP6/Y+38GhT+C1Jf6JWivr58+erYZLcgcRqZHQgMaLT8UCCjzaRSU9KtUrA
/qZVunK1BfvHXNXGzdZDIMEZntKKBIfzbh7wIpfxCjnR8KbHBYa3BwHuEFPGI0txrgoZeDuwgocU
v3a26uME+MUQFNHb2o3f9AdjmP8sf1QQ1BGpK6x/qGtBD5IExLD+tf2x/aVMDM7E4EuoBPXBPqoQ
ejMoNz8DjSVL7G3ti/2P+Ueb5mbU7OfPn2fjZMmBxGqkdCAxotPxQKL/IF0ICgWB/B6H0QSoxsbm
lA7BHYeJlvnN1gR98tN4tImWmtKVUxBWYkinDhaM+A/ZrZMYgQNwC6+GPeLHfzgKcLFKoRk4lVLU
KLioyioSWe6jMH4SRf9FLBxEL9Pf/Gf5s/6x/rX9sf39o/gffLSJ6ST/6/z5c+idLjmQWI2WDiRG
dDoeSIw3Ww8D6Hoz3qbHqeCCzueC1MOxO+oB2K9IsP3JT+PRJvwTjKJzPuaEMXULjMPUHkGANkYD
uscfZ0Q4AnNsfGCNUKrjkF2q88DYYRvdxGz8pr/5jzIBKugxP8uf9U/oTilM618IhO0Pb8LZ/tKT
eOf8j0t7w2Zr2Sh5MgP+8+fP4XymSw4kVqOlA4kRnVogQR8CMvLlB5+X+01xiUIIzmiYqsHYXU9r
6MZ0bWT/X9ajTcSHodpszSlYh3dPl7YNUWGYSyUcZNdiiMSKw5UQQXDpnaFBvG4WGS5KDhJWH7bZ
wwhiK75q3abnYOM3/c1/t6384WEUiPh7V/5Xu37eWJEqDL3aFCQL2Xdb69/3+vWvz/6+1/nvZq//
0u4QSEgIuwOl8tz5c13LrRcdSKxGQwcSIzq1QALtvJP/5Qf6R5tGwOgn89IXV4HdLGeiAx/3tgdj
VG0ah4NWJDCGuDjPU3i0ScEDKvTvNXdNqFwjowXFcAZQZdTDtBC/oNQ1jz9rif8Qix86D85q/Ka/
+c/y1+mTUDDWP03JWv/a/oACstG2v6EeOn1RvkZ6KZP4H/yydUMh+UsfiWoJ6fy5c8qnOjiQWI2S
DiRGdGIgQZ7kXX5ybHyQbh4ouwQQLnr0s50pV76D4VsjOnJgBQ2s/+N/i83WFA62c0VCYAnbBnHi
nGAICxRyAE8AS5eheBL+audjCqX85vRfnpjxD3//ornIX3RGzhCRDBJ/C9NftBATm/9KzkgOsQxz
VKrd8mf9Y/1L2YD+lJBIPFCn8UprFio1BSiBrH+lSN7L9v/S3p54Ijii7C+a1DrzisSpU7Pt7e32
o61hXfRB+cf/9Bfy/ShqTN/70g+icItHBxIjAu5+FktnqbdI6/ZoU1NsTd81J0FdpeswpoGywDr6
2N3a1RqH1//t75oyZctTn8GKBD0OOalxlNuqpmxHFs9vc0QKU1gmNgx4CM5+4af6YW10Jmhsm7YJ
W3OzHKORY5Qq2VIwrAqOjkHNa/xBJZCm6GP6J5eY/yx/pSeYh4xY/0hRUMta/4IUtn9hQepo+zv4
Hwok4KR07kb4KalOzp8/B6UyXfKKxGq0dCAxotMuViTSj5cj+FU82lR3Eqs9BBzdUnpjxxkTpq0U
XDI4ub3uvhRKdunRJvZl41P6jgR6ag4g5YYuBQOJUPMCvu5sRh0DapIaC5hQygTmHPMA4dRoIgxN
FyfxGT/pQrKZ/uY/y5/1D3Sp9S8NisyMTEw6dLY/NNe2v++E/3Fpd1iRWOR/nT93DoZ7uuRAYjVa
OpAY0UmBBNrIpEx8tCn9cmoLOZdVZ1RccGqrDg7MMrOWUJHSDc2rMlckCJvg2CPBtzYN87In+jAo
gSJDOwoDfqw4zDVEZ40OJLkomifB4CFOqE1NzIGGMEo1g/Gb/mCIxgbmvzlxA2Esf71Csv6hci7t
af0LfsBNGVHE9qfRgvqUdgX/VbT9Xe5/HOxzs3XQal7/og0d586fQ+90yYHEarR0IDGi0w4ebYq7
b+gAY36VgQSEPeVdfayImXFgnxLKKrJPndHMuQTP/oRt3Sj8Mh9tKhz8jsSAn4o3cDSTlICaA4fA
H4XATwcPJVVyFQJlvb1JJ0DTFgqdgwWa83CIemtedKoNB+NPlyBpCxINfydyQ9KKjaa/GEbcpFUw
VM1/kDrLX2kY6RPrH+tf25/BjsjW0jrb/sovKZsaJjfs76VdfEeC9mTO/kqtyFc5d/4cKtMlBxKr
0dKBxIhOCiS6NgYS8dVKOkPoABO34IBVtNE/YFelFimjkULAQbxbGQKRQoBWjvnHfP0ry5zryT97
IuZHnYkO/CEGCoeACIcCGmqMPoAnMWIL5k14AsR7rvGi16NDlDMwyHkjoNAIgPIcAR9vgmWjkvGb
/uY/y5/1D/UqVKL0PwrWv7Y/ZAexAp1cGnoyCPkk9AWrtr+kyXT+B79sHYyXmegfZdL+3LlzzCZL
DiRWI6UDiRGdao9EqQU+2lRl7n3nt58rr3bmtDClTqIG2ATAh6YVRKRIQdGQ+6NNb21iR0wyqz0S
dPnZzFQzb6OFb3+vPKfPoQU1jDmU9cf5YiIGMZwvvh0R73llm/oyMNF8go0Qw/gHWpIiRffKTf/g
KdJh4NKBZuY/UAZCZPmz/rH+tf2x/b11/+MiXv9Ke0M/bJH9PX/uXBigiY4OJFYjpAOJEZ341iYl
an78/8qD/LI1CulshzpEk/rL1Y4h6akHaBuTfcwIjqmYqvg6X/+abWznHgklzB9xQIYuC/GPxCk0
1RL8AOCkSIV/KKh5OBi/6U+2r9DZ/JeyQ8lBkvxb/kJ5pTZhhrssYpWF+g8A1j/BPjhKEyfp1Ngf
rH+tf61/j9mfA73+FYIi/Uvh6RKq586f6xpuvehAYjUaOpAY0Umvf0WblDzyrzyED9JRqYOlG9vC
GOqZ7zQChG19Gonasb6AUnMNQK5AosYgjw/SFX5AK5pYFT9n53oJ8nT8ClXMGNcgW64TQStBE39h
ya6Yx/hBoKIMSMJ04t+flDP9zX8UKvzAJ5Y/cQOFBj/rH+nWYgrk1r/kiiBIaVnRCNwizrH9ARmK
MiLKe9r+HOzhRu+J9nc2O3fuXBJpmsyBxGp0dCAxolOsSAya/stYkUjXsGxhjJCCgwoEKH0GBsjb
OLRwo02RAKpnY/gYGhOBBKeMvqc+wz0SCYc27GxYET/gsMHhRvFjQCbixB1WXJDxm/4y4uY/y5/1
j/UvLIPMRKlFWoxj9s/2x/Z3/f7HwW4+MXKM/8L/uu/cfeTOyZIDidVI6UBiRKf5QIJvbXoBDj/U
aDrcc/cGUrG2tlbnpBFUMCbQhqzEw7svARYT6jsS3TkwkFCEkTg19xrx58nILvAaI4bJk0bd+PF3
NP3Xxv/mPwg/5Sx1h+WP9LD+yaUK619QwPqXhjmchOZrsJo6o7W1enTypmKJEruYxv5HmyPHbrr+
uYQ9EuObpf31n7vvnK5zqoMDidUo6UBiRKfdz+L1YiW1kLKvPoQ9EiFdyBrL5l17dlHC0c5lCY5U
pMymTvjRFt1NG5T8do82aTS+bP0kJgm4el3k9PhDnQiLDtAi0jSsoGD8/GPAuZvTrhP+/U3/kCQQ
2fxHTrP8Wf+kMFj/2v5IKdr+LLC//LK1vBT5ZPS3wmcp/+u+c+cgR9MlBxKr0dKBxIhOQyBBy3ak
D9LRyscrVgkcip5OZvrbbBFDt3fmCwpxM3i8Qg/BUwQgABgZ8+D4y3z9K3ExPf1pBBIQjniFXMyx
TvyUR51/nGwESMZv+pNPxQfkyvXxv/nP8mf9A+1v/StBCBtq+2f7v9j+HGBFgo7VSf6XH206Ndve
3m4/0ol1WXGUf/xPf0HygX5qmn3vSz+Iwi0eHUiMCBiBBBvD2eeKBO8fF/PWXwGqTg54gEV/tERA
0BgdXfybabboyiGcgZut/756kcdbm/hH1vzyshJTCs/U+HV2yVk6T5yU8Zv+5j9Is+UPysD6Z536
3/qXxi6Mju1PI4XtPyiwSP8e7O7JQUmtREOdDku0nPMeiRZEMIBwIHHp0uxS/g4ODmb1u3Llihzu
dR3a618jTMCjTS8AFV/zSJ5FlCzGVSVsAIqlANnJPxxhuEk6Vh8IQCZnQl+W2Mf0y3/9W7WHRHBF
AnskpFtx0H/CrQ9/SqLOkeej0zN+2DbT3/wXEmv5s/4J1Ti9/m8KV4bF+tf2Bzxg+3ui/b3EzdZ0
idIPy0yxKP0s75HwisTs7bff1u+tt95qQQSDiQoimL8zgQSdyAgE2h4JCTd5GEEBgwValkoJy2ox
dnVFzsegGGSgPwH4TN8RIsbXf8dAYhj19GceRw3ztznjPIhQN24mxs9JdU38pDUxA6/xm/7mv5Q7
SIOCfsuf9Q9YYWr9b/1r+2P7C59jRf9DeySW+F/33XffvOt1izXvkViNgH60aUSn+T0SeGsTvyNB
Z0IvAeSduQghdKSPQf+7NROOHgd9jygLjs45YLYhALzRHQEBQAH4S36QTnPSied3JPhBupyHIEqs
zyGKsyCeueYcx/YV8cf8UmVxfpzC+EED/eWCPKLHHKFN/2QT8x8IcQvyHwxm+ePtC+lH6x+wROrx
YI6sW/90gmb9S96gnZ9ji+Qbtt+m9l97JHDpss4Lrv+++86RMpMlBxKrkdKBxIhOwx6JYFZ9kI5c
C2dhC0LLIIA9cd8+BVdzZFs2cc2CMJR23eGPYQgo0mAqoNjCHom/lVBoGNrqy9asU0cwF8Ca8PMs
eXmFP64v6sZv+pv/LH/WP+AB69+12D/bH9vfG/E/Luo7EulrhdcC4WSKtnNekfAeic14tImvf41E
Bv8KX/9aLj0byqAQBMsLYt/O65dQ8BkmMjn+s1RMHm4p3HPeLZDHzkCCKxLRw/xpfkciU8wOhGvE
TxzEzkvQIU6YNfTw6ozf9M+QkrwxMf+b/yx/1j/Wv7Y/0K0kgu0viBBpkf9xsLMfAS1BFvhffrTJ
eyQ2Yo/E3mf3Ic8hzXxOnB+kYzUeR6JjLQ4WhOQ+/IAcgxbC1qpDQcV0wfiYSMuRfMYJ8//ydwgk
cg7mz3w69kiwcWsLXpvg1oe/Ka88H+3d0AkZv+lv/rP8UU9Z/6xL/1v/wp7K/pHPYHlpH21/RBTb
n+P25+Iev2w9v4pDGaoWBxIOJDYikOCjTaXXGDJojwSdbFqSetZHKw7kZ4YSQ4oIOuratJwMHuEH
e8nwaJTOjNprWJGIEjpR4HckVOeqRfWsEf+ABViJE7iMn2QYKCNnck1//wGL6W/+s/xZ/1j/2v7Y
/pxkfw/01iZyCNIC/+ve++6NvomO3iOxGiG9R2JEp7ZHIv26rz78vKLd8LF5x4QDEBqgIJUvTzDu
otTdFAUODDayj7mGJS4pyizzg3SaW7Nij0Q92iT8cRLCxDmIUxNNhx/LHphT4Y2uJ0pxMv17nHWO
xm/6m/8kHFPJv+XP+sf61/aHapX+hO2vDIzuoS7yP/T6V9KJvgj+lY8VPtLR7F7vkfAeiU3YI7H3
wOngTQg2CwwkeJeMPKsGlBsTVxNyvS6TDK7RASpGB8Mny9dwjhIkj7/E6185PYcxe/rPntQcISTZ
uEb8jOr5OlvmukSU2xkz4te54aBO1Ce+fuM3/c1/EC7Ln/WPDIP1r+1POcm2v2P/42AX/lkFEZQX
uiTIyv+6916vSPjL1hvwHYk9PNrUHHvY96/og3TJscyQGClT2fFRpyorelanQOAXQBnQKReXhx9e
CrL6OMVrfGsTnXSUifcZPNo04I8ROWNkOBbOKfDr9CCYREq8WdT56PGsMO9xgnkGxj/d39/0B8+Z
/yx/1j/Wv7Y/tr/pB9EfWuR/HGCPxDL/w482eY/ERuyR4IoEkxw8HOLL1ulBM6PTU851K2YBUcPw
sboKG3KsIgpNoOERO9R3JBIfup/+zJM4cixREWqUJsZf1zJ/tsZv+pv/LH/WPyPtS6FAU9KlFbNw
E/q/5rL+bev2oK/tj+3PYvtzsL+3VP78aJMDiY0KJMqARCARhoLqbRtGBO8SQKLi25bKixuq8YSj
DE0FABhWRRqMbQDihU5dOsLrX/8eQJg5IovZM3i06XhaH/5tXkPDH6soxj+mgOlP/l0H/5v/LH/W
P6X/rX+5in88Wf9a/4b9eWvv9FL/y482OZDYjEDis2fg1DNIiMRAQmqsGliJlgBQZyg6tvNT7/Go
Brr5lidGHRkkUEceMqCQSxaz/BKPNjHV9M98+qnZYYeffevEz/mZKKZ8xmrrEIGS8be/B2lj+os1
SIogRlBkqINfgoNvnP9jEvOf5c/6x/rX9sf2d7n/obc2LbE/9957X5mUSXK/tWk1MvqtTSM67T1w
Bi10jCLp9a9wK2O9YWiP3rxLiyjgSAED+1FhVJCgAVFhQvUjh8NOuPiORADz+MxnnkI7SnoUqiZa
H34uhWxtE1/FPDwv4zf9wQONkc1/65J/y5/1j/Wv7Y/t72r+B/dIDOm4/+VAwisSm7EikXskglm3
Zl/LtzZxlYK+PV17su8h797T12ILO7bZg4Rnl7awEqE1jRpQzy01x4yAhOceiViRqDrf2sT56Ljw
DhVh6GysC39iyPNBNEScxm/6m/8sf9Y/1r+2P7a/G+R/XOJma/DkSf7XvZ/6FGR2uuQVidVo6RWJ
EZ2GFQm62PH6V8UJKA+vqSQr0/VHcEEggOomPsujpFnCNydYjmPOQVyR+M9zI55uKxKERsoARt/C
65z8qfDHGQEPJozz43mhouDH+E3/CKDNfxQJyEYG2ZY/6otb139SPNRz1j/Wv2ID2x/b35P9j4Pd
PcjJyf6X90h4RWLDViTCrf7qwy9ArqOcGSxo1GlKh48J0ekGg8vDQJigKD4MJK3k8CrYFBI464R5
jYFEmw+PNvE7EjSq6bQQ5zrxc6Oj8PN8cLpMxm/6m/8gDRAEy5/1j/Vv2DvKAgO+wV7duv2z/bH9
vRH/Y/iytRjxmP/1Ka9I+IN0m/JBOmjK1JhckXgRZVbJuOxBn+7Yq6KDutjGRL0wgjmCBo67d5UH
BgqQAgkNJE7ukXhCdz4ZoHCa5t6vCb/uKRJVBkE6T5SN3/Q3/1n+rH9CL69L/1v/Qs/a/tj+ruh/
XMJbm5b5X/d+6l75UVMd/GjTapT0o00jOsV3JGg8oN3gSfGtTXoLE+Hi9qTaw68PMxuPPMjvF5PH
SICroLBCFX1jIjsjO0Ig8XecGSlankYgoREITDQ7mteJX9dE7FqR4IoKseL6jd/0Jx+Y/yx/7SZJ
6AVquqn0n/UPbY31r+1P2F3b3+X+R31H4iT986l7vUfCX7behC9ba7N1KHd6UV976CXYTb6SiTW6
2BUC0JyyLRk/S+yOdnSiQHjaYW0O4iQJx3auVAybraMvviOBgUKDA14nu078OkfhAioGETx5Nho/
yGD6m/8sf9Y/69P/1r+hZmVybH9sf6/jf1zaiw/SpcvSvCk6LPTEvNnaeyQ2ZI8EX//KRFadIZB4
sV+IUKuCCa1OoETlJ0jAywun84mW/i4e+1UPSIHn4bXf1VubQjSGD9JRMDgMOGo65AFVOG4df8zH
kxlCojg14zf9zX+WP+sf69/BfNn+gBa0wmIK299b9X9u1P+4mG9tOon+3iPhQGLDAolwp7+GzdbH
XWx+aw6vIINKiY/LUbXUakWMK5d/qBGC7745TFgGFXi0ia9/pTQhsSVe/1qRg5rRHbNHLcCnwi+k
hT/14xC5GD8pYPqb//S4XwogxcXyN43+s/6RghFnaQFUZsH6v92IE3msf6x/KBizGb8jsUz/OpBw
ILEhgQQ28ygF4zKQCBef7JueNr8ZkSsRbB0ndGFxgsEFQw38I3h9oiHdUjoidEd+Ua9/JTo0PfNn
TyiPQWjTaWQnAXgnZEL8Cms0J+fmlWSukzZ+0588Yf4L4bD8Wf9Y/9r+gAcmsv+2vwgSb8D/ONiF
f7bE/3Eg4UBiMwKJB+vRpvCpH8MH6WLlIf1s+lXyuPnsNBwLBQhxz1pddYCu0R0m1RFMQPFoU3Z4
6wWFzdZ8tIkefNxzePp+fJCuEporHOFaBqEisTQN/mE+niNwEFEl4zf9wXXr5P9gNfKz+c/yZ/1j
/VvGB7ntj+3PyP7El61pLxb7Pw4kHEhsRiDxQAQSuiEPfv3aI1yRiBTBwHYKdwUKw+NN4YkzICCj
Qw/mJLqfywOSom8tWUT/L3/7nwOagQf6n/70U5q48KtRI9nMYGRa/JpTJxbnfXTIE8FdAmQ8TeNP
4pMUpr/5z/In/cbtx3Gj5Nb0n/UPb0KRmNa/tJu2P7a/y/yPi/tnluqfT93jtzb5rU0b8NamfQQS
EQZIt2OzNfZIjLzqCBSk9gCk/3C6UcBIgh6izFzLnyhwQ1IlNQcomvDWJjzalEMF8iw/SKfSMMc6
8esq2vnktRi//jb1NzT9wSBdVDkl/5v/eHMA7JYqYiha/i1/5Avyh+XP+ocKgtqBxygrBEWTdMZN
+h/vNv3LFYll1+8VCa9IbMSKhAKJkFcZ98ewIqEPysXttxDhDA50D0mCDJFW8FA5pF0GAEKeDgKN
QdzR1qjUiwgkuCIhTQBY5M98BoFEhz9sCJ0KTBT/UYYoYf4p8Nc5cW7iqvOmwqq2ujbjF0lMf/Of
5c/6x/qXLh1shpzRm7R/tj8VKNr+ruJ/6K1NS+zPPV6R8JetN+LL1tgjUc4/fWl+2VqKkhVyOh3u
9LBhS9FE754KNRx7OeKAiEno6iMpqIiy7iJoXMz62m//Nh34cFKfwR4JPf5EHIFJR9bWgZ/n3q4h
Ls74aR1Nf/Of5a9JgfWP9a/tz/T23/b3xvyPg91ckVAwcdz/uueeeyCo0yV/2Xo1WuKGAN3hm08/
+tUPNTic6tnsu1/8vu7WsfHwEO8kQAfz+l27dm3G39WrV2dXrlxRfvny5Rl/mxBI7COQEEXSl3zs
EXxHIsnDuydUppFFq+7WZz/9TwUZ7MqgQ22q41DthGcZ6bX/FnskiI5tz9z/VIefj0oxSIm+deBn
wJMhUPnOxq+/E2lu+pv/LH/WP9a/tE22PyTCtPbf9vfG/I+D/dNL/a9POZDwisQmBBJ7XJGA3aj0
NaxIjFP5mQoGmiOOVv6HoolFCrrnSBFdBGhOVKLDefhok1IiffrPnmr3QRP8WMZxeouT5q7vUtwA
fq6eYCzn4bkqJX61zZ1t9ncZYYyfcQaIhq+eRyAGqvD/Kn9/09/8Z/mz/oEetf5Nw2L7I0LY/kIm
lvgf9R0JsYuI1XlTqN/zKW+29mbrDdls3UcSX8Vma96FIHOHw0gHEiXemaAhSD14Ujm6+975Aa/V
dySy+ZnPPI25wzllkxaMgKs+gEV8C/Gjo4xSj03wc2eaiDqgORg4OMZv+pPXmcx/EBTLn/UPdGh8
Fcj61/Zngf23/X1H/I9L/CDdEv/LjzZ5s/VGPNp00opEF0bAvQonCyZlQRmQcsbphs1DRMvQxtF8
axNTzRQrEpxfL1hUX/QfwZhHONHwM3LgXXGlmiHw65staK9N3gQJyC3MTEWIPgw5PpptbDX+gTr8
+5j+5j/LH93pJhfWP9a/tj80rUi2v6EX1ut/XNzbBa3HXstAfwcSDiQ2IpDgHok+LXq0qe8v9UE9
Qp1aLN4UiwAaFIZmObNjKxJ6tIlQnKnGIa+JW1P0sxqPGQEaTdsZIdDx1SBlWdYcUcaih4IMBgwK
HNDHwIIpZo5j1Yw/aFNkFbFRIclM/+Ad85/lz/onFKn1b9ocZVmmSUkFavtj+8ubnDfqf3CzdZ+S
s8RWtD/eI+FAYmMCicac4FgFEn1Dz8WtfF2ABjkutEAip3gGgQSDiG0+3gTJoKjJwc/Pwsd4tQ5T
4c5g7Xlojn+FAwKtB7MobzE2mnMe4qYUsgoI4zf9zX+WP+sf619ZCNoH2580xLSRaTdZZLL9fcf8
j/iydZB9OA7+l1ckHEhsTCAxMGgGEq1hYNjWxMLC5oWNc8NYqUCioJ/9s6flyjdllTqLJk2PFeDL
ukTIpwqYFNVjdYGvcM2mVHM5o4IDAnJGVPBfzxhGE6fgYLQd5mpGBB0CjEFtrPGT0KY/GcL8F6Jj
+YNCsf6x/rX9sf0NlbhW/+Ng73Ri6bJ0ddjiQMKBxLsgkOiYd6JiBRI1HVck6PvHAgEdfFSgpPVt
iQwCmpOvQWikV6cBkWvFkOOQ2hI7ygo20K6gREjYGE4hjownhiCD0+Kf8ReNRBDRh5QhZSOxPehe
uek/kMf8Rz4hv+AIPqE8Wf6gV0qErH9CbZArQJN2k4dqBf+sfyk4tn+2/xKI2cXdPenSkw4OJBxI
OJCAdDCQgP2QnypDQoc1LExlkQuIOjZdNRqhMD3KQ9BSAasCOM0bAql3gqudjRxLhyeT4HgaMGRs
N35a+CKD6Q/+IK8xmf8sf9QcUhFNYwRviEukdMgp1j/Wv2QD8Ab/K0IiXwSv2P7Y/pIblMgSdDvw
b+x/XBztkcgRLXMg4UDCgQTE4Vl8kI6pgoJQtBQniFWna2SYAcfX0FLopI+pnFllphxjeBc0u6OT
FbRAofNr3KHYewiWOWWIscagZvymv/lPopGHlCvLH5VFqgkUrH+sf8kGtj/gA9vfqf2Pi3tekdjf
35/tgQ787ezszHZ3d5WfOnVqxp+/I7EJ35HQW5ugBWUda49E1ofm3qMYlcdA4/o8+PjRpmfvx3ck
8I+vaGVSTH7E5/LxIDIyLXGqJw4BhbLumBMXfook0KNggQ5wQrEbibUsRk3dEVgQt/Gb/ua/kBnL
HwIm6x/oSetf2x/b3z+2/3GwM//WJgjmXPKKhAOJd/eKBDxz3eAvto5bMlU7MX/td3+LvnT0UdIe
CXn5OMx7/EMV7VxNoMMfjWgAPgYMh7oLgoka/pqEeSYGGCgKJMe1LgUkrNXc1dOdDgYbv+lv/isZ
gUBY/qx/rH9tf2x/5Vesy/84OGmPBFQx/a9P3nPP4LBMUHrljZ/OzfKH138/V5+6wtWFs2fPtt+Z
M2dm9Tt9+vSMqxFekTg8nF27dk2/q1evzq5cuTJjfvnyZf3e3pgViYE9xt+RAL/KCS+IqI9bq3dB
3hz8cOR/8dv4IF1BckWCSTPK20el8mzHvTH1I5Pw6EsQ+dxJPoTU4osGSGAm4I8NfXCEVY7mOA6I
jB9kL3JUTvLhZ/qb/8gHTBQ7yx9CSusf8YP1b9xgkcrs9KaII4Gx/bH9JY/cnP/BQIJsVUl+iqxy
tHpFwisSG7YiESyqQCKKxbvIs+FYe4C05lYYho6bhkeboqcCCeGgcS5lnNITVcDida1HeLd32u8B
QZ0dAeNNpQv60KmABtNgKmJu19Sg2QG4QBg5+qJq/Ka/+c/yZ/1j/dsMRivQnugmjO1Ps5tFnKCN
7e/N+h/x1iZR8bjLAiI7kHAgsWGBRIj+sCKhBzmoIuF804Dy3lPycvJ1jOBxYPQwNIy/CT2kGjJ+
tOk5rEjMQ+aYWjLlTMfwYwQjgsziTFFB04Cf99GZiLmdoUo8O/ZS7zMZf9Bh7mj6S/cv5n/zn+XP
+sf6N8yQ7Q9trO3vOvyPi3j057j/MzgtDiQcSGxYIBHK4LGHX5I3rjss4FcqySEoSIUhiUndAc89
HonJYIMgTHJEsy9a5M2/9tvaIxFz1YpE4ZFSrjkxrtpjiuvgPwS+Fh1gZDePxqO+JQDAcYUC8LwU
psJj/CBIR7eiS1FJBuOkv7/pb/6z/IWoLNR/1j/Wv7FsYftj+7uK/3GA17/CWwmdImeFZdpoZCje
c88ns2+azHskVqMjbqyXi7zagDHUj371QzVxFvqi3/3i9/UMPhsPsSeC0zOv3+bvkTiLMy9G5Vub
EEgwwZmMhIuMSAG8m23VJAByNBOfAQzQyMsFlWsuxufo1377N4Kuw3P3PwOnHj34X+PUtxQ/A5TC
W/lq+ONadDpxwDzGb/qb/yx/1j/U36lPrX/TRKVRg/Ub7J/tT+MTebQkle3vKv7Pjfof+o7EEv/L
KxJekdiQFYk+kNhCIPFCqoZYiWgblKFPaWK0cQoSo1zqgw5I1AkR71FGrkgrDJM2JjKKQPpFe2uT
ZsN3JJ7BMN6pkyoCBMqCXA9+zh4bJYdzNn7T3/xXkmf5s/6hArb+5Z3gqe2f7Y/t7434Hwd7WJGg
7wSlJI8JlfK3WPdbmxxIbFggEebzsUdepEfBJ5NwCKZlzjpUABrVHFyNcgsY2CeGj8EBGfPISVPD
EVYk6q1NbDiaPfvZZ2IOjm+DYtw68A/nEvh1Vb2k6gKNf11/f9M/eUvMHhZCMmT+t/xb/1H70iys
zf5Y/1j/xKLbu8P+M5BY5n/d80k/2uQP0m3E619rRSKs2NceeUGKXEEDmio2aBpeYCmEIZGCIWTM
gCP+626OBmMmBSLRO7z+VfdmtCJxtKUXSlJeMJZWRO59zhNNU+GPeYACyLZxojwL4zf9ye/mP8uf
9Y/1r+2P7e+6/J8b9T8u4PWvdIkiyTFCkb4U5XQLKxIOJBxIbEQgcSYZk6x6NHvskdwjwSoDgvCu
inXDzoKzycoUNu1Xjhgh4ZmR8/OoOTgZxoDxf/E77pGoAbPZc599SgKhJuLig4aVNDbmYqtKOMTH
4TjLjePXLHwUC/MFJk0YFeM3/c1/JX2Sianl3/IHfWP9Y/1r+2P7K0273P+4sLMrTjnJ/7nbKxIz
BxIbGEh8DYGEHGzyN1lYjtXwSTIxNFcittmLlIEGi3TPI8RguxqGQtZ/oc3WivcF8tz9TyEwQF39
MX6d+GOlBPiAJF7ahBbjN/3NfxBgyx/1l/VPqG2JxMT63/o3bqjZ/tj+ruJ/6NGm7pOw1E3a6J7+
1yfv9oqEA4mNCCT4aBOSOHQ2e+xh7JGQJY1mRgQ0rRFKRJkGhj/ycj7dFMBZl+1hGa0xVU6OOh9t
ilr08vWvgkejFgSGQTHnxPg5aY+/LUIYv+kP3ouANllP2bT8b/6z/Fn/0DaEorf+hTyQIWx/bH8W
2B9+R2KZ/3W3H23yisTbGxBInH7orAS4XKd4tAlhA7WbogRyN3qrTMceffHIQ7wTOwFCG8rxp6Go
RJPB3QgRivzid9hsXVMC5PkH8EG6NjfHENn68Ne16JJ4rrxM4wfN6y9m+pv/LH/r0n/WP1Q1seqj
1QnrX9sf298T7S8DidIZYaPn/a9PfvJujJ0u+TsSq9ES+371LM5q0Augbs/vSPBC6d1vYUWCeyRQ
pl9Jn1IZVD6FfRsBRPoYAc9ewqKPsBxTBe6jQHs3jcrabN1guUcCr39VDyD74KUbqEemJsLPM8zo
QcV2vjwH44+/JWlh+gdrkF1AjKn4X0wX0av5L4iBI5nN8mf9A8NAPU9esP6x/iErIL2X9e9FbraG
MJxkf/xok1//ukGvf5W0KgT4Gh9tYhXODmOuWlbb5vPTsvWh4cnYZPDSdugVLHMZROYJcwiFwKCC
8FyRqFCOeuLZzz4dcxAG/a1vTfiBZMABzLwCXYPxm/7mv0E2LH+gxfT6z/rH+rfZONsf29/r+B/8
sjWf5TjJ//JmawcSGxNI0KEPh3o2+zo2W7McH5ZDDi4+wkoEPYyAo8fNIIESgOBAAQbbOEkYXvZT
WUbowEIGHQgmfo63Nml4DtEeCQ7ldAw20M7yuvADReLPwKddl/Gb/uY/y5/1j/Wv7Y/tr26JTu7/
3Kj/cXBqb6n/5UebHEhsRiCBPRJMjAOYuNlaLjYdelkUNGaAUEIQphbtOUhBA8uA5xAFDmjk25Ai
oqjOrdlrCCQ0bw5/9gE+2tSmEvw68ccpxYXprHgw/vpTmv7kW4bAyboiDNoUCqONQXByeWNa8jPh
V+F/8x9ZzPJH5hHL8ICUmeXP8mf9Q9mAQKSaUOG9qn8v7u0tvf67/dYmb7behM3W+w9mIJGC+9ij
fP1rOlNzeZi+cAEGIQ/HipYwxsgo0hjIMoaxrGCCY1/j619rEtSfvT/2SMSjVJyH/9eHX6dFDSXP
L68D+IwfVM+/i+lv/svQiZKR8ki5JGdIRAdeYQPTivJv+QOtrH+sf21/pDZkc2x/T/Q/LuDRprDH
i/XvJ+/2Zmu//nVD3tok70DOADdb48vWuh1A50CyPooa2JiOlryKcrrU3MZEF46dwmTxF/+CFYmc
l0HIc1yRIDCT8NYbY1hX66T4iYsftOPk/OJ2u1aiMn4Qx/RvPGH+CwFsEWbIDQVWAYaqNyb/lj/r
H+tf2x/b39X8D262nr9rQ6M06N+7/dYmr0hswoqEXv9KH1rsyT0S2GytZ5jChyDTsjd9htYVPjha
C7Y55WiDQx6jcjQmL/90LpDAzHxrU7kikfNEMIAnpBQz6YhDdd0sfp4Y52AqFMY/3HcWTYrIopLp
PyX/m/8sf9Y/UizWv0EG2z9QoNY9bX/AFJ391etfQZ2T/B8/2uQ9EhuxR4KBRJ/al637xnFZzjiF
v74jAQBqAHI7C/Tyuy6262Y/un7xBh5tkraAcADu+dwjwZFMnELdqp1wABDvat0M/vicBbFsA/8h
zmsem/Gb/vMcsYAHzX+WP+sf69/eyFFp0HjQei2xf7Y/JJHt76r+h1YkyFZ96uzP3Xd/ou+55bK/
I7EaCf0diRGdKpCgaFMX6oN0pRSrUTkO0pFckgvgyOKoOwpQoF0wHQp1q48o+GVrBBKVMFSPNqHe
z6UTYUM0Zo7KBPgLtS6x5m+osmGN12/8QQHTP8RDvG7+s/yDB9o6rvVP6PzSz8pxAF302vFsjyyO
q9of61/rX1Lg3WJ/YrM1T3gx/3uPhFckNnJFIr5sHcomxU2VsG1l4foedDN62AajU6dnCvWeFQpB
RhjDikT0xQfpojzMnuNC3FWZCn/cEcKUx5EtaBqAjJ9/3jE98u90A39/0z95byBlEnERSw5A5j/z
n+VvLA/WP6KA9e/K/se7zf7Eo01lG47z/93ebO09EhuxR+LB94FLhwggAol6YjEUNXvn1xXQkDyt
DAfFCq2ZJi/ur8UMBb6FFYm/riblz93/LB4vOkwntbrWh3/eHQE+KGHjN/3DSTP/BQUsf9RepRWn
1H/WP304ZP1r+2P7u8z/4KNNy/SPAwmvSGzIigQCCSWyK97axM3WGSXMuxNoRcDAxz8rLzgOry9h
89sRehtSzkIYzlzBCjdb9+m5zz6b0wR+GtpswMjenKN1AvzNO+BJtCgIZV5YNLTc+E3/wZ00/1n+
bl3/Wf9AvVay/gVDgQiig+2P7a8YAdIROf2PC7u7JS0L/R/vkXAgsSGBRG22DuZ97JGXwbDlPqEN
DjYdCCk8WMFYa0BV7M2+GCc/vLF8FthVRQ3Al621IhFj2PU83trENNyngvisEX+7glpCEXbjN/2L
J81/lr/16T/rn7Qg1r9lRG3/bP9P9H8u7uwu9b+8IuFAYoMCicGJ+vqj+LK1bo6gjUFECTkVf5e2
cCdF7wPnHZVMKgkOfQCPsezMeRB0xIqEEGjUcw88je503lqOrrz9OTV+IuWKSZyRKsbf6F5/B9Pf
/AfJW4P8W/6sf6x/bX9sf+UtURks9T8O9GgTYE/wv+7+hD9I5w/SbcQH6fhoUzn2RzN+2ZpVuJTI
IO654iAQQsrBZz8SmFsjKQuqxygWI5CgALCPaoMjjmY/16NNUSbc8w88C9jAwzzBBL8O/DxRXYPO
iWfAoMf469E00x8sITZcD/+b/yx/1j+h/3m0/rX9sf092f842NsPgyQHK3Vnukn0vz7hQMKbrTdi
s/VDtUdCWr29/lUBMDR98i8KZPZQ/NFKRwtmQIcYG04SGnSHO9qkJOidci50xWZrTaS25+5/Jm7+
ci78CCPwzJkpTYSfJxyrKUDDcxp9yNn4QW3Qpf6upr/5z/IHClj/TKL/rX9tf2x/4TvRxq7gf1zg
l62ZTtA/d3/C35HwisTGrEgEr/LIzda6O42y7snmYy9Ry3UKMTWkQKlfb4CSpBcqKWF7RgM5F+fQ
l61zHOvaI8EhAOWMtQoRI1GbGH/g4AkAA8+TyfhNf/Of5Q+qwPqHN4zyJhGpYf0LepQ1unX7Z/sj
yytJs/29vv9xYWd/Kf99woGEVyQ2YUXiDL5sTfc/0tHs64++nOVy7NPLpuMdSxLZz3bezkeGru00
PqUmwivBS2MVIQAABol+u/ZIUDGnE/8C9kj0+ANroAB49HGOifBzZhkGng/K+L514GCHWog1kvGb
/uJN8x8EAtIygfxTsix/of+sf6x/bX9sf5f5Pxd28WjTEvvzCX9HwoHEJgQSp/FoUzjM4Tx/XXsk
ouUIH5njMuQcQLgUOsa+B/ST0fVBOjrnaBXj02OIOXnMeznaI0EoCQ/6n8frXwnGLxkEHI4KMgCz
BvyBg/gR5GRAY/ymv/nP8mf9kyrb+pdGyPbH9ndy/+dG/Y8DrEjIQQr1zOHpKcnTwh4JP9rkR5s2
5tEmcml4/Qokspb2RP72IZTKNhrEz7nUy4DhUCECB2A8A4hutaFYXnMnip//9m8CBEOYnnsAeyQ0
K8ejIU5D2Trwc6PjNs5T1wF0gTIRG7/pb/6jWFr+qBvIC9AJVGlT6T/rH+tf2x/bX7oaTOFyxDEr
apfqweHizt5S/XOXN1t7RWIjViQexmZr8HHazNnXPxdvbRI341ArCa0O2HrriAaxg22CHeZhYKHX
/CFnfLGt4GM2e/WN4YN0xPncg/iOBPobnjoRzovU2qMaQQiDljpptt8Afp5LJc3Spop1El3THEy2
56CIk9qgaDX+lf/+pn9xX8pKYyXzn9yLpEdRyfJv/TO4nZAZ6lrrf4gHCEFZYbL9uW3tzwEebVrG
/5+4yysSXpHYgBWJM3i0qe68UTHFHolBM6EE5d28HWrx1ObUYDTzTMnqCaZ2aHw6jeEIYC8FHyUC
nF7/WlMgfwEfpIvps1Ezrg8/z5Yo4s0RfHQrLqldl/Hr71Saeeq/v+lv/rP8Wf9Y/yJAhPGx/bH9
Xeb/8K1Ny/yvT3ziLpnUqQ6vvPHTuan+8Prv5+pTV3bx5e6zZ8+235kzZ2b1O3369Gx/f1+/vb29
GX87OzszjmF+6tQp/RxIbFggAf9a35FgLm9bGYOECBjifc8MByJJCQqGI6KVbRzLh55iDoyNRkH8
HCsSvKGkIAM590jEh+0CWo4rp5BDz2xa/AwYAj+uSqcdCp0nV1fB3PiDCqa/+W9K+bf8Wf9Y/9L+
2f7Y/sLNgD+yzP+5uLcL1+Rk/+su75Hwo00b8WgTvyMBn7Gc6G/orU3hPNHbJwuzphQWIJzsHMMA
IoICNKCg6DqAY051ooEdCAr01iZMJzjk/CAd2wNPnIfm5Og14JdINvy8rjgv4+ff2fQHNyCtj//N
f5Rr/CehqRssfyCB9Z/1r/Wv7c9x+zv3aNMC/+uuu7wi4RWJTVuRgHF/7JF4/StXEUKwafhRitsH
cgJo+4PlGUTINQrXS4weXTEkHDJMJXBmP/+Xv8axBIYrEs/BqcDqBedJVOpfE/64gAE/Xs1h/Ka/
+c/yZ/1j/RuxLe2T7c9a7L/tL72g1f0PBhLL/K+7vEfCKxKbsCLBPRIKDMDfvEv49UdeQhUF/E9N
MvAxm7hKAI+/AoUSCYUMnEAKuO4vcYosqw+BxBsIJDg358LvBTzaFLgwQ0YS18PPb1YcYnA8MhWT
rYq/rinw4+zyvHhBxg9a8u/LPwjJyj9QNMnJEs3Qb/qb/yx/1j/Wv6kgpSrLlsgSQW2y77j9K50a
fTWGgLY/tr/H7e9F7AsAa8zZ397/ciBxyoHERgQS+dYmKjY6jfVBOqlBOpV07qH9QmWyLJ0nWNXU
Eb3qZD9+AVkt0cbjL/jWpq5TjzZRUtjYtbNFTi3wUykfsptOfzQP4ADcwqtpj7CyICwAiVUSzSB4
jVGJihsFXRPnyn0cxk+i6L/IhIPpTyIE/5v/LH/WP1AP1r9Sj3PmwvbH9neN/sfBHlYkYI3ltqSD
1POfH21yIDHblEAimFR+U3v9awQQ0pvhVdLvFmCDRgMbh+7wPqOZrK8724IYDvVoE4WB/vzzD+DR
JsESP51ZPubEvphbI9UeQYA2JmnmGnUcP4fyA2OFnzPxrPtE/NvoIFTNZPwgiOlv/rP8Wf9Y/w7m
wvYHdsH2lzch32n/4yLe2iTnpZyYuBMK3qRHszVzIOFAYmMCiUFjDisSQ1swLOsqSZjIwotTQA9j
ahxH07HvH21in1YkWKAPC+++3H/OICQVfqOqWXGQXq9uwlWC8dOjV4LkCgUSBE8BAkKLbUzIftxC
UbtkU4gIxybjN/0j/BRbNAZhwfxHmoQxlbiEeIoyebD8Wf9Ah/LWTLzuOxjG+pf6w/bH9vfG/Y+L
O7sUIvyO2x+2OZBwILExgUQ5COTXerSJTHrjSTONhs23vYrN1iEWEAx0vfAgXv+KFjrx9O/ZNp8I
nY0o0s0TjCLzoYtjaMA4V0JpVLVpFjo6hMB0vOF2iMUP5sZv+pv/LH/WP9a/tj+0pH2S5YwGFG1/
31n/QysS/Z9jVHYg4UBiYwKJnjeXBxJ06KlYMo2q1Vz5ou56tKlguCIhVdX0VSsAJMpSXgoL5PLL
8Zf7nwhy5VkQ7fTQV+21OYkRxFz8oSiCcwbsMAEnZjJ+0Rl0YAA2lJMupr9YpPhMXEPSMKFS7ea/
wfha/hp7gHfALLyBQnYJkUKpFVrZ+s/6x/r3vWl/LuLja0NKg1sNqN7lD9J5s/Wm7JEovmS+PJDo
IW+uPA4ktCKRVjRMaJrNzrqGvUUD2+ChxV2RQahiHLqqH10BxbzgmAdM2zRIKIyJpfc06DF7GvaY
ucHU/IDRI1KBUEfNXv3Gb/qLj8x/lj/rn7ngCDrS+leGQrap2RZpzLJbkBqClF1EOfbv0YDZ/r2X
7P98IMG//3zyioRXJN6FKxLzTHwztWOBBDdb8zZl2lsaGdbVFFq2Oep1Z1c6lgNCHw9jcUIRFKCg
OeYBwqlhH1QR7gRSTxc+4yddBnqY/uAl8x8FyvJHvSK1ESsr1CrSJfPqJegk54/A1GHzANY/pCJp
Y/1r+2P7u4r/EXskQmwWHR1IOJBwIAHJeEFvbZJtSTkJc8u7DuXcR4yBdsYOaZt1X2auITprtAZD
UrUozjFZLq8o5iRKQgzzpouAVuM3/cUeSQbz35y4UULmGix/VE7WP6VZkVv/yrrQYSxa0KxQoRSV
bH9sf8UL5Aul0iDhf1yYe7SpYIbcgYQDCQcSkIfnsdk67n6jIsOjLBQwmnRXL2RqgJMmlqtPgPll
X2ptwsPJQso06QAAQABJREFUiVfIUjAjoOD86g4blzqddw4Dp/EHTYOEqdCKnvpbJJ1MfxECbGb+
s/xZ/6SOgFAM+tr61/ZHd/1sf2/F/7i4g9e/LkkOJBxIbGQg8Y1HX6abuDTRgVoOczLE+NGm5x96
To58IeT9iUMYJuog3vCkt193PlXFgV9UpXDWWfBxptRZiAUIhRfNHeFLEmgsqLhXGHWOk3ADlN+x
05A8AeM3/c1/lj/rH+tf2x/b3z+2/7Foj0T5NHRZHEg4kNjIQKLfbF0MW3n62pnNt6qWTX0PXfe4
t41h6NB3JLqJ9GgTPHnBKVIgWDj628gPUau85mU+QMVkCgBk/RFGMEAAUIYUCEjiPa9sUx8tRAUZ
gjV+0x8cRIYBj5j/LH/UCKV3KqfeSRax/mlSYv1LCtj+wFbb/kpBTOl/vIkVidI7IWl1jFYHEg4k
NiyQIGPyrU0v4VisWzl7+jLrmU5oru5xPl6ReOHB5wKkViEQOuhjRunsh+lGE6MAfnW5nQfqtOr5
7QmeRmflWUMdAFRuLOK3EEa9BMi7sMYPYhRRSTFSjhnKpj8IUTRBbv4bWEU8kuRhmcnyZ/1j/Rui
gCM1x2CI1DwcbH9kqnnrcFAqpWtJN5Tfg/bnws5O8khHi4FrvCJxyoHEhgUSwZ1f/9zLEtq4K1s8
DCbW7dqoz7P0SbWuvYrIY0ViaIgP0qWSpZbVXY25dQy1ac9DRgM1OrQynF6OS6dl6IuShlQjcj7G
xLuNcYyrzGljHuMHaUz/Mf+b/yA1KSglTpQhGX3LH0gBWkB3DLSJkkhWjcitf0LzxtH6l2t/KVa2
P6SE7S9EY7C/F/hla9GEXBKp1AlrXpFwILFBgUSx5pZWJKrWWcXGzI2nZRQ7d6sGFYDq1YjhYHre
VBgebYq+F7RHouC2cD/iiPfDpVyX4edeiG1scAg1jAFtChRk1BMhZxr0U06MPg2IR57iNY0UVOM3
/c1/lj/rH7ktpVOlLkOvlnq3/rX9sf1dv/9x4VR+kC4Fr+SP7gv9lo/f9XFK52TplTd+OjfXH17/
/Vx96sou3kp19uzZ9jtz5sysfqdPn57t7+/rt7e3N+NvBys0HMP8FFYj+Nve3m4/vmCHdSaWf/xP
f1H3eNT2vS/9QPmtHrBvt7u1fhOz/ehXP9SovAE1++4Xv48TldqdHR7CDUOZef2uXbs24+/q1auz
K1euKL98+fKMv835IN1gMb7x6Lfg8ON64pLAr8eDhdaWw5jRCZdTP9fGaeouXUx47NEmBBKKMBKn
5r4F/AxWODzO6Th+dbA/z5Pwxp9EE93wdzT9yThKjddZS55pba0enbq7mKRkF9OY/9scOdb8RyIl
0cx/YA/Ln/UPBMH6R/qz6VrWUme2tlaPzttR//KtTeObpf313/Xxu0SnqQ4OJFajpAOJEZ3OPPx+
tKTWgqR+43PYIxHeDbLGsop+OVRKnuYug6f4aBc6eucT46K7acPSAd2jTZpt9sJDz2PSgKvXtU6P
P9w5YdE2CzougV8F4ycxFMGLFyb/+5v+IUkgsvmPjGb5s/6BMFAjgxDWv6CD9a/tP5UCZKKzvxdx
511SojZ2hcyU//XxuxxIeEXi7be1KvHWW2/NLl261H4HBwez+nEVY51pCCSCieOtTXB7wLBk2VL0
FPLU9xEUoH/uGw+AZn+FHoKXUGiGmAfHV//lrzkpUsz+4oMIJIgLgiKcal4ffsqjrjRONq/B+E1/
85/lL3SYtNia9J/1j/Wv7Q+sv+2vBCF8qJP9jwv8jgRodZL/5Ueb/GjThjzaxBUJJnrwsSLB+8fF
vMx5BxGsLgc8wKI/WiIgaIyOLilKzhZdOYQzcI/E3zRcKMz41ibeoNT8srKJKYVnavw6u7wmnWdc
nvGDAk2prfHvb/qT2YPpzH+NFJY/y5/1j+2fnIZ1+h/vNvtz4RTe2rTE/7rLeyTa/giuTNAP9R6J
XJWo1Qjm61+ReB/9eSS6NTM82vQtHPn8BZ173KWl9y+PJ/JWVQEQ+MMRhpt0uSQXsyAYiELWOVk0
vPovf9VNOJu9yNe/oot3xJnHDOvDz6sKRMyRsmr8pr/5z/Jn/QM9sEb93xTu3F0m63/bH9ufRfbn
IjdbUyTLT0FRVdWPZt4j4RWJDVmRYCBBIQZnwplveyTQpBun4OD6QjQAIyUsK8nf2VEZH4NikBFz
xPSYBxHjz3/DQGIY9eJDzyqI2KqvuLAvg4p14OdFaX2Fn7QGrnicA+6D8QfdTX/zn+VPKtH6h2SY
Vv9b/9r+2P5Cplb0P7RHgjdry7Vi3vlfH/+439rkPRIbt0eCKxL4jgSdSb2EVTtDybrByPTx6X+3
5gwI5PtHWQwPRufHpLchAPRJwiBzlqPZq29wjwSh6MRv6dEmlhMDcibW5xBNhl/TYzacYZwfURk/
aNCrKtPf/Gf56xSd9U+qyVvV/5yGusb61/ZH/oHtL+SBRFhsf7VHonoBNpa/j/utTX60aTNe/1p7
JIKV9UE68jQCgS34EgwCSvFT/Q8MH8aAwTFlgDEzjQOFgvdcJBY4HB2mwmQZUcXP3/gr9WkY2urL
1qzTdWEugDXh51ny3Ap/XF/Ujd/0N/9Z/qx/wAPWv2uxf7Y/tr834n+8qe9IpK8VXguEkyna7vKK
hAOJzQwk8PrXcunJ8WVQyLsIBMS+ndcvoeAzTGRy/GepmDzcUrjnWorjIAYS8dYm1phe5HckMsXs
QLhG/BHiRMgzJ5fAavz865r+5r8Mqdcg/5a/0JXSf6ESS/1Z/4AC1j/Wv9a/g/69sL0bAS21xAL/
y482eY/ERuyROPvw+6C80/2Hw88P0rEajyNRsYuDBSG7F3Ywx6CFsLXqUFAxXTA+JorHAdGI+V/9
DQKJnIP5Sw9ij4Qa4GJsQYnyWSj8Xxd+XZDwEw8w8/yMH39k09/8Z/mz/rH+tf2x/d0U/+PNHX7Z
OjyURf6XAwkHEhsRSPA7EvKrGS+goD0SdOYpSfWsj1YcyM9k5SHFHfyo1zvoyfIRfjCnCESwoVeL
ovwzrEj0+PgdiQEue9aIX8Ko8wIurZT052n8/IvJmVrT39/0l5iByuY/y1/IWmgdlNvKLlosf2ux
P9Y/1j8hb+8O/XtBb23iGdNpIfcOiZ7Lxz7+saFhgpK/bL0aEf1l6xGd4oN0aEy5+sbnX5aTEz42
3B3xLkID3r0nkDRx3MWvu/kKHGgEs4+5hiUuikHV+UE6zR0o8WXrfLRJ+HUALDBxDuLUwOnw01jH
efOSeeZ5ZsYPupj+ZDjzn+XP+sf61/bH9veP7X/o9a/0U3Ai9FfkrjQbdYRAwm9t8lubNuCtTWcf
eX/wJp1++NQMJHRHGjyrBjiXwcSsByPT9eYKBOvNEUdVjF5MTnC00TdlIiSPr+L1r2oTPPZIPPy8
5gghyUY5tBwVE0yJn1E9X2fLXKeGcrqOalOj8fNPZfqb/yTAlr/UFRQKqiRIxs3qP+sf61/bH9vf
Vf2PC6f2lvpfH/uYVyQcSGxCIIFHm5pjD/n+uj5Il04kMyTeqVbAoH3T6XhrEDsFArmAsaVTLisb
zeWgsy9WAmZ4tAlvbeIYGmTkL+HRpgF/jMgZI8NxSvzNCeA1AT/jIeOPv4ceT6s/qNyl+BOY/tPx
v/mPqiCEzvJn/WP9a/tj+3uy/b2APRLL7K8fbfIeiY3YI8EVCSY5ODjEl63VFAdq+nIuWzELCBCG
j9W1sCHgFVFwXqw10GFHKyHiOxKJD20vPvR89tCoEmqUJsZf11JnG9hYM37T3/w3kj4KBSWjxCSL
Ny//NZflT5oxyW39Y/1LUbP+sf6Zp8CF3R00nKx//WiTA4mNCiSKfSOQCEeBKwn8aAxfSBchwbaC
gbiLxIeRABeVGI7qoAu3MBYv8+NULR3h9a9/AyAYTsoG+l7Co03HEwdxdWN6/NvYQc55A3+sohj/
mAKmv/nP8mf9Y/07tf2z/bH9vRH/42B3b6n/5UebHEhsRiDx8AfgVPPuWCQGEnIjq4GVaAkAdYaj
yXZ+6j0eVUA33/LEqCODBK5EHKIS4UfM8ioebWKq6V968IXZYYeffevEz/mZIghCMHSIQMn429+D
tDH9wR/FoCTGhPzP2ZjMfyAsiGz5s/6x/h3sL3WD9a/1b9kfvbVpif352Me82dp7JDZhj8QjH0jV
RRWWr3+FmxPrDfKiokNHuj+8SwVlp4BBKo9eUWg/ZAHRNbATjjq8dcHFdyRiXh5feuiF6McqgQBS
aNaFX0sR21DcPCVhzPMzftO/MfL6+N/8B3mz/Fn/WP/a/tj+wuIs9z+4R2JIx/0vBxJekdiMFYnc
IxHMujX7Zr61iasU9K3B5vjhESXePaSvzxZ2MJpgwrNLW1iJ0D2VGlDPLWm0BgGQ8NwjESsSVedb
mzhfCFTA0NlaF/7EkOeDUIKhv/Gb/uRP3QYCv5r/LH9r0n/WP7QCTKSE9a/tj+3vMv/jIjdbL/G/
PvbRj0qapjr4OxKrUdLfkRjR6WxbkaBij9e/Kk5AeXhNHVmZqp/rESooqAiDwIYhaZbQDTIVMY7G
A434/+pv/nIARunFtiKhkYCJAIZPSa0Df5kxXggxxnmhouAHDcYfcaLpb/7rguyQ41uXf8sfKUnh
sv6x/rX9sf2FFPAO7Qn+x4VTO/BTTva/vEfCKxIbtiIRav0bn/8W+DrKmYHRo07TN3zMDcYQ7Qw6
KAgc0+Dpnnd96kiYnzGQaPPFZmvOQXhOxjnWiZ8bnYSf50ODjmT8pr/5z/Jn/WP9a/tj+7tJ/sfw
ZWs5Wsf8r496RWLmPRIbsUeCr3+lS01G5YrEt5VHhMAeefbRLc97CB4ESL98BHMEbcwYmq565IGB
DrwCCQ3UZNgj8RyCB8DJmyeaaF8Xft1TVSwR16HzM37T3/wnIbX8Wf+EXg97MNbtZBKKChSGwGg2
xjDL9L/1LwhGmsHmhMph8Gb7Z/svQTrm/1zc2QtZQ3e4RvPy97GP+oN0DiQ2LpDY0nck4qutYNy4
PSMOlvFINo9HjoqvZRrE42FgZFYwthRkCEDIwRECib9GA1O0vIhAogyRnBjKUzNSMOoqp/BMgF/X
ROxakeC8Ee4Qj/GD3qa/+c/yJw21Dv1n/ROBmvVv2B3bH9vfZf5PfUfiJP/rox/zHgkHEhsVSIRz
/83PfQfOO99nRJ+SLB4OfxzZloKfJXbTNLCfBcLTD9HmbLYlHNt5p2rYbB198R2JcGA1EK+TXSd+
nWNejJS47Jrx6w/IP5zpb/5bo/xb/sBe1j80FHETx/oXhtD2x/aHbHDc/l7ciQ/Spcpo3lT5Vd5s
7T0SG7JHgq9/ZSKrzmbf/Ny3+xtxId88anWi7uATEm1YklXeVi5YlWUIoaCCHKWf/abe2hSiMXyQ
jiEKhwEHhjVjy7YJ8QdWntQQErEWdeM3/c1/lj/rH+tfmATYobAXOEoobt3+2f6IrGlv8+kFml/Z
Y9vfsf19M9/adBL/eY+EA4kNCyQkzXj9Kz9IV6sO0Ublx4/KDR+Xo2tfqxUBUyp3qBGC7146TFgG
FXi0ia9/5YRIbInXv1bkoGZ0rw+/kBZ+5LQPQ+Ri/KSA6W/+mzfx08m/5U8CJkWjG5DWP9a/LXIX
W1j/2v5DTVIxzGb8jsQy/8uBhAOJDQkkuNmaKRiXgUSUyb7paesLdHSu1ILjfOLze9o8plADIgBA
frBOeapFBiJ0R16p17/mZC89/FxMGsB5GoVpevwKa6i48VEsnZKuEadm/Pl34N/W9A9imP8UZE8o
/5Y/6FHrH+tf2x/bX7pE1/E/LpzCZusl+teBhAOJzQgkHq1Hm4KnH8cH6WLlIeWcvJ5BgJ43UoAQ
96zVVQf4nrrDpjqCidxsPcxCqeFbm/hoU5Tprr74CD5IVwnNXOtYJ/5AlfiRcUtAS8Zv+pv/LH+Q
AqoFaolILHHvFvJb1H/DfNSR1j/Wv8lizMAPtn+2/73/E1+2Pln/OJBwILEZgYQ+SAcFBq+eKwvf
/AJXJCJFMLCdyi3sKNcluLqg9Ylcm6fyYxo+IMdyzZETMwOSV3/9lwGNOkFefPAFTVz41RhDMxiZ
Fr+uifMDIc/76JAngqvh+fEyeFKZ1nH9xk/eQTL9zX+WP+sf61/bH9vfE/2PN3f3ZSf4+hu5W6j1
/tdH7/Rbm/zWpg14a9P7EEhEGCDfDputsUdi5FVHoCC3G0D6rzcwwfWWABwiauAQeuLxfuyaMWHV
J+9RX7ZWkJEgLz/8fOIf5lgnfl1FO588P54aLqyuwfhBoC6qmvLvb/ojkDL/UXWk1FXR8mf9A5aA
3rH+tf61/aGC3NIeiWX21ysSXpHYiBUJBRJ0bJjAu49jRUIfFIrwV/a+ggOYejlBcgYVPEDpd0EE
HSQO01SwinFHX6NSL+SKRDpSNJwvPYRAosPPtnXir3PihQ2GO8652oyfTh0IFP9bcDjF39/0L0fJ
/Gf5g96R42z9IwqkTrb+tf61/Qnjq7c2QVHW90bkY8Ewl4zc6RUJf9n67Q1YkTiLPRLl/FOZ88vW
ChRYkVePLD1s3qQOAUcLBtGxlCFkrknUksYxymB5OaSxGRtvbfr1X2naclJfwh4JbT5kQ2DSkbV1
4GfU0q5B18VTZyRj/Ka/ON38B1mw/Fn/WP/SvqVWlDNHk4QG2IubtX+2P7a/jYeCuZb6HxdO7YZX
dAL/3XnnnfSUJkuvvPHTubn+8Prv5+pTV3Z3d2dnz55tvzNnzszqd/r06dn+/r5+e3t7M/528F0N
jmF+6tQp/fxo0wYEEu9DINGeYoGOfPwL+I5EcgvvHtOYtAAC7YqEs7+iYw3IoENtnEAKlzmddKSc
9GdvxB4JtaLtpUde6PDno1Hp168DP89LpwfxzILxB0H4x8Wfi0Yy/l6mPwgzMf+b/yx/1j8QK+tf
25+0O4P/Yfsztr8Xdvfknyj4oFmGcZbvxDIKH3Ug4RWJjVmRAFNW+iZWJMap/MxwvOkIkJnRyv9w
tOImDVuRFEmoa2D4YYQ2W2v+lIYXH34h5mrQY+wxl96iornruxQ3gB8nqA+9YGqeq1LiZ1XXYvxJ
mOMZaWT6gw/NfxAWy98N6z/rH+tf6A7ZGtufMDC2v6LD9fyP+o5E+FYYAl3S6587P+rN1l6R2IQV
Cb61KYWanP0NbLbmXViqvWBYOlAo8c4s+ZhASCeVj/dGSw34WX1HIptfeuhFzB3OCZuIi/j5ZgK+
Bo34FuJHRwUF/bkIvpAlDmUd0BwMFLzxm/7kdSbzn+XP+sf61/bH9ncT/I+L/CDdEv/LjzZ5s/VG
bLbWHgm5UHGoFYkujEBHOFmLwwdAyhmP8Z2/3matNuavZiBRbbEiwfn1grNuzBGCiVDnDT8jB94V
VqoZAr++2YL2WCFhX43awswMhOgkVttwJTGL8Zv+5r9BOigflj/rH+tfutNNLmx/aGBlW3sLSvtv
+xsUmdr/eHPn1MB/czdIw3NxIOFAYiMCCe6R6FMFEn1bXw72RQsK1CmlVppiEUCDCkBCZdOxFQk9
2sRuzlTjkNfErSn6WY3HbACNpu2MEOj4aJCyLGuOKGPRQ0EGHWatc6CPgQVTzBzHqhl/0KbIGgYk
qGz6B++Y/yx/1j+hSK1/0+YoyzJNSipQ2x/bX73W+Ab9D2627lNyltiK9sd7JBxIbEwg0ZgTHKtA
om/oubiVrwvQIMeFFkjkFC8hkGAQsc3HmyAZcufZl5+Fj/FqHabCnaHa89Ac/woHBFoPZlHeYmw0
5zycn1LIKiCM3/Q3/1n+rH+sf2UhbH9sfzfE/4gvWw+uT5TSeULFKxIOJDYmkOjZdH5FYmDYHgae
dzrhfevCxh5A5QokCvrlh1+UK98CgvT1adK0rLyl+9/DfgiuQGB1gW8x4BxMMSRnZIUJ1WHlocKJ
6GIP5467iRF01Cw5mcYaPwlt+iscTWbTXSXzn+XP+sf6N82J7U/cjpMNtf0NrpjI/7iws1dOy5Cn
q8MGBxIOJN4FgcTAu1OVKpCo+bgiIUWMg4IHCUmsOLBDm18DIocQEEBaUYicsUVZtbbEjiYFGwDR
vAWj1QyCozXnVxcOxo+gyvQXf+nbIskf5IzGYCyb/yx/1j9NDqx/B/Vg+yMDAoKAPRhs2/6GX1Em
5Ab9jzdP7YiWJx0cSDiQcCAB6WAgUX6aHHlGBOHhVxa5gGi7UlXTyQsRVR6ClgGIKoCT8NLxi3EB
w0aOpcLLJDiC5eqE8YNAoCXoIkPAnEREMv3Nf3IVkidCYoI3xCUSOnKK5c/6h2wA3uB/KhKl4BXr
36IHiEKSoGr7Y/sruej8jzdHeyRChoajAwkHEg4kIA8v44N0TBUUlFZVvdO1ckwAx9fQUumG8pX2
HZxdGK165CnMVcECDn38GmkYtpqA07DMKUONG39YNdMf/BCsIf4gh4hrzH8kheVPYgJCUMUwU279
Y/2bekJag0xBWcHB9sf29yb8jwv4gjNZ6KTkQMKBxAYFErKK4tXYI5H1ofkkPkb7GGhcnx86frTp
5UfwHQn84ytamXRP4ojP5eNBdGR6xEQ9cWhCpTvmxIWfLHkpazqACcVuJNayGDV1R2BB3MZv+pv/
QmYsf3AErX+gJ61/bX9sf//Y/sfFbXxHAtJ4UnIg4UBigwKJgU3nN1sP7cdK8MwVYFdHLsdV9aT8
Z7/5K3QNoqE9EvLycWDz4PEPVbRzNYEOfzSiAfgYMBxqFYLj2McJahLmmXg3CEWB5LjWhTFsF+Ia
mp2tioLxm/7mP8uf9Q9VJRRi6lHrX2gF2g8ebH9AiLKazDPZ/t60/3EReyQ6ShZF5a5QDD9y551D
2wSlV9746dwsf3j993P1qSu7u7uzs2fPtt+ZM2dm9Tt9+vRsf39fv729vRl/O1ih4Rjmp06d0s9f
tt6EL1tf5zsS1JE9I0d93LqEvZqCDV37yq//cg6YKxJMmpGIamrmWcW9MTWrDhh9CYJShMSFZDp4
Glrj1ZMH4NeXIQmnct85DDD+tIOm/2ALwSokh/nP8pfqSD609Q+dZ+tfWhLbH9vfdfofF0aBRJjn
MtJ+axODCQcSGxVIBHNqRWLgU+pKpGw41j7X28CiddSXjcOjTTFZBRIaTONUvn3YqawC9ggPn+Dd
zmm/ehRxdoSPN5Uu6EOnAhpMg6mI+fjJsgNwnIcAzDOjojB+09/8Z/mz/gm92B+lLqkvrX+b3Sj6
BG1AHNsf0cb2N9yLOSdDzAJOWeB/xFubxEXHh2CcH21yILHxjzbJgYZHXZ99bz528nUpy8bhKQus
805Nn2rI+NGmb2FFYh4yR0n3xqjj+NFJjZRZnSf9/TD0xM/7yEyco52hStVLu8dk/EGHuaPprxUs
cof5jwFESLQkUgbP8mf9E2rY+ldSISNj+0MrUhY2ynUMO0tuCets+0vKLPc/3sQd9+P2ZxjkQMKB
xIYFEqEMH//8d6AH4DSkdx1inxU55SwDtnRnweKOi5wNtjPB0a/3SEcDjuj72a9rj0RMUCsShYf5
TeM/xHk37bQIP5ZhBRDOITZYxHXo1KjeYpnW+G/y72/6m/8sf6HuFuo/6x/rXwqI7Q+dY9vf6/sf
F/D6V/olkcJnktOSxTvv/Ej2TZN5j8RqdISvWy7yagPGUD/61Q/VxFkoC9/94vf1DD4bDw/x+Ac6
mNfv2rVrM/6uXr06u3LlivLLly/P+Ht7Ix5t+g8482LU2eybDCSY4tYKC+hmf7j67GIaRpCjmWAk
EzTyudAgIND/s1//ROU6fOuRlxBzYDb8r3HqW4o/XP6Y48bwV4SkUTzA4Bu/6W/+s/xZ/0AdcqWX
yfo36LDQ/tn+8JZbpMpXs/+2v+E5iWo8XMf/UCCxxP/yioRXJDYwkNhCIPGtVBF5hx7WNflY7dq4
rLZQJRSL2MSsEsqhZLk6ETo4VgYq8nilvbVJUoTvSLwkoxWxRLRJyDBYM02Mn2cdGwV5XXHONJrG
z1jO9C8qkHnNf+AIy9+k+s/6x/rX9ifsru3v9f2PCztYkSgwxh2olL9Fa+23NjmQ2LBAItz3x7/w
bfpSDJTJtWJa5qxzjYGpGJvlFjCwTwwfgwMy5pGTroYjrEj8JYchseFo9vKjL8UcrLdBMW4d+CNg
IPrAT6S6BuM3/c1/FEzJ8brk3/In8lr/WP+GoNn+2P6WQ7XA/jCQWOZ/3fkRP9rktzZt1KNNwcXf
/MK3ZOkUNKCpYgM5GKwJjIcIGNhOGB5jBhzxX3dzNTgc9Xhl4mw2vP5V9+a0InG0pd4MUDgvp6h5
UA4EgUlIeCCcKiypHjUc8f8k/AIlNIR3G4A8C+M3/clvoc/JV+Y/y1/pEesf699mNWRb4mD7Y/sb
Hsc6/Q+9tSkQyMehb9Pz30e8R8Kvf92MPRIfSMYkgx7NHv/Cd1iIRIc8o2XyL/lZdxRxYJ3OhvYr
i7nVIGeM7jl7ddQcqKLGr0S+8pufBCCbkL716AvoAhDnIC7dqVKX2qbGr6vg4xpAQZSqG7/pb/6z
/Fn/WP/a/sgq6gCdaPsbnoLMA4hyq/7Pjfofb27jrU3wVE7Cf4dXJBxIbGIg8U0EEmRaetoSISnW
4ZNcYmh2tLezhKBxCN3zCDFiPNtiOQGjEuwVbbYeBONbj7yAOAJ19cf4deKPlQrgA5J4aRNajN/0
N/9JVstoUV5Fkonl3/IHCuPGhfWP9a/tT/oMtr8n2l892tR9EnXsf33kDj/a5EebNubRJjr8+MFz
ePzz2CMhT55RAFO4FhFKRJkOBn/bOPBmfktZl+/BMjqiOydHvX+0ib18/avgAaIbgsOgnHZa/HWu
FbK0m5DGb/qD9yKgLS5hbv5j2D+V/BdlLX+pS8lzVI/WP9Y/1j/WvyP/h9+RWKZ/7/CjTV6R2IQV
ifd/7j9IgZeBj0eb4DbQuilKoHajP6UDC+jC2gM98PYp0+qLvGoxJ10G7kYIV+SV32CzdU0JgG9/
Dh+ka3NzBEevD39dS5wjrwWnY/ygOf+eTKa/+c/yty79Z/0DFQN9a/1LjWv7Y/u73P9gIFE6I2z0
vP/1kY/cIas91cHfkViNkv6OxIhO73uU35Fgone/hRWJ70SZfiW1vTKoPDrb2wgg0scIePYCkH1h
GQQdfWB4tHfTqDysSHAs90jg9a/qAaS0Sk7UDdQjUxPhF9LhZFGtEzd+0x+8QD4TTydrKJuO/zGd
Zgye78vmP/Of+c/yZ/1j/QtbkP4PN1sv83/8aJNf/7pBr38N34Yq7Jt8tIlVOPVcdahltW088xGP
AQWHM7DowwTdXQmWj4BAzljAHGJiPReMNq5IaDGDOPB7+dEXo0QY9Le+NeEn0oYDmHk1OhPjN/3N
f4NsWP5Ai+n1n/WP9a/tj4wuRcH2V6SQ87HQ/vKDdLh3i3u4i/0vb7Z2ILExgcQg0LPZE9hsrVCB
jAsGxptZZ0dYiaCHEXBkevTIA0egIAZnG7VCGF72U1lGGMFCBh0IPv4Bb23S8ByiPRIcip+WvNHO
cnzYDvnE+HnDOfDHuYazYPymv/nP8kd9Zv1j/Wv7Y/u7Hv/nRv2PC1s7S/0vP9rkQGIzAgnskWCC
/VTiZmu52DSosihozgChhCDd7jZIQQMnALwcUgYOaOTbkCKiqM6t2c8QSGhegLP15c/x0aY2leDX
iT9OKS5MZ8WD8be/P/84pn86lGvgf/MfRdzyR41n/QNesP61/bH9PdH+vrmzI5+I2mKR/3WH39rk
zdabsNm69kiUz//4n3+HLBvO5Fwepq/zreT98+5+aMIYw3IEESphLliK3FhB0J/x9a81CeovPxJ7
JOJRKg7m//Xhl92iI8MLRoqgBq4z6unfGL/pDwpIdXc5+ZKcKRYdeIUNTFyFQ38UUVaRI1Do+F/N
5j/Ln/WPZMX6l2Sw/bH9Xex//F882hT+0GL785E7vNnar3/dgNe/8q1N8o7kAXGzNb5sragCzfB6
muPDNzTxOSO1pKNPJwrvgI39EtKHOSCmZEDRO+yc9pX/+pPhLlTzyogcSXg5BmVkA351op0DImmo
DomLzVlvxb6Osmw38nDycrrEpVmNH8QhoYKWpn+QIuQDRDH/SUzG8tXErBVSFPs62arjK84hclr+
glgiCIhh+QuhA79Y/wQprH8kHKkwWJ7XL03NtMJ8v+BvU/1z5swZ0WOqw7//r/8+N9X/+R//e64+
dYVBwO7u7txvB6swbGP+2GeenO3v78/29vb06/tO4Y1W/DmQ2JBAouSP+RNf+LY0uHxqcU306ohD
KfeIEY41AABtGCx4jFdO+4gYhHPOBRLJlXOwbKuG7G9NaJ/H38HWmMxH1Totzc05mDJr6GpMawgw
HdWHg/EH3fLPPPytiniZj6qmPwhyzJFO/hrTyvzXCWdPIxDK8mf5o962/hn0Sd346fOxTunpZfsX
SuV2sP9nTjuQcCCxIYFE2mpl7cvWrElj971ZlkHn1yG24fNQZSE1WBSotfjl6+xirsAEXa/8808C
FgO00ZnjusQho6auN4sACoeCkIWkwNAmrVn1BKlJGwLjN/35SEHHJyNWme/pauY/yx/4Ro+tWf90
gsGi9a/tDxRkr1ebzQV7tLLt7xT298zp0yP5u7WqVyRWo5+/IzGikx5tgtTHw0r51iYqAQo89UHa
BT2HoDLMp7x4jEBdjy/JpIZiCAc/kMReiT6i4JetfzKcQa9UgAzTzafqrxy9KhZ+1IcxKCGA6PEH
MCE4akFq8w7XPwdV/ZWjU0Xj5x8+aNEIZvqb/yx/1j+dTpaytP61/SEjLEjNrtr+0ppSUuZS0ady
dKrY+R9np3606X/60aa5v8EJFQcSI8JEIDE0xpetwxiQtUPEh3opxTnzQMbGXglxOaZiX+2m0Mx8
GDot7LAiMeDsS+vG305s7gLiDFrQhGp0T3/9xp/ENf2bvBT/m/9AElpKJMsf2cP6Z2r7Y/2bwmX9
e1vo3ztus83W//Z/39DeCO+RgCU8PDxsv2vXrs34u3r16uzKlSvKL1++PONvE97a9P5HPwirndYb
OiYc+cGA0aQzWt7OnEZeSYoo4eABCQrThH6iCcRjTwogOnC0vvLrH0dDHTO6ruq68cs84ySbw6Ig
6BB1NMbJ41TWd/3GD94w/c1/FTBY/nATxvrH+tf2x/YXrof04ur+xx13fLhcp0nyV9746dw8f3j9
93P1qSsMGM6ePdt+DiRAYQYQfO7tXRVIfA6BhBI5eEubrRkGyOFFrgdY0sEuB7DyzvOGcwhYXDu/
HRGLEzELYUI2wnPgZutIOalwseWdwS/cQpX4WwAR+OOKo6+Jc4LWdVd+M9dv/PWnNv3F8+a/FCPL
Hwlh/VMPedB+BDWQSVRK71Zu/ZuEAXlWtb+2P7eX/XEg4bc2bcaKRH6QLpQy9kjgOxLU2jTrMmy8
dS/NzXoo+UF98e4yazlCg5r6rynVH4se+LK1ViSGGdQZEDquG3+7gm61hIZKd8RwBnE567t+4w8H
QatgwWTiE9M/5Mj8RzVg+VuX/rX+sf6hhbb+hYTdBvbHjzY5kNigQKIce6xI/Dm+bN3dJVVPBgvy
9IcQI8x9wsoNomCqQMc8ipJVtMXGazzapBWJDlDzCYsGrxs/r0HnUieqgAKqNXMq2HVev/Gb/ua/
cGcpC+HQWP6sf2ATZEusf21/6DBAN8CJUDah/xEq5/bRP3d8+Pb6IJ0fbQKHvnsfbRoc+3DkIccU
3lqNKGcfdT66xGrIdo5Tu0QUgs9OgGC3tfZVBLgUAgf+gwIJNNacHNaV140/UNUDBDwPYKfCyuuK
QGJ912/8IDhoHarc9Df/Wf6sf6x/bX/KUWAgafu7qv/1YQcS/iDdRmy2bnsk6NLE61/1DQi+dglv
bqVQR4q7A4oS0vFXGKFDA0E3FQHvMOYoTNACCsDGZuvolO/e5g/4J77wHeHV2zXWgJ/nx9fX8ubX
Nn7Y1qJzbZfBAt9Yu6brN37T3/xn+bP+sf61/bH9vVX/444Pe7O1P0i3ER+kq83W4cg/jkeb+Axl
ONYRFFDhsc5QQveS6w5+DElYVmJUQqkeY4Y+fdma1W6UqnlYN/7+3BRNEC+vD6euvq3DvErWp79+
4xdVQXQQnN4Uk+lv/rP8Wf9Q41r/Bh9ILdr+8KbklP7H7WZ/P+xAwisSm7Ai8QFstqazH/7c0ezx
P/+uHDv6eWxVn5Yl2IAW/qcPyEJ438iw6qDHVThLDlQ/xBZ9R3qNEx1IrEjw0SYMVUVzoV8NbF4/
fp6hVkt4DcC/zfPr8Kuc5xcZjrxOnvAE12/8pr/5L8TJ8mf9Y/1r+2P7S08j/J8b9T8+7Ne/OpDY
hEDi/Xi0Kf1mMbPemqQ7xXCc66PUPQCg6FYzRXc62i1YiOCheesEBIi+ho2R/wWBRJsuC60O0HXj
57kHPhwVEfEeBZ9kiqtiOe6Ur+f6jd/0N/9Rh1j+rH+gDWFrrH9tf2x/b87/+JBXJBxIbEogEaFB
KPTH9fpXOntcZqaiD8fvEOXtI3xkTg1kekAg41YCGgJuDuLKhCrsbokuQ6xGsOkffv2TsJ+tn4Wc
D6V144/vXOgqdAaBOfEjUwyFnnVd/xi/TqKu/z2I3/QnB5j/JHHvQf5/r8u/r//dKv/Y+Qh7f6P2
3/aP39ka/I+b5/+gvwMJv/51M17/+nnskYABj7ukWBH4j99p9WByBgF0dAKGRb25qQYF0DAGE+lJ
IAQWecNf9W1WkP7LP/+kRgTORPxO4de55RkIZ8Of19nqdZrTXr/xF12T5xq9Tf8I0kEfiArJEsn8
N6X+sfwVX1n+pHqsf1LfWP++G/Xvhz/kzdbebL0Bm60/gEeb6kkmei9PcI+EUjj+UWzaFkoHZUUI
7OF9e6Y09Xz4O4fxveg02rqzr8aYQ69/rSm6vEDWjV+nK7xQnDjHeoNO4OfJ8zyZ1nP9mtr4k+6m
v/mPcpjippsNlj/pCOufIAOPxSDiEynPVM83bn80qaaw/rf9e/fbnw9/+EODnExQeuWNn87N8ofX
fz9Xn7qyu7s7O3v2bPv5OxKg8LvxOxJ9IEE9zUeLmDeHujPu8b5zdcYBvrZc79w9qrL877i7wXkg
qrFdQmV8RwIrEhVvCA/nCEDhXTd+Igv8PDOeVBgUXkieRrTnUUFTlqe4fuM3/c1/1AuWP+sf61/b
H9vf/hFy+VD0S1b0P/xokx9t2oxHm/gdCVg0GTWwb6wIpJnHkkLb+yDeDijGFny8ieECXQIqQ02g
ItsSTr1ZV3YUb20SXAzF8R3Fz7OuU85nsObw63wAIDdnDddv/Ka/+S9UhuUvdWOqz9A9PFr/WP9S
T05vf21/bi/786EPeUXCjzZtxKNNH0IcILUtO/b4F76rnHdN5XHL8YbBU0NGAG2VAgav7vCn0qOT
VEEF7+Zz5gJn1z/81x/jGCAq5IqA0KFh3fjrmiII4rltzQ7z3eU8H1yG0rqu3/iDQUz/pIP5z/Jn
/UMrIb1r/Wv7QwrY/pIKYSPklJzgf33IeyT81qZNeGsTH20qxx8+jV6/qle1Uq+P+VhN+aVq9SVA
gWabggcN5hQ0Eejg5Pj/D//84xZFzE2RIHz96zrx1zXhlKOok2AFQU8Kq/HH36poReMeip00u7W/
f81p+pv/5uXf8mf9E0bH+tf6t3wS5rY/J9tfBxJ+tGkjHm36AN/a1Ly6rdmTcORp4CXAhwgD4EEy
EDikbmMwwFpKNjdU8/1vW/iGxBFeDSvXSIKfwQPnySSnAeVakRCCwBQQAlg//nTfgJPXUi+vA3IF
OnHePJV1Xb/xFyeY/uY/y1/Tg9Y/IIX1L22t7Y/t76r+x4c+6Eeb/GjTJjza9Hk82oR/dOv4mNIT
//HbcqrrDrR8arTHGx7C31Yb4VlAKtewKhwb6pCzNlOpglYk1FqHUJ3vFP520u28umuTMYdzg3xd
12/89XcvvjD9m2yZ/8AUlj/rH+tf25/OTkzof9xu9td7JLwisVkrEim33Gwd7r/8aRyGMIElfsBa
qxMoy/nnkSsTcoIIHkGJPHENzT7c/cenWPAdif8f8DFyUBVDad34azWF56yz4Dky1WVEUU28pKmv
3/hBcP79TX/zX4kXpc3yF2o0SEGKSKVa/1BBUxGDHvjdqv2x/rX+vZ3szwe92dp7JDZij4QebYKi
1uNK9dYm6e08UIlThSPR2ONfxBbZlpn6UI7qsERd6w2aBQ4kAwmWlQisCg7vEH6tvgAvfdmjerKC
FT7GhaezdG15epHxBOOqdI043Mr1Gz/obPqb/yx/1j/Wv2H/bH9sf2/S//CjTV6R2NAVif8EJycc
Zz7qRCd6CAtC77FF7QSj842MQzSKSpFJgQFGZh7ZEQKJH6s7DjFP14DN3uvFXzFBO1ecmM4YB54j
r3Cd12/88dc2/clqwXTmP4md5c/6x/rX9sf29wb8rw/6g3RekdioFYn0cJ+EI8+QIGIIujhwtOXv
0MFWD1VdwDCH8YuabEDAo03hR8LHY09qxGbrnwCmkiwnKm0GbPb+T6ivDz8vQnLKc2MQoTzws5wX
vrbrN37T3/wXIm/5s/6x/qUdsv2hzbf9vXH/40MfzJflYOgUyV+2Xo2KuEEe951XAz8O9aNf/VCN
nIWM/90vfl8OKRvflV+2xmbrSOHU05Fvmz9DsttqQ3ycLtx+Cr70HwcnLTQPGjmT7ur3AAwW8F97
JFrgQAVa6Z3Brz8/rqt/5CrOgA8d4RR5/vD06OwNr2PUJeKa0If2OOubu37jJwFNf/Mf5Y18UMny
Z/1j/Wv7Y/t7I/6HH23yo00b8mhTBRKDQY/SYOKjTjPXp0X9fZvMIgZUzrHjOdjWj+lhTmonDNOi
/r6t8FbOMcZPKsynnmbsKRqd1F6jF/X3bUX3yvu5aw7m/Zge5qT2Gruov28rvJX3c9cczPsxPcxJ
7TV2UX/fVngr7+euOZj3Y3qYk9pr7KL+vq3wVt7PXXMw78f0MCe119hF/X1b4a28n7vmYN6P6WFO
aq+xi/r7tsJbeT93zcG8H9PDnNReYxf1922Ft/J+7pqDeT+mhzmpvcYu6u/bCm/l/dw1B/N+TA9z
UnuNXdTftxXeyvu5aw7m/Zge5qT2Gruov28rvJX3c9cczPsxPcxJ7TV2UX/fVngr7+euOZj3Y3qY
k9pr7KL+vq3wVt7PXXMw78f0MCe119hF/X1b4a28n7vmYN6P6WFOaq+xi/r7tsJbeT93zcG8H9PD
nNReYxf1922Ft/J+7pqDeT+mhzmpvcZG/+nT+9UwSf7v//O/z83zf/7H/56rT13hq1t3d3fnfjs7
O6ozf+wzT8729/dne3t7+vV9p06dmvHn179uxOtf+6WxnnkpAEx9W7QcDw4KZiw0bK+2ymuOygsP
6zUPy9Xet7GdqZ/reuXqrzxmGI5sr9Tjqva+reD6ua5Xrv7Ka47K2V6px1XtfVvB9XNdr1z9ldcc
lbO9Uo+r2vu2guvnul65+iuvOSpne6UeV7X3bQXXz3W9cvVXXnNUzvZKPa5q79sKrp/reuXqr7zm
qJztlXpc1d63FVw/1/XK1V95zVE52yv1uKq9byu4fq7rlau/8pqjcrZX6nFVe99WcP1c1ytXf+U1
R+Vsr9Tjqva+reD6ua5Xrv7Ka47K2V6px1XtfVvB9XNdr1z9ldcclbO9Uo+r2vu2guvnul65+iuv
OSpne6UeV7X3bQXXz3W9cvVXXnNUzvZKPa5q79sKrp/reuXqr7zmqJztlXpc1d63FVw/1/XK1V95
zVE52yv1uKq9byu4fq7rlau/8pqjcrZX6nFVe99WcP1c1ytXf+U1R+Vsr9Tjqva+reD6ua5Xrv7K
a47K2V6px1XtfVvBDXOdhpM9Zfr3/+VAYhV6+tGmEZU+0B5tqo6BSatl3nFna8GsxuwxT43px0fP
/LGHq55xW9WZMy0XtoCpMaz15egdjov6xm1VZ85k/EGH/lg0qra+3perv/JFfeO2qjNnMv2DDv2x
aFRtfb0vV3/li/rGbVVnzmT6Bx36Y9Go2vp6X67+yhf1jduqzpzJ9A869MeiUbX19b5c/ZUv6hu3
VZ05k+kfdOiPRaNq6+t9uforX9Q3bqs6c6b3Lv1P758OEkx0dCCxGiEdSIzoFIFECWZ1Vn2cV/+i
vGBX6RvDnlSv9soXzV1ty2DGfavWC67ywrUoXwYz7lu1XnCVL8Jbbctgxn2r1guu8sK1KF8GM+5b
tV5wlS/CW23LYMZ9q9YLrvLCtShfBjPuW7VecJUvwltty2DGfavWC67ywrUoXwYz7lu1XnCVL8Jb
bctgxn2r1guu8sK1KF8GM+5btV5wlS/CW23LYMZ9q9YLrvLCtShfBjPuW7VecJUvwltty2DGfavW
C67ywrUoXwYz7lu1XnCVL8Jbbctgxn2r1guu8sK1KF8GM+5btV5wlS/CW23LYMZ9q9YLrvLCtShf
BjPuW7VecJUfx+sVCT/atBF7JI6zpltMAVPAFDAFTAFTwBQwBUyB9VGA+yPOnj3bfmfOnJnV7/Tp
09of4T0Sh4eza9eu6Xf16tXZlStXZswvX76s3ya8/nV9LOKZTQFTwBQwBUwBU8AUMAVMgeMUcCCB
1Sa+HfXd/vrX439at5gCpoApYAqYAqaAKWAKmALro4ADCQcS6+Muz2wKmAKmgClgCpgCpoApcNtS
wIGEA4nblrl9YaaAKWAKmAKmgClgCpgC66OAAwkHEuvjLs9sCpgCpoApYAqYAqaAKXDbUsCBhAOJ
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
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397055</attachid>
            <date>2020-04-20 22:39:13 -0700</date>
            <delta_ts>2020-04-21 02:16:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210673-20200420223912.patch</filename>
            <type>text/plain</type>
            <size>34860</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMzcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmFmYTMzMTZiMzk0ZDM3
MmY3Y2M1MWE1NDdkNmZkMjIyOGNiYTQwOS4uMDBkMTM0MTY3MWIxNjJiYWMxMzg5MDM4OTlkZDZh
MGM0ZGQxYThlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDIwLTA0LTIwICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhvcml6b250YWwg
b3ZlcmZsb3cgb3ZlcmxheSBzY3JvbGxiYXIgaXMgbWlzcGxhY2VkIGluIFJUTAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwNjczCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS82MTk1MDc1MT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKyAgICAgICAgCisgICAgICAgIENvZGUgZm9yIHBvc2l0aW9uaW5nIFJlbmRlckxheWVy
IG92ZXJmbG93IGNvbnRyb2xzIChzY3JvbGxiYXJzIGFuZCBzY3JvbGwgY29ybmVyKQorICAgICAg
ICB3YXMgc2NhdHRlcmVkIGFjcm9zcyBsb3RzIG9mIGRpZmZlcmVudCBmdW5jdGlvbnMsIG1ha2lu
ZyBpdCBoYXJkIHRvIGZvbGxvdywKKyAgICAgICAgYW5kIHByb25lIHRvIGJ1Z3MuCisKKyAgICAg
ICAgRml4IGJ5IG1ha2luZyBvbmUgc291cmNlIG9mIHRydXRoLCBnZXRPdmVyZmxvd0NvbnRyb2xz
UmVjdHMoKSwgd2hpY2ggY29tcHV0ZXMKKyAgICAgICAgcmVjdHMgZm9yIHRoZSB0d28gc2Nyb2xs
YmFycywgdGhlICJzY3JvbGwgY29ybmVyIiAodGhlIHNxdWFyZSBpbiB0aGUgY29ybmVyIHdoaWNo
CisgICAgICAgIHNob3dzLCBvbmx5IGZvciBub24tb3ZlcmxheSBzY3JvbGxiYXJzLCB3aGVuIGJv
dGggc2Nyb2xsYmFycyBvciB0aGUgcmVzaXplIGNvbnRyb2wKKyAgICAgICAgaXMgdmlzaWJsZSks
IGFuZCB0aGUgcmVzaXplIGNvbnRyb2wgd2hpY2ggc2hvd3Mgd2hlbiBzdHlsZSBzcGVjaWZpZXMg
dGhlICJyZXNpemUiIHByb3BlcnR5LgorICAgICAgICAKKyAgICAgICAgQ2FsbCB0aGlzIGZ1bmN0
aW9uIGluIGFsbCB0aGUgcGxhY2VzIHRoYXQgbmVlZCB0byBrbm93IGFib3V0IG92ZXJmbG93IGNv
bnRyb2wKKyAgICAgICAgZ2VvbWV0cnkuIFJlbmRlckxheWVyOjpoaXRUZXN0UmVzaXplckluRnJh
Z21lbnRzKCkgaXMgYSBsaXR0bGUgdHJpY2t5IGJlY2F1c2UgaXQgd2FudHMKKyAgICAgICAgdGhl
IHJlc2l6ZSBjb250cm9sIHJlbGF0aXZlIHRvIHRoZSBmcmFnbWVudCByZWN0OyBhY2hpZXZlIHRo
aXMgYnkgY29tcHV0aW5nIHRoZSBwb3NpdGlvbgorICAgICAgICBvZiB0aGUgcmVzaXplciByZWN0
IHJlbGF0aXZlIHRvIHRoZSBib3JkZXIgYm94LCB0aGVuIHNoaWZ0aW5nIGl0IGludG8gcG9zaXRp
b24gcmVsYXRpdmUKKyAgICAgICAgdG8gdGhlIGZyYWdtZW50IGJvdW5kcyAod2hpY2ggaW5jbHVk
ZSBib3JkZXIpLgorCisgICAgICAgIFRlc3Q6IGNvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3Jv
bGxiYXItbGF5ZXItcG9zaXRpb25pbmcuaHRtbAorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRs
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZWxlY3RDdXJzb3IpOgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJMYXllcjo6c2Nyb2xsQ29ybmVyUmVjdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJMYXllcjo6Z2V0T3ZlcmZsb3dDb250cm9sc1JlY3RzIGNvbnN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpzY3JvbGxiYXJPZmZzZXQgY29uc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXI6OmludmFsaWRhdGVTY3JvbGxiYXJSZWN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpwb3NpdGlvbk92ZXJmbG93Q29udHJvbHMpOgorICAgICAgICAo
V2ViQ29yZTo6UmVuZGVyTGF5ZXI6Om92ZXJmbG93Q29udHJvbHNJbnRlcnNlY3RSZWN0IGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpwYWludFJlc2l6ZXIpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmlzUG9pbnRJblJlc2l6ZUNvbnRyb2wgY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmhpdFRlc3RPdmVyZmxvd0NvbnRyb2xzKToK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpoaXRUZXN0UmVzaXplckluRnJhZ21lbnRz
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OmNvcm5lclN0YXJ0KTogRGVsZXRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6OmNvcm5lclJlY3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6cmVz
aXplckNvcm5lclJlY3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6
OnNjcm9sbENvcm5lckFuZFJlc2l6ZXJSZWN0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpyZWN0Rm9ySG9yaXpvbnRhbFNjcm9sbGJhciBjb25zdCk6IERl
bGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6cmVjdEZvclZlcnRpY2FsU2Ny
b2xsYmFyIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp2
ZXJ0aWNhbFNjcm9sbGJhclN0YXJ0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyOjpob3Jpem9udGFsU2Nyb2xsYmFyU3RhcnQgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJMYXllckJhY2tpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNr
aW5nOjpyZXF1aXJlc1Njcm9sbENvcm5lckxheWVyIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyQmFja2luZzo6cG9zaXRpb25PdmVyZmxvd0NvbnRyb2xzTGF5ZXJzKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6cGFpbnRDb250ZW50cyk6CisKIDIw
MjAtMDQtMTkgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAg
ICAgQ29udGVudCBkaXNhcHBlYXJzIG9uIENTUyBwYXJhbGxheCBleGFtcGxlCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL0V2ZW50SGFuZGxlci5jcHAKaW5kZXggNWMyNGVkYzk3NzMyZjEzNjlkYTI2YjU5Nzk0NGMz
YTkxODg1NjBkMC4uMTQ4ZWEzOTBkMjc2MzE2MmE2YmRjYWUwMmVkMGE5MGJjOGY5OTExNSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMTU0NSw3ICsxNTQ1LDcgQEAgT3B0
aW9uYWw8Q3Vyc29yPiBFdmVudEhhbmRsZXI6OnNlbGVjdEN1cnNvcihjb25zdCBIaXRUZXN0UmVz
dWx0JiByZXN1bHQsIGJvb2wgc2gKICAgICAgICAgaWYgKHJlbmRlcmVyKSB7CiAgICAgICAgICAg
ICBpZiAoUmVuZGVyTGF5ZXIqIGxheWVyID0gcmVuZGVyZXItPmVuY2xvc2luZ0xheWVyKCkpIHsK
ICAgICAgICAgICAgICAgICBpZiAoRnJhbWVWaWV3KiB2aWV3ID0gbV9mcmFtZS52aWV3KCkpCi0g
ICAgICAgICAgICAgICAgICAgIGluUmVzaXplciA9IGxheWVyLT5pc1BvaW50SW5SZXNpemVDb250
cm9sKHZpZXctPndpbmRvd1RvQ29udGVudHMocm91bmRlZEludFBvaW50KHJlc3VsdC5sb2NhbFBv
aW50KCkpKSk7CisgICAgICAgICAgICAgICAgICAgIGluUmVzaXplciA9IGxheWVyLT5pc1BvaW50
SW5SZXNpemVDb250cm9sKHZpZXctPndpbmRvd1RvQ29udGVudHMocm91bmRlZEludFBvaW50KHJl
c3VsdC5sb2NhbFBvaW50KCkpKSk7IC8vIFRoaXMgY29vcmRpbmF0ZSBjb252ZXJzaW9uIGlzIHdy
b25nOiB3ZWJraXQub3JnL2IvMjEwNzc4LgogICAgICAgICAgICAgfQogICAgICAgICB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDVmMWMzMjhhNzA0NzQx
MTE1NTIzNDRjODE4OTc5YzUxNjQ0NWY5MDkuLjEwNzY3N2I2YmRmNDE5MjEwZGNjY2UwZTVmYjQ1
NWZkNDdhNzMwYWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJM
YXllci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApA
QCAtMzE3OSw2OSArMzE3OSwxMSBAQCBib29sIFJlbmRlckxheWVyOjppc0FjdGl2ZSgpIGNvbnN0
CiAgICAgcmV0dXJuIHBhZ2UoKS5mb2N1c0NvbnRyb2xsZXIoKS5pc0FjdGl2ZSgpOwogfQogCi1z
dGF0aWMgaW50IGNvcm5lclN0YXJ0KGNvbnN0IFJlbmRlckxheWVyJiBsYXllciwgaW50IG1pblgs
IGludCBtYXhYLCBpbnQgdGhpY2tuZXNzKQotewotICAgIGlmIChsYXllci5zaG91bGRQbGFjZUJs
b2NrRGlyZWN0aW9uU2Nyb2xsYmFyT25MZWZ0KCkpCi0gICAgICAgIHJldHVybiBtaW5YICsgbGF5
ZXIucmVuZGVyZXIoKS5zdHlsZSgpLmJvcmRlckxlZnRXaWR0aCgpOwotICAgIHJldHVybiBtYXhY
IC0gdGhpY2tuZXNzIC0gbGF5ZXIucmVuZGVyZXIoKS5zdHlsZSgpLmJvcmRlclJpZ2h0V2lkdGgo
KTsKLX0KLQotc3RhdGljIExheW91dFJlY3QgY29ybmVyUmVjdChjb25zdCBSZW5kZXJMYXllciYg
bGF5ZXIsIGNvbnN0IExheW91dFJlY3QmIGJvdW5kcykKLXsKLSAgICBpbnQgaG9yaXpvbnRhbFRo
aWNrbmVzczsKLSAgICBpbnQgdmVydGljYWxUaGlja25lc3M7Ci0gICAgaWYgKCFsYXllci52ZXJ0
aWNhbFNjcm9sbGJhcigpICYmICFsYXllci5ob3Jpem9udGFsU2Nyb2xsYmFyKCkpIHsKLSAgICAg
ICAgLy8gRklYTUU6IFRoaXMgaXNuJ3QgcmlnaHQuICBXZSBuZWVkIHRvIGtub3cgdGhlIHRoaWNr
bmVzcyBvZiBjdXN0b20gc2Nyb2xsYmFycwotICAgICAgICAvLyBldmVuIHdoZW4gdGhleSBkb24n
dCBleGlzdCBpbiBvcmRlciB0byBzZXQgdGhlIHJlc2l6ZXIgc3F1YXJlIHNpemUgcHJvcGVybHku
Ci0gICAgICAgIGhvcml6b250YWxUaGlja25lc3MgPSBTY3JvbGxiYXJUaGVtZTo6dGhlbWUoKS5z
Y3JvbGxiYXJUaGlja25lc3MoKTsKLSAgICAgICAgdmVydGljYWxUaGlja25lc3MgPSBob3Jpem9u
dGFsVGhpY2tuZXNzOwotICAgIH0gZWxzZSBpZiAobGF5ZXIudmVydGljYWxTY3JvbGxiYXIoKSAm
JiAhbGF5ZXIuaG9yaXpvbnRhbFNjcm9sbGJhcigpKSB7Ci0gICAgICAgIGhvcml6b250YWxUaGlj
a25lc3MgPSBsYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpLT53aWR0aCgpOwotICAgICAgICB2ZXJ0
aWNhbFRoaWNrbmVzcyA9IGhvcml6b250YWxUaGlja25lc3M7Ci0gICAgfSBlbHNlIGlmIChsYXll
ci5ob3Jpem9udGFsU2Nyb2xsYmFyKCkgJiYgIWxheWVyLnZlcnRpY2FsU2Nyb2xsYmFyKCkpIHsK
LSAgICAgICAgdmVydGljYWxUaGlja25lc3MgPSBsYXllci5ob3Jpem9udGFsU2Nyb2xsYmFyKCkt
PmhlaWdodCgpOwotICAgICAgICBob3Jpem9udGFsVGhpY2tuZXNzID0gdmVydGljYWxUaGlja25l
c3M7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgaG9yaXpvbnRhbFRoaWNrbmVzcyA9IGxheWVyLnZl
cnRpY2FsU2Nyb2xsYmFyKCktPndpZHRoKCk7Ci0gICAgICAgIHZlcnRpY2FsVGhpY2tuZXNzID0g
bGF5ZXIuaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKTsKLSAgICB9Ci0gICAgcmV0dXJu
IExheW91dFJlY3QoY29ybmVyU3RhcnQobGF5ZXIsIGJvdW5kcy54KCksIGJvdW5kcy5tYXhYKCks
IGhvcml6b250YWxUaGlja25lc3MpLAotICAgICAgICBib3VuZHMubWF4WSgpIC0gdmVydGljYWxU
aGlja25lc3MgLSBsYXllci5yZW5kZXJlcigpLnN0eWxlKCkuYm9yZGVyQm90dG9tV2lkdGgoKSwK
LSAgICAgICAgaG9yaXpvbnRhbFRoaWNrbmVzcywgdmVydGljYWxUaGlja25lc3MpOwotfQotCiBJ
bnRSZWN0IFJlbmRlckxheWVyOjpzY3JvbGxDb3JuZXJSZWN0KCkgY29uc3QKIHsKLSAgICAvLyBX
ZSBoYXZlIGEgc2Nyb2xsYmFyIGNvcm5lciB3aGVuIGEgbm9uIG92ZXJsYXkgc2Nyb2xsYmFyIGlz
IHZpc2libGUgYW5kIG5vdCBmaWxsaW5nIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZSBib3guCi0g
ICAgLy8gVGhpcyBoYXBwZW5zIHdoZW46Ci0gICAgLy8gKGEpIEEgcmVzaXplciBpcyBwcmVzZW50
IGFuZCBhdCBsZWFzdCBvbmUgbm9uIG92ZXJsYXkgc2Nyb2xsYmFyIGlzIHByZXNlbnQKLSAgICAv
LyAoYikgQm90aCBub24gb3ZlcmxheSBzY3JvbGxiYXJzIGFyZSBwcmVzZW50LgotICAgIC8vIE92
ZXJsYXkgc2Nyb2xsYmFycyBhbHdheXMgZmlsbCB0aGUgZW50aXJlIGxlbmd0aCBvZiB0aGUgYm94
IHNvIHdlIG5ldmVyIGhhdmUgc2Nyb2xsIGNvcm5lciBpbiB0aGF0IGNhc2UuCi0gICAgYm9vbCBo
YXNIb3Jpem9udGFsQmFyID0gbV9oQmFyICYmICFtX2hCYXItPmlzT3ZlcmxheVNjcm9sbGJhcigp
OwotICAgIGJvb2wgaGFzVmVydGljYWxCYXIgPSBtX3ZCYXIgJiYgIW1fdkJhci0+aXNPdmVybGF5
U2Nyb2xsYmFyKCk7Ci0gICAgYm9vbCBoYXNSZXNpemVyID0gcmVuZGVyZXIoKS5zdHlsZSgpLnJl
c2l6ZSgpICE9IFJlc2l6ZTo6Tm9uZTsKLSAgICBpZiAoKGhhc0hvcml6b250YWxCYXIgJiYgaGFz
VmVydGljYWxCYXIpIHx8IChoYXNSZXNpemVyICYmIChoYXNIb3Jpem9udGFsQmFyIHx8IGhhc1Zl
cnRpY2FsQmFyKSkpCi0gICAgICAgIHJldHVybiBzbmFwcGVkSW50UmVjdChjb3JuZXJSZWN0KCp0
aGlzLCByZW5kZXJCb3goKS0+Ym9yZGVyQm94UmVjdCgpKSk7Ci0gICAgcmV0dXJuIEludFJlY3Qo
KTsKLX0KLQotc3RhdGljIExheW91dFJlY3QgcmVzaXplckNvcm5lclJlY3QoY29uc3QgUmVuZGVy
TGF5ZXImIGxheWVyLCBjb25zdCBMYXlvdXRSZWN0JiBib3VuZHMpCi17Ci0gICAgQVNTRVJUKGxh
eWVyLnJlbmRlcmVyKCkuaXNCb3goKSk7Ci0gICAgaWYgKGxheWVyLnJlbmRlcmVyKCkuc3R5bGUo
KS5yZXNpemUoKSA9PSBSZXNpemU6Ok5vbmUpCi0gICAgICAgIHJldHVybiBMYXlvdXRSZWN0KCk7
Ci0gICAgcmV0dXJuIGNvcm5lclJlY3QobGF5ZXIsIGJvdW5kcyk7Ci19Ci0KLUxheW91dFJlY3Qg
UmVuZGVyTGF5ZXI6OnNjcm9sbENvcm5lckFuZFJlc2l6ZXJSZWN0KCkgY29uc3QKLXsKLSAgICBS
ZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwotICAgIGlmICghYm94KQotICAgICAgICByZXR1
cm4gTGF5b3V0UmVjdCgpOwotICAgIExheW91dFJlY3Qgc2Nyb2xsQ29ybmVyQW5kUmVzaXplciA9
IHNjcm9sbENvcm5lclJlY3QoKTsKLSAgICBpZiAoc2Nyb2xsQ29ybmVyQW5kUmVzaXplci5pc0Vt
cHR5KCkpCi0gICAgICAgIHNjcm9sbENvcm5lckFuZFJlc2l6ZXIgPSByZXNpemVyQ29ybmVyUmVj
dCgqdGhpcywgYm94LT5ib3JkZXJCb3hSZWN0KCkpOwotICAgIHJldHVybiBzY3JvbGxDb3JuZXJB
bmRSZXNpemVyOworICAgIEludFJlY3QgaEJhclJlY3QsIHZCYXJSZWN0LCBjb3JuZXJSZWN0LCBy
ZXNpemVyUmVjdDsKKyAgICBnZXRPdmVyZmxvd0NvbnRyb2xzUmVjdHMoaEJhclJlY3QsIHZCYXJS
ZWN0LCBjb3JuZXJSZWN0LCByZXNpemVyUmVjdCk7CisgICAgcmV0dXJuIGNvcm5lclJlY3Q7CiB9
CiAKIGJvb2wgUmVuZGVyTGF5ZXI6OmlzU2Nyb2xsQ29ybmVyVmlzaWJsZSgpIGNvbnN0CkBAIC0z
MzUwLDYzICszMjkyLDEwMSBAQCBib29sIFJlbmRlckxheWVyOjppc0hhbmRsaW5nV2hlZWxFdmVu
dCgpIGNvbnN0CiAgICAgcmV0dXJuIHJlbmRlcmVyKCkuZnJhbWUoKS5ldmVudEhhbmRsZXIoKS5p
c0hhbmRsaW5nV2hlZWxFdmVudCgpOwogfQogCi1JbnRSZWN0IFJlbmRlckxheWVyOjpyZWN0Rm9y
SG9yaXpvbnRhbFNjcm9sbGJhcihjb25zdCBJbnRSZWN0JiBib3JkZXJCb3hSZWN0KSBjb25zdAor
dm9pZCBSZW5kZXJMYXllcjo6Z2V0T3ZlcmZsb3dDb250cm9sc1JlY3RzKEludFJlY3QmIGhvcml6
b250YWxTY3JvbGxiYXJSZWN0LCBJbnRSZWN0JiB2ZXJ0aWNhbFNjcm9sbGJhclJlY3QsIEludFJl
Y3QmIHNjcm9sbENvcm5lclJlY3QsIEludFJlY3QmIHJlc2l6ZXJSZWN0KSBjb25zdAogewotICAg
IGlmICghbV9oQmFyKQotICAgICAgICByZXR1cm4gSW50UmVjdCgpOworICAgIEFTU0VSVChpczxS
ZW5kZXJCb3g+KHJlbmRlcmVyKCkpKTsKKyAgICBhdXRvJiByZW5kZXJCb3ggPSBkb3duY2FzdDxS
ZW5kZXJCb3g+KHJlbmRlcmVyKCkpOworICAgIC8vIFNjcm9sbGJhcnMgc2l0IGluc2lkZSB0aGUg
Ym9yZGVyIGJveC4KKyAgICBhdXRvIG92ZXJmbG93Q29udHJvbHNQb3NpdGlvbmluZ1JlY3QgPSBz
bmFwcGVkSW50UmVjdChyZW5kZXJCb3gucGFkZGluZ0JveFJlY3RJbmNsdWRpbmdTY3JvbGxiYXIo
KSk7CiAKLSAgICBjb25zdCBSZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwotICAgIGNvbnN0
IEludFJlY3QmIHNjcm9sbENvcm5lciA9IHNjcm9sbENvcm5lclJlY3QoKTsKKyAgICBhdXRvIGhv
cml6b250YWxTY3JvbGxiYXJIZWlnaHQgPSBtX2hCYXIgPyBtX2hCYXItPmhlaWdodCgpIDogMDsK
KyAgICBhdXRvIHZlcnRpY2FsU2Nyb2xsYmFyV2lkdGggPSBtX3ZCYXIgPyBtX3ZCYXItPndpZHRo
KCkgOiAwOwogCi0gICAgcmV0dXJuIEludFJlY3QoaG9yaXpvbnRhbFNjcm9sbGJhclN0YXJ0KGJv
cmRlckJveFJlY3QueCgpKSwKLSAgICAgICAgYm9yZGVyQm94UmVjdC5tYXhZKCkgLSBib3gtPmJv
cmRlckJvdHRvbSgpIC0gbV9oQmFyLT5oZWlnaHQoKSwKLSAgICAgICAgYm9yZGVyQm94UmVjdC53
aWR0aCgpIC0gKGJveC0+Ym9yZGVyTGVmdCgpICsgYm94LT5ib3JkZXJSaWdodCgpKSAtIHNjcm9s
bENvcm5lci53aWR0aCgpLAotICAgICAgICBtX2hCYXItPmhlaWdodCgpKTsKLX0KKyAgICBhdXRv
IGlzTm9uT3ZlcmxheVNjcm9sbGJhciA9IFtdKGNvbnN0IFNjcm9sbGJhciogc2Nyb2xsYmFyKSB7
CisgICAgICAgIHJldHVybiBzY3JvbGxiYXIgJiYgIXNjcm9sbGJhci0+aXNPdmVybGF5U2Nyb2xs
YmFyKCk7CisgICAgfTsKIAotSW50UmVjdCBSZW5kZXJMYXllcjo6cmVjdEZvclZlcnRpY2FsU2Ny
b2xsYmFyKGNvbnN0IEludFJlY3QmIGJvcmRlckJveFJlY3QpIGNvbnN0Ci17Ci0gICAgaWYgKCFt
X3ZCYXIpCi0gICAgICAgIHJldHVybiBJbnRSZWN0KCk7CisgICAgYm9vbCBoYXZlTm9uT3Zlcmxh
eUhvcml6b250YWxTY3JvbGxiYXIgPSBpc05vbk92ZXJsYXlTY3JvbGxiYXIobV9oQmFyLmdldCgp
KTsKKyAgICBib29sIGhhdmVOb25PdmVybGF5VmVydGljYWxTY3JvbGxiYXIgPSBpc05vbk92ZXJs
YXlTY3JvbGxiYXIobV92QmFyLmdldCgpKTsKKyAgICBib29sIHBsYWNlVmVydGljYWxTY3JvbGxi
YXJPblRoZUxlZnQgPSBzaG91bGRQbGFjZUJsb2NrRGlyZWN0aW9uU2Nyb2xsYmFyT25MZWZ0KCk7
CisgICAgYm9vbCBoYXZlUmVzaXplciA9IHJlbmRlcmVyKCkuc3R5bGUoKS5yZXNpemUoKSAhPSBS
ZXNpemU6Ok5vbmU7CisgICAgYm9vbCBzY3JvbGxiYXJzQXZvaWRDb3JuZXIgPSAoaGF2ZU5vbk92
ZXJsYXlIb3Jpem9udGFsU2Nyb2xsYmFyICYmIGhhdmVOb25PdmVybGF5VmVydGljYWxTY3JvbGxi
YXIpIHx8IChoYXZlUmVzaXplciAmJiAoaGF2ZU5vbk92ZXJsYXlIb3Jpem9udGFsU2Nyb2xsYmFy
IHx8IGhhdmVOb25PdmVybGF5VmVydGljYWxTY3JvbGxiYXIpKTsKIAotICAgIGNvbnN0IFJlbmRl
ckJveCogYm94ID0gcmVuZGVyQm94KCk7Ci0gICAgY29uc3QgSW50UmVjdCYgc2Nyb2xsQ29ybmVy
ID0gc2Nyb2xsQ29ybmVyUmVjdCgpOworICAgIEludFNpemUgY29ybmVyU2l6ZTsKKyAgICBpZiAo
c2Nyb2xsYmFyc0F2b2lkQ29ybmVyKSB7CisgICAgICAgIC8vIElmIG9ubHkgb25lIHNjcm9sbGJh
ciBpcyBwcmVzZW50LCB0aGUgY29ybmVyIGlzIHNxdWFyZS4KKyAgICAgICAgY29ybmVyU2l6ZSA9
IEludFNpemUgeworICAgICAgICAgICAgdmVydGljYWxTY3JvbGxiYXJXaWR0aCA/IHZlcnRpY2Fs
U2Nyb2xsYmFyV2lkdGggOiBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0LAorICAgICAgICAgICAg
aG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCA/IGhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQgOiB2
ZXJ0aWNhbFNjcm9sbGJhcldpZHRoCisgICAgICAgIH07CisgICAgfQogCi0gICAgcmV0dXJuIElu
dFJlY3QodmVydGljYWxTY3JvbGxiYXJTdGFydChib3JkZXJCb3hSZWN0LngoKSwgYm9yZGVyQm94
UmVjdC5tYXhYKCkpLAotICAgICAgICBib3JkZXJCb3hSZWN0LnkoKSArIGJveC0+Ym9yZGVyVG9w
KCksCi0gICAgICAgIG1fdkJhci0+d2lkdGgoKSwKLSAgICAgICAgYm9yZGVyQm94UmVjdC5oZWln
aHQoKSAtIChib3gtPmJvcmRlclRvcCgpICsgYm94LT5ib3JkZXJCb3R0b20oKSkgLSBzY3JvbGxD
b3JuZXIuaGVpZ2h0KCkpOwotfQorICAgIGlmIChtX2hCYXIpIHsKKyAgICAgICAgYXV0byBob3Jp
em9udGFsQmFyUmVjdCA9IG92ZXJmbG93Q29udHJvbHNQb3NpdGlvbmluZ1JlY3Q7CisgICAgICAg
IGhvcml6b250YWxCYXJSZWN0LnNoaWZ0WUVkZ2VUbyhob3Jpem9udGFsQmFyUmVjdC5tYXhZKCkg
LSBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KTsKKyAgICAgICAgaWYgKHNjcm9sbGJhcnNBdm9p
ZENvcm5lcikgeworICAgICAgICAgICAgaWYgKHBsYWNlVmVydGljYWxTY3JvbGxiYXJPblRoZUxl
ZnQpCisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbEJhclJlY3Quc2hpZnRYRWRnZVRvKGhvcml6
b250YWxCYXJSZWN0LngoKSArIGNvcm5lclNpemUud2lkdGgoKSk7CisgICAgICAgICAgICBlbHNl
CisgICAgICAgICAgICAgICAgaG9yaXpvbnRhbEJhclJlY3QuY29udHJhY3QoY29ybmVyU2l6ZS53
aWR0aCgpLCAwKTsKKyAgICAgICAgfQogCi1MYXlvdXRVbml0IFJlbmRlckxheWVyOjp2ZXJ0aWNh
bFNjcm9sbGJhclN0YXJ0KGludCBtaW5YLCBpbnQgbWF4WCkgY29uc3QKLXsKLSAgICBjb25zdCBS
ZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwotICAgIGlmIChzaG91bGRQbGFjZUJsb2NrRGly
ZWN0aW9uU2Nyb2xsYmFyT25MZWZ0KCkpCi0gICAgICAgIHJldHVybiBtaW5YICsgYm94LT5ib3Jk
ZXJMZWZ0KCk7Ci0gICAgcmV0dXJuIG1heFggLSBib3gtPmJvcmRlclJpZ2h0KCkgLSBtX3ZCYXIt
PndpZHRoKCk7Ci19CisgICAgICAgIGhvcml6b250YWxTY3JvbGxiYXJSZWN0ID0gaG9yaXpvbnRh
bEJhclJlY3Q7CisgICAgfSBlbHNlCisgICAgICAgIGhvcml6b250YWxTY3JvbGxiYXJSZWN0ID0g
eyB9OwogCi1MYXlvdXRVbml0IFJlbmRlckxheWVyOjpob3Jpem9udGFsU2Nyb2xsYmFyU3RhcnQo
aW50IG1pblgpIGNvbnN0Ci17Ci0gICAgY29uc3QgUmVuZGVyQm94KiBib3ggPSByZW5kZXJCb3go
KTsKLSAgICBpbnQgeCA9IG1pblggKyBib3gtPmJvcmRlckxlZnQoKTsKLSAgICBpZiAoc2hvdWxk
UGxhY2VCbG9ja0RpcmVjdGlvblNjcm9sbGJhck9uTGVmdCgpKQotICAgICAgICB4ICs9IG1fdkJh
ciA/IG1fdkJhci0+d2lkdGgoKSA6IHJvdW5kVG9JbnQocmVzaXplckNvcm5lclJlY3QoKnRoaXMs
IGJveC0+Ym9yZGVyQm94UmVjdCgpKS53aWR0aCgpKTsKLSAgICByZXR1cm4geDsKKyAgICBpZiAo
bV92QmFyKSB7CisgICAgICAgIGF1dG8gdmVydGljYWxCYXJSZWN0ID0gb3ZlcmZsb3dDb250cm9s
c1Bvc2l0aW9uaW5nUmVjdDsKKyAgICAgICAgCisgICAgICAgIGlmIChwbGFjZVZlcnRpY2FsU2Ny
b2xsYmFyT25UaGVMZWZ0KQorICAgICAgICAgICAgdmVydGljYWxCYXJSZWN0LnNldFdpZHRoKHZl
cnRpY2FsU2Nyb2xsYmFyV2lkdGgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB2ZXJ0aWNh
bEJhclJlY3Quc2hpZnRYRWRnZVRvKHZlcnRpY2FsQmFyUmVjdC5tYXhYKCkgLSB2ZXJ0aWNhbFNj
cm9sbGJhcldpZHRoKTsKKworICAgICAgICBpZiAoc2Nyb2xsYmFyc0F2b2lkQ29ybmVyKQorICAg
ICAgICAgICAgdmVydGljYWxCYXJSZWN0LmNvbnRyYWN0KDAsIGNvcm5lclNpemUuaGVpZ2h0KCkp
OworCisgICAgICAgIHZlcnRpY2FsU2Nyb2xsYmFyUmVjdCA9IHZlcnRpY2FsQmFyUmVjdDsKKyAg
ICB9IGVsc2UKKyAgICAgICAgdmVydGljYWxTY3JvbGxiYXJSZWN0ID0geyB9OworCisgICAgYXV0
byBjb3JuZXJSZWN0ID0gW10oY29uc3QgSW50UmVjdCYgYm91bmRzUmVjdCwgSW50U2l6ZSBjb3Ju
ZXJTaXplLCBib29sIHBsYWNlVmVydGljYWxTY3JvbGxiYXJPblRoZUxlZnQpIHsKKyAgICAgICAg
aWYgKHBsYWNlVmVydGljYWxTY3JvbGxiYXJPblRoZUxlZnQpIHsKKyAgICAgICAgICAgIGF1dG8g
Ym90dG9tTGVmdENvcm5lciA9IGJvdW5kc1JlY3QubWluWE1heFlDb3JuZXIoKTsKKyAgICAgICAg
ICAgIHJldHVybiBJbnRSZWN0IHsgeyBib3R0b21MZWZ0Q29ybmVyLngoKSwgYm90dG9tTGVmdENv
cm5lci55KCkgLSBjb3JuZXJTaXplLmhlaWdodCgpLCB9LCBjb3JuZXJTaXplIH07CisgICAgICAg
IH0KKyAgICAgICAgcmV0dXJuIEludFJlY3QgeyBib3VuZHNSZWN0Lm1heFhNYXhZQ29ybmVyKCkg
LSBjb3JuZXJTaXplLCBjb3JuZXJTaXplIH07CisgICAgfTsKKworICAgIGlmIChzY3JvbGxiYXJz
QXZvaWRDb3JuZXIpCisgICAgICAgIHNjcm9sbENvcm5lclJlY3QgPSBjb3JuZXJSZWN0KG92ZXJm
bG93Q29udHJvbHNQb3NpdGlvbmluZ1JlY3QsIGNvcm5lclNpemUsIHBsYWNlVmVydGljYWxTY3Jv
bGxiYXJPblRoZUxlZnQpOworICAgIGVsc2UKKyAgICAgICAgc2Nyb2xsQ29ybmVyUmVjdCA9IHsg
fTsKKworICAgIGlmIChoYXZlUmVzaXplcikgeworICAgICAgICBpZiAoc2Nyb2xsYmFyc0F2b2lk
Q29ybmVyKQorICAgICAgICAgICAgcmVzaXplclJlY3QgPSBzY3JvbGxDb3JuZXJSZWN0OworICAg
ICAgICBlbHNlIHsKKyAgICAgICAgICAgIGF1dG8gc2Nyb2xsYmFyVGhpY2tuZXNzID0gU2Nyb2xs
YmFyVGhlbWU6OnRoZW1lKCkuc2Nyb2xsYmFyVGhpY2tuZXNzKCk7CisgICAgICAgICAgICByZXNp
emVyUmVjdCA9IGNvcm5lclJlY3Qob3ZlcmZsb3dDb250cm9sc1Bvc2l0aW9uaW5nUmVjdCwgeyBz
Y3JvbGxiYXJUaGlja25lc3MsIHNjcm9sbGJhclRoaWNrbmVzcyB9LCBwbGFjZVZlcnRpY2FsU2Ny
b2xsYmFyT25UaGVMZWZ0KTsKKyAgICAgICAgfQorICAgIH0gZWxzZQorICAgICAgICByZXNpemVy
UmVjdCA9IHsgfTsKIH0KIAogSW50U2l6ZSBSZW5kZXJMYXllcjo6c2Nyb2xsYmFyT2Zmc2V0KGNv
bnN0IFNjcm9sbGJhciYgc2Nyb2xsYmFyKSBjb25zdAogewotICAgIFJlbmRlckJveCogYm94ID0g
cmVuZGVyQm94KCk7CisgICAgSW50UmVjdCBoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3Qs
IHJlc2l6ZXJSZWN0OworICAgIGdldE92ZXJmbG93Q29udHJvbHNSZWN0cyhoQmFyUmVjdCwgdkJh
clJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0KTsKIAogICAgIGlmICgmc2Nyb2xsYmFyID09
IG1fdkJhci5nZXQoKSkKLSAgICAgICAgcmV0dXJuIEludFNpemUodmVydGljYWxTY3JvbGxiYXJT
dGFydCgwLCBib3gtPndpZHRoKCkpLCBib3gtPmJvcmRlclRvcCgpKTsKKyAgICAgICAgcmV0dXJu
IHRvSW50U2l6ZSh2QmFyUmVjdC5sb2NhdGlvbigpKTsKIAogICAgIGlmICgmc2Nyb2xsYmFyID09
IG1faEJhci5nZXQoKSkKLSAgICAgICAgcmV0dXJuIEludFNpemUoaG9yaXpvbnRhbFNjcm9sbGJh
clN0YXJ0KDApLCBib3gtPmhlaWdodCgpIC0gYm94LT5ib3JkZXJCb3R0b20oKSAtIHNjcm9sbGJh
ci5oZWlnaHQoKSk7CisgICAgICAgIHJldHVybiB0b0ludFNpemUoaEJhclJlY3QubG9jYXRpb24o
KSk7CiAgICAgCiAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgcmV0dXJuIEludFNpemUo
KTsKKyAgICByZXR1cm4geyB9OwogfQogCiB2b2lkIFJlbmRlckxheWVyOjppbnZhbGlkYXRlU2Ny
b2xsYmFyUmVjdChTY3JvbGxiYXImIHNjcm9sbGJhciwgY29uc3QgSW50UmVjdCYgcmVjdCkKQEAg
LTM0MjYsMTcgKzM0MDYsMjEgQEAgdm9pZCBSZW5kZXJMYXllcjo6aW52YWxpZGF0ZVNjcm9sbGJh
clJlY3QoU2Nyb2xsYmFyJiBzY3JvbGxiYXIsIGNvbnN0IEludFJlY3QmIHIKICAgICAgICAgfQog
ICAgIH0KIAotICAgIEludFJlY3Qgc2Nyb2xsUmVjdCA9IHJlY3Q7CisgICAgYXV0byBzY3JvbGxS
ZWN0ID0gcmVjdDsKICAgICBSZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwogICAgIEFTU0VS
VChib3gpOwogICAgIC8vIElmIHdlIGFyZSBub3QgeWV0IGluc2VydGVkIGludG8gdGhlIHRyZWUs
IHRoZXJlIGlzIG5vIG5lZWQgdG8gcmVwYWludC4KICAgICBpZiAoIWJveC0+cGFyZW50KCkpCiAg
ICAgICAgIHJldHVybjsKIAorICAgIEludFJlY3QgaEJhclJlY3QsIHZCYXJSZWN0LCBjb3JuZXJS
ZWN0LCByZXNpemVyUmVjdDsKKyAgICBnZXRPdmVyZmxvd0NvbnRyb2xzUmVjdHMoaEJhclJlY3Qs
IHZCYXJSZWN0LCBjb3JuZXJSZWN0LCByZXNpemVyUmVjdCk7CisKICAgICBpZiAoJnNjcm9sbGJh
ciA9PSBtX3ZCYXIuZ2V0KCkpCi0gICAgICAgIHNjcm9sbFJlY3QubW92ZSh2ZXJ0aWNhbFNjcm9s
bGJhclN0YXJ0KDAsIGJveC0+d2lkdGgoKSksIGJveC0+Ym9yZGVyVG9wKCkpOworICAgICAgICBz
Y3JvbGxSZWN0Lm1vdmVCeSh2QmFyUmVjdC5sb2NhdGlvbigpKTsKICAgICBlbHNlCi0gICAgICAg
IHNjcm9sbFJlY3QubW92ZShob3Jpem9udGFsU2Nyb2xsYmFyU3RhcnQoMCksIGJveC0+aGVpZ2h0
KCkgLSBib3gtPmJvcmRlckJvdHRvbSgpIC0gc2Nyb2xsYmFyLmhlaWdodCgpKTsKKyAgICAgICAg
c2Nyb2xsUmVjdC5tb3ZlQnkoaEJhclJlY3QubG9jYXRpb24oKSk7CisKICAgICBMYXlvdXRSZWN0
IHJlcGFpbnRSZWN0ID0gc2Nyb2xsUmVjdDsKICAgICByZW5kZXJCb3goKS0+ZmxpcEZvcldyaXRp
bmdNb2RlKHJlcGFpbnRSZWN0KTsKICAgICByZW5kZXJlcigpLnJlcGFpbnRSZWN0YW5nbGUocmVw
YWludFJlY3QpOwpAQCAtMzcwNiwzMCArMzY5MCwyOCBAQCB2b2lkIFJlbmRlckxheWVyOjpwb3Np
dGlvbk92ZXJmbG93Q29udHJvbHMoY29uc3QgSW50U2l6ZSYgb2Zmc2V0RnJvbVJvb3QpCiB7CiAg
ICAgaWYgKCFtX2hCYXIgJiYgIW1fdkJhciAmJiAhY2FuUmVzaXplKCkpCiAgICAgICAgIHJldHVy
bjsKLSAgICAKLSAgICBSZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwotICAgIGlmICghYm94
KQorCisgICAgaWYgKCFyZW5kZXJCb3goKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3Qg
SW50UmVjdCBib3JkZXJCb3ggPSBzbmFwcGVkSW50UmVjdChib3gtPmJvcmRlckJveFJlY3QoKSk7
Ci0gICAgY29uc3QgSW50UmVjdCYgc2Nyb2xsQ29ybmVyID0gc2Nyb2xsQ29ybmVyUmVjdCgpOwot
ICAgIEludFJlY3QgYWJzQm91bmRzKGJvcmRlckJveC5sb2NhdGlvbigpICsgb2Zmc2V0RnJvbVJv
b3QsIGJvcmRlckJveC5zaXplKCkpOworICAgIEludFJlY3QgaEJhclJlY3QsIHZCYXJSZWN0LCBj
b3JuZXJSZWN0LCByZXNpemVyUmVjdDsKKyAgICBnZXRPdmVyZmxvd0NvbnRyb2xzUmVjdHMoaEJh
clJlY3QsIHZCYXJSZWN0LCBjb3JuZXJSZWN0LCByZXNpemVyUmVjdCk7CisKICAgICBpZiAobV92
QmFyKSB7Ci0gICAgICAgIEludFJlY3QgdkJhclJlY3QgPSByZWN0Rm9yVmVydGljYWxTY3JvbGxi
YXIoYm9yZGVyQm94KTsKICAgICAgICAgdkJhclJlY3QubW92ZShvZmZzZXRGcm9tUm9vdCk7CiAg
ICAgICAgIG1fdkJhci0+c2V0RnJhbWVSZWN0KHZCYXJSZWN0KTsKICAgICB9CiAgICAgCiAgICAg
aWYgKG1faEJhcikgewotICAgICAgICBJbnRSZWN0IGhCYXJSZWN0ID0gcmVjdEZvckhvcml6b250
YWxTY3JvbGxiYXIoYm9yZGVyQm94KTsKICAgICAgICAgaEJhclJlY3QubW92ZShvZmZzZXRGcm9t
Um9vdCk7CiAgICAgICAgIG1faEJhci0+c2V0RnJhbWVSZWN0KGhCYXJSZWN0KTsKICAgICB9Ci0g
ICAgCisKICAgICBpZiAobV9zY3JvbGxDb3JuZXIpCi0gICAgICAgIG1fc2Nyb2xsQ29ybmVyLT5z
ZXRGcmFtZVJlY3Qoc2Nyb2xsQ29ybmVyKTsKKyAgICAgICAgbV9zY3JvbGxDb3JuZXItPnNldEZy
YW1lUmVjdChjb3JuZXJSZWN0KTsKKwogICAgIGlmIChtX3Jlc2l6ZXIpCi0gICAgICAgIG1fcmVz
aXplci0+c2V0RnJhbWVSZWN0KHJlc2l6ZXJDb3JuZXJSZWN0KCp0aGlzLCBib3JkZXJCb3gpKTsK
KyAgICAgICAgbV9yZXNpemVyLT5zZXRGcmFtZVJlY3QocmVzaXplclJlY3QpOwogfQogCiBpbnQg
UmVuZGVyTGF5ZXI6OnNjcm9sbFdpZHRoKCkgY29uc3QKQEAgLTM5NjEsMTggKzM5NDMsMTkgQEAg
dm9pZCBSZW5kZXJMYXllcjo6dXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCkKIAogYm9vbCBS
ZW5kZXJMYXllcjo6b3ZlcmZsb3dDb250cm9sc0ludGVyc2VjdFJlY3QoY29uc3QgSW50UmVjdCYg
bG9jYWxSZWN0KSBjb25zdAogewotICAgIGNvbnN0IEludFJlY3QgYm9yZGVyQm94ID0gc25hcHBl
ZEludFJlY3QocmVuZGVyQm94KCktPmJvcmRlckJveFJlY3QoKSk7CisgICAgSW50UmVjdCBoQmFy
UmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0OworICAgIGdldE92ZXJmbG93
Q29udHJvbHNSZWN0cyhoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0
KTsKIAotICAgIGlmIChyZWN0Rm9ySG9yaXpvbnRhbFNjcm9sbGJhcihib3JkZXJCb3gpLmludGVy
c2VjdHMobG9jYWxSZWN0KSkKKyAgICBpZiAoaEJhclJlY3QuaW50ZXJzZWN0cyhsb2NhbFJlY3Qp
KQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIGlmIChyZWN0Rm9yVmVydGljYWxTY3JvbGxi
YXIoYm9yZGVyQm94KS5pbnRlcnNlY3RzKGxvY2FsUmVjdCkpCisgICAgaWYgKHZCYXJSZWN0Lmlu
dGVyc2VjdHMobG9jYWxSZWN0KSkKICAgICAgICAgcmV0dXJuIHRydWU7CiAKLSAgICBpZiAoc2Ny
b2xsQ29ybmVyUmVjdCgpLmludGVyc2VjdHMobG9jYWxSZWN0KSkKKyAgICBpZiAoY29ybmVyUmVj
dC5pbnRlcnNlY3RzKGxvY2FsUmVjdCkpCiAgICAgICAgIHJldHVybiB0cnVlOwotICAgIAotICAg
IGlmIChyZXNpemVyQ29ybmVyUmVjdCgqdGhpcywgYm9yZGVyQm94KS5pbnRlcnNlY3RzKGxvY2Fs
UmVjdCkpCisKKyAgICBpZiAocmVzaXplclJlY3QuaW50ZXJzZWN0cyhsb2NhbFJlY3QpKQogICAg
ICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIHJldHVybiBmYWxzZTsKQEAgLTQxMTEsMTIgKzQwOTQs
MTIgQEAgdm9pZCBSZW5kZXJMYXllcjo6cGFpbnRSZXNpemVyKEdyYXBoaWNzQ29udGV4dCYgY29u
dGV4dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW4KICAgICBpZiAocmVuZGVyZXIoKS5zdHlsZSgp
LnJlc2l6ZSgpID09IFJlc2l6ZTo6Tm9uZSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgUmVuZGVy
Qm94KiBib3ggPSByZW5kZXJCb3goKTsKLSAgICBBU1NFUlQoYm94KTsKKyAgICBJbnRSZWN0IGhC
YXJSZWN0LCB2QmFyUmVjdCwgY29ybmVyUmVjdCwgcmVzaXplclJlY3Q7CisgICAgZ2V0T3ZlcmZs
b3dDb250cm9sc1JlY3RzKGhCYXJSZWN0LCB2QmFyUmVjdCwgY29ybmVyUmVjdCwgcmVzaXplclJl
Y3QpOwogCi0gICAgTGF5b3V0UmVjdCBhYnNSZWN0ID0gcmVzaXplckNvcm5lclJlY3QoKnRoaXMs
IGJveC0+Ym9yZGVyQm94UmVjdCgpKTsKLSAgICBhYnNSZWN0Lm1vdmVCeShwYWludE9mZnNldCk7
Ci0gICAgaWYgKCFhYnNSZWN0LmludGVyc2VjdHMoZGFtYWdlUmVjdCkpCisgICAgTGF5b3V0UmVj
dCByZXNpemVyQWJzUmVjdCA9IHJlc2l6ZXJSZWN0OworICAgIHJlc2l6ZXJBYnNSZWN0Lm1vdmVC
eShwYWludE9mZnNldCk7CisgICAgaWYgKCFyZXNpemVyQWJzUmVjdC5pbnRlcnNlY3RzKGRhbWFn
ZVJlY3QpKQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAoY29udGV4dC5pbnZhbGlkYXRpbmdD
b250cm9sVGludHMoKSkgewpAQCAtNDEyNSwxOCArNDEwOCwxOCBAQCB2b2lkIFJlbmRlckxheWVy
OjpwYWludFJlc2l6ZXIoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBjb25zdCBMYXlvdXRQb2lu
dCYgcGFpbgogICAgIH0KICAgICAKICAgICBpZiAobV9yZXNpemVyKSB7Ci0gICAgICAgIG1fcmVz
aXplci0+cGFpbnRJbnRvUmVjdChjb250ZXh0LCBwYWludE9mZnNldCwgYWJzUmVjdCk7CisgICAg
ICAgIG1fcmVzaXplci0+cGFpbnRJbnRvUmVjdChjb250ZXh0LCBwYWludE9mZnNldCwgcmVzaXpl
ckFic1JlY3QpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgZHJhd1BsYXRmb3JtUmVz
aXplckltYWdlKGNvbnRleHQsIGFic1JlY3QpOworICAgIGRyYXdQbGF0Zm9ybVJlc2l6ZXJJbWFn
ZShjb250ZXh0LCByZXNpemVyQWJzUmVjdCk7CiAKICAgICAvLyBEcmF3IGEgZnJhbWUgYXJvdW5k
IHRoZSByZXNpemVyICgxcHggZ3JleSBsaW5lKSBpZiB0aGVyZSBhcmUgYW55IHNjcm9sbGJhcnMg
cHJlc2VudC4KICAgICAvLyBDbGlwcGluZyB3aWxsIGV4Y2x1ZGUgdGhlIHJpZ2h0IGFuZCBib3R0
b20gZWRnZXMgb2YgdGhpcyBmcmFtZS4KICAgICBpZiAoIWhhc092ZXJsYXlTY3JvbGxiYXJzKCkg
JiYgKG1fdkJhciB8fCBtX2hCYXIpKSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2
ZXIgc3RhdGVTYXZlcihjb250ZXh0KTsKLSAgICAgICAgY29udGV4dC5jbGlwKGFic1JlY3QpOwot
ICAgICAgICBMYXlvdXRSZWN0IGxhcmdlckNvcm5lciA9IGFic1JlY3Q7CisgICAgICAgIGNvbnRl
eHQuY2xpcChyZXNpemVyQWJzUmVjdCk7CisgICAgICAgIExheW91dFJlY3QgbGFyZ2VyQ29ybmVy
ID0gcmVzaXplckFic1JlY3Q7CiAgICAgICAgIGxhcmdlckNvcm5lci5zZXRTaXplKExheW91dFNp
emUobGFyZ2VyQ29ybmVyLndpZHRoKCkgKyAxX2x1LCBsYXJnZXJDb3JuZXIuaGVpZ2h0KCkgKyAx
X2x1KSk7CiAgICAgICAgIGNvbnRleHQuc2V0U3Ryb2tlQ29sb3IoQ29sb3IobWFrZVJHQigyMTcs
IDIxNywgMjE3KSkpOwogICAgICAgICBjb250ZXh0LnNldFN0cm9rZVRoaWNrbmVzcygxLjBmKTsK
QEAgLTQxNDksMTQgKzQxMzIsMTIgQEAgYm9vbCBSZW5kZXJMYXllcjo6aXNQb2ludEluUmVzaXpl
Q29udHJvbChjb25zdCBJbnRQb2ludCYgYWJzb2x1dGVQb2ludCkgY29uc3QKIHsKICAgICBpZiAo
IWNhblJlc2l6ZSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgCi0gICAgUmVuZGVyQm94
KiBib3ggPSByZW5kZXJCb3goKTsKLSAgICBBU1NFUlQoYm94KTsKIAotICAgIEludFBvaW50IGxv
Y2FsUG9pbnQgPSByb3VuZGVkSW50UG9pbnQoYWJzb2x1dGVUb0NvbnRlbnRzKGFic29sdXRlUG9p
bnQpKTsKKyAgICBJbnRSZWN0IGhCYXJSZWN0LCB2QmFyUmVjdCwgY29ybmVyUmVjdCwgcmVzaXpl
clJlY3Q7CisgICAgZ2V0T3ZlcmZsb3dDb250cm9sc1JlY3RzKGhCYXJSZWN0LCB2QmFyUmVjdCwg
Y29ybmVyUmVjdCwgcmVzaXplclJlY3QpOwogCi0gICAgSW50UmVjdCBsb2NhbEJvdW5kcyhJbnRQ
b2ludCgpLCBzbmFwcGVkSW50UmVjdChib3gtPmZyYW1lUmVjdCgpKS5zaXplKCkpOwotICAgIHJl
dHVybiByZXNpemVyQ29ybmVyUmVjdCgqdGhpcywgbG9jYWxCb3VuZHMpLmNvbnRhaW5zKGxvY2Fs
UG9pbnQpOworICAgIEludFBvaW50IGxvY2FsUG9pbnQgPSByb3VuZGVkSW50UG9pbnQoYWJzb2x1
dGVUb0NvbnRlbnRzKGFic29sdXRlUG9pbnQpKTsKKyAgICByZXR1cm4gcmVzaXplclJlY3QuY29u
dGFpbnMobG9jYWxQb2ludCk7CiB9CiAKIGJvb2wgUmVuZGVyTGF5ZXI6OmhpdFRlc3RPdmVyZmxv
d0NvbnRyb2xzKEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgY29uc3QgSW50UG9pbnQmIGxvY2FsUG9p
bnQpCkBAIC00MTY0LDM3ICs0MTQ1LDI0IEBAIGJvb2wgUmVuZGVyTGF5ZXI6OmhpdFRlc3RPdmVy
Zmxvd0NvbnRyb2xzKEhpdFRlc3RSZXN1bHQmIHJlc3VsdCwgY29uc3QgSW50UG9pbnQmCiAgICAg
aWYgKCFtX2hCYXIgJiYgIW1fdkJhciAmJiAhY2FuUmVzaXplKCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKIAotICAgIFJlbmRlckJveCogYm94ID0gcmVuZGVyQm94KCk7Ci0gICAgQVNTRVJUKGJv
eCk7Ci0gICAgCisgICAgSW50UmVjdCBoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJl
c2l6ZXJSZWN0OworICAgIGdldE92ZXJmbG93Q29udHJvbHNSZWN0cyhoQmFyUmVjdCwgdkJhclJl
Y3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0KTsKKwogICAgIEludFJlY3QgcmVzaXplQ29udHJv
bFJlY3Q7CiAgICAgaWYgKHJlbmRlcmVyKCkuc3R5bGUoKS5yZXNpemUoKSAhPSBSZXNpemU6Ok5v
bmUpIHsKLSAgICAgICAgcmVzaXplQ29udHJvbFJlY3QgPSBzbmFwcGVkSW50UmVjdChyZXNpemVy
Q29ybmVyUmVjdCgqdGhpcywgYm94LT5ib3JkZXJCb3hSZWN0KCkpKTsKLSAgICAgICAgaWYgKHJl
c2l6ZUNvbnRyb2xSZWN0LmNvbnRhaW5zKGxvY2FsUG9pbnQpKQorICAgICAgICBpZiAocmVzaXpl
clJlY3QuY29udGFpbnMobG9jYWxQb2ludCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAg
ICB9CiAKLSAgICBpbnQgcmVzaXplQ29udHJvbFNpemUgPSBzdGQ6Om1heChyZXNpemVDb250cm9s
UmVjdC5oZWlnaHQoKSwgMCk7Ci0KICAgICAvLyBGSVhNRTogV2Ugc2hvdWxkIGhpdCB0ZXN0IHRo
ZSBtX3Njcm9sbENvcm5lciBhbmQgcGFzcyBpdCBiYWNrIHRocm91Z2ggdGhlIHJlc3VsdC4KLQog
ICAgIGlmIChtX3ZCYXIgJiYgbV92QmFyLT5zaG91bGRQYXJ0aWNpcGF0ZUluSGl0VGVzdGluZygp
KSB7Ci0gICAgICAgIExheW91dFJlY3QgdkJhclJlY3QodmVydGljYWxTY3JvbGxiYXJTdGFydCgw
LCBib3gtPndpZHRoKCkpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC0+Ym9yZGVy
VG9wKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgbV92QmFyLT53aWR0aCgpLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGJveC0+aGVpZ2h0KCkgLSAoYm94LT5ib3JkZXJUb3Ao
KSArIGJveC0+Ym9yZGVyQm90dG9tKCkpIC0gKG1faEJhciA/IG1faEJhci0+aGVpZ2h0KCkgOiBy
ZXNpemVDb250cm9sU2l6ZSkpOwogICAgICAgICBpZiAodkJhclJlY3QuY29udGFpbnMobG9jYWxQ
b2ludCkpIHsKICAgICAgICAgICAgIHJlc3VsdC5zZXRTY3JvbGxiYXIobV92QmFyLmdldCgpKTsK
ICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CiAgICAgfQogCi0gICAgcmVzaXpl
Q29udHJvbFNpemUgPSBzdGQ6Om1heChyZXNpemVDb250cm9sUmVjdC53aWR0aCgpLCAwKTsKICAg
ICBpZiAobV9oQmFyICYmIG1faEJhci0+c2hvdWxkUGFydGljaXBhdGVJbkhpdFRlc3RpbmcoKSkg
ewotICAgICAgICBMYXlvdXRSZWN0IGhCYXJSZWN0KGhvcml6b250YWxTY3JvbGxiYXJTdGFydCgw
KSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtPmhlaWdodCgpIC0gYm94LT5ib3Jk
ZXJCb3R0b20oKSAtIG1faEJhci0+aGVpZ2h0KCksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgYm94LT53aWR0aCgpIC0gKGJveC0+Ym9yZGVyTGVmdCgpICsgYm94LT5ib3JkZXJSaWdodCgp
KSAtIChtX3ZCYXIgPyBtX3ZCYXItPndpZHRoKCkgOiByZXNpemVDb250cm9sU2l6ZSksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgbV9oQmFyLT5oZWlnaHQoKSk7CiAgICAgICAgIGlmICho
QmFyUmVjdC5jb250YWlucyhsb2NhbFBvaW50KSkgewogICAgICAgICAgICAgcmVzdWx0LnNldFNj
cm9sbGJhcihtX2hCYXIuZ2V0KCkpOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC01NTY5
LDkgKzU1MzcsMjMgQEAgYm9vbCBSZW5kZXJMYXllcjo6aGl0VGVzdFJlc2l6ZXJJbkZyYWdtZW50
cyhjb25zdCBMYXllckZyYWdtZW50cyYgbGF5ZXJGcmFnbWVudHMKICAgICBpZiAobGF5ZXJGcmFn
bWVudHMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBhdXRvIGJvcmRl
ckJveFJlY3QgPSBzbmFwcGVkSW50UmVjdChkb3duY2FzdDxSZW5kZXJCb3g+KHJlbmRlcmVyKCkp
LmJvcmRlckJveFJlY3QoKSk7CisgICAgSW50UmVjdCBoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5l
clJlY3QsIHJlc2l6ZXJSZWN0OworICAgIGdldE92ZXJmbG93Q29udHJvbHNSZWN0cyhoQmFyUmVj
dCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0KTsKKworICAgIGF1dG8gY29ybmVy
UmVjdEluRnJhZ21lbnQgPSBbJl0oY29uc3QgSW50UmVjdCYgZnJhZ21lbnRCb3VuZHMsIGNvbnN0
IEludFJlY3QmIHJlc2l6ZXJSZWN0KSB7CisgICAgICAgIGlmIChzaG91bGRQbGFjZUJsb2NrRGly
ZWN0aW9uU2Nyb2xsYmFyT25MZWZ0KCkpIHsKKyAgICAgICAgICAgIEludFNpemUgb2Zmc2V0RnJv
bUJvdHRvbUxlZnQgPSBib3JkZXJCb3hSZWN0Lm1pblhNYXhZQ29ybmVyKCkgLSByZXNpemVyUmVj
dC5taW5YTWF4WUNvcm5lcigpOworICAgICAgICAgICAgcmV0dXJuIEludFJlY3QgeyBmcmFnbWVu
dEJvdW5kcy5taW5YTWF4WUNvcm5lcigpIC0gb2Zmc2V0RnJvbUJvdHRvbUxlZnQgLSBJbnRTaXpl
IHsgMCwgcmVzaXplclJlY3QuaGVpZ2h0KCkgfSwgcmVzaXplclJlY3Quc2l6ZSgpIH07CisgICAg
ICAgIH0KKyAgICAgICAgSW50U2l6ZSBvZmZzZXRGcm9tQm90dG9tUmlnaHQgPSBib3JkZXJCb3hS
ZWN0Lm1heFhNYXhZQ29ybmVyKCkgLSByZXNpemVyUmVjdC5tYXhYTWF4WUNvcm5lcigpOworICAg
ICAgICByZXR1cm4gSW50UmVjdCB7IGZyYWdtZW50Qm91bmRzLm1heFhNYXhZQ29ybmVyKCkgLSBv
ZmZzZXRGcm9tQm90dG9tUmlnaHQgLSByZXNpemVyUmVjdC5zaXplKCksIHJlc2l6ZXJSZWN0LnNp
emUoKSB9OworICAgIH07CisKICAgICBmb3IgKGludCBpID0gbGF5ZXJGcmFnbWVudHMuc2l6ZSgp
IC0gMTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgY29uc3QgTGF5ZXJGcmFnbWVudCYgZnJhZ21l
bnQgPSBsYXllckZyYWdtZW50cy5hdChpKTsKLSAgICAgICAgaWYgKGZyYWdtZW50LmJhY2tncm91
bmRSZWN0LmludGVyc2VjdHMoaGl0VGVzdExvY2F0aW9uKSAmJiByZXNpemVyQ29ybmVyUmVjdCgq
dGhpcywgc25hcHBlZEludFJlY3QoZnJhZ21lbnQubGF5ZXJCb3VuZHMpKS5jb250YWlucyhoaXRU
ZXN0TG9jYXRpb24ucm91bmRlZFBvaW50KCkpKQorICAgICAgICBhdXRvIHJlc2l6ZXJSZWN0SW5G
cmFnbWVudCA9IGNvcm5lclJlY3RJbkZyYWdtZW50KHNuYXBwZWRJbnRSZWN0KGZyYWdtZW50Lmxh
eWVyQm91bmRzKSwgcmVzaXplclJlY3QpOworICAgICAgICBpZiAoZnJhZ21lbnQuYmFja2dyb3Vu
ZFJlY3QuaW50ZXJzZWN0cyhoaXRUZXN0TG9jYXRpb24pICYmIHJlc2l6ZXJSZWN0SW5GcmFnbWVu
dC5jb250YWlucyhoaXRUZXN0TG9jYXRpb24ucm91bmRlZFBvaW50KCkpKQogICAgICAgICAgICAg
cmV0dXJuIHRydWU7CiAgICAgfQogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL1JlbmRlckxheWVyLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5
ZXIuaAppbmRleCA3ZWYwMjk3MGFiOThiZTE5NTAzNGU2MjBjMDkyM2ZmYzA2ZThiZjJjLi43ZTJk
Y2QxNjA1ZTAzMzI2OGJiZGVmNTJjN2NkZjJmYmE3OGRhODkwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyTGF5ZXIuaApAQCAtMTE0Miw5ICsxMTQyLDYgQEAgcHJpdmF0ZToKICAgICB2
b2lkIHVucmVnaXN0ZXJBc1RvdWNoRXZlbnRMaXN0ZW5lckZvclNjcm9sbGluZygpOwogI2VuZGlm
CiAKLSAgICAvLyBSZWN0YW5nbGUgZW5jb21wYXNzaW5nIHRoZSBzY3JvbGwgY29ybmVyIGFuZCBy
ZXNpemVyIHJlY3QuCi0gICAgTGF5b3V0UmVjdCBzY3JvbGxDb3JuZXJBbmRSZXNpemVyUmVjdCgp
IGNvbnN0OwotCiAgICAgLy8gTk9URTogVGhpcyBzaG91bGQgb25seSBiZSBjYWxsZWQgYnkgdGhl
IG92ZXJyaWRkZW4gc2V0U2Nyb2xsT2Zmc2V0IGZyb20gU2Nyb2xsYWJsZUFyZWEuCiAgICAgdm9p
ZCBzY3JvbGxUbyhjb25zdCBTY3JvbGxQb3NpdGlvbiYpOwogICAgIHZvaWQgdXBkYXRlQ29tcG9z
aXRpbmdMYXllcnNBZnRlclNjcm9sbCgpOwpAQCAtMTIxMCwxMSArMTIwNyw3IEBAIHByaXZhdGU6
CiAgICAgTGF5b3V0VW5pdCBvdmVyZmxvd0xlZnQoKSBjb25zdDsKICAgICBMYXlvdXRVbml0IG92
ZXJmbG93UmlnaHQoKSBjb25zdDsKIAotICAgIEludFJlY3QgcmVjdEZvckhvcml6b250YWxTY3Jv
bGxiYXIoY29uc3QgSW50UmVjdCYgYm9yZGVyQm94UmVjdCkgY29uc3Q7Ci0gICAgSW50UmVjdCBy
ZWN0Rm9yVmVydGljYWxTY3JvbGxiYXIoY29uc3QgSW50UmVjdCYgYm9yZGVyQm94UmVjdCkgY29u
c3Q7Ci0KLSAgICBMYXlvdXRVbml0IHZlcnRpY2FsU2Nyb2xsYmFyU3RhcnQoaW50IG1pblgsIGlu
dCBtYXhYKSBjb25zdDsKLSAgICBMYXlvdXRVbml0IGhvcml6b250YWxTY3JvbGxiYXJTdGFydChp
bnQgbWluWCkgY29uc3Q7CisgICAgdm9pZCBnZXRPdmVyZmxvd0NvbnRyb2xzUmVjdHMoSW50UmVj
dCYgaG9yaXpvbnRhbFNjcm9sbGJhclJlY3QsIEludFJlY3QmIHZlcnRpY2FsU2Nyb2xsYmFyUmVj
dCwgSW50UmVjdCYgc2Nyb2xsQ29ybmVyUmVjdCwgSW50UmVjdCYgcmVzaXplclJlY3QpIGNvbnN0
OwogCiAgICAgYm9vbCBvdmVyZmxvd0NvbnRyb2xzSW50ZXJzZWN0UmVjdChjb25zdCBJbnRSZWN0
JiBsb2NhbFJlY3QpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IGE2NTAwZjM0YzU0YThjYWU4ODIwYzBhYTc2MDYxNTNj
Mzk2ZDJhNGMuLjAwODFjZGQ5M2IzMWEwZmEzNWU5ZGQ2ZmExZjc5YWM0MmNkOGRiYTUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCkBAIC0x
ODE4LDcgKzE4MTgsMTUgQEAgYm9vbCBSZW5kZXJMYXllckJhY2tpbmc6OnJlcXVpcmVzVmVydGlj
YWxTY3JvbGxiYXJMYXllcigpIGNvbnN0CiAKIGJvb2wgUmVuZGVyTGF5ZXJCYWNraW5nOjpyZXF1
aXJlc1Njcm9sbENvcm5lckxheWVyKCkgY29uc3QKIHsKLSAgICBpZiAobV9vd25pbmdMYXllci5z
Y3JvbGxDb3JuZXJBbmRSZXNpemVyUmVjdCgpLmlzRW1wdHkoKSkKKyAgICBpZiAoIWlzPFJlbmRl
ckJveD4obV9vd25pbmdMYXllci5yZW5kZXJlcigpKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgSW50UmVjdCBoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0
OworICAgIG1fb3duaW5nTGF5ZXIuZ2V0T3ZlcmZsb3dDb250cm9sc1JlY3RzKGhCYXJSZWN0LCB2
QmFyUmVjdCwgY29ybmVyUmVjdCwgcmVzaXplclJlY3QpOworICAgIGlmIChjb3JuZXJSZWN0Lmlz
RW1wdHkoKSkKKyAgICAgICAgY29ybmVyUmVjdCA9IHJlc2l6ZXJSZWN0OworCisgICAgaWYgKGNv
cm5lclJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBhdXRvIHZl
cnRpY2FsU2Nyb2xsYmFyID0gbV9vd25pbmdMYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpOwpAQCAt
MTg5MCwyMSArMTg5OCwyNiBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6cG9zaXRpb25PdmVy
Zmxvd0NvbnRyb2xzTGF5ZXJzKCkKICAgICAgICAgfQogICAgIH07CiAKKyAgICAvLyBUaGVzZSBy
ZWN0cyBhcmUgcmVsYXRpdmUgdG8gdGhlIGJvcmRlckJveFJlY3QuCisgICAgSW50UmVjdCBoQmFy
UmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0OworICAgIG1fb3duaW5nTGF5
ZXIuZ2V0T3ZlcmZsb3dDb250cm9sc1JlY3RzKGhCYXJSZWN0LCB2QmFyUmVjdCwgY29ybmVyUmVj
dCwgcmVzaXplclJlY3QpOworCiAgICAgaWYgKGF1dG8qIGxheWVyID0gbGF5ZXJGb3JIb3Jpem9u
dGFsU2Nyb2xsYmFyKCkpIHsKLSAgICAgICAgcG9zaXRpb25TY3JvbGxiYXJMYXllcigqbGF5ZXIs
IG1fb3duaW5nTGF5ZXIucmVjdEZvckhvcml6b250YWxTY3JvbGxiYXIoYm9yZGVyQm94KSwgcGFk
ZGluZ0JveEluc2V0KTsKKyAgICAgICAgcG9zaXRpb25TY3JvbGxiYXJMYXllcigqbGF5ZXIsIGhC
YXJSZWN0LCBwYWRkaW5nQm94SW5zZXQpOwogICAgICAgICBsYXllci0+c2V0RHJhd3NDb250ZW50
KG1fb3duaW5nTGF5ZXIuaG9yaXpvbnRhbFNjcm9sbGJhcigpICYmICFsYXllci0+dXNlc0NvbnRl
bnRzTGF5ZXIoKSk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8qIGxheWVyID0gbGF5ZXJGb3JWZXJ0
aWNhbFNjcm9sbGJhcigpKSB7Ci0gICAgICAgIHBvc2l0aW9uU2Nyb2xsYmFyTGF5ZXIoKmxheWVy
LCBtX293bmluZ0xheWVyLnJlY3RGb3JWZXJ0aWNhbFNjcm9sbGJhcihib3JkZXJCb3gpLCBwYWRk
aW5nQm94SW5zZXQpOworICAgICAgICBwb3NpdGlvblNjcm9sbGJhckxheWVyKCpsYXllciwgdkJh
clJlY3QsIHBhZGRpbmdCb3hJbnNldCk7CiAgICAgICAgIGxheWVyLT5zZXREcmF3c0NvbnRlbnQo
bV9vd25pbmdMYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpICYmICFsYXllci0+dXNlc0NvbnRlbnRz
TGF5ZXIoKSk7CiAgICAgfQogCiAgICAgaWYgKGF1dG8qIGxheWVyID0gbGF5ZXJGb3JTY3JvbGxD
b3JuZXIoKSkgewotICAgICAgICBjb25zdCBMYXlvdXRSZWN0JiBzY3JvbGxDb3JuZXJBbmRSZXNp
emVyID0gbV9vd25pbmdMYXllci5zY3JvbGxDb3JuZXJBbmRSZXNpemVyUmVjdCgpOwotICAgICAg
ICBsYXllci0+c2V0UG9zaXRpb24oc2Nyb2xsQ29ybmVyQW5kUmVzaXplci5sb2NhdGlvbigpIC0g
cGFkZGluZ0JveEluc2V0KTsKLSAgICAgICAgbGF5ZXItPnNldFNpemUoc2Nyb2xsQ29ybmVyQW5k
UmVzaXplci5zaXplKCkpOwotICAgICAgICBsYXllci0+c2V0RHJhd3NDb250ZW50KCFzY3JvbGxD
b3JuZXJBbmRSZXNpemVyLmlzRW1wdHkoKSk7CisgICAgICAgIGlmIChjb3JuZXJSZWN0LmlzRW1w
dHkoKSkKKyAgICAgICAgICAgIGNvcm5lclJlY3QgPSByZXNpemVyUmVjdDsKKyAgICAgICAgbGF5
ZXItPnNldFBvc2l0aW9uKGNvcm5lclJlY3QubG9jYXRpb24oKSAtIHBhZGRpbmdCb3hJbnNldCk7
CisgICAgICAgIGxheWVyLT5zZXRTaXplKGNvcm5lclJlY3Quc2l6ZSgpKTsKKyAgICAgICAgbGF5
ZXItPnNldERyYXdzQ29udGVudCghY29ybmVyUmVjdC5pc0VtcHR5KCkpOwogICAgIH0KIH0KIApA
QCAtMzE3MywxMSArMzE4NiwxNyBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6cGFpbnRDb250
ZW50cyhjb25zdCBHcmFwaGljc0xheWVyKiBncmFwaGljc0xheWVyLCBHcmFwaAogICAgIH0gZWxz
ZSBpZiAoZ3JhcGhpY3NMYXllciA9PSBsYXllckZvclZlcnRpY2FsU2Nyb2xsYmFyKCkpIHsKICAg
ICAgICAgcGFpbnRTY3JvbGxiYXIobV9vd25pbmdMYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpLCBj
b250ZXh0LCBkaXJ0eVJlY3QpOwogICAgIH0gZWxzZSBpZiAoZ3JhcGhpY3NMYXllciA9PSBsYXll
ckZvclNjcm9sbENvcm5lcigpKSB7Ci0gICAgICAgIGNvbnN0IExheW91dFJlY3QmIHNjcm9sbENv
cm5lckFuZFJlc2l6ZXIgPSBtX293bmluZ0xheWVyLnNjcm9sbENvcm5lckFuZFJlc2l6ZXJSZWN0
KCk7CisKKyAgICAgICAgSW50UmVjdCBoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJl
c2l6ZXJSZWN0OworICAgICAgICBtX293bmluZ0xheWVyLmdldE92ZXJmbG93Q29udHJvbHNSZWN0
cyhoQmFyUmVjdCwgdkJhclJlY3QsIGNvcm5lclJlY3QsIHJlc2l6ZXJSZWN0KTsKKworICAgICAg
ICBpZiAoY29ybmVyUmVjdC5pc0VtcHR5KCkpCisgICAgICAgICAgICBjb3JuZXJSZWN0ID0gcmVz
aXplclJlY3Q7CisKICAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVy
KGNvbnRleHQpOwotICAgICAgICBjb250ZXh0LnRyYW5zbGF0ZSgtc2Nyb2xsQ29ybmVyQW5kUmVz
aXplci5sb2NhdGlvbigpKTsKKyAgICAgICAgY29udGV4dC50cmFuc2xhdGUoLWNvcm5lclJlY3Qu
bG9jYXRpb24oKSk7CiAgICAgICAgIExheW91dFJlY3QgdHJhbnNmb3JtZWRDbGlwID0gTGF5b3V0
UmVjdChjbGlwKTsKLSAgICAgICAgdHJhbnNmb3JtZWRDbGlwLm1vdmVCeShzY3JvbGxDb3JuZXJB
bmRSZXNpemVyLmxvY2F0aW9uKCkpOworICAgICAgICB0cmFuc2Zvcm1lZENsaXAubW92ZUJ5KGNv
cm5lclJlY3QubG9jYXRpb24oKSk7CiAgICAgICAgIG1fb3duaW5nTGF5ZXIucGFpbnRTY3JvbGxD
b3JuZXIoY29udGV4dCwgSW50UG9pbnQoKSwgc25hcHBlZEludFJlY3QodHJhbnNmb3JtZWRDbGlw
KSk7CiAgICAgICAgIG1fb3duaW5nTGF5ZXIucGFpbnRSZXNpemVyKGNvbnRleHQsIEludFBvaW50
KCksIHRyYW5zZm9ybWVkQ2xpcCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDQ0MjU4OTMwODBlMDc0MmZjZjJi
MGViMGM5MjJkOGE3MGY1YmUxNTQuLmE1OWIxYjRiYmViY2YxODJjMTQyZDJjNjJiNjU5MmM2OWY2
ODg2OTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wNC0yMCAgU2ltb24gRnJhc2VyICA8
c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBIb3Jpem9udGFsIG92ZXJmbG93IG92
ZXJsYXkgc2Nyb2xsYmFyIGlzIG1pc3BsYWNlZCBpbiBSVEwKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDY3MworICAgICAgICA8cmRhcjovL3Byb2Js
ZW0vNjE5NTA3NTE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBjb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xsYmFyLWxheWVyLXBvc2l0aW9u
aW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY29tcG9zaXRpbmcvb3ZlcmZsb3cv
cnRsLXNjcm9sbGJhci1sYXllci1wb3NpdGlvbmluZy5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3Mtd2syL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXIt
cG9zaXRpb25pbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMt
d2sxL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmct
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAyMC0wNC0xOSAgU2ltb24gRnJhc2VyICA8c2ltb24u
ZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb250ZW50IGRpc2FwcGVhcnMgb24gQ1NTIHBh
cmFsbGF4IGV4YW1wbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL292ZXJm
bG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0
VGVzdHMvY29tcG9zaXRpbmcvb3ZlcmZsb3cvcnRsLXNjcm9sbGJhci1sYXllci1wb3NpdGlvbmlu
Zy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWZhNTQzM2FmMzVkYTUyZmM0NWUyNTRkNzgwZmU0
OGI5Y2ZmMDNhZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL292
ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsNTAgQEAKKyhHcmFwaGljc0xheWVyCisgIChhbmNob3IgMC4wMCAwLjAwKQorICAoYm91
bmRzIDgwMC4wMCA2MDAuMDApCisgIChjaGlsZHJlbiAxCisgICAgKEdyYXBoaWNzTGF5ZXIKKyAg
ICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgICAgIChjb250ZW50c09wYXF1ZSAxKQorICAg
ICAgKGNoaWxkcmVuIDEKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAob2Zmc2V0
RnJvbVJlbmRlcmVyIHdpZHRoPS0xMCBoZWlnaHQ9LTEwKQorICAgICAgICAgIChwb3NpdGlvbiAx
OC4wMCAxMC4wMCkKKyAgICAgICAgICAoYm91bmRzIDM2Mi4wMCAzNjIuMDApCisgICAgICAgICAg
KGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChjaGlsZHJlbiAyCisgICAgICAgICAgICAoR3Jh
cGhpY3NMYXllcgorICAgICAgICAgICAgICAob2Zmc2V0RnJvbVJlbmRlcmVyIHdpZHRoPTEzIGhl
aWdodD0xMykKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDIzLjAwIDIzLjAwKQorICAgICAgICAg
ICAgICAoYm91bmRzIG9yaWdpbiAyOTIuMDAgMC4wMCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAz
MTYuMDAgMzE2LjAwKQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMQorICAgICAgICAgICAgICAg
IChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAob2Zmc2V0RnJvbVJlbmRlcmVyIHdp
ZHRoPTEzIGhlaWdodD0xMykKKyAgICAgICAgICAgICAgICAgIChzY3JvbGxPZmZzZXQgKDI5Miww
KSkKKyAgICAgICAgICAgICAgICAgIChhbmNob3IgMC4wMCAwLjAwKQorICAgICAgICAgICAgICAg
ICAgKGJvdW5kcyA2MDguMDAgNjE2LjAwKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAg
ICAgICAgKHBvc2l0aW9uIDIzLjAwIDIzLjAwKQorICAgICAgICAgICAgICAoYm91bmRzIDMxNi4w
MCAzMTYuMDApCisgICAgICAgICAgICAgIChjaGlsZHJlbiAyCisgICAgICAgICAgICAgICAgKEdy
YXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAwLjAwIDMwMS4wMCkKKyAg
ICAgICAgICAgICAgICAgIChib3VuZHMgMzE2LjAwIDE1LjAwKQorICAgICAgICAgICAgICAgICAg
KGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgICAoR3Jh
cGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgKGJvdW5kcyAxNS4wMCAzMTYuMDApCisgICAg
ICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAgICAgICAgKQorICAgICAg
ICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAgICAgICApCisgICAgICAp
CisgICAgKQorICApCispCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL292
ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmcuaHRtbCBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmcuaHRt
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iZDQ3YzczZWY5OTFmZTAzNjViMzE0YmQ5YjE1MGY2ODE2MDI1MGQ5Ci0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvb3ZlcmZsb3cvcnRsLXNj
cm9sbGJhci1sYXllci1wb3NpdGlvbmluZy5odG1sCkBAIC0wLDAgKzEsNDEgQEAKKzwhRE9DVFlQ
RSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFsOkFzeW5jT3ZlcmZsb3dT
Y3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+CisgICAgPHRpdGxlPkxh
eWVyIHRyZWUgZHVtcCBSVEwgb3ZlcmZsb3cgd2l0aCBjb21wb3NpdGVkIHNjcm9sbGJhcnM8L3Rp
dGxlPgorICAgIDxzdHlsZT4KKyAgICAgICAgI3Njcm9sbGVyIHsKKyAgICAgICAgICAgIG92ZXJm
bG93LXk6IHNjcm9sbDsKKyAgICAgICAgICAgIGhlaWdodDogMzAwcHg7CisgICAgICAgICAgICB3
aWR0aDogMzAwcHg7CisgICAgICAgICAgICBtYXJnaW46IDIwcHg7CisgICAgICAgICAgICBib3Jk
ZXI6IDEzcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgN3B4IGJs
YWNrOworICAgICAgICAgICAgcGFkZGluZzogOHB4OworICAgICAgICB9CisKKyAgICAgICAgLmNv
bnRlbnQgeworICAgICAgICAgICAgaGVpZ2h0OiAyMDAlOworICAgICAgICAgICAgd2lkdGg6IDIw
MCU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICAgIDxzY3JpcHQ+CisgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpOwor
CisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAgICAgaW50ZXJuYWxzLnNl
dFVzZXNPdmVybGF5U2Nyb2xsYmFycyh0cnVlKQorCisgICAgICAgIHdpbmRvdy5hZGRFdmVudExp
c3RlbmVyKCdsb2FkJywgKCkgPT4geworICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMp
CisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xheWVycycpLmlubmVy
VGV4dCA9IHdpbmRvdy5pbnRlcm5hbHMubGF5ZXJUcmVlQXNUZXh0KGRvY3VtZW50KTsKKyAgICAg
ICAgfSwgZmFsc2UpOworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+CisgICAgPGRpdiBp
ZD0ic2Nyb2xsZXIiIGRpcj0icnRsIj4KKyAgICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+PC9k
aXY+CisgICAgPC9kaXY+Cis8cHJlIGlkPSJsYXllcnMiPjwvcHJlPgorPC9ib2R5PgorPC9odG1s
PgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtd2syL2NvbXBvc2l0aW5n
L292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Ny
b2xsYmFyLWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41NTRkYmNm
MjczN2E0MzJhM2UwNTg3Y2I3ODA0Yjc0ZmU0ODMyZTgyCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xs
YmFyLWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDUxIEBACisoR3Jh
cGhpY3NMYXllcgorICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgKGJvdW5kcyA4MDAuMDAgNjAwLjAw
KQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAgICAoYm91bmRzIDgwMC4w
MCA2MDAuMDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAgIChjaGlsZHJlbiAxCisg
ICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKG9mZnNldEZyb21SZW5kZXJlciB3aWR0
aD0tMTAgaGVpZ2h0PS0xMCkKKyAgICAgICAgICAocG9zaXRpb24gMTguMDAgMTAuMDApCisgICAg
ICAgICAgKGJvdW5kcyAzNjIuMDAgMzYyLjAwKQorICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkK
KyAgICAgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
ICAgICAgICAgKG9mZnNldEZyb21SZW5kZXJlciB3aWR0aD0xMyBoZWlnaHQ9MTMpCisgICAgICAg
ICAgICAgIChwb3NpdGlvbiAyMy4wMCAyMy4wMCkKKyAgICAgICAgICAgICAgKGJvdW5kcyBvcmln
aW4gMjkyLjAwIDAuMDApCisgICAgICAgICAgICAgIChib3VuZHMgMzE2LjAwIDMxNi4wMCkKKyAg
ICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAoR3JhcGhpY3NMYXllcgor
ICAgICAgICAgICAgICAgICAgKG9mZnNldEZyb21SZW5kZXJlciB3aWR0aD0xMyBoZWlnaHQ9MTMp
CisgICAgICAgICAgICAgICAgICAoc2Nyb2xsT2Zmc2V0ICgyOTIsMCkpCisgICAgICAgICAgICAg
ICAgICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgNjA4LjAw
IDYxNi4wMCkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICkKKyAgICAgICAgICAg
ICkKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgIChwb3NpdGlvbiAy
My4wMCAyMy4wMCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMTYuMDAgMzE2LjAwKQorICAgICAg
ICAgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAgICAgICAgICAgICAocG9zaXRpb24gMC4wMCAzMDEuMDApCisgICAgICAgICAgICAgICAgICAo
Ym91bmRzIDMxNi4wMCAxNS4wMCkKKyAgICAgICAgICAgICAgICAgIChkcmF3c0NvbnRlbnQgMSkK
KyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAg
ICAgICAgICAgICAgIChwb3NpdGlvbiAzMDEuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAgIChi
b3VuZHMgMTUuMDAgMzE2LjAwKQorICAgICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQor
ICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAg
ICAgICkKKyAgICAgICAgKQorICAgICAgKQorICAgICkKKyAgKQorKQorCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3Jv
bGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xsYmFyLWxheWVyLXBvc2l0
aW9uaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjEzNzg5MTc5MWZlOTY5MjdhZDc4ZTY0
YjBhYWQ3YmRlZDA4YmRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
bWFjLXdrMS9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xsYmFyLWxheWVyLXBvc2l0aW9u
aW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACisK
</data>
<flag name="review"
          id="412474"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>397090</attachid>
            <date>2020-04-21 09:32:59 -0700</date>
            <delta_ts>2020-04-21 09:32:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-210673-20200421093258.patch</filename>
            <type>text/plain</type>
            <size>34077</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjYwMzcxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmFmYTMzMTZiMzk0ZDM3
MmY3Y2M1MWE1NDdkNmZkMjIyOGNiYTQwOS4uMTcyY2Q0ZWQ3NDRlM2JiMTgyNjA4ZTY3ZTdkMWQ3
MzE0ZTVlYTBiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU1IEBACisyMDIwLTA0LTIwICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIEhvcml6b250YWwg
b3ZlcmZsb3cgb3ZlcmxheSBzY3JvbGxiYXIgaXMgbWlzcGxhY2VkIGluIFJUTAorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEwNjczCisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS82MTk1MDc1MT4KKworICAgICAgICBSZXZpZXdlZCBieSBBbnR0aSBLb2l2
aXN0by4KKyAgICAgICAgCisgICAgICAgIENvZGUgZm9yIHBvc2l0aW9uaW5nIFJlbmRlckxheWVy
IG92ZXJmbG93IGNvbnRyb2xzIChzY3JvbGxiYXJzIGFuZCBzY3JvbGwgY29ybmVyKQorICAgICAg
ICB3YXMgc2NhdHRlcmVkIGFjcm9zcyBsb3RzIG9mIGRpZmZlcmVudCBmdW5jdGlvbnMsIG1ha2lu
ZyBpdCBoYXJkIHRvIGZvbGxvdywKKyAgICAgICAgYW5kIHByb25lIHRvIGJ1Z3MuCisKKyAgICAg
ICAgRml4IGJ5IG1ha2luZyBvbmUgc291cmNlIG9mIHRydXRoLCBvdmVyZmxvd0NvbnRyb2xzUmVj
dHMoKSwgd2hpY2ggY29tcHV0ZXMKKyAgICAgICAgcmVjdHMgZm9yIHRoZSB0d28gc2Nyb2xsYmFy
cywgdGhlICJzY3JvbGwgY29ybmVyIiAodGhlIHNxdWFyZSBpbiB0aGUgY29ybmVyIHdoaWNoCisg
ICAgICAgIHNob3dzLCBvbmx5IGZvciBub24tb3ZlcmxheSBzY3JvbGxiYXJzLCB3aGVuIGJvdGgg
c2Nyb2xsYmFycyBvciB0aGUgcmVzaXplIGNvbnRyb2wKKyAgICAgICAgaXMgdmlzaWJsZSksIGFu
ZCB0aGUgcmVzaXplIGNvbnRyb2wgd2hpY2ggc2hvd3Mgd2hlbiBzdHlsZSBzcGVjaWZpZXMgdGhl
ICJyZXNpemUiIHByb3BlcnR5LgorICAgICAgICAKKyAgICAgICAgQ2FsbCB0aGlzIGZ1bmN0aW9u
IGluIGFsbCB0aGUgcGxhY2VzIHRoYXQgbmVlZCB0byBrbm93IGFib3V0IG92ZXJmbG93IGNvbnRy
b2wKKyAgICAgICAgZ2VvbWV0cnkuIFJlbmRlckxheWVyOjpoaXRUZXN0UmVzaXplckluRnJhZ21l
bnRzKCkgaXMgYSBsaXR0bGUgdHJpY2t5IGJlY2F1c2UgaXQgd2FudHMKKyAgICAgICAgdGhlIHJl
c2l6ZSBjb250cm9sIHJlbGF0aXZlIHRvIHRoZSBmcmFnbWVudCByZWN0OyBhY2hpZXZlIHRoaXMg
YnkgY29tcHV0aW5nIHRoZSBwb3NpdGlvbgorICAgICAgICBvZiB0aGUgcmVzaXplciByZWN0IHJl
bGF0aXZlIHRvIHRoZSBib3JkZXIgYm94LCB0aGVuIHNoaWZ0aW5nIGl0IGludG8gcG9zaXRpb24g
cmVsYXRpdmUKKyAgICAgICAgdG8gdGhlIGZyYWdtZW50IGJvdW5kcyAod2hpY2ggaW5jbHVkZSBi
b3JkZXIpLgorCisgICAgICAgIFRlc3Q6IGNvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxi
YXItbGF5ZXItcG9zaXRpb25pbmcuaHRtbAorCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RXZlbnRIYW5kbGVyOjpzZWxlY3RDdXJzb3IpOgorICAg
ICAgICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJMYXllcjo6c2Nyb2xsQ29ybmVyUmVjdCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJMYXllcjo6b3ZlcmZsb3dDb250cm9sc1JlY3RzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyOjpzY3JvbGxiYXJPZmZzZXQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6
UmVuZGVyTGF5ZXI6OmludmFsaWRhdGVTY3JvbGxiYXJSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyOjpwb3NpdGlvbk92ZXJmbG93Q29udHJvbHMpOgorICAgICAgICAoV2ViQ29y
ZTo6UmVuZGVyTGF5ZXI6Om92ZXJmbG93Q29udHJvbHNJbnRlcnNlY3RSZWN0IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpwYWludFJlc2l6ZXIpOgorICAgICAgICAoV2Vi
Q29yZTo6UmVuZGVyTGF5ZXI6OmlzUG9pbnRJblJlc2l6ZUNvbnRyb2wgY29uc3QpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OmhpdFRlc3RPdmVyZmxvd0NvbnRyb2xzKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjpoaXRUZXN0UmVzaXplckluRnJhZ21lbnRzIGNvbnN0
KToKKyAgICAgICAgKFdlYkNvcmU6OmNvcm5lclN0YXJ0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OmNvcm5lclJlY3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6cmVzaXplckNv
cm5lclJlY3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnNjcm9s
bENvcm5lckFuZFJlc2l6ZXJSZWN0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OlJlbmRlckxheWVyOjpyZWN0Rm9ySG9yaXpvbnRhbFNjcm9sbGJhciBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6cmVjdEZvclZlcnRpY2FsU2Nyb2xsYmFy
IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp2ZXJ0aWNh
bFNjcm9sbGJhclN0YXJ0IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckxheWVyOjpob3Jpem9udGFsU2Nyb2xsYmFyU3RhcnQgY29uc3QpOiBEZWxldGVkLgorICAgICAg
ICAqIHJlbmRlcmluZy9SZW5kZXJMYXllci5oOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJM
YXllckJhY2tpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXJCYWNraW5nOjpy
ZXF1aXJlc1Njcm9sbENvcm5lckxheWVyIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckxheWVyQmFja2luZzo6cG9zaXRpb25PdmVyZmxvd0NvbnRyb2xzTGF5ZXJzKToKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2luZzo6cGFpbnRDb250ZW50cyk6CisKIDIwMjAtMDQt
MTkgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgQ29u
dGVudCBkaXNhcHBlYXJzIG9uIENTUyBwYXJhbGxheCBleGFtcGxlCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL0V2
ZW50SGFuZGxlci5jcHAKaW5kZXggNWMyNGVkYzk3NzMyZjEzNjlkYTI2YjU5Nzk0NGMzYTkxODg1
NjBkMC4uMTQ4ZWEzOTBkMjc2MzE2MmE2YmRjYWUwMmVkMGE5MGJjOGY5OTExNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMTU0NSw3ICsxNTQ1LDcgQEAgT3B0aW9uYWw8
Q3Vyc29yPiBFdmVudEhhbmRsZXI6OnNlbGVjdEN1cnNvcihjb25zdCBIaXRUZXN0UmVzdWx0JiBy
ZXN1bHQsIGJvb2wgc2gKICAgICAgICAgaWYgKHJlbmRlcmVyKSB7CiAgICAgICAgICAgICBpZiAo
UmVuZGVyTGF5ZXIqIGxheWVyID0gcmVuZGVyZXItPmVuY2xvc2luZ0xheWVyKCkpIHsKICAgICAg
ICAgICAgICAgICBpZiAoRnJhbWVWaWV3KiB2aWV3ID0gbV9mcmFtZS52aWV3KCkpCi0gICAgICAg
ICAgICAgICAgICAgIGluUmVzaXplciA9IGxheWVyLT5pc1BvaW50SW5SZXNpemVDb250cm9sKHZp
ZXctPndpbmRvd1RvQ29udGVudHMocm91bmRlZEludFBvaW50KHJlc3VsdC5sb2NhbFBvaW50KCkp
KSk7CisgICAgICAgICAgICAgICAgICAgIGluUmVzaXplciA9IGxheWVyLT5pc1BvaW50SW5SZXNp
emVDb250cm9sKHZpZXctPndpbmRvd1RvQ29udGVudHMocm91bmRlZEludFBvaW50KHJlc3VsdC5s
b2NhbFBvaW50KCkpKSk7IC8vIFRoaXMgY29vcmRpbmF0ZSBjb252ZXJzaW9uIGlzIHdyb25nOiB3
ZWJraXQub3JnL2IvMjEwNzc4LgogICAgICAgICAgICAgfQogICAgICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXIuY3BwCmluZGV4IDVmMWMzMjhhNzA0NzQxMTE1NTIz
NDRjODE4OTc5YzUxNjQ0NWY5MDkuLmMxMTVhMzE0NDNmMDkwYjg2ZDQzM2RiMTlhMjg0ZjkzNTk3
ZWQ5NjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcApAQCAtMzE3
OSw2OSArMzE3OSw5IEBAIGJvb2wgUmVuZGVyTGF5ZXI6OmlzQWN0aXZlKCkgY29uc3QKICAgICBy
ZXR1cm4gcGFnZSgpLmZvY3VzQ29udHJvbGxlcigpLmlzQWN0aXZlKCk7CiB9CiAKLXN0YXRpYyBp
bnQgY29ybmVyU3RhcnQoY29uc3QgUmVuZGVyTGF5ZXImIGxheWVyLCBpbnQgbWluWCwgaW50IG1h
eFgsIGludCB0aGlja25lc3MpCi17Ci0gICAgaWYgKGxheWVyLnNob3VsZFBsYWNlQmxvY2tEaXJl
Y3Rpb25TY3JvbGxiYXJPbkxlZnQoKSkKLSAgICAgICAgcmV0dXJuIG1pblggKyBsYXllci5yZW5k
ZXJlcigpLnN0eWxlKCkuYm9yZGVyTGVmdFdpZHRoKCk7Ci0gICAgcmV0dXJuIG1heFggLSB0aGlj
a25lc3MgLSBsYXllci5yZW5kZXJlcigpLnN0eWxlKCkuYm9yZGVyUmlnaHRXaWR0aCgpOwotfQot
Ci1zdGF0aWMgTGF5b3V0UmVjdCBjb3JuZXJSZWN0KGNvbnN0IFJlbmRlckxheWVyJiBsYXllciwg
Y29uc3QgTGF5b3V0UmVjdCYgYm91bmRzKQotewotICAgIGludCBob3Jpem9udGFsVGhpY2tuZXNz
OwotICAgIGludCB2ZXJ0aWNhbFRoaWNrbmVzczsKLSAgICBpZiAoIWxheWVyLnZlcnRpY2FsU2Ny
b2xsYmFyKCkgJiYgIWxheWVyLmhvcml6b250YWxTY3JvbGxiYXIoKSkgewotICAgICAgICAvLyBG
SVhNRTogVGhpcyBpc24ndCByaWdodC4gIFdlIG5lZWQgdG8ga25vdyB0aGUgdGhpY2tuZXNzIG9m
IGN1c3RvbSBzY3JvbGxiYXJzCi0gICAgICAgIC8vIGV2ZW4gd2hlbiB0aGV5IGRvbid0IGV4aXN0
IGluIG9yZGVyIHRvIHNldCB0aGUgcmVzaXplciBzcXVhcmUgc2l6ZSBwcm9wZXJseS4KLSAgICAg
ICAgaG9yaXpvbnRhbFRoaWNrbmVzcyA9IFNjcm9sbGJhclRoZW1lOjp0aGVtZSgpLnNjcm9sbGJh
clRoaWNrbmVzcygpOwotICAgICAgICB2ZXJ0aWNhbFRoaWNrbmVzcyA9IGhvcml6b250YWxUaGlj
a25lc3M7Ci0gICAgfSBlbHNlIGlmIChsYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpICYmICFsYXll
ci5ob3Jpem9udGFsU2Nyb2xsYmFyKCkpIHsKLSAgICAgICAgaG9yaXpvbnRhbFRoaWNrbmVzcyA9
IGxheWVyLnZlcnRpY2FsU2Nyb2xsYmFyKCktPndpZHRoKCk7Ci0gICAgICAgIHZlcnRpY2FsVGhp
Y2tuZXNzID0gaG9yaXpvbnRhbFRoaWNrbmVzczsKLSAgICB9IGVsc2UgaWYgKGxheWVyLmhvcml6
b250YWxTY3JvbGxiYXIoKSAmJiAhbGF5ZXIudmVydGljYWxTY3JvbGxiYXIoKSkgewotICAgICAg
ICB2ZXJ0aWNhbFRoaWNrbmVzcyA9IGxheWVyLmhvcml6b250YWxTY3JvbGxiYXIoKS0+aGVpZ2h0
KCk7Ci0gICAgICAgIGhvcml6b250YWxUaGlja25lc3MgPSB2ZXJ0aWNhbFRoaWNrbmVzczsKLSAg
ICB9IGVsc2UgewotICAgICAgICBob3Jpem9udGFsVGhpY2tuZXNzID0gbGF5ZXIudmVydGljYWxT
Y3JvbGxiYXIoKS0+d2lkdGgoKTsKLSAgICAgICAgdmVydGljYWxUaGlja25lc3MgPSBsYXllci5o
b3Jpem9udGFsU2Nyb2xsYmFyKCktPmhlaWdodCgpOwotICAgIH0KLSAgICByZXR1cm4gTGF5b3V0
UmVjdChjb3JuZXJTdGFydChsYXllciwgYm91bmRzLngoKSwgYm91bmRzLm1heFgoKSwgaG9yaXpv
bnRhbFRoaWNrbmVzcyksCi0gICAgICAgIGJvdW5kcy5tYXhZKCkgLSB2ZXJ0aWNhbFRoaWNrbmVz
cyAtIGxheWVyLnJlbmRlcmVyKCkuc3R5bGUoKS5ib3JkZXJCb3R0b21XaWR0aCgpLAotICAgICAg
ICBob3Jpem9udGFsVGhpY2tuZXNzLCB2ZXJ0aWNhbFRoaWNrbmVzcyk7Ci19Ci0KIEludFJlY3Qg
UmVuZGVyTGF5ZXI6OnNjcm9sbENvcm5lclJlY3QoKSBjb25zdAogewotICAgIC8vIFdlIGhhdmUg
YSBzY3JvbGxiYXIgY29ybmVyIHdoZW4gYSBub24gb3ZlcmxheSBzY3JvbGxiYXIgaXMgdmlzaWJs
ZSBhbmQgbm90IGZpbGxpbmcgdGhlIGVudGlyZSBsZW5ndGggb2YgdGhlIGJveC4KLSAgICAvLyBU
aGlzIGhhcHBlbnMgd2hlbjoKLSAgICAvLyAoYSkgQSByZXNpemVyIGlzIHByZXNlbnQgYW5kIGF0
IGxlYXN0IG9uZSBub24gb3ZlcmxheSBzY3JvbGxiYXIgaXMgcHJlc2VudAotICAgIC8vIChiKSBC
b3RoIG5vbiBvdmVybGF5IHNjcm9sbGJhcnMgYXJlIHByZXNlbnQuCi0gICAgLy8gT3ZlcmxheSBz
Y3JvbGxiYXJzIGFsd2F5cyBmaWxsIHRoZSBlbnRpcmUgbGVuZ3RoIG9mIHRoZSBib3ggc28gd2Ug
bmV2ZXIgaGF2ZSBzY3JvbGwgY29ybmVyIGluIHRoYXQgY2FzZS4KLSAgICBib29sIGhhc0hvcml6
b250YWxCYXIgPSBtX2hCYXIgJiYgIW1faEJhci0+aXNPdmVybGF5U2Nyb2xsYmFyKCk7Ci0gICAg
Ym9vbCBoYXNWZXJ0aWNhbEJhciA9IG1fdkJhciAmJiAhbV92QmFyLT5pc092ZXJsYXlTY3JvbGxi
YXIoKTsKLSAgICBib29sIGhhc1Jlc2l6ZXIgPSByZW5kZXJlcigpLnN0eWxlKCkucmVzaXplKCkg
IT0gUmVzaXplOjpOb25lOwotICAgIGlmICgoaGFzSG9yaXpvbnRhbEJhciAmJiBoYXNWZXJ0aWNh
bEJhcikgfHwgKGhhc1Jlc2l6ZXIgJiYgKGhhc0hvcml6b250YWxCYXIgfHwgaGFzVmVydGljYWxC
YXIpKSkKLSAgICAgICAgcmV0dXJuIHNuYXBwZWRJbnRSZWN0KGNvcm5lclJlY3QoKnRoaXMsIHJl
bmRlckJveCgpLT5ib3JkZXJCb3hSZWN0KCkpKTsKLSAgICByZXR1cm4gSW50UmVjdCgpOwotfQot
Ci1zdGF0aWMgTGF5b3V0UmVjdCByZXNpemVyQ29ybmVyUmVjdChjb25zdCBSZW5kZXJMYXllciYg
bGF5ZXIsIGNvbnN0IExheW91dFJlY3QmIGJvdW5kcykKLXsKLSAgICBBU1NFUlQobGF5ZXIucmVu
ZGVyZXIoKS5pc0JveCgpKTsKLSAgICBpZiAobGF5ZXIucmVuZGVyZXIoKS5zdHlsZSgpLnJlc2l6
ZSgpID09IFJlc2l6ZTo6Tm9uZSkKLSAgICAgICAgcmV0dXJuIExheW91dFJlY3QoKTsKLSAgICBy
ZXR1cm4gY29ybmVyUmVjdChsYXllciwgYm91bmRzKTsKLX0KLQotTGF5b3V0UmVjdCBSZW5kZXJM
YXllcjo6c2Nyb2xsQ29ybmVyQW5kUmVzaXplclJlY3QoKSBjb25zdAotewotICAgIFJlbmRlckJv
eCogYm94ID0gcmVuZGVyQm94KCk7Ci0gICAgaWYgKCFib3gpCi0gICAgICAgIHJldHVybiBMYXlv
dXRSZWN0KCk7Ci0gICAgTGF5b3V0UmVjdCBzY3JvbGxDb3JuZXJBbmRSZXNpemVyID0gc2Nyb2xs
Q29ybmVyUmVjdCgpOwotICAgIGlmIChzY3JvbGxDb3JuZXJBbmRSZXNpemVyLmlzRW1wdHkoKSkK
LSAgICAgICAgc2Nyb2xsQ29ybmVyQW5kUmVzaXplciA9IHJlc2l6ZXJDb3JuZXJSZWN0KCp0aGlz
LCBib3gtPmJvcmRlckJveFJlY3QoKSk7Ci0gICAgcmV0dXJuIHNjcm9sbENvcm5lckFuZFJlc2l6
ZXI7CisgICAgcmV0dXJuIG92ZXJmbG93Q29udHJvbHNSZWN0cygpLnNjcm9sbENvcm5lcjsKIH0K
IAogYm9vbCBSZW5kZXJMYXllcjo6aXNTY3JvbGxDb3JuZXJWaXNpYmxlKCkgY29uc3QKQEAgLTMz
NTAsNjMgKzMyOTAsOTggQEAgYm9vbCBSZW5kZXJMYXllcjo6aXNIYW5kbGluZ1doZWVsRXZlbnQo
KSBjb25zdAogICAgIHJldHVybiByZW5kZXJlcigpLmZyYW1lKCkuZXZlbnRIYW5kbGVyKCkuaXNI
YW5kbGluZ1doZWVsRXZlbnQoKTsKIH0KIAotSW50UmVjdCBSZW5kZXJMYXllcjo6cmVjdEZvckhv
cml6b250YWxTY3JvbGxiYXIoY29uc3QgSW50UmVjdCYgYm9yZGVyQm94UmVjdCkgY29uc3QKK1Jl
bmRlckxheWVyOjpPdmVyZmxvd0NvbnRyb2xSZWN0cyBSZW5kZXJMYXllcjo6b3ZlcmZsb3dDb250
cm9sc1JlY3RzKCkgY29uc3QKIHsKLSAgICBpZiAoIW1faEJhcikKLSAgICAgICAgcmV0dXJuIElu
dFJlY3QoKTsKKyAgICBBU1NFUlQoaXM8UmVuZGVyQm94PihyZW5kZXJlcigpKSk7CisgICAgYXV0
byYgcmVuZGVyQm94ID0gZG93bmNhc3Q8UmVuZGVyQm94PihyZW5kZXJlcigpKTsKKyAgICAvLyBT
Y3JvbGxiYXJzIHNpdCBpbnNpZGUgdGhlIGJvcmRlciBib3guCisgICAgYXV0byBvdmVyZmxvd0Nv
bnRyb2xzUG9zaXRpb25pbmdSZWN0ID0gc25hcHBlZEludFJlY3QocmVuZGVyQm94LnBhZGRpbmdC
b3hSZWN0SW5jbHVkaW5nU2Nyb2xsYmFyKCkpOwogCi0gICAgY29uc3QgUmVuZGVyQm94KiBib3gg
PSByZW5kZXJCb3goKTsKLSAgICBjb25zdCBJbnRSZWN0JiBzY3JvbGxDb3JuZXIgPSBzY3JvbGxD
b3JuZXJSZWN0KCk7CisgICAgYXV0byBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0ID0gbV9oQmFy
ID8gbV9oQmFyLT5oZWlnaHQoKSA6IDA7CisgICAgYXV0byB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRo
ID0gbV92QmFyID8gbV92QmFyLT53aWR0aCgpIDogMDsKIAotICAgIHJldHVybiBJbnRSZWN0KGhv
cml6b250YWxTY3JvbGxiYXJTdGFydChib3JkZXJCb3hSZWN0LngoKSksCi0gICAgICAgIGJvcmRl
ckJveFJlY3QubWF4WSgpIC0gYm94LT5ib3JkZXJCb3R0b20oKSAtIG1faEJhci0+aGVpZ2h0KCks
Ci0gICAgICAgIGJvcmRlckJveFJlY3Qud2lkdGgoKSAtIChib3gtPmJvcmRlckxlZnQoKSArIGJv
eC0+Ym9yZGVyUmlnaHQoKSkgLSBzY3JvbGxDb3JuZXIud2lkdGgoKSwKLSAgICAgICAgbV9oQmFy
LT5oZWlnaHQoKSk7Ci19CisgICAgYXV0byBpc05vbk92ZXJsYXlTY3JvbGxiYXIgPSBbXShjb25z
dCBTY3JvbGxiYXIqIHNjcm9sbGJhcikgeworICAgICAgICByZXR1cm4gc2Nyb2xsYmFyICYmICFz
Y3JvbGxiYXItPmlzT3ZlcmxheVNjcm9sbGJhcigpOworICAgIH07CiAKLUludFJlY3QgUmVuZGVy
TGF5ZXI6OnJlY3RGb3JWZXJ0aWNhbFNjcm9sbGJhcihjb25zdCBJbnRSZWN0JiBib3JkZXJCb3hS
ZWN0KSBjb25zdAotewotICAgIGlmICghbV92QmFyKQotICAgICAgICByZXR1cm4gSW50UmVjdCgp
OworICAgIGJvb2wgaGF2ZU5vbk92ZXJsYXlIb3Jpem9udGFsU2Nyb2xsYmFyID0gaXNOb25PdmVy
bGF5U2Nyb2xsYmFyKG1faEJhci5nZXQoKSk7CisgICAgYm9vbCBoYXZlTm9uT3ZlcmxheVZlcnRp
Y2FsU2Nyb2xsYmFyID0gaXNOb25PdmVybGF5U2Nyb2xsYmFyKG1fdkJhci5nZXQoKSk7CisgICAg
Ym9vbCBwbGFjZVZlcnRpY2FsU2Nyb2xsYmFyT25UaGVMZWZ0ID0gc2hvdWxkUGxhY2VCbG9ja0Rp
cmVjdGlvblNjcm9sbGJhck9uTGVmdCgpOworICAgIGJvb2wgaGF2ZVJlc2l6ZXIgPSByZW5kZXJl
cigpLnN0eWxlKCkucmVzaXplKCkgIT0gUmVzaXplOjpOb25lOworICAgIGJvb2wgc2Nyb2xsYmFy
c0F2b2lkQ29ybmVyID0gKGhhdmVOb25PdmVybGF5SG9yaXpvbnRhbFNjcm9sbGJhciAmJiBoYXZl
Tm9uT3ZlcmxheVZlcnRpY2FsU2Nyb2xsYmFyKSB8fCAoaGF2ZVJlc2l6ZXIgJiYgKGhhdmVOb25P
dmVybGF5SG9yaXpvbnRhbFNjcm9sbGJhciB8fCBoYXZlTm9uT3ZlcmxheVZlcnRpY2FsU2Nyb2xs
YmFyKSk7CiAKLSAgICBjb25zdCBSZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOwotICAgIGNv
bnN0IEludFJlY3QmIHNjcm9sbENvcm5lciA9IHNjcm9sbENvcm5lclJlY3QoKTsKKyAgICBJbnRT
aXplIGNvcm5lclNpemU7CisgICAgaWYgKHNjcm9sbGJhcnNBdm9pZENvcm5lcikgeworICAgICAg
ICAvLyBJZiBvbmx5IG9uZSBzY3JvbGxiYXIgaXMgcHJlc2VudCwgdGhlIGNvcm5lciBpcyBzcXVh
cmUuCisgICAgICAgIGNvcm5lclNpemUgPSBJbnRTaXplIHsKKyAgICAgICAgICAgIHZlcnRpY2Fs
U2Nyb2xsYmFyV2lkdGggPyB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoIDogaG9yaXpvbnRhbFNjcm9s
bGJhckhlaWdodCwKKyAgICAgICAgICAgIGhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQgPyBob3Jp
em9udGFsU2Nyb2xsYmFySGVpZ2h0IDogdmVydGljYWxTY3JvbGxiYXJXaWR0aAorICAgICAgICB9
OworICAgIH0KIAotICAgIHJldHVybiBJbnRSZWN0KHZlcnRpY2FsU2Nyb2xsYmFyU3RhcnQoYm9y
ZGVyQm94UmVjdC54KCksIGJvcmRlckJveFJlY3QubWF4WCgpKSwKLSAgICAgICAgYm9yZGVyQm94
UmVjdC55KCkgKyBib3gtPmJvcmRlclRvcCgpLAotICAgICAgICBtX3ZCYXItPndpZHRoKCksCi0g
ICAgICAgIGJvcmRlckJveFJlY3QuaGVpZ2h0KCkgLSAoYm94LT5ib3JkZXJUb3AoKSArIGJveC0+
Ym9yZGVyQm90dG9tKCkpIC0gc2Nyb2xsQ29ybmVyLmhlaWdodCgpKTsKLX0KKyAgICBPdmVyZmxv
d0NvbnRyb2xSZWN0cyByZXN1bHQ7CiAKLUxheW91dFVuaXQgUmVuZGVyTGF5ZXI6OnZlcnRpY2Fs
U2Nyb2xsYmFyU3RhcnQoaW50IG1pblgsIGludCBtYXhYKSBjb25zdAotewotICAgIGNvbnN0IFJl
bmRlckJveCogYm94ID0gcmVuZGVyQm94KCk7Ci0gICAgaWYgKHNob3VsZFBsYWNlQmxvY2tEaXJl
Y3Rpb25TY3JvbGxiYXJPbkxlZnQoKSkKLSAgICAgICAgcmV0dXJuIG1pblggKyBib3gtPmJvcmRl
ckxlZnQoKTsKLSAgICByZXR1cm4gbWF4WCAtIGJveC0+Ym9yZGVyUmlnaHQoKSAtIG1fdkJhci0+
d2lkdGgoKTsKLX0KKyAgICBpZiAobV9oQmFyKSB7CisgICAgICAgIGF1dG8gYmFyUmVjdCA9IG92
ZXJmbG93Q29udHJvbHNQb3NpdGlvbmluZ1JlY3Q7CisgICAgICAgIGJhclJlY3Quc2hpZnRZRWRn
ZVRvKGJhclJlY3QubWF4WSgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhckhlaWdodCk7CisgICAgICAg
IGlmIChzY3JvbGxiYXJzQXZvaWRDb3JuZXIpIHsKKyAgICAgICAgICAgIGlmIChwbGFjZVZlcnRp
Y2FsU2Nyb2xsYmFyT25UaGVMZWZ0KQorICAgICAgICAgICAgICAgIGJhclJlY3Quc2hpZnRYRWRn
ZVRvKGJhclJlY3QueCgpICsgY29ybmVyU2l6ZS53aWR0aCgpKTsKKyAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICBiYXJSZWN0LmNvbnRyYWN0KGNvcm5lclNpemUud2lkdGgoKSwgMCk7
CisgICAgICAgIH0KIAotTGF5b3V0VW5pdCBSZW5kZXJMYXllcjo6aG9yaXpvbnRhbFNjcm9sbGJh
clN0YXJ0KGludCBtaW5YKSBjb25zdAotewotICAgIGNvbnN0IFJlbmRlckJveCogYm94ID0gcmVu
ZGVyQm94KCk7Ci0gICAgaW50IHggPSBtaW5YICsgYm94LT5ib3JkZXJMZWZ0KCk7Ci0gICAgaWYg
KHNob3VsZFBsYWNlQmxvY2tEaXJlY3Rpb25TY3JvbGxiYXJPbkxlZnQoKSkKLSAgICAgICAgeCAr
PSBtX3ZCYXIgPyBtX3ZCYXItPndpZHRoKCkgOiByb3VuZFRvSW50KHJlc2l6ZXJDb3JuZXJSZWN0
KCp0aGlzLCBib3gtPmJvcmRlckJveFJlY3QoKSkud2lkdGgoKSk7Ci0gICAgcmV0dXJuIHg7Cisg
ICAgICAgIHJlc3VsdC5ob3Jpem9udGFsU2Nyb2xsYmFyID0gYmFyUmVjdDsKKyAgICB9CisKKyAg
ICBpZiAobV92QmFyKSB7CisgICAgICAgIGF1dG8gYmFyUmVjdCA9IG92ZXJmbG93Q29udHJvbHNQ
b3NpdGlvbmluZ1JlY3Q7CisgICAgICAgIGlmIChwbGFjZVZlcnRpY2FsU2Nyb2xsYmFyT25UaGVM
ZWZ0KQorICAgICAgICAgICAgYmFyUmVjdC5zZXRXaWR0aCh2ZXJ0aWNhbFNjcm9sbGJhcldpZHRo
KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgYmFyUmVjdC5zaGlmdFhFZGdlVG8oYmFyUmVj
dC5tYXhYKCkgLSB2ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKTsKKworICAgICAgICBpZiAoc2Nyb2xs
YmFyc0F2b2lkQ29ybmVyKQorICAgICAgICAgICAgYmFyUmVjdC5jb250cmFjdCgwLCBjb3JuZXJT
aXplLmhlaWdodCgpKTsKKworICAgICAgICByZXN1bHQudmVydGljYWxTY3JvbGxiYXIgPSBiYXJS
ZWN0OworICAgIH0KKworICAgIGF1dG8gY29ybmVyUmVjdCA9IFtdKGNvbnN0IEludFJlY3QmIGJv
dW5kc1JlY3QsIEludFNpemUgY29ybmVyU2l6ZSwgYm9vbCBwbGFjZVZlcnRpY2FsU2Nyb2xsYmFy
T25UaGVMZWZ0KSB7CisgICAgICAgIGlmIChwbGFjZVZlcnRpY2FsU2Nyb2xsYmFyT25UaGVMZWZ0
KSB7CisgICAgICAgICAgICBhdXRvIGJvdHRvbUxlZnRDb3JuZXIgPSBib3VuZHNSZWN0Lm1pblhN
YXhZQ29ybmVyKCk7CisgICAgICAgICAgICByZXR1cm4gSW50UmVjdCB7IHsgYm90dG9tTGVmdENv
cm5lci54KCksIGJvdHRvbUxlZnRDb3JuZXIueSgpIC0gY29ybmVyU2l6ZS5oZWlnaHQoKSwgfSwg
Y29ybmVyU2l6ZSB9OworICAgICAgICB9CisgICAgICAgIHJldHVybiBJbnRSZWN0IHsgYm91bmRz
UmVjdC5tYXhYTWF4WUNvcm5lcigpIC0gY29ybmVyU2l6ZSwgY29ybmVyU2l6ZSB9OworICAgIH07
CisKKyAgICBpZiAoc2Nyb2xsYmFyc0F2b2lkQ29ybmVyKQorICAgICAgICByZXN1bHQuc2Nyb2xs
Q29ybmVyID0gY29ybmVyUmVjdChvdmVyZmxvd0NvbnRyb2xzUG9zaXRpb25pbmdSZWN0LCBjb3Ju
ZXJTaXplLCBwbGFjZVZlcnRpY2FsU2Nyb2xsYmFyT25UaGVMZWZ0KTsKKworICAgIGlmIChoYXZl
UmVzaXplcikgeworICAgICAgICBpZiAoc2Nyb2xsYmFyc0F2b2lkQ29ybmVyKQorICAgICAgICAg
ICAgcmVzdWx0LnJlc2l6ZXIgPSByZXN1bHQuc2Nyb2xsQ29ybmVyOworICAgICAgICBlbHNlIHsK
KyAgICAgICAgICAgIGF1dG8gc2Nyb2xsYmFyVGhpY2tuZXNzID0gU2Nyb2xsYmFyVGhlbWU6OnRo
ZW1lKCkuc2Nyb2xsYmFyVGhpY2tuZXNzKCk7CisgICAgICAgICAgICByZXN1bHQucmVzaXplciA9
IGNvcm5lclJlY3Qob3ZlcmZsb3dDb250cm9sc1Bvc2l0aW9uaW5nUmVjdCwgeyBzY3JvbGxiYXJU
aGlja25lc3MsIHNjcm9sbGJhclRoaWNrbmVzcyB9LCBwbGFjZVZlcnRpY2FsU2Nyb2xsYmFyT25U
aGVMZWZ0KTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7CiB9CiAKIElu
dFNpemUgUmVuZGVyTGF5ZXI6OnNjcm9sbGJhck9mZnNldChjb25zdCBTY3JvbGxiYXImIHNjcm9s
bGJhcikgY29uc3QKIHsKLSAgICBSZW5kZXJCb3gqIGJveCA9IHJlbmRlckJveCgpOworICAgIGF1
dG8gcmVjdHMgPSBvdmVyZmxvd0NvbnRyb2xzUmVjdHMoKTsKIAogICAgIGlmICgmc2Nyb2xsYmFy
ID09IG1fdkJhci5nZXQoKSkKLSAgICAgICAgcmV0dXJuIEludFNpemUodmVydGljYWxTY3JvbGxi
YXJTdGFydCgwLCBib3gtPndpZHRoKCkpLCBib3gtPmJvcmRlclRvcCgpKTsKKyAgICAgICAgcmV0
dXJuIHRvSW50U2l6ZShyZWN0cy52ZXJ0aWNhbFNjcm9sbGJhci5sb2NhdGlvbigpKTsKIAogICAg
IGlmICgmc2Nyb2xsYmFyID09IG1faEJhci5nZXQoKSkKLSAgICAgICAgcmV0dXJuIEludFNpemUo
aG9yaXpvbnRhbFNjcm9sbGJhclN0YXJ0KDApLCBib3gtPmhlaWdodCgpIC0gYm94LT5ib3JkZXJC
b3R0b20oKSAtIHNjcm9sbGJhci5oZWlnaHQoKSk7CisgICAgICAgIHJldHVybiB0b0ludFNpemUo
cmVjdHMuaG9yaXpvbnRhbFNjcm9sbGJhci5sb2NhdGlvbigpKTsKICAgICAKICAgICBBU1NFUlRf
Tk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gSW50U2l6ZSgpOworICAgIHJldHVybiB7IH07CiB9
CiAKIHZvaWQgUmVuZGVyTGF5ZXI6OmludmFsaWRhdGVTY3JvbGxiYXJSZWN0KFNjcm9sbGJhciYg
c2Nyb2xsYmFyLCBjb25zdCBJbnRSZWN0JiByZWN0KQpAQCAtMzQyNiwxNyArMzQwMSwyMCBAQCB2
b2lkIFJlbmRlckxheWVyOjppbnZhbGlkYXRlU2Nyb2xsYmFyUmVjdChTY3JvbGxiYXImIHNjcm9s
bGJhciwgY29uc3QgSW50UmVjdCYgcgogICAgICAgICB9CiAgICAgfQogCi0gICAgSW50UmVjdCBz
Y3JvbGxSZWN0ID0gcmVjdDsKKyAgICBhdXRvIHNjcm9sbFJlY3QgPSByZWN0OwogICAgIFJlbmRl
ckJveCogYm94ID0gcmVuZGVyQm94KCk7CiAgICAgQVNTRVJUKGJveCk7CiAgICAgLy8gSWYgd2Ug
YXJlIG5vdCB5ZXQgaW5zZXJ0ZWQgaW50byB0aGUgdHJlZSwgdGhlcmUgaXMgbm8gbmVlZCB0byBy
ZXBhaW50LgogICAgIGlmICghYm94LT5wYXJlbnQoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAg
YXV0byByZWN0cyA9IG92ZXJmbG93Q29udHJvbHNSZWN0cygpOworCiAgICAgaWYgKCZzY3JvbGxi
YXIgPT0gbV92QmFyLmdldCgpKQotICAgICAgICBzY3JvbGxSZWN0Lm1vdmUodmVydGljYWxTY3Jv
bGxiYXJTdGFydCgwLCBib3gtPndpZHRoKCkpLCBib3gtPmJvcmRlclRvcCgpKTsKKyAgICAgICAg
c2Nyb2xsUmVjdC5tb3ZlQnkocmVjdHMudmVydGljYWxTY3JvbGxiYXIubG9jYXRpb24oKSk7CiAg
ICAgZWxzZQotICAgICAgICBzY3JvbGxSZWN0Lm1vdmUoaG9yaXpvbnRhbFNjcm9sbGJhclN0YXJ0
KDApLCBib3gtPmhlaWdodCgpIC0gYm94LT5ib3JkZXJCb3R0b20oKSAtIHNjcm9sbGJhci5oZWln
aHQoKSk7CisgICAgICAgIHNjcm9sbFJlY3QubW92ZUJ5KHJlY3RzLmhvcml6b250YWxTY3JvbGxi
YXIubG9jYXRpb24oKSk7CisKICAgICBMYXlvdXRSZWN0IHJlcGFpbnRSZWN0ID0gc2Nyb2xsUmVj
dDsKICAgICByZW5kZXJCb3goKS0+ZmxpcEZvcldyaXRpbmdNb2RlKHJlcGFpbnRSZWN0KTsKICAg
ICByZW5kZXJlcigpLnJlcGFpbnRSZWN0YW5nbGUocmVwYWludFJlY3QpOwpAQCAtMzcwNiwzMCAr
MzY4NCwyNyBAQCB2b2lkIFJlbmRlckxheWVyOjpwb3NpdGlvbk92ZXJmbG93Q29udHJvbHMoY29u
c3QgSW50U2l6ZSYgb2Zmc2V0RnJvbVJvb3QpCiB7CiAgICAgaWYgKCFtX2hCYXIgJiYgIW1fdkJh
ciAmJiAhY2FuUmVzaXplKCkpCiAgICAgICAgIHJldHVybjsKLSAgICAKLSAgICBSZW5kZXJCb3gq
IGJveCA9IHJlbmRlckJveCgpOwotICAgIGlmICghYm94KQorCisgICAgaWYgKCFyZW5kZXJCb3go
KSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgY29uc3QgSW50UmVjdCBib3JkZXJCb3ggPSBzbmFw
cGVkSW50UmVjdChib3gtPmJvcmRlckJveFJlY3QoKSk7Ci0gICAgY29uc3QgSW50UmVjdCYgc2Ny
b2xsQ29ybmVyID0gc2Nyb2xsQ29ybmVyUmVjdCgpOwotICAgIEludFJlY3QgYWJzQm91bmRzKGJv
cmRlckJveC5sb2NhdGlvbigpICsgb2Zmc2V0RnJvbVJvb3QsIGJvcmRlckJveC5zaXplKCkpOwor
ICAgIGF1dG8gcmVjdHMgPSBvdmVyZmxvd0NvbnRyb2xzUmVjdHMoKTsKKwogICAgIGlmIChtX3ZC
YXIpIHsKLSAgICAgICAgSW50UmVjdCB2QmFyUmVjdCA9IHJlY3RGb3JWZXJ0aWNhbFNjcm9sbGJh
cihib3JkZXJCb3gpOwotICAgICAgICB2QmFyUmVjdC5tb3ZlKG9mZnNldEZyb21Sb290KTsKLSAg
ICAgICAgbV92QmFyLT5zZXRGcmFtZVJlY3QodkJhclJlY3QpOworICAgICAgICByZWN0cy52ZXJ0
aWNhbFNjcm9sbGJhci5tb3ZlKG9mZnNldEZyb21Sb290KTsKKyAgICAgICAgbV92QmFyLT5zZXRG
cmFtZVJlY3QocmVjdHMudmVydGljYWxTY3JvbGxiYXIpOwogICAgIH0KICAgICAKICAgICBpZiAo
bV9oQmFyKSB7Ci0gICAgICAgIEludFJlY3QgaEJhclJlY3QgPSByZWN0Rm9ySG9yaXpvbnRhbFNj
cm9sbGJhcihib3JkZXJCb3gpOwotICAgICAgICBoQmFyUmVjdC5tb3ZlKG9mZnNldEZyb21Sb290
KTsKLSAgICAgICAgbV9oQmFyLT5zZXRGcmFtZVJlY3QoaEJhclJlY3QpOworICAgICAgICByZWN0
cy5ob3Jpem9udGFsU2Nyb2xsYmFyLm1vdmUob2Zmc2V0RnJvbVJvb3QpOworICAgICAgICBtX2hC
YXItPnNldEZyYW1lUmVjdChyZWN0cy5ob3Jpem9udGFsU2Nyb2xsYmFyKTsKICAgICB9Ci0gICAg
CisKICAgICBpZiAobV9zY3JvbGxDb3JuZXIpCi0gICAgICAgIG1fc2Nyb2xsQ29ybmVyLT5zZXRG
cmFtZVJlY3Qoc2Nyb2xsQ29ybmVyKTsKKyAgICAgICAgbV9zY3JvbGxDb3JuZXItPnNldEZyYW1l
UmVjdChyZWN0cy5zY3JvbGxDb3JuZXIpOworCiAgICAgaWYgKG1fcmVzaXplcikKLSAgICAgICAg
bV9yZXNpemVyLT5zZXRGcmFtZVJlY3QocmVzaXplckNvcm5lclJlY3QoKnRoaXMsIGJvcmRlckJv
eCkpOworICAgICAgICBtX3Jlc2l6ZXItPnNldEZyYW1lUmVjdChyZWN0cy5yZXNpemVyKTsKIH0K
IAogaW50IFJlbmRlckxheWVyOjpzY3JvbGxXaWR0aCgpIGNvbnN0CkBAIC0zOTYxLDE4ICszOTM2
LDE4IEBAIHZvaWQgUmVuZGVyTGF5ZXI6OnVwZGF0ZVNjcm9sbEluZm9BZnRlckxheW91dCgpCiAK
IGJvb2wgUmVuZGVyTGF5ZXI6Om92ZXJmbG93Q29udHJvbHNJbnRlcnNlY3RSZWN0KGNvbnN0IElu
dFJlY3QmIGxvY2FsUmVjdCkgY29uc3QKIHsKLSAgICBjb25zdCBJbnRSZWN0IGJvcmRlckJveCA9
IHNuYXBwZWRJbnRSZWN0KHJlbmRlckJveCgpLT5ib3JkZXJCb3hSZWN0KCkpOworICAgIGF1dG8g
cmVjdHMgPSBvdmVyZmxvd0NvbnRyb2xzUmVjdHMoKTsKIAotICAgIGlmIChyZWN0Rm9ySG9yaXpv
bnRhbFNjcm9sbGJhcihib3JkZXJCb3gpLmludGVyc2VjdHMobG9jYWxSZWN0KSkKKyAgICBpZiAo
cmVjdHMuaG9yaXpvbnRhbFNjcm9sbGJhci5pbnRlcnNlY3RzKGxvY2FsUmVjdCkpCiAgICAgICAg
IHJldHVybiB0cnVlOwogCi0gICAgaWYgKHJlY3RGb3JWZXJ0aWNhbFNjcm9sbGJhcihib3JkZXJC
b3gpLmludGVyc2VjdHMobG9jYWxSZWN0KSkKKyAgICBpZiAocmVjdHMudmVydGljYWxTY3JvbGxi
YXIuaW50ZXJzZWN0cyhsb2NhbFJlY3QpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAotICAgIGlm
IChzY3JvbGxDb3JuZXJSZWN0KCkuaW50ZXJzZWN0cyhsb2NhbFJlY3QpKQorICAgIGlmIChyZWN0
cy5zY3JvbGxDb3JuZXIuaW50ZXJzZWN0cyhsb2NhbFJlY3QpKQogICAgICAgICByZXR1cm4gdHJ1
ZTsKLSAgICAKLSAgICBpZiAocmVzaXplckNvcm5lclJlY3QoKnRoaXMsIGJvcmRlckJveCkuaW50
ZXJzZWN0cyhsb2NhbFJlY3QpKQorCisgICAgaWYgKHJlY3RzLnJlc2l6ZXIuaW50ZXJzZWN0cyhs
b2NhbFJlY3QpKQogICAgICAgICByZXR1cm4gdHJ1ZTsKIAogICAgIHJldHVybiBmYWxzZTsKQEAg
LTQxMTEsMTIgKzQwODYsMTEgQEAgdm9pZCBSZW5kZXJMYXllcjo6cGFpbnRSZXNpemVyKEdyYXBo
aWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW4KICAgICBpZiAocmVu
ZGVyZXIoKS5zdHlsZSgpLnJlc2l6ZSgpID09IFJlc2l6ZTo6Tm9uZSkKICAgICAgICAgcmV0dXJu
OwogCi0gICAgUmVuZGVyQm94KiBib3ggPSByZW5kZXJCb3goKTsKLSAgICBBU1NFUlQoYm94KTsK
KyAgICBhdXRvIHJlY3RzID0gb3ZlcmZsb3dDb250cm9sc1JlY3RzKCk7CiAKLSAgICBMYXlvdXRS
ZWN0IGFic1JlY3QgPSByZXNpemVyQ29ybmVyUmVjdCgqdGhpcywgYm94LT5ib3JkZXJCb3hSZWN0
KCkpOwotICAgIGFic1JlY3QubW92ZUJ5KHBhaW50T2Zmc2V0KTsKLSAgICBpZiAoIWFic1JlY3Qu
aW50ZXJzZWN0cyhkYW1hZ2VSZWN0KSkKKyAgICBMYXlvdXRSZWN0IHJlc2l6ZXJBYnNSZWN0ID0g
cmVjdHMucmVzaXplcjsKKyAgICByZXNpemVyQWJzUmVjdC5tb3ZlQnkocGFpbnRPZmZzZXQpOwor
ICAgIGlmICghcmVzaXplckFic1JlY3QuaW50ZXJzZWN0cyhkYW1hZ2VSZWN0KSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgaWYgKGNvbnRleHQuaW52YWxpZGF0aW5nQ29udHJvbFRpbnRzKCkpIHsK
QEAgLTQxMjUsMTggKzQwOTksMTggQEAgdm9pZCBSZW5kZXJMYXllcjo6cGFpbnRSZXNpemVyKEdy
YXBoaWNzQ29udGV4dCYgY29udGV4dCwgY29uc3QgTGF5b3V0UG9pbnQmIHBhaW4KICAgICB9CiAg
ICAgCiAgICAgaWYgKG1fcmVzaXplcikgewotICAgICAgICBtX3Jlc2l6ZXItPnBhaW50SW50b1Jl
Y3QoY29udGV4dCwgcGFpbnRPZmZzZXQsIGFic1JlY3QpOworICAgICAgICBtX3Jlc2l6ZXItPnBh
aW50SW50b1JlY3QoY29udGV4dCwgcGFpbnRPZmZzZXQsIHJlc2l6ZXJBYnNSZWN0KTsKICAgICAg
ICAgcmV0dXJuOwogICAgIH0KIAotICAgIGRyYXdQbGF0Zm9ybVJlc2l6ZXJJbWFnZShjb250ZXh0
LCBhYnNSZWN0KTsKKyAgICBkcmF3UGxhdGZvcm1SZXNpemVySW1hZ2UoY29udGV4dCwgcmVzaXpl
ckFic1JlY3QpOwogCiAgICAgLy8gRHJhdyBhIGZyYW1lIGFyb3VuZCB0aGUgcmVzaXplciAoMXB4
IGdyZXkgbGluZSkgaWYgdGhlcmUgYXJlIGFueSBzY3JvbGxiYXJzIHByZXNlbnQuCiAgICAgLy8g
Q2xpcHBpbmcgd2lsbCBleGNsdWRlIHRoZSByaWdodCBhbmQgYm90dG9tIGVkZ2VzIG9mIHRoaXMg
ZnJhbWUuCiAgICAgaWYgKCFoYXNPdmVybGF5U2Nyb2xsYmFycygpICYmIChtX3ZCYXIgfHwgbV9o
QmFyKSkgewogICAgICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIoY29u
dGV4dCk7Ci0gICAgICAgIGNvbnRleHQuY2xpcChhYnNSZWN0KTsKLSAgICAgICAgTGF5b3V0UmVj
dCBsYXJnZXJDb3JuZXIgPSBhYnNSZWN0OworICAgICAgICBjb250ZXh0LmNsaXAocmVzaXplckFi
c1JlY3QpOworICAgICAgICBMYXlvdXRSZWN0IGxhcmdlckNvcm5lciA9IHJlc2l6ZXJBYnNSZWN0
OwogICAgICAgICBsYXJnZXJDb3JuZXIuc2V0U2l6ZShMYXlvdXRTaXplKGxhcmdlckNvcm5lci53
aWR0aCgpICsgMV9sdSwgbGFyZ2VyQ29ybmVyLmhlaWdodCgpICsgMV9sdSkpOwogICAgICAgICBj
b250ZXh0LnNldFN0cm9rZUNvbG9yKENvbG9yKG1ha2VSR0IoMjE3LCAyMTcsIDIxNykpKTsKICAg
ICAgICAgY29udGV4dC5zZXRTdHJva2VUaGlja25lc3MoMS4wZik7CkBAIC00MTQ5LDE0ICs0MTIz
LDExIEBAIGJvb2wgUmVuZGVyTGF5ZXI6OmlzUG9pbnRJblJlc2l6ZUNvbnRyb2woY29uc3QgSW50
UG9pbnQmIGFic29sdXRlUG9pbnQpIGNvbnN0CiB7CiAgICAgaWYgKCFjYW5SZXNpemUoKSkKICAg
ICAgICAgcmV0dXJuIGZhbHNlOwotICAgIAotICAgIFJlbmRlckJveCogYm94ID0gcmVuZGVyQm94
KCk7Ci0gICAgQVNTRVJUKGJveCk7CiAKLSAgICBJbnRQb2ludCBsb2NhbFBvaW50ID0gcm91bmRl
ZEludFBvaW50KGFic29sdXRlVG9Db250ZW50cyhhYnNvbHV0ZVBvaW50KSk7CisgICAgYXV0byBy
ZWN0cyA9IG92ZXJmbG93Q29udHJvbHNSZWN0cygpOwogCi0gICAgSW50UmVjdCBsb2NhbEJvdW5k
cyhJbnRQb2ludCgpLCBzbmFwcGVkSW50UmVjdChib3gtPmZyYW1lUmVjdCgpKS5zaXplKCkpOwot
ICAgIHJldHVybiByZXNpemVyQ29ybmVyUmVjdCgqdGhpcywgbG9jYWxCb3VuZHMpLmNvbnRhaW5z
KGxvY2FsUG9pbnQpOworICAgIEludFBvaW50IGxvY2FsUG9pbnQgPSByb3VuZGVkSW50UG9pbnQo
YWJzb2x1dGVUb0NvbnRlbnRzKGFic29sdXRlUG9pbnQpKTsKKyAgICByZXR1cm4gcmVjdHMucmVz
aXplci5jb250YWlucyhsb2NhbFBvaW50KTsKIH0KIAogYm9vbCBSZW5kZXJMYXllcjo6aGl0VGVz
dE92ZXJmbG93Q29udHJvbHMoSGl0VGVzdFJlc3VsdCYgcmVzdWx0LCBjb25zdCBJbnRQb2ludCYg
bG9jYWxQb2ludCkKQEAgLTQxNjQsMzggKzQxMzUsMjQgQEAgYm9vbCBSZW5kZXJMYXllcjo6aGl0
VGVzdE92ZXJmbG93Q29udHJvbHMoSGl0VGVzdFJlc3VsdCYgcmVzdWx0LCBjb25zdCBJbnRQb2lu
dCYKICAgICBpZiAoIW1faEJhciAmJiAhbV92QmFyICYmICFjYW5SZXNpemUoKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCi0gICAgUmVuZGVyQm94KiBib3ggPSByZW5kZXJCb3goKTsKLSAgICBB
U1NFUlQoYm94KTsKLSAgICAKKyAgICBhdXRvIHJlY3RzID0gb3ZlcmZsb3dDb250cm9sc1JlY3Rz
KCk7CisKICAgICBJbnRSZWN0IHJlc2l6ZUNvbnRyb2xSZWN0OwogICAgIGlmIChyZW5kZXJlcigp
LnN0eWxlKCkucmVzaXplKCkgIT0gUmVzaXplOjpOb25lKSB7Ci0gICAgICAgIHJlc2l6ZUNvbnRy
b2xSZWN0ID0gc25hcHBlZEludFJlY3QocmVzaXplckNvcm5lclJlY3QoKnRoaXMsIGJveC0+Ym9y
ZGVyQm94UmVjdCgpKSk7Ci0gICAgICAgIGlmIChyZXNpemVDb250cm9sUmVjdC5jb250YWlucyhs
b2NhbFBvaW50KSkKKyAgICAgICAgaWYgKHJlY3RzLnJlc2l6ZXIuY29udGFpbnMobG9jYWxQb2lu
dCkpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9CiAKLSAgICBpbnQgcmVzaXplQ29u
dHJvbFNpemUgPSBzdGQ6Om1heChyZXNpemVDb250cm9sUmVjdC5oZWlnaHQoKSwgMCk7Ci0KICAg
ICAvLyBGSVhNRTogV2Ugc2hvdWxkIGhpdCB0ZXN0IHRoZSBtX3Njcm9sbENvcm5lciBhbmQgcGFz
cyBpdCBiYWNrIHRocm91Z2ggdGhlIHJlc3VsdC4KLQogICAgIGlmIChtX3ZCYXIgJiYgbV92QmFy
LT5zaG91bGRQYXJ0aWNpcGF0ZUluSGl0VGVzdGluZygpKSB7Ci0gICAgICAgIExheW91dFJlY3Qg
dkJhclJlY3QodmVydGljYWxTY3JvbGxiYXJTdGFydCgwLCBib3gtPndpZHRoKCkpLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJveC0+Ym9yZGVyVG9wKCksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgbV92QmFyLT53aWR0aCgpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGJveC0+aGVpZ2h0KCkgLSAoYm94LT5ib3JkZXJUb3AoKSArIGJveC0+Ym9yZGVyQm90dG9tKCkp
IC0gKG1faEJhciA/IG1faEJhci0+aGVpZ2h0KCkgOiByZXNpemVDb250cm9sU2l6ZSkpOwotICAg
ICAgICBpZiAodkJhclJlY3QuY29udGFpbnMobG9jYWxQb2ludCkpIHsKKyAgICAgICAgaWYgKHJl
Y3RzLnZlcnRpY2FsU2Nyb2xsYmFyLmNvbnRhaW5zKGxvY2FsUG9pbnQpKSB7CiAgICAgICAgICAg
ICByZXN1bHQuc2V0U2Nyb2xsYmFyKG1fdkJhci5nZXQoKSk7CiAgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICAgICAgfQogICAgIH0KIAotICAgIHJlc2l6ZUNvbnRyb2xTaXplID0gc3RkOjpt
YXgocmVzaXplQ29udHJvbFJlY3Qud2lkdGgoKSwgMCk7CiAgICAgaWYgKG1faEJhciAmJiBtX2hC
YXItPnNob3VsZFBhcnRpY2lwYXRlSW5IaXRUZXN0aW5nKCkpIHsKLSAgICAgICAgTGF5b3V0UmVj
dCBoQmFyUmVjdChob3Jpem9udGFsU2Nyb2xsYmFyU3RhcnQoMCksCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgYm94LT5oZWlnaHQoKSAtIGJveC0+Ym9yZGVyQm90dG9tKCkgLSBtX2hCYXIt
PmhlaWdodCgpLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC0+d2lkdGgoKSAtIChi
b3gtPmJvcmRlckxlZnQoKSArIGJveC0+Ym9yZGVyUmlnaHQoKSkgLSAobV92QmFyID8gbV92QmFy
LT53aWR0aCgpIDogcmVzaXplQ29udHJvbFNpemUpLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIG1faEJhci0+aGVpZ2h0KCkpOwotICAgICAgICBpZiAoaEJhclJlY3QuY29udGFpbnMobG9j
YWxQb2ludCkpIHsKKyAgICAgICAgaWYgKHJlY3RzLmhvcml6b250YWxTY3JvbGxiYXIuY29udGFp
bnMobG9jYWxQb2ludCkpIHsKICAgICAgICAgICAgIHJlc3VsdC5zZXRTY3JvbGxiYXIobV9oQmFy
LmdldCgpKTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CkBAIC01NTY5LDkg
KzU1MjYsMjIgQEAgYm9vbCBSZW5kZXJMYXllcjo6aGl0VGVzdFJlc2l6ZXJJbkZyYWdtZW50cyhj
b25zdCBMYXllckZyYWdtZW50cyYgbGF5ZXJGcmFnbWVudHMKICAgICBpZiAobGF5ZXJGcmFnbWVu
dHMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKKyAgICBhdXRvIGJvcmRlckJv
eFJlY3QgPSBzbmFwcGVkSW50UmVjdChkb3duY2FzdDxSZW5kZXJCb3g+KHJlbmRlcmVyKCkpLmJv
cmRlckJveFJlY3QoKSk7CisgICAgYXV0byByZWN0cyA9IG92ZXJmbG93Q29udHJvbHNSZWN0cygp
OworCisgICAgYXV0byBjb3JuZXJSZWN0SW5GcmFnbWVudCA9IFsmXShjb25zdCBJbnRSZWN0JiBm
cmFnbWVudEJvdW5kcywgY29uc3QgSW50UmVjdCYgcmVzaXplclJlY3QpIHsKKyAgICAgICAgaWYg
KHNob3VsZFBsYWNlQmxvY2tEaXJlY3Rpb25TY3JvbGxiYXJPbkxlZnQoKSkgeworICAgICAgICAg
ICAgSW50U2l6ZSBvZmZzZXRGcm9tQm90dG9tTGVmdCA9IGJvcmRlckJveFJlY3QubWluWE1heFlD
b3JuZXIoKSAtIHJlc2l6ZXJSZWN0Lm1pblhNYXhZQ29ybmVyKCk7CisgICAgICAgICAgICByZXR1
cm4gSW50UmVjdCB7IGZyYWdtZW50Qm91bmRzLm1pblhNYXhZQ29ybmVyKCkgLSBvZmZzZXRGcm9t
Qm90dG9tTGVmdCAtIEludFNpemUgeyAwLCByZXNpemVyUmVjdC5oZWlnaHQoKSB9LCByZXNpemVy
UmVjdC5zaXplKCkgfTsKKyAgICAgICAgfQorICAgICAgICBJbnRTaXplIG9mZnNldEZyb21Cb3R0
b21SaWdodCA9IGJvcmRlckJveFJlY3QubWF4WE1heFlDb3JuZXIoKSAtIHJlc2l6ZXJSZWN0Lm1h
eFhNYXhZQ29ybmVyKCk7CisgICAgICAgIHJldHVybiBJbnRSZWN0IHsgZnJhZ21lbnRCb3VuZHMu
bWF4WE1heFlDb3JuZXIoKSAtIG9mZnNldEZyb21Cb3R0b21SaWdodCAtIHJlc2l6ZXJSZWN0LnNp
emUoKSwgcmVzaXplclJlY3Quc2l6ZSgpIH07CisgICAgfTsKKwogICAgIGZvciAoaW50IGkgPSBs
YXllckZyYWdtZW50cy5zaXplKCkgLSAxOyBpID49IDA7IC0taSkgewogICAgICAgICBjb25zdCBM
YXllckZyYWdtZW50JiBmcmFnbWVudCA9IGxheWVyRnJhZ21lbnRzLmF0KGkpOwotICAgICAgICBp
ZiAoZnJhZ21lbnQuYmFja2dyb3VuZFJlY3QuaW50ZXJzZWN0cyhoaXRUZXN0TG9jYXRpb24pICYm
IHJlc2l6ZXJDb3JuZXJSZWN0KCp0aGlzLCBzbmFwcGVkSW50UmVjdChmcmFnbWVudC5sYXllckJv
dW5kcykpLmNvbnRhaW5zKGhpdFRlc3RMb2NhdGlvbi5yb3VuZGVkUG9pbnQoKSkpCisgICAgICAg
IGF1dG8gcmVzaXplclJlY3RJbkZyYWdtZW50ID0gY29ybmVyUmVjdEluRnJhZ21lbnQoc25hcHBl
ZEludFJlY3QoZnJhZ21lbnQubGF5ZXJCb3VuZHMpLCByZWN0cy5yZXNpemVyKTsKKyAgICAgICAg
aWYgKGZyYWdtZW50LmJhY2tncm91bmRSZWN0LmludGVyc2VjdHMoaGl0VGVzdExvY2F0aW9uKSAm
JiByZXNpemVyUmVjdEluRnJhZ21lbnQuY29udGFpbnMoaGl0VGVzdExvY2F0aW9uLnJvdW5kZWRQ
b2ludCgpKSkKICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0KICAgICAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllci5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKaW5kZXggN2VmMDI5NzBhYjk4YmUxOTUwMzRlNjIw
YzA5MjNmZmMwNmU4YmYyYy4uMDhmOWU2NTgzZDZlMDg1N2IwZTIwOTcwZmIyY2U1MjBhMGVhN2Uy
MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyLmgKQEAgLTExNDIsOSArMTE0
Miw2IEBAIHByaXZhdGU6CiAgICAgdm9pZCB1bnJlZ2lzdGVyQXNUb3VjaEV2ZW50TGlzdGVuZXJG
b3JTY3JvbGxpbmcoKTsKICNlbmRpZgogCi0gICAgLy8gUmVjdGFuZ2xlIGVuY29tcGFzc2luZyB0
aGUgc2Nyb2xsIGNvcm5lciBhbmQgcmVzaXplciByZWN0LgotICAgIExheW91dFJlY3Qgc2Nyb2xs
Q29ybmVyQW5kUmVzaXplclJlY3QoKSBjb25zdDsKLQogICAgIC8vIE5PVEU6IFRoaXMgc2hvdWxk
IG9ubHkgYmUgY2FsbGVkIGJ5IHRoZSBvdmVycmlkZGVuIHNldFNjcm9sbE9mZnNldCBmcm9tIFNj
cm9sbGFibGVBcmVhLgogICAgIHZvaWQgc2Nyb2xsVG8oY29uc3QgU2Nyb2xsUG9zaXRpb24mKTsK
ICAgICB2b2lkIHVwZGF0ZUNvbXBvc2l0aW5nTGF5ZXJzQWZ0ZXJTY3JvbGwoKTsKQEAgLTEyMTAs
MTEgKzEyMDcsMTcgQEAgcHJpdmF0ZToKICAgICBMYXlvdXRVbml0IG92ZXJmbG93TGVmdCgpIGNv
bnN0OwogICAgIExheW91dFVuaXQgb3ZlcmZsb3dSaWdodCgpIGNvbnN0OwogCi0gICAgSW50UmVj
dCByZWN0Rm9ySG9yaXpvbnRhbFNjcm9sbGJhcihjb25zdCBJbnRSZWN0JiBib3JkZXJCb3hSZWN0
KSBjb25zdDsKLSAgICBJbnRSZWN0IHJlY3RGb3JWZXJ0aWNhbFNjcm9sbGJhcihjb25zdCBJbnRS
ZWN0JiBib3JkZXJCb3hSZWN0KSBjb25zdDsKLQotICAgIExheW91dFVuaXQgdmVydGljYWxTY3Jv
bGxiYXJTdGFydChpbnQgbWluWCwgaW50IG1heFgpIGNvbnN0OwotICAgIExheW91dFVuaXQgaG9y
aXpvbnRhbFNjcm9sbGJhclN0YXJ0KGludCBtaW5YKSBjb25zdDsKKyAgICBzdHJ1Y3QgT3ZlcmZs
b3dDb250cm9sUmVjdHMgeworICAgICAgICBJbnRSZWN0IGhvcml6b250YWxTY3JvbGxiYXI7Cisg
ICAgICAgIEludFJlY3QgdmVydGljYWxTY3JvbGxiYXI7CisgICAgICAgIEludFJlY3Qgc2Nyb2xs
Q29ybmVyOworICAgICAgICBJbnRSZWN0IHJlc2l6ZXI7CisgICAgICAgIEludFJlY3Qgc2Nyb2xs
Q29ybmVyT3JSZXNpemVyUmVjdCgpIGNvbnN0CisgICAgICAgIHsKKyAgICAgICAgICAgIHJldHVy
biAhc2Nyb2xsQ29ybmVyLmlzRW1wdHkoKSA/IHNjcm9sbENvcm5lciA6IHJlc2l6ZXI7CisgICAg
ICAgIH0KKyAgICB9OworICAgIE92ZXJmbG93Q29udHJvbFJlY3RzIG92ZXJmbG93Q29udHJvbHNS
ZWN0cygpIGNvbnN0OwogCiAgICAgYm9vbCBvdmVyZmxvd0NvbnRyb2xzSW50ZXJzZWN0UmVjdChj
b25zdCBJbnRSZWN0JiBsb2NhbFJlY3QpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IGE2NTAwZjM0YzU0YThjYWU4ODIw
YzBhYTc2MDYxNTNjMzk2ZDJhNGMuLmE2NTZiZWU3M2IyNDIzZWRiZjYxNWU3OWFhM2ZhMDRkMWQ3
NmUyYTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tp
bmcuY3BwCkBAIC0xODE4LDcgKzE4MTgsMTEgQEAgYm9vbCBSZW5kZXJMYXllckJhY2tpbmc6OnJl
cXVpcmVzVmVydGljYWxTY3JvbGxiYXJMYXllcigpIGNvbnN0CiAKIGJvb2wgUmVuZGVyTGF5ZXJC
YWNraW5nOjpyZXF1aXJlc1Njcm9sbENvcm5lckxheWVyKCkgY29uc3QKIHsKLSAgICBpZiAobV9v
d25pbmdMYXllci5zY3JvbGxDb3JuZXJBbmRSZXNpemVyUmVjdCgpLmlzRW1wdHkoKSkKKyAgICBp
ZiAoIWlzPFJlbmRlckJveD4obV9vd25pbmdMYXllci5yZW5kZXJlcigpKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgYXV0byBjb3JuZXJSZWN0ID0gbV9vd25pbmdMYXllci5vdmVyZmxv
d0NvbnRyb2xzUmVjdHMoKS5zY3JvbGxDb3JuZXJPclJlc2l6ZXJSZWN0KCk7CisgICAgaWYgKGNv
cm5lclJlY3QuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBhdXRvIHZl
cnRpY2FsU2Nyb2xsYmFyID0gbV9vd25pbmdMYXllci52ZXJ0aWNhbFNjcm9sbGJhcigpOwpAQCAt
MTg5MCwyMSArMTg5NCwyNCBAQCB2b2lkIFJlbmRlckxheWVyQmFja2luZzo6cG9zaXRpb25PdmVy
Zmxvd0NvbnRyb2xzTGF5ZXJzKCkKICAgICAgICAgfQogICAgIH07CiAKKyAgICAvLyBUaGVzZSBy
ZWN0cyBhcmUgcmVsYXRpdmUgdG8gdGhlIGJvcmRlckJveFJlY3QuCisgICAgYXV0byByZWN0cyA9
IG1fb3duaW5nTGF5ZXIub3ZlcmZsb3dDb250cm9sc1JlY3RzKCk7CisKICAgICBpZiAoYXV0byog
bGF5ZXIgPSBsYXllckZvckhvcml6b250YWxTY3JvbGxiYXIoKSkgewotICAgICAgICBwb3NpdGlv
blNjcm9sbGJhckxheWVyKCpsYXllciwgbV9vd25pbmdMYXllci5yZWN0Rm9ySG9yaXpvbnRhbFNj
cm9sbGJhcihib3JkZXJCb3gpLCBwYWRkaW5nQm94SW5zZXQpOworICAgICAgICBwb3NpdGlvblNj
cm9sbGJhckxheWVyKCpsYXllciwgcmVjdHMuaG9yaXpvbnRhbFNjcm9sbGJhciwgcGFkZGluZ0Jv
eEluc2V0KTsKICAgICAgICAgbGF5ZXItPnNldERyYXdzQ29udGVudChtX293bmluZ0xheWVyLmhv
cml6b250YWxTY3JvbGxiYXIoKSAmJiAhbGF5ZXItPnVzZXNDb250ZW50c0xheWVyKCkpOwogICAg
IH0KIAogICAgIGlmIChhdXRvKiBsYXllciA9IGxheWVyRm9yVmVydGljYWxTY3JvbGxiYXIoKSkg
ewotICAgICAgICBwb3NpdGlvblNjcm9sbGJhckxheWVyKCpsYXllciwgbV9vd25pbmdMYXllci5y
ZWN0Rm9yVmVydGljYWxTY3JvbGxiYXIoYm9yZGVyQm94KSwgcGFkZGluZ0JveEluc2V0KTsKKyAg
ICAgICAgcG9zaXRpb25TY3JvbGxiYXJMYXllcigqbGF5ZXIsIHJlY3RzLnZlcnRpY2FsU2Nyb2xs
YmFyLCBwYWRkaW5nQm94SW5zZXQpOwogICAgICAgICBsYXllci0+c2V0RHJhd3NDb250ZW50KG1f
b3duaW5nTGF5ZXIudmVydGljYWxTY3JvbGxiYXIoKSAmJiAhbGF5ZXItPnVzZXNDb250ZW50c0xh
eWVyKCkpOwogICAgIH0KIAogICAgIGlmIChhdXRvKiBsYXllciA9IGxheWVyRm9yU2Nyb2xsQ29y
bmVyKCkpIHsKLSAgICAgICAgY29uc3QgTGF5b3V0UmVjdCYgc2Nyb2xsQ29ybmVyQW5kUmVzaXpl
ciA9IG1fb3duaW5nTGF5ZXIuc2Nyb2xsQ29ybmVyQW5kUmVzaXplclJlY3QoKTsKLSAgICAgICAg
bGF5ZXItPnNldFBvc2l0aW9uKHNjcm9sbENvcm5lckFuZFJlc2l6ZXIubG9jYXRpb24oKSAtIHBh
ZGRpbmdCb3hJbnNldCk7Ci0gICAgICAgIGxheWVyLT5zZXRTaXplKHNjcm9sbENvcm5lckFuZFJl
c2l6ZXIuc2l6ZSgpKTsKLSAgICAgICAgbGF5ZXItPnNldERyYXdzQ29udGVudCghc2Nyb2xsQ29y
bmVyQW5kUmVzaXplci5pc0VtcHR5KCkpOworICAgICAgICBhdXRvIGNvcm5lclJlY3QgPSByZWN0
cy5zY3JvbGxDb3JuZXJPclJlc2l6ZXJSZWN0KCk7CisgICAgICAgIGxheWVyLT5zZXRQb3NpdGlv
bihjb3JuZXJSZWN0LmxvY2F0aW9uKCkgLSBwYWRkaW5nQm94SW5zZXQpOworICAgICAgICBsYXll
ci0+c2V0U2l6ZShjb3JuZXJSZWN0LnNpemUoKSk7CisgICAgICAgIGxheWVyLT5zZXREcmF3c0Nv
bnRlbnQoIWNvcm5lclJlY3QuaXNFbXB0eSgpKTsKICAgICB9CiB9CiAKQEAgLTMxNzMsMTEgKzMx
ODAsMTEgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnBhaW50Q29udGVudHMoY29uc3QgR3Jh
cGhpY3NMYXllciogZ3JhcGhpY3NMYXllciwgR3JhcGgKICAgICB9IGVsc2UgaWYgKGdyYXBoaWNz
TGF5ZXIgPT0gbGF5ZXJGb3JWZXJ0aWNhbFNjcm9sbGJhcigpKSB7CiAgICAgICAgIHBhaW50U2Ny
b2xsYmFyKG1fb3duaW5nTGF5ZXIudmVydGljYWxTY3JvbGxiYXIoKSwgY29udGV4dCwgZGlydHlS
ZWN0KTsKICAgICB9IGVsc2UgaWYgKGdyYXBoaWNzTGF5ZXIgPT0gbGF5ZXJGb3JTY3JvbGxDb3Ju
ZXIoKSkgewotICAgICAgICBjb25zdCBMYXlvdXRSZWN0JiBzY3JvbGxDb3JuZXJBbmRSZXNpemVy
ID0gbV9vd25pbmdMYXllci5zY3JvbGxDb3JuZXJBbmRSZXNpemVyUmVjdCgpOworICAgICAgICBh
dXRvIGNvcm5lclJlY3QgPSBtX293bmluZ0xheWVyLm92ZXJmbG93Q29udHJvbHNSZWN0cygpLnNj
cm9sbENvcm5lck9yUmVzaXplclJlY3QoKTsKICAgICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVT
YXZlciBzdGF0ZVNhdmVyKGNvbnRleHQpOwotICAgICAgICBjb250ZXh0LnRyYW5zbGF0ZSgtc2Ny
b2xsQ29ybmVyQW5kUmVzaXplci5sb2NhdGlvbigpKTsKKyAgICAgICAgY29udGV4dC50cmFuc2xh
dGUoLWNvcm5lclJlY3QubG9jYXRpb24oKSk7CiAgICAgICAgIExheW91dFJlY3QgdHJhbnNmb3Jt
ZWRDbGlwID0gTGF5b3V0UmVjdChjbGlwKTsKLSAgICAgICAgdHJhbnNmb3JtZWRDbGlwLm1vdmVC
eShzY3JvbGxDb3JuZXJBbmRSZXNpemVyLmxvY2F0aW9uKCkpOworICAgICAgICB0cmFuc2Zvcm1l
ZENsaXAubW92ZUJ5KGNvcm5lclJlY3QubG9jYXRpb24oKSk7CiAgICAgICAgIG1fb3duaW5nTGF5
ZXIucGFpbnRTY3JvbGxDb3JuZXIoY29udGV4dCwgSW50UG9pbnQoKSwgc25hcHBlZEludFJlY3Qo
dHJhbnNmb3JtZWRDbGlwKSk7CiAgICAgICAgIG1fb3duaW5nTGF5ZXIucGFpbnRSZXNpemVyKGNv
bnRleHQsIEludFBvaW50KCksIHRyYW5zZm9ybWVkQ2xpcCk7CiAgICAgfQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDQ0MjU4
OTMwODBlMDc0MmZjZjJiMGViMGM5MjJkOGE3MGY1YmUxNTQuLjgwYmQxODYzMDYzNzIyYzI4OTI5
M2EzZTg4MDc2NDhjMjBmNTM2ZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wNC0yMCAg
U2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KKworICAgICAgICBIb3Jpem9u
dGFsIG92ZXJmbG93IG92ZXJsYXkgc2Nyb2xsYmFyIGlzIG1pc3BsYWNlZCBpbiBSVEwKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMDY3MworICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNjE5NTA3NTE+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQW50dGkg
S29pdmlzdG8uCisKKyAgICAgICAgKiBjb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xsYmFy
LWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogY29tcG9z
aXRpbmcvb3ZlcmZsb3cvcnRsLXNjcm9sbGJhci1sYXllci1wb3NpdGlvbmluZy5odG1sOiBBZGRl
ZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3Mtd2syL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1z
Y3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMtd2sxL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5
ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwogMjAyMC0wNC0xOSAgU2ltb24g
RnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBDb250ZW50IGRpc2Fw
cGVhcnMgb24gQ1NTIHBhcmFsbGF4IGV4YW1wbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Nv
bXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcvb3ZlcmZsb3cvcnRsLXNjcm9sbGJhci1s
YXllci1wb3NpdGlvbmluZy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZWZhNTQzM2FmMzVkYTUy
ZmM0NWUyNTRkNzgwZmU0OGI5Y2ZmMDNhZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEsNTAgQEAKKyhHcmFwaGljc0xheWVyCisgIChhbmNob3IgMC4w
MCAwLjAwKQorICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgIChjaGlsZHJlbiAxCisgICAgKEdy
YXBoaWNzTGF5ZXIKKyAgICAgIChib3VuZHMgODAwLjAwIDYwMC4wMCkKKyAgICAgIChjb250ZW50
c09wYXF1ZSAxKQorICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAg
ICAgICAgICAob2Zmc2V0RnJvbVJlbmRlcmVyIHdpZHRoPS0xMCBoZWlnaHQ9LTEwKQorICAgICAg
ICAgIChwb3NpdGlvbiAxOC4wMCAxMC4wMCkKKyAgICAgICAgICAoYm91bmRzIDM2Mi4wMCAzNjIu
MDApCisgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgIChjaGlsZHJlbiAyCisg
ICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAob2Zmc2V0RnJvbVJlbmRl
cmVyIHdpZHRoPTEzIGhlaWdodD0xMykKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDIzLjAwIDIz
LjAwKQorICAgICAgICAgICAgICAoYm91bmRzIG9yaWdpbiAyOTIuMDAgMC4wMCkKKyAgICAgICAg
ICAgICAgKGJvdW5kcyAzMTYuMDAgMzE2LjAwKQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMQor
ICAgICAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgICAgICAgICAob2Zmc2V0
RnJvbVJlbmRlcmVyIHdpZHRoPTEzIGhlaWdodD0xMykKKyAgICAgICAgICAgICAgICAgIChzY3Jv
bGxPZmZzZXQgKDI5MiwwKSkKKyAgICAgICAgICAgICAgICAgIChhbmNob3IgMC4wMCAwLjAwKQor
ICAgICAgICAgICAgICAgICAgKGJvdW5kcyA2MDguMDAgNjE2LjAwKQorICAgICAgICAgICAgICAg
ICkKKyAgICAgICAgICAgICAgKQorICAgICAgICAgICAgKQorICAgICAgICAgICAgKEdyYXBoaWNz
TGF5ZXIKKyAgICAgICAgICAgICAgKHBvc2l0aW9uIDIzLjAwIDIzLjAwKQorICAgICAgICAgICAg
ICAoYm91bmRzIDMxNi4wMCAzMTYuMDApCisgICAgICAgICAgICAgIChjaGlsZHJlbiAyCisgICAg
ICAgICAgICAgICAgKEdyYXBoaWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAw
LjAwIDMwMS4wMCkKKyAgICAgICAgICAgICAgICAgIChib3VuZHMgMzE2LjAwIDE1LjAwKQorICAg
ICAgICAgICAgICAgICAgKGRyYXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICkKKyAgICAg
ICAgICAgICAgICAoR3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgKGJvdW5kcyAxNS4w
MCAzMTYuMDApCisgICAgICAgICAgICAgICAgICAoZHJhd3NDb250ZW50IDEpCisgICAgICAgICAg
ICAgICAgKQorICAgICAgICAgICAgICApCisgICAgICAgICAgICApCisgICAgICAgICAgKQorICAg
ICAgICApCisgICAgICApCisgICAgKQorICApCispCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmcuaHRt
bCBiL0xheW91dFRlc3RzL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXIt
cG9zaXRpb25pbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5iZDQ3YzczZWY5OTFmZTAzNjViMzE0YmQ5YjE1
MGY2ODE2MDI1MGQ5Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvY29tcG9zaXRpbmcv
b3ZlcmZsb3cvcnRsLXNjcm9sbGJhci1sYXllci1wb3NpdGlvbmluZy5odG1sCkBAIC0wLDAgKzEs
NDEgQEAKKzwhRE9DVFlQRSBodG1sPiA8IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGludGVybmFs
OkFzeW5jT3ZlcmZsb3dTY3JvbGxpbmdFbmFibGVkPXRydWUgXSAtLT4KKzxodG1sPgorPGhlYWQ+
CisgICAgPHRpdGxlPkxheWVyIHRyZWUgZHVtcCBSVEwgb3ZlcmZsb3cgd2l0aCBjb21wb3NpdGVk
IHNjcm9sbGJhcnM8L3RpdGxlPgorICAgIDxzdHlsZT4KKyAgICAgICAgI3Njcm9sbGVyIHsKKyAg
ICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDsKKyAgICAgICAgICAgIGhlaWdodDogMzAwcHg7
CisgICAgICAgICAgICB3aWR0aDogMzAwcHg7CisgICAgICAgICAgICBtYXJnaW46IDIwcHg7Cisg
ICAgICAgICAgICBib3JkZXI6IDEzcHggc29saWQgYmxhY2s7CisgICAgICAgICAgICBib3gtc2hh
ZG93OiAwIDAgN3B4IGJsYWNrOworICAgICAgICAgICAgcGFkZGluZzogOHB4OworICAgICAgICB9
CisKKyAgICAgICAgLmNvbnRlbnQgeworICAgICAgICAgICAgaGVpZ2h0OiAyMDAlOworICAgICAg
ICAgICAgd2lkdGg6IDIwMCU7CisgICAgICAgIH0KKyAgICA8L3N0eWxlPgorICAgIDxzY3JpcHQ+
CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIu
ZHVtcEFzVGV4dCgpOworCisgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKQorICAgICAgICAg
ICAgaW50ZXJuYWxzLnNldFVzZXNPdmVybGF5U2Nyb2xsYmFycyh0cnVlKQorCisgICAgICAgIHdp
bmRvdy5hZGRFdmVudExpc3RlbmVyKCdsb2FkJywgKCkgPT4geworICAgICAgICAgICAgaWYgKHdp
bmRvdy5pbnRlcm5hbHMpCisgICAgICAgICAgICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
J2xheWVycycpLmlubmVyVGV4dCA9IHdpbmRvdy5pbnRlcm5hbHMubGF5ZXJUcmVlQXNUZXh0KGRv
Y3VtZW50KTsKKyAgICAgICAgfSwgZmFsc2UpOworICAgIDwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+CisgICAgPGRpdiBpZD0ic2Nyb2xsZXIiIGRpcj0icnRsIj4KKyAgICAgICAgPGRpdiBjbGFz
cz0iY29udGVudCI+PC9kaXY+CisgICAgPC9kaXY+Cis8cHJlIGlkPSJsYXllcnMiPjwvcHJlPgor
PC9ib2R5PgorPC9odG1sPgorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mt
d2syL2NvbXBvc2l0aW5nL292ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmct
ZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9jb21wb3NpdGluZy9v
dmVyZmxvdy9ydGwtc2Nyb2xsYmFyLWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi41NTRkYmNmMjczN2E0MzJhM2UwNTg3Y2I3ODA0Yjc0ZmU0ODMyZTgyCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXdrMi9jb21wb3NpdGluZy9vdmVy
Zmxvdy9ydGwtc2Nyb2xsYmFyLWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApAQCAtMCww
ICsxLDUxIEBACisoR3JhcGhpY3NMYXllcgorICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgKGJvdW5k
cyA4MDAuMDAgNjAwLjAwKQorICAoY2hpbGRyZW4gMQorICAgIChHcmFwaGljc0xheWVyCisgICAg
ICAoYm91bmRzIDgwMC4wMCA2MDAuMDApCisgICAgICAoY29udGVudHNPcGFxdWUgMSkKKyAgICAg
IChjaGlsZHJlbiAxCisgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAgKG9mZnNldEZy
b21SZW5kZXJlciB3aWR0aD0tMTAgaGVpZ2h0PS0xMCkKKyAgICAgICAgICAocG9zaXRpb24gMTgu
MDAgMTAuMDApCisgICAgICAgICAgKGJvdW5kcyAzNjIuMDAgMzYyLjAwKQorICAgICAgICAgIChk
cmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAgICAgKEdyYXBo
aWNzTGF5ZXIKKyAgICAgICAgICAgICAgKG9mZnNldEZyb21SZW5kZXJlciB3aWR0aD0xMyBoZWln
aHQ9MTMpCisgICAgICAgICAgICAgIChwb3NpdGlvbiAyMy4wMCAyMy4wMCkKKyAgICAgICAgICAg
ICAgKGJvdW5kcyBvcmlnaW4gMjkyLjAwIDAuMDApCisgICAgICAgICAgICAgIChib3VuZHMgMzE2
LjAwIDMxNi4wMCkKKyAgICAgICAgICAgICAgKGNoaWxkcmVuIDEKKyAgICAgICAgICAgICAgICAo
R3JhcGhpY3NMYXllcgorICAgICAgICAgICAgICAgICAgKG9mZnNldEZyb21SZW5kZXJlciB3aWR0
aD0xMyBoZWlnaHQ9MTMpCisgICAgICAgICAgICAgICAgICAoc2Nyb2xsT2Zmc2V0ICgyOTIsMCkp
CisgICAgICAgICAgICAgICAgICAoYW5jaG9yIDAuMDAgMC4wMCkKKyAgICAgICAgICAgICAgICAg
IChib3VuZHMgNjA4LjAwIDYxNi4wMCkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAg
ICkKKyAgICAgICAgICAgICkKKyAgICAgICAgICAgIChHcmFwaGljc0xheWVyCisgICAgICAgICAg
ICAgIChwb3NpdGlvbiAyMy4wMCAyMy4wMCkKKyAgICAgICAgICAgICAgKGJvdW5kcyAzMTYuMDAg
MzE2LjAwKQorICAgICAgICAgICAgICAoY2hpbGRyZW4gMgorICAgICAgICAgICAgICAgIChHcmFw
aGljc0xheWVyCisgICAgICAgICAgICAgICAgICAocG9zaXRpb24gMC4wMCAzMDEuMDApCisgICAg
ICAgICAgICAgICAgICAoYm91bmRzIDMxNi4wMCAxNS4wMCkKKyAgICAgICAgICAgICAgICAgIChk
cmF3c0NvbnRlbnQgMSkKKyAgICAgICAgICAgICAgICApCisgICAgICAgICAgICAgICAgKEdyYXBo
aWNzTGF5ZXIKKyAgICAgICAgICAgICAgICAgIChwb3NpdGlvbiAzMDEuMDAgMC4wMCkKKyAgICAg
ICAgICAgICAgICAgIChib3VuZHMgMTUuMDAgMzE2LjAwKQorICAgICAgICAgICAgICAgICAgKGRy
YXdzQ29udGVudCAxKQorICAgICAgICAgICAgICAgICkKKyAgICAgICAgICAgICAgKQorICAgICAg
ICAgICAgKQorICAgICAgICAgICkKKyAgICAgICAgKQorICAgICAgKQorICAgICkKKyAgKQorKQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL2NvbXBvc2l0aW5nL292
ZXJmbG93L3J0bC1zY3JvbGxiYXItbGF5ZXItcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xs
YmFyLWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44YjEzNzg5MTc5
MWZlOTY5MjdhZDc4ZTY0YjBhYWQ3YmRlZDA4YmRjCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9jb21wb3NpdGluZy9vdmVyZmxvdy9ydGwtc2Nyb2xsYmFy
LWxheWVyLXBvc2l0aW9uaW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACisK
</data>

          </attachment>
      

    </bug>

</bugzilla>