<?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>79030</bug_id>
          
          <creation_ts>2012-02-20 06:39:08 -0800</creation_ts>
          <short_desc>Web Inspector: add &quot;show paint rectangles&quot; setting.</short_desc>
          <delta_ts>2012-02-21 03:28:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>560215</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-20 06:39:08 -0800</bug_when>
    <thetext>It is often useful to see what rectangles are being repainted. Adding a setting that allows toggling it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560217</commentid>
    <comment_count>1</comment_count>
      <attachid>127817</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-20 06:48:37 -0800</bug_when>
    <thetext>Created attachment 127817
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560283</commentid>
    <comment_count>2</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2012-02-20 10:49:18 -0800</bug_when>
    <thetext>Why does the client need to do this? Same reason the client does node highlights?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560292</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-20 11:02:41 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Why does the client need to do this? Same reason the client does node highlights?

I was going to expose the feature that was already there in Chrome first. I will try upstreaming it in case it sticks. Here is what it looks like in Chrome today: http://www.youtube.com/watch?v=Ea41RdQ1oFQ&amp;t=1m30s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560305</commentid>
    <comment_count>4</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2012-02-20 11:28:19 -0800</bug_when>
    <thetext>Hovering in the Timeline seems more interesting. That is a different API right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560638</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-20 21:35:17 -0800</bug_when>
    <thetext>Hovering in the Timeline is using data collected while instrumenting to highlight regions on the screen, so it is different. To your client concern, I&apos;ll rework this change to upstream Chrome&apos;s debug paint rects all in one change - should not be much work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560753</commentid>
    <comment_count>6</comment_count>
      <attachid>127939</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-21 01:51:20 -0800</bug_when>
    <thetext>Created attachment 127939
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560781</commentid>
    <comment_count>7</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2012-02-21 03:28:34 -0800</bug_when>
    <thetext>Committed r108330: &lt;http://trac.webkit.org/changeset/108330&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127817</attachid>
            <date>2012-02-20 06:48:37 -0800</date>
            <delta_ts>2012-02-21 01:51:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79030-20120220184851.patch</filename>
            <type>text/plain</type>
            <size>47414</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4MjM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDM0NjcwMDlmNzViYjM0
MDgwZTQ5Yjg2YzhlOTQ2NjNiZGY1MWUzOS4uNDA3YTU3YTE4YTJmMTEwZDU4ODM4OTM2OTY3MWJm
MzJlMTE0NjEyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAyLTIwICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IGFkZCAic2hvdyBwYWludCByZWN0YW5nbGVzIiBzZXR0aW5nLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzkwMzAKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIEVuZ2xpc2gubHByb2ovbG9jYWxpemVk
U3RyaW5ncy5qczoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmpzb246CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvckNsaWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2xpZW50OjpjYW5TaG93UGFpbnRSZWN0cyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDbGllbnQ6OnNldFNob3dQYWludFJlY3RzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVj
dG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JDb250cm9sbGVy
OjpJbnNwZWN0b3JDb250cm9sbGVyKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUGFn
ZUFnZW50LmNwcDoKKyAgICAgICAgKFBhZ2VBZ2VudFN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6
Okluc3BlY3RvclBhZ2VBZ2VudDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
clBhZ2VBZ2VudDo6SW5zcGVjdG9yUGFnZUFnZW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvclBhZ2VBZ2VudDo6cmVzdG9yZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JQYWdl
QWdlbnQ6OmNhblNob3dQYWludFJlY3RzKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpzZXRTaG93UGFpbnRSZWN0cyk6CisgICAgICAg
ICogaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5oOgorICAgICAgICAoV2ViQ29yZSk6Cisg
ICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qczoKKyAgICAgICAgKFdlYklu
c3BlY3Rvci5TZXR0aW5ncyk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5n
c1NjcmVlbi5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TZXR0aW5nc1NjcmVlbik6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuU2V0dGluZ3NTY3JlZW4ucHJvdG90eXBlLl9zaG93UGFpbnRSZWN0
c0NoYW5nZWQpOgorICAgICAgICAqIGluc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLmRvTG9hZGVkRG9uZSk6CisKIDIwMTItMDItMjAgIFZzZXZv
bG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBt
YW51YWwgcm9sbG91dCBvZiByMTA3OTcwIHdoaWNoIGJyZWFrcyB0YWJsZSBjb2x1bW4gd2lkdGhz
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IGE5ODIwZDlkN2M0MGNiZWIzOWU2NTZhMmQ3
OTU1OWQxMGMwNjZiZWMuLmE3ZGRhZTc3OTE0ZjJlYzZiMGRmZjJiOGU0YjNiOGFjZDk2MzdhYWQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTItMDItMjAg
IFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIElu
c3BlY3RvcjogYWRkICJzaG93IHBhaW50IHJlY3RhbmdsZXMiIHNldHRpbmcuCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03OTAzMAorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcHVibGljL1dlYkRldlRvb2xz
QWdlbnRDbGllbnQuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViRGV2VG9vbHNBZ2VudENsaWVudDo6
c2V0U2hvd1BhaW50Qm9yZGVycyk6CisgICAgICAgICogcHVibGljL1dlYldpZGdldC5oOgorICAg
ICAgICAoV2ViV2lkZ2V0KToKKyAgICAgICAgKFdlYktpdDo6V2ViV2lkZ2V0OjpzaG91bGRTaG93
UGFpbnRSZWN0cyk6CisgICAgICAgICogc3JjL0luc3BlY3RvckNsaWVudEltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpJbnNwZWN0b3JDbGllbnRJbXBsOjpjYW5TaG93UGFpbnRSZWN0cyk6Cisg
ICAgICAgIChXZWJLaXQpOgorICAgICAgICAoV2ViS2l0OjpJbnNwZWN0b3JDbGllbnRJbXBsOjpz
ZXRTaG93UGFpbnRSZWN0cyk6CisgICAgICAgICogc3JjL0luc3BlY3RvckNsaWVudEltcGwuaDoK
KyAgICAgICAgKEluc3BlY3RvckNsaWVudEltcGwpOgorICAgICAgICAqIHNyYy9XZWJEZXZUb29s
c0FnZW50SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkRldlRvb2xzQWdlbnRJbXBsOjpX
ZWJEZXZUb29sc0FnZW50SW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYkRldlRvb2xzQWdlbnRJ
bXBsOjpzaG91bGRTaG93UGFpbnRSZWN0cyk6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJEZXZUb29sc0FnZW50SW1wbDo6c2V0U2hvd1BhaW50UmVjdHMpOgorICAgICAg
ICAqIHNyYy9XZWJEZXZUb29sc0FnZW50SW1wbC5oOgorICAgICAgICAoV2ViRGV2VG9vbHNBZ2Vu
dEltcGwpOgorICAgICAgICAqIHNyYy9XZWJEZXZUb29sc0FnZW50UHJpdmF0ZS5oOgorICAgICAg
ICAoV2ViRGV2VG9vbHNBZ2VudFByaXZhdGUpOgorICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpzaG91bGRTaG93UGFpbnRSZWN0cyk6
CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIHNyYy9XZWJWaWV3SW1wbC5oOgorICAgICAg
ICAoV2ViVmlld0ltcGwpOgorCiAyMDEyLTAyLTIwICBLZW5pY2hpIElzaGliYXNoaSAgPGJhc2hp
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBbV2ViU29ja2V0XSBBZGQgZGVmbGF0ZXIvaW5mbGF0
ZXIgY2xhc3NlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2Nh
bGl6ZWRTdHJpbmdzLmpzIGIvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRT
dHJpbmdzLmpzCmluZGV4IDE5MjQ4NDkxNDA0ODA3MThjNDVjNTZkYjcyNDkxNjZiOWJhZDc3Yjku
LmI5YzI0NjFhZmM0MGIwYjFmMGE2MTA5ZjE0MDk0MTVmMDg0YmI4YzIgMTAwNjQ0CkdJVCBiaW5h
cnkgcGF0Y2gKbGl0ZXJhbCAzODc4Mgp6Y21kc0ErajFuaWFlZGNVQWE7WT1RR31NZUo5YW82QlU9
cyokKzx8cG5hJEQycTB2TEp5UDlsSWNVOE5wbjtoPHcKens9elR6dEFFNlFxQSY1dU1CLU1SUz4p
YCtqXz9hdk5Tc1dkUGBEJkE2WD82RGJJVyNHRWY/Unt2JnA3Z0cmakJiCnpON3ZOJT8pPl4rPio/
azx6eGMmNHw0KDFJWE0zfD5lZXFgaTw/JU52c0hAaj93Vygpclp7e3xPUm96RChCfVd0Uwp6byU8
VFJ6OTR6bFYwLSlEJlI9P3pmMyFmcSZybz1fVjViPWombFlVZXIhdylaIUBpcmxTQGpUK0EhJmhj
eTlgUFIKejMlRlZ8cTRlK09sK2MwQz1YLWtyJElsaWxITz0kNiopLTRSc2NIRHhrYGBhJGBQX1Bp
em5RMUA8N1pYWSV1VTstCnpaPG49MF92eCNmeF80RHF5UWJaXns8Z2h1X1R9WHMkQz17V2p8KWhC
d2lrTFFJX3RFfWh6NFdiYiFgXypfbypASAp6dVcxekFTNnpjNFI8YWQyUFpiZWJjOz5rMVQhenUm
ZipkZUQwP3lAQHdlRXxvdjElOHtWZXo+WHZvN3ROOGdFcj8KenJuaHd4UCpSTj00NEZkT2ZQMHpL
WVE1UVpefmBua3dDIWZUJilxSGgjcjNqfHQ/JmU+UU9LfHRnIURLKHl9MDFiCno9S0Fre3J7LUVP
S0dqUWY/NlY1KlFZfkspRXpnbjNjdDlQKTh9LVlEIz9+b19Wfml6LUs4K1FfUXhkOTc8VyhEJgp6
aEhePzxAT2pzKytfWForM2hlPSZvTTxxOT9UK2VBd09FRikocXBMIzZvY2lyLStsWS13e2JlfFR9
VGA3WH1lcnYKejBqXzJKK3ZfbmMxJllCayE7SDlXdEhjb3IyRSE3fGIyRUxBWl92QXQ5KjFNaF9B
WkV+bmJVM0JPfD91N0N9Sz5VCnpBKVpFNVlFUGZpcD9tdzshcSFYNWZYM0U8Q1NnRWdwKHRMMUpn
Yl92ZDA0Z0UtcCNrb2JoQnQxZDA5MF82KX4kZQp6bURfZnFtN2ItdjNlVVNCRF9XMHMlNGMoUSQy
I2FgRntNaE1SP1cxfHokdlo1N3ROO2Jucmk5I1h9NEghIW5eTn4KelJwdkRveXVqZ35ieShObGJr
ITslTHNBOEE+UUF2Mnsja2A+bitoe0ZkWihMVkJBP2FudTNCIXhLITBaQ3Mtb18xCno3bnswWVNK
VEx6USM2K0U5RDQ5fmUlMH49dGYxJkR5Z1VXOFBpVmt7Xj9KRk9SQDQjUUF4JlBNV3RYZm5QcDk9
Nwp6YHFUQ1g+Sio2KDx7aCVteWprMn4pXk9Fdz44YHVGYG5ZYjw0fC05PTRscD9NWSpwQjc8XzxS
NGJ6RTtaO1N+eSEKeiNaPkp3QzZkTVRHUypnSjcpNTA/aSFIcm1WI3tiMitoTjx4N1N5XkpIbVFg
cXteaEB0NmRQZypnKSR0NHJhQlp0CnpaSE9pR3RpRGZtcUojbUFBUlRhWCk3M1k7LU1oa0dQcnc3
QkRqNk49NDEtZjk7ZShqOHoheX5tI1lQR01URzlxUQp6O2BDWkNtK2RgZmhpZVE1JXYwe1o/TE85
Qnp3ZUd8PkxBTUljRzBfYiV8cT5lZiNSQHRVMUF6PTRUaiVjOVhRPG0KelZzaV57P0d8JVBXQSll
OVJTeU83Y2h5fXI7WXJnaVJfa1RHcyskY0QrZ1BwdHF2R3x9eTJuPTQpalZzNDNnI3FACnpzYW1k
WXN+NjcwTHFZPXtHPThoJStVYSFMayNAYzU5PUxfdTQtSk1VKHJDVEV7XmRYUmBvSTM9S2khNj0/
bDd6VAp6QVhjTGkrb3R9c1gybllDMU58amJEVX47bChuVVlHS2Zidz9jNThlPjEhNHBIJn43bVMl
Zm8ldVktb3wxRV5DLSQKenVEa1pXdVJFYGx7KiNGTkVTNFdyc05lYTFYMGRAdUV4MzBGK3Mkb0A0
PShTTDVlJFpFJFBmdVMxRGNEK3JgTGQ5CnpnbVEqdGx7dV49P3pFalA9OElVJVVIVHx7PzxTanZ1
c2UpdlRBLT98VFRKRWRxTnt0JTNFOy1tREhUXlRPYVdtWQp6QnB6TFBKLURrbzcqMGdDQnM2KDFW
ZChwYTBxSyEzcjkkSVVEJj9tWVBPcnFGPzs+N3dOTkFEfEZXJEx9JWt4KW4KelBtVSpvJk02a2x4
QCtncWV0V2hHeCU9QjExQlJ4UGBjcG1LYV5Efldxe0NGK3VjXjVnNEdxRTB0PGZASF80emElCno2
I1Nza1A9JFVMPkZUUllDVD88a2Eoc0FvZW1RSWdIT21zeEwlV31EVEQpTTxGZmZfSCt7PiQ0P0lN
UXRPcXoqcgp6RHtTU2VrOTktcyErU2JjSDhWJENzfHF0MzgqeUZicldrSihBVztHX2RkdGVwOWk1
KiNsdWohaHckayh3KDhhZSkKekIqPTFDdHg9Oy0zeEkxaytwPXlSaT81YjlaSEh4YSNwfl5BQGpi
N1V7bDRyODQkJVUhI1F6YGZyRzdycnRTOHVRCnp4UERWaktndTgmNU4qYUc1MnIxLWpOVV4/SF53
YjVObU9gZmE5SlZgbD89NU0jPVZwXmpyU15yZ2g3cmlxRjVGUwp6NXJaNkNMQGRpc011bWBfSlg9
Z0dQWjZffFhOIVVNUGxqI3p6VDhaS1dIVWojQTJKMSElfmJKJUJCUVcpPnBfayEKekxKR207YVo/
Qj09cTd2aWo7YT1aaHxUT3IpX2B1Uz1CNmU/N3BBVXgraEotNXlkd3lgVHchUTItX3cqdUJHO2hS
CnotTSpYTEY2TnVCciV4flMyTVc8RSl7XjJFVWR0eWBBb2ZJcHE5K3teNDEjUFRJdmxrUk8wSmA2
YlB8P18zJUAqcwp6YSMpOz43JTR3cks2KEF0Z2wwUlQ5SFdhfXQrN15NTChvUXA7OSo8UEVIPkI/
WDFPTHRZI0J7d1lafFBUUVNtdSEKelc3PmRjQlQkQjsxPkFJN1Q3XlVOSGhteCU0NSk9KTZXPjZB
aUNpVzFGOz4hamMzR0peIyMqdSUtRUlCZ3UrcVB8CnpJejAqU2pHe3tpMEdkR084NHFOOGJsNDhi
Q2lBaCpUI3o7OU5ybGIlWnBwaTNsZXM4QDJOKkxLV1IwMCRqK1JWbgp6c15YMF5xUkR1bUY9ai1L
az9XTlNQbkZHeENTeFclRj1qLUtrPjMmYWsmbXZMJjlKZnJNU3tMLUt7bENCaTF9Y0wKenhnZVgm
VUh4eGMqZT1+SSVteSZtV1N3IUNWflYmRzVwUS14NDBCOG9jPChoUGZMZzdfQWo9ZVQ4SDh2UjVn
e1NWCno2IU9RNVlJQj5sZj19ITRaND1oaW1MNF9HNXF1Uzd6bWtTY05mbXJIYVZKb1B3cmdMM3Ft
KStSPWNreHE7ZGFgJQp6YGl9bjI3dHU2O3QlSHtMNmZzaXZLIUU7cypxfTd6NFZZMmBoXyElckVq
ZHZ3UTw/PXAtYktNa0xtUXVIUFF1PjAKemhydzRBcXxqPVFxOH0qPUVyZmNgY0JSRylSWHw7dHJn
JEZaTTxXMVRBWig9NCU0OUNwbj5IRiFYTiNUO2MoWipNCnpseztAJjREYXoycSopS1ApcH5oKDJ+
eX16NWhGO3doLUhvSzdhNjYpM24jKHwxTkVQUmZlOWxGX1l+MVV7ZkIxSQp6dG1pO0dMOzFWOHd5
MztWPEk3fjs+TT0rNDUkcSVsUlZFRG5sdmEhUC0jSyR9Tkw2O31XOS1TOVFMPDxCRj9NI34Kem16
PHVZR1FyRzZzXnlBSTgyNV8/cDZ0K0x2Plpka21KQSRIV0lPZSNGe3NRb1Zra2NubVBqM0E0UFFj
ZF5xdS1xCnpPWWFqWiNMdjNTPUJvfE5VUnh8JWEzMHA1JFFNWG9kO2RjZE45c2skQ2lOa00xbkVD
VWdqeSpDczhBKERlbkBIMQp6Vj18Z1hgPkpPYyZgaEBFQklGczYqJUhsVU9TYUFFWGsqcnJabkNF
P1QoWHlSbGw9Oz0/KDgpPVhAYmNZb2BFQE8KemYodVJGSC1fbDs3RTJQWCZOMFdxPmM8e0EwaGNz
WXZPcjEoeUBiYDRWb05aM3c9ezgqe3ZkPG5TaiRtTV5EelBHCno8NExoUTxQcWxkPT9kbklKaT5l
d1I9JEVhUUFiJClaYXdaKWtBMG1KKW5wfihac3oxOUh8N2Q8VVd3PUVVQUtpWAp6N29KY1VOM3ZS
ZDQlY1lXLWdaZGgqbnw0U3FNeXA4N0VSSGFwPTxiTzYtRUllKVM8a09SXkVMOylFUDsySno0Wm4K
eldhOT9wbkR5QzJ2PkJKZVNnND8kZVZBbm0zNi1Ufk5Da2JHRjFPSGZ5fiFNQWs+Sj9+cFYtZFYj
Z1FrNGw7I3pECnowcGlPJFg3QEBXPldwalB6a3ZhNlMqPzNma2Q4bDxNMSNAMFh+VWwycTs3NylI
VXxSS09oWFglN0A7P09UNjAxSgp6ekpkJE1eJDNPY1pKVXhoN19KZmNrfmlOI2VZO3lBSTRwNE8m
PCp4UWV+WDx7SEghb0spdVBGMURqU3BsSUktQSUKenhCRT9CUy1IQlhwdW9Kc2hEX340bG80S3dB
OVhxMSVGJTh8LVhDVUxwSCNzVEtabWZUPHgmXzUoaWxeVFM4TSRHCnooRDY5KCgzc01zekZ4TjFt
REU5PVJhaCZzVERgIVFiamVycDRncCV3YmcyWV5zaVkzRTZSJW0yUCZBZXwjfElafgp6YSZ+WXJk
MkBhPkBnKXN0RCU8NDUhUyktYyEjNjNkIW1xOV9MXmVJQ2tsYlc0V304NlgrVnVeRntWZjlhe2Re
dkwKenc1eGo2IVlZVUBufihwM2BzYjxAYDZkbT1ZfEgwUzs2PXBuPlN8STB5c3djcVM7MU5Semdl
S3NHSXROfCp+QG1iCnpMMEl2LXdSa1IzdHBRblF7IzFVYkk7S19sZj13OWc1MFdZVU8raGw1eWll
OWd3cl8zYEZpbm5HZTQtOWZwNzVHaQp6T3wtaFJ6JGR9QSFycmM4Kzx8e0lLe0NmTU81ZmhSWktm
VWpsKXBoSnIrOyRTNHttU25gPkxJLW1aPUVpJmA/e0wKeiYoPyood2huaEs3RmZpUjJNR21EWEcz
Jmc2YGNjYm5+PkRPMndSfDdhMHhlYV8pPDlaTHRgS21YYWsta2tYYD4jCno9KU9CZ2ZVdl8+Myt2
e2w+ZnBTO2hlM2skTXJAYzZhN3ZSR2F1SnQ8WlJaQXxzTFNQcGJpJWpJcGVqRiFYeVlYaQp6Y0R7
NUpaencoJTZyUGNFQ1Zhe1RqekBIRz5VRW4zOX1edHd1NGloM2VxVCU2SlV0a0k+JGQ5UGtEe1Jr
PHc8JXUKekBJJClCZW5ROWM7TEI9TF5pRH1xbkpVYmx2SVJXeCZuZ1VCJEZCTDZiZGlFTyZneSQh
VnAxREheY3ktY05iJTZ8CnorQE0wWU57aX18QEVHTSNZbXZxI3Q/YiolNkxpVTcyKExobzdBUDRl
TkY9OXA9dUlwY1BhNVIoP2RoPypkUlU4awp6blVXQFdRLVYzRWZ+IXNmTU5hOFNodFRQJTg5UjNg
eDNRVHtgQX02KHd3ZE1xSmQ1Iyl5c0c8VkpAd0QzeWMmIUMKekd7fT5MMjBUTTN0KFY0NklePUZh
YW1PKn1EQnk9PWxeRitKSWRJUVduK1J0fik3ZGgkQUNhMXZnZ0VMcTJyelA9CnpBUyZOb28jbVUw
eGJiPmkyPGVib09fPV5USjljS1pqRXU0ZEtIfmBqV05Pdnc1VDskVmtDdyNeND05K3FZSz5hQQp6
YX5jOXNaOWItaWI8SH4qbSZzeWAmcHZ+fUNAfFRTcS1SNUJQQllrc1cmPGAoZl58cVkqZWByKjt9
RU5+Y1o7QT4KelVmWU9kRiNWekc3V0RGb0NzN08qanVvUCNVU3V0Yk1VXztZNj8qQz09N1BKUnRk
TF9SUWdvSiRkcXF5S1ApdFojCnpVXlpCMVhofn51ZjI+e0pKMHcpI2U0WWw8eGc9Q3psaX5jYzBp
I2R8WUlPPjJmfSV+KXNOVjc4LX1BZyMrNll4Nwp6I1d1bC1hYU0yVztEU0YxQStwcjBGKEhpeiQl
ZztBMnIwOG5BdCZWMD1qejxNdExpJGQkU310Z2Z0Rit1Yk84WjsKeigzeXh+and2RlAxOzt1ZmU1
Y3JOVVplPyktXmZDa0IxNzNwPGdrJH1nZW5wbkRwNk9AYEI0TDF6P21hQG9QWDNvCnpUYDtJIVJQ
PDxxcSYhQS0xfXZEP0lGPit7QndpejA/PXJXTDx+ZjJycX10eHghcFdhSk8jVytIJlpRP3k4TGdV
RAp6WllLR1I+PTQxYldtb05vTzBsY3ZQZm5zV0xPZVFNSTNUK1kteSNPVzYhe0lBTUpaa15ZdH0/
Rio8X1grbklVfnYKejtUP1M4elNgQColQnVAKUtKeS1pZTU9JWAham8pRHM2YUJLaE89bG03cl9Z
KWh7YkpBbWZGNFdFPFdDbihpJEFBCnpBO0QkSmswfjM5M1gpeEZHPTlPMGM/M0NMIzdJO0Vze3BC
cDV1e05CWkVkNFEwNmAmYnooMmBXN0R6bSpwdVhQRAp6VEtEMXdQRHtifm9TZmVtTzImdSlqV15J
VndzKTUmcSp+dmswdDxAOV4zVTVFaERDcHc0ZCNBMmpSJGp5ZTEwb2EKejZMZmllY3okXl9AIzhC
YmJsfkxPTmlmTT85e1lwfWVFcVU4QG07MzAzYV8hWG4wbDlJY0QoM3ZoaW92e2JVLW0jCno9RTBY
SlY9UCRiSUl2Q0xULVlNald7dTxBN2lFb2Y8bDxWNUQ0bWBTbmFGflc9czVSYExlV2BmQGF7fXk8
LUR2Vgp6cjk8YWstQW1ObVckaEM+a2FYOGZsTWZYaWwxRz5gKkQjTjV1TWNNanNFcjJUQX5PNHlA
T2c/fVVXMTZwPl5wPnsKejR5RnM1V01vfE9aQjY9KUElc01SbFV3bypKX3NgcV4lNldMY25KIXxL
cGJOe3QjTmlSYmA+djdYayU7Xyl4IzNqCnp0bmo1Z1VtJVYjVnM8SCtoQGRsZ14lNHAlVyo0e3Mk
dlRVVzNlMWw8JjVwQ0pSbnlPTEh4Sm90PjFaJXBkJnF6VAp6Z2U7XiVvJX5AVSN3cnpGIUI9cyN7
XypSSndycWltMnw9YUBxWTZHS0hncFU1PFB5cG5zSDNjKlcwYjZjWU91bWsKej5UZXxvZSh0UTl3
TEQkU1RANW9MX0F0an4rPXxyMSRXPXVscSNgSU5tO1R2KyQ7Wk5gU182Y204WGdyPkkrVVhiCnpP
UGxlOz89VH0jV3Q+US1wV3MwU2ttKFF4R1ZJIVVDYG8wOFJHayZkaGZDSDRacHEyQ0I8aFRHKkdN
UmRwS1Z5Mgp6QE8mVCNDMmVyQUJsSFlgR3tUaEVNNHUlbUlLQjxuJGVzK1RsdkpmTUlEQSFOKU43
M1dMTzlQY0B6MSg2SWA4UVkKemY9fUp8Nkhicjc7cHIzSWlASDRkYFJGXz5gKnlxJjJSPEh8dDM9
P19JTDM8UGdVVz4hRFRwcHxNbnRTeHBUe1M1CnokdmlHSDIzZldjJSp0JHFCOWx3XzJMODZDakJj
PmMrMkl0cUJ4ISpZJmlLQT9YUDJYQCZNM042VG1sa35YLXxNUQp6ZHdYdE5sNmdSezFmQjNqLXxf
Y3d1Jj9HNnYjRUhtO2w5I3kpeWZnTHkyY1NIQTFzNmpkKylOUnUkbkw8diYwZTUKejxBVjdsYV9F
e3hrJl5RUzVwLXUyTS0layphXy1NST5rP0k8Uy17a3YzQ2wlQShnOyk4UF4zdjwmbylKSDdlLXsh
CnpaaFVHWFl0dFI1U3g4dEk1ZWhnKnEpfkVnQCVQWWpPO0wrUjlOZn5xPUBUVEgkd3BJNTFGd2J6
OStHI05aRkc1Swp6Kl9jdFdBcWVYKyhLYz5XSlQ/YDQ2WDFCZjFVRHFUekB1PXhGZ1VhRWI8Tk11
e2QqX2g3Tj5PSDlkNXJTKD5GfHEKens/bms/ZnZiaFpzSlJJfXNnTXV8Nng1PGdNJGowSkYlaTtF
JE0+PEEoeDR9QjBMRnsjTFA3KEVPPjhFKEJ4eXt6CnpvVENleDJ0UyUybSMmTXp0UUAqRUBlRmZE
TUN7Jmt1cGBUVypne2h+XjJfK3dIe2NzWTcjX3k2RVdrJkMmUVB5dQp6Mmg7a0k5ajZpWWllXl5N
JD52ZXFzQ2IhYWYpdUByUTchQD9EQWEmMjhLVSFMNX1IUkI2JFhuZCpKVGBNKStOU1EKejFSKjBl
IUhLWV52PGwxJUJSSVB6VjlRI0NxP21Qfm9BKGx5UUBZJCVqYDFQeldOaz1tKlRjXjJDbEdLOUdw
c1Q9CnozO3xPTmwtNzdqTiM0bXgocjVLPytgVGhBN1VLUS0+OHl4ZTdjaEZ8S2VTRkYqYkYoPVhl
MUpJVGkwPmdoLXE2WQp6IU5jQnhFKSF5WVcyPj5mLWdJPzZ4VV5fOHEtdGVkUVEtZT05K0BmQWwk
SyElei1EfnkhVVhQe2daV0ZrJTh1blIKem5ad0E5ME91SlFeTD4wLVByYXhtUHZgPGw4VG0tbGA4
Y30yMlBmIWpJa1MyN1ElSkleNyVuM0YwMWI+PndwNVlUCnpkSzA0RHNCOWFlM25oT3EtUm5YRGFY
M09jRSQkRHdWdDI1WFozXnFjRFFHV20jdXc2Slg5RT1oVituS2V5YlloMAp6Z2cqKVgpV1RTZWZ8
Q35hK1pBQ0h7MkdJajZ6byVyZnI5OSpOaSlRa0tkQ1UyTG9HNkQ3clpgTjViQmBQJEhCbTwKekZ7
cTRUNT1tSG4xWEZIWU48ell0Kzk5JG5ve31iVEFsTTlWazVZfDBobS0tMD5qSzJtdmtHZihaWkhJ
Nzh6WFd7CnpuJEN0RFJ6VENFM1ppTjMqJWIhOzVwRk0qRSQ3dk1zNH5YYnhHUT9uQW4kT3Q2SzZl
SElxN1RNRE1EZGwjZmleUgp6Z2Y4LTlnTDxhJChGWDElOEQ7TXBIQlN8VDxDbnstZ1J1cXVtQTYy
U3UxRUBrdFh4WX16YXAyc0J9JmFUTTlyTF4KeiFKfDY9ajtec3hHPno+S2JnUW9hJmkrdll5fDF3
MDNfM19pPXM+PEJVazFeOGVgQ0hyaFRpa31YJmVRQG5gY0xzCnpjZ2Jvd14lN145KnhFJXFIbj18
N09BSGZPNDFhcSszUT5pVXNoX1hUXlg+NklyQnlpZ2w8c3wzaU8lJnRDUWF+dAp6M0ZmMiRyaSlD
YTdYRFVLYiZUTjNOPE1fLWt1anlvcXw4ZzR7VUdObWppZmBxdHRsfW9kNGB6Q3FnTHNweT5XaiQK
ekokYlgpdGk+YFdAMWJSQUNIeEMrKk15bTVJZGVWVDAmfFRjQmxuOUx6Nj8kYisqV3RBSVB4S3Jg
fSFJWVNSSEJLCno9bkNBNnl2aDswSHtOd35eWmYhVU4kMCpfRjBOJlN7O1ZaZnVoaTdFeFZJc1FF
Rkl7KXRgU2g/RkJRZDItajFTbAp6czduWGFIdXZiUDt5K1QoNlJWZU91fTFhRTVvZyEkdmp1NHR7
MVlwMHhWNF42I3tiIyh6WDQ1U2B8Iz1kSk00dyYKenE3PmZhV044ITUyOVNnez9JRzZ+P09fOGEm
emVsRXheIUVMRkZ6elM7MClXVGNweE1zR0AkNilVU2RkU3ohZ0BnCnphSG9KZ1ljS0BzZDBGKEow
bTJQZl9eKU5KYWZlVmA4YlUkXnckUHZCSnB0PkcoeDRhdm9yQ0VWMjdvXjlyRjw+Kgp6RUtgV2Vv
KUk8MXlGfkA5Z1VgVyljUH5qZzZaQzB7Wmg8OFcpKSNTSlF4c0d8SENnPX5fYz5kam1ASDY8dSlP
PGIKejtldiE8R0tmUSZkcDkhKEwxVzwxWFdITXpFcUV7Y1JleXteQ2lUWipxciYzXzQhRDdvWn04
UUhvM0smZ0ROO0VvCnp2YXo7Qil+SnclIWt1d3N0O058US1fJWhea3VAciQrfWk4IXNBRVJPX0Ze
I0BZZFJnSGlUd3c5cFdwZy1seEdjPQp6MHRfcW47ZnVaZyF4eTxocHMhKVJxYSVwRmNHbjFXcVEk
SSY1JCliaFp4Pms2QDNHbSVlQm9DQCs8NlJWTWhgZDEKempQQjVta3JoOHsyfHc+RXY0ZXJ5UTVN
OVg/b34zJEtnbGNYRyhMWUQ/JiFHcCRAaFpLdUtnb0llPy1NVXVTV2FvCnpOfG5EKHNpNyo7aGt6
JjZ5KiYxeiRkd144IzYyY0h5TVhnTFVmLT5WSCpsSkdUQzdNVGZsQWZPTmNOdnklZ19ZSwp6ITNF
RDA1KnBBdUF2e2k9SENQQGtIV0RSdkF4PzglI3pJMXFfWTRPaE5IcjAmTGBySmwkcml0JDVeaDJh
MkBTWU0KejJpUTR8TXdZO3dVQCZ8YDJHU2pfbEIlK2ojV2FTWmAzNkxZVDIzP0FBaUtuSVlre190
VkYtOHpEPXVSMkBXVyU2CnolRzE/O2JjKFpQczxiTFpKXmB1fkxZTWFPVEl6cDsjPXFUPXM0PHBm
WElJOFp6OXg8fiN5ajtHNTtld0MrIWBYNQp6NmFUMXohZypvO2ROSEx6YWY4PkkmbFk9Wk5AYCRn
c01CciFiMGhedFdrRkU+UjRSUHJwRVZlTFZxWEooKGpiU0oKekhvOHt5cF4oc2taMCs+SXtHJGUl
S3hmRStEWEQ/fCkjVnZIQ3VqXmZpeCk7NyZVKlR2MkhifXdnbkQtb0hQeXFFCno4TGphN1ZNRkxN
dj5efVlzUTdCZU1mNF43alBrWUQoTTxHO0ZHNX48JDZLTF5lMT8xYnV+VXF7MGhncyFffSt8dQp6
X2M2Pz5BKkRldFlnbExhKkhQRlBNNWpXPygmc3libThsN09VdGRwUDQyfllRRVVtI2AoWGohVXA1
PEFDclE2eGUKemlgbDRpJE5oVXFYdE1rVEZlbE8xa2ZrKl4xdCM7OU9iOzYxNzJsc09AaTROYDRg
Pj0mWSMxKitCe2xHfntzQzhECnojYjBkO0RIVGQ0SGtgd3VwSTRvUSpzXkI+cVEqI2IyLWVfdTJw
fiZxQEMpb3xiOWsyNDtLN0dVI18zcVprZjw/VQp6O0wzak5QM35kV2ooaGB9IyYqYSp6MzFDam87
NFVwNV48PGhqRnpHSm9JbypJJFBaOSgydGl7dzxVNz9EZUhjenoKelQ3IVMtRUImUzMrMkZDa08m
OEheQEc3TT5TXm5VeTdid3BmM145ckE2IS1OPHV7bDl3bX4zJTdTcjxZJkM3fVV2CnpUXylZMTVe
cUp5KGk7M3J7SjNYa1R9dyN+T29KUk1hWFBZOzZFdWNQXjR2Qj5gO3tiKFg+eUJDaSFQQkdyPVZ5
bwp6VSplPiZuQ2txYTJBYX0qZyVHe0ZOYGd5cmcydnpuSiR1Q2IyaDlsQDB9UXxaPkpeSUw/WnVm
dEJ4O05qdG41bigKejJATUY3Rl8rK3hGe01GJEA4ZU03UD9lSVRHNDF1d2V1Yk5HcHhPRW92YXw7
MCt0UlVaZmlMb14hKjlvVnJYOHh6Cno+VksycmI9NihSK215bWpJUnY3e19gQXZabko8VCpHe187
aiYhakg9c0RVblV2SVYhfnRafUFEWXxzVG9XOHYlUQp6NUJtTG1TIyt8cjM5a2xscFZye3NjIXI7
TllTPTdGeV81RXoodjhlcU8lI253d2g7MyNedlNtejU7YUNOMHNEPlUKel9mWHN4NWVvUDxLKSFB
eXN3U2d8UUlYezJWdiVRLU5EWk5oPFBPR25ZRWVzTm9pNVEjd2d1aFlIREY2TGpxUksrCnozLUZU
Rkl7PGRGT2QtQTsycUNMcWM/LVohbUxgTzZ5RE5WX0NqVVZoalJpWGZRVUloMiNGUGZUQF9gUz57
KHo4bwp6aDVFS3RiMkplcnpvZVo1P0xnVDNMYXs5JHckSHpQeyYheEVvdmpKYEJAWnVDbjRQVCZC
aShBR1ZwZ3N1WVA/IXoKenR8bHRIKyY9Qk5VZzRIQ3k0TEIxSkp8VklOWjdTVlJwaVlVOX0pTXFH
V2s1eC1qN1BiRlomfGUjZ2c/STZ7S25nCnozcFdDPThlQmQ9UVlvSG52YFMtcUtkXld6Sk8zUjRx
ZT02VUdadzgtSzxVMGZpbFBuQz8hOSkwOzFoNn5jdmdVUwp6VHk/KExqNjczfVQmKnh+bSs5OStT
akhlajZMNEFJJn1GP0hkSylHbUA7PnNfclB1TU4qflMyeEsoRitoO19QZnEKelNnSTZuUXVEaHte
KDsrRGNtcFYpO3JGJm1sRSFyVzJ9QEBkYmQja3VJSWordj9MUEshalFYIXdrfkY1dTJqanI9Cnop
OGE9bSVpOUxNajhUTHAoalVzaDlGZXBXSzhQbjJqUm9jemUwWkY3I0lMXyt6cj9YaSl8bFZrRyEm
WEsjYTdZUgp6STQ1V2ZYbjdwP0AzTj5AJiFeQmVjRGlSellNYWF9aTg5SkVXY1pjMykxeGE/ViRg
UnZUUz9OJmZPYkVwJHVNazkKenYkT2BzRlVGPk9DOV45aE5nPEcqWHklaCFZanpMOXc2K0BpI2J5
TUA7NCh8PjJwVT0mcUY8aEdWV1JERUNSSEBuCnpDelN0XzZ7eCpHYDxjaUsrTllCejFEZUttZyE+
TlE4cGImR2pnO1AxNnFfLUNDSj1qO1JYaChzan5ZbT5wKVpTIQp6aW07aWhpTmN1TDRjPW9UbXp0
eEFLJFd9QUh5bE9vbW5EMzItJUhnVE9+ZkhPMTxtZ2lIT3F6UDFkU21xcnVqYCUKejFEZUpMVn1A
KH10O1c4Ym9TLXJJalZiKSFXRVNEP0VUTDd3VUtQakpsYU5tPlZzbD8oX1JZJVJ2NnJRTj9YQHg9
CnpYVm9nZlljcE9sJXYqZFM3MXVAQUAlIz1TYFAyY0xLKXleNGpTfmY4YkFjMzFOZz9LVDlISSVP
NkVYLU48ZkdmJQp6Tz4lPEQ7TG5IQyotSVNsMnJoQ3RDWjREeHRiRXIqd19SaDFoclA5elMhOEdl
QEpua0hJPkA2LUkkS1R8Vll5Rk0KejB1a2FWOFZlYzA5VlF7eilxRWoyTDFURH0+cSZ4TEw3cHwo
Yk5wO0c+P1NnYyNncXA5K1g1Tz44dWFmQVhpUkJQCnpUeFNPQDFPZW9AZ2dMeGdMREhEeSVjOEhi
MzVgUDBhemxmaXRxRDdhQUVjeEV6Mjh3fStXfCRrJCpAeTBRfl84Zgp6eVF1Wj4mMnlCfXBpO0FI
K088ODtIZnFJe1kpI2xQIWsranlIaGVwekFKNWI+OXVvbExqNG1LI2owKjR2JlBhdGYKej4hTHo1
cGA8azZWeWJYREg2PUFMb0c5KlhoekUzRSVhMV9xUCZIUThsS0lsS1hsKlA+Q2V1NHxnT3A1PnEl
clpWCnpFOT1vJD9za0Q3dDlaXkstWC09Sk5FMGxWN1NaYUsxKCluTiVwWnIxMiZkSHw2TWh7ZFR4
OEE9O1VoM2p4Rnwxagp6TFN1eT1HVm8oZ3B7d2xwayYrSHBoeGo4Sl5zNk8tcGZTOFp4SUJBJV9G
OFAyRntNR1R1cGdue3d+cW9iJHh5YG0KekhDKWoyQmchMkAzd1dKZ1JTKWRHI3NNUHlYTjZNTWp2
cHNOdEpHYHlISmxMVDchbiF+emtrTlIhM01ZU3Q7fU8zCnpObl8lRT99T1Q5PkxaaCo1TDU8TXVE
K3Q5Wik3ODs7WHRQKmgxdGx8MVlPYlpPP2Z1fHNEVGNiKnJqQHFmN0MhPwp6QmN3SHcmZWYtJSgk
ejlGMFQtQ01XRWx4WT1kanI3Uyg9Y3tfeU16Jnc9KU1STXhHe3llOyZmOWpGRzJfIUhVTUoKelNn
SHdrVHYmZHV2NmI9YU0ySXVQK0x0dnpjMj8pZDNlaFM/OHApQDZjSiRKSilzKW8wKy1fQGhHcSM2
cUZiMUpxCkxkUFk2I0heMkJGZUAmLVkKCmxpdGVyYWwgNzczMDgKemNtZUk1WWphLTVaR2hqO3tT
Qz4/SklOP2tXKWVHMkpEcEQycmJBMSNxKHJ4aGJuUS0oNC0kMmFFQFZrNXZocWohCnpaYCRISEFo
aD4kZld1ZG8tRjdySyR6M2RmI2JVOG9FT3lVLXtyQmNDb0JOeTcmMzV4KmJHJGl7LShQSD1aVGBB
Pgp6dzBYRVcqdTBqU1hQWn0+Q3p+XllfLUZhPW1ESWVJcExhRzdIaC00aWp8QW8pSC05N2xtZkhW
ZV5BbC16ZDI+bEgKenw2RzNtKD5jYm42a0p8UnIkWVprezx8K2MhMCZkI3lfTFY3WkMqO3JTJTsz
VmpoQm5oaDJ9NU0+RT1CdSVlfmt4CnpaOWQpbllWJnlXTUlvS01HPllsPjE2KjFqI2RkM2VQME9S
JFVkczY3R1A4YmFjPzg/JUJEMVpHfE5ZSW80JGl0Wgp6aXV0TGBmdEZMU1QxXno9JVZ8IzRlRnZr
fUxAQHFaK0ZnPT1ITkkzSCNuI2dydSpKMjhSejBtcjx4JD8ra3BMSF4KejVsbnc4WkY+NWIlS2d9
fEo0YSRXVWtNay1WIUl5Ni0pZW8lTD9mUn1jNCNaVlZSXjhoJDZ9d2gwe2N7Y2RuPG9gCnpUOC1R
O0BXcmA1LWFIcXIjQWQzRXU1QmspVGw/OUVqOFN8ZihtMGo9cExZNzUqUjkzKzMqbDhjZW1oRDIp
JWh3YAp6JkpsVylzRXltfm51fVY4ZVNFfXB5dT4rQUBuVj9BYSFWX2BqenlDNyo9RjJvdCtkQkRt
d0c/cUJgJWpedWA4eHwKekZHY2ZTaSlEQl4mOGstTz0zcndvU2ZXKGQkRlMjbzt2YiQhdWlpfTcz
PzBMJlZme3xVSzQzZXsmaXpHWis/bzlNCnpWNnVxd3k8ZCt0KXtgWSRQfWc0c2RyIyp8e0JpQzIm
LWMxQEI5aUA5Qj4mPnZVZi1Ue2pad2pXfElLXjJldjh1awp6KjE2ZS1XRyNyfWo+KVoweHooNXYr
JlhHd3sxSCFMeWpxcXVlamM/UW1JRkp8dUVNP2dERTd5cUMmJUtXdSU2I1AKendAfGZDRDRoe3hq
M1BVdnREPiMxaDEjPThYR2BmcnN8T1JLXjRyYmx2VX1vUj5rVUpwdTgoMkkjPVZlI3k1b0gkCnop
fkBZQzQ8PChDcC17bW1XQ3dofE9RVkh8UUZ0TUUqKTZ9NGFldnE4THRURm4/N0ZUWmA8aVI+RzE7
cio0YGExQAp6OGQhMUAjfjAoP1I9VjFEKH1UUCZmfFhxQEpDdlNJbVVTXyN0XlElaFczfihYUWZz
bDZkM21ga0JnYztCbUZVdC0KemBUMXNBan4+ZlVeb3V3UWI+K3pWK3hXUik/fmZMM0Mob3FUck9Q
Nmp3JSg2QFdDZkZkZHMjLWZaJk0+dylILTVZCnpZS2M3LXs7YH1ePWZ7ZUxYRHNqKXRhWitKdWls
VEgqZFcmQVJETHB0KzFEUClVKFk1bHZGXm4odzRYOF81T0sreAp6TXFWRGwjXl5sfSZoTHZKdz5h
eHNLVzMhIXQ7bmR4blYwKnFGfFkyUWBfeVZYdjkwUVheSyZ+emI2PzBUYytebWcKencpSiFNUmB4
ajBDT3RUbGFtUy0qc2dHZDFSRVZnbTRkJURCcXNpXnA3JCFueGo2MUxLViUhc25vWEVfMENRYHUk
CnpzWVRwd3Uxcz1iWjx6UE0xTVIxTEc+cnVOSFJrMFQoUWwxTDg1YnF4VyN8WkhYbUdOQ3AwZ3sm
Y2lNe1B2Un1MfQp6djhFRmxPfD1KU1JSbkJMeFFAMj1iTXtjPyVYWUlUNiFkSzRmeWYwT09JZUpl
cUxoJXBHTm0zPWwrcVUrKzRnJFgKemhsXjZ7amJ4OG5BMStHbSVIJjVwNnBiPDYpenpsY20rakJH
VjtSS3w8cStUaG1GUU5AVlc8QkM0eDw+TjlOcmMhCnpmN19MZil4PEVpcXdWKVRfYTw5fUVxSFFu
QmJiJGtCMFZES0MxJE1GN31DJFBUQTxyOVBPT3hyPWV1YHFwWXF4JAp6PURYNHBQRGhFIWxzITwm
V3FrfkxpIVVOOz0oRGQ+VWpkN1VPeDF0ZE47JVFIPWZYTVhUJVFXbXsoQ1JPVXx2cnYKenl6WVpv
UGl6JT9FNUIqKTckTWQ8VUh2KWR6XjFWVlZFOz1Se0xNVWhEbURCY2gtWkByanJhOVBWZ1YxTl5f
bCNKCnpSe1R6V1hDKm4xYi1fR0s7OXBNazkhKUxxTFh7cX51JDkqVHQ9Pm07aTxsJipya3NRJS0/
RW5BMitCKGRZa2VYawp6ZVNlQmc9R2Z+UkZVQ0ZMSGIxPz1KSCYkXzI4dTRDSWpwPHlMe3IhJnNK
SHdfYEpHeH5FQU1yMGB5KFE0K2FGSVEKej0zU1NrYV5ENURTa0xrMSo7JGJQZldNP1lQQTRvSEoj
M31ZPihAbmFNWXcoXjY4PmckZVJIcHhwK3BaLWpVT1c7Cnp4c3xyVzluYH11T1ZDO0BnTntBWFBX
SGY+P1pVY0BSbHYlU3tlcEx7WEVweSlhYVpFUmsxazhyUX42anVKKGl4Xgp6WTQzO2FaQjVERlY9
VTYxJGVRKG1eJEdwWD9aKTBAdnMjRTRoNUwmWFQ4SWIqKXZtTiY9NWRfZ0gycW5FX0VXQysKejk5
emw0ITAleXw8Jj9qY3IzWmRKYjtnb2h2VWsoYERAVT1XVCpMYVF6TTE7UllgOzZ7MykwbHQ0e2Z9
SStPemJ2CnpoO3ZaO2VAMklMS1E9cms7ISo2YE9QUTU1VVd7TGVealJhQmBLKlhKJmJIMnZtQVA1
KD11Nnl2MnJtVjhacG1LZAp6bkNsdXAjPUQhWkNPeD8pZDVtOWZaZnRJZiZ3RWZ2PGNlcmZBMHxy
V0xgSVJ3bUJ3JDtaX0U5YDU2MWh8Xn41fTMKelImfn5OWUBoa3J7RHg8WS0+Vm97X2ZAK1lPPE0o
NyQldyRBR29NVjVlZWIhQihBT34tPi1gVWhjbUpweSRWZys0CnpfTlAoNUJEPkJ6OypuckE9Q3J9
ekQjezZWJUZZIzg9QGBNVyMlUmA8WDZ1Pz90Mj9MYFBse0tYNH56JG57JExOOwp6QHU0fVlLanxF
ZlhkUkpeP1g+YztZWHB6X1hyX25ZO0l4SEVAOUJoMXY5dnJHI2wod3hzI2l0b3cqLVVzOW88SG8K
eiFGeVNMWUxBIX5fKipafFliPntmOTJBdyZ4NmB+KCtzXktteFZMJEdpSzZ3TXl+WSFuaXxpdHkh
M3BAV1ZBNVdaCnpeXz0jUSUhbzIoZT9AYyMmMXc3aXxLcylqODg4M3JMbVAtbUE1N1lTLWtnYWh1
blR4enRweExzWWJZKyFOJWN8ZQp6clNIS2gxSEZ1UjkjO2gzYzFoT3JURW9qLXFfPjU/Rk5wJnB5
IWsjWW90dW4jbX5YUiZpfTd4OCUqQX0wSEMoaikKeiR+fmhvQyhHXkRhTVNrQiRJV3VQSFFlOX1y
VlEtVE9IQTVTTCM/NTc8ZjJxVnQpYXg7USVAOCQmb1pycjxGVEdeCnp2eGJZWkMrY31Uc218PGoz
b3dSe1F9MihYZS17TmBvVi0zND55QyRtJEFVK0s9WSsrRlM5VjJzVTV9QHE+TlY3Swp6KldybHR4
MUBrcXFUWlEkUztpJlY0ZkY9RGklOSl9Xm9Ca0NZbClkM2VVUUY+eDEyO0ljMEJvcF89eHByPHUh
aGMKemRNO0dydmEkI2sqNHFANXQ/fHtoPm9BaSlVXnxqfV9pJVN3Rj5TdiZyWFJ0dm1kcE9gKHtg
N0JQR2ZpPys7V1BmCnpgd0JlfnooIX5lVCp7S1ZCOT50YzdwMTI4MjJrdEEjRWU9V0U8KXs8Kmc0
ZmktMnY2UShBTE1XK2tLfU5aPm91Ngp6PGptJWMqZk9ramN7PlFYdSleMDZGJChQVVVLUlZxPnl0
SUR0cThRe1VAdUNROWFDJCZgY3hDX1RCX3tgck1eWDAKelEmdDFjWUJZKilVMUJHPEIjS2dGQDU0
bFJSfTJ+eDswIU5PK15iSEgoMjZES0lPWTltXnUzaEYmfGI8MUIyaGdsCnpfdz9CVjlqODMqTVk0
cDZAKSs3bklnT217R0VKKy1XODg7flF7MG1ebiFXIXIjWGg4JFZ2PColXlBYaDtrYTNFQQp6JlUr
TzVrWTAqdTlQemJaT307a2c+a2xYVWJ+ZVF4NT4qZCRvYnR7MGw9bUV6JEl4LWcqem9fRCkpUTdI
VnkycDEKemZPVzU5Rj1uWmorUWhsSVM4PjZiI3UmX1R2RDdCYzFecHJlU2w0T3hTNipxJXd+QktA
LSU2WmJpT2pjKGJNbFJ4CnpELWN6RkkjP3oxYFVyTSVIZU5TNHQ8O09APmNrczRGSVlsa21hcFoj
VDBpRjc7QEB0P0pKNmBtOF98bXJjZHk9JAp6b3pud3MyfnlCQ2xkfVpZUClnWCVLYiExTmRENSs/
NCZIWFY7LT44UEptLUZJJXVaMGFmMXxub05BakMkSyQlO3gKejFuS1c1bncrI25VbyVLJlFDSikx
eXNvTmtjOU5jM2IxUnJ9RGBReC11M2E0VyNkQFZXcjFFXnw7PGF0ej1LeU9SCnomdzVYKj5RJk1F
SDVlaXNZVGp0NiVhNm96a1dDdVZUNUZSc1A+RkcjTz9wTS0xWmZrU3MzVWpHPzAkQTB5fDElYwp6
KldyeElCbFJOWlpgNm05dDlrfnN5O3o0YyhoRFN4MT5NUiRaO04pN2Rld3RpTjVMI3J0d1ZgSWY+
PWpeVHMoYnEKemZ6XlFRTmNCbFpIYi1NOytKOF5tSEMmQik4PUV1Ty1TK01AbnhFSkJgT3x6Nzt3
ZnM0PnleSihBSGttSF5IeUdzCnpWaWR8OHA7OVhPezIjJXVyT3RVJWduQSEtRSVsVUZJQGpZSSUx
PXFOeCRJPHZsTUQ3PW5xNXhAMmpgfT5qcSRkTAp6YXEodSNQTzNmOXRISj8hT3FTZ2QoZkcyWnA0
NkNjdiNtVklDRF5ybnNwbXZWaHVSMmM4PXExU2glRD40I2p3NFMKens0UDhXcVN4SEkjKTlLanNv
ZihsQyo5S15teGF2dGMxPmsoUW50M30xSjwqfVF1Rj8/eGJWd2UtJFd0V2lGOFctCno+cEN5aWVW
SlFpNUd+eSFvUUkyM1Z7SUdYQn1+K01hQipyS3Q2a2soT0I2QDJhakc1YkpFU14talo7MDhgTkEj
agp6VHQ4Q3BRZihZRnpRcWBHcypQaXwqa3Yxb1BuXzI8UTdTIW9gMGRwR2JQe1VUcFdIc3xqb3ko
ZkcyO1BfO1FUejcKelNtcjIxYHRWWExxYGdDO1ljMXpmKys5b1loSHxDWW0lak1nYDFfWGpKfHE3
cWRGfWZtVzd7Yz5weDA2RSUoIWFLCno8ZHBsKz5uT0steW1FWVZ4O0B4K1JQeigrXzYpVUBhfVBG
N1JqR19fWVQ5aX1kPEw+VyRYUUljQkFIPkZwNWdfWgp6aU8lQng1dEF1Pnp7S14zcVA0ISk/QUko
Oy1uZEo1T24yTXNVRE5YUytUT21idHd2dCUkSHZgUVVpQEl5TTxlb2sKenZnSTZeaG0yNHBFYGs1
VU5lYnM0e04wezQ+fVQ9VjleQEt8TTFedlM8PDZrKXVrcEZtRCRZcnRRZTw3aHpoPk1YCnpQTlNB
Kmx8UGEpQkd9QWlqUzlCJCgqNE9sa0dBKnNHdT1UIXItJkBTb09VWWdFNmN2bUxxO2dGbWpWQjA2
RnA5Nwp6JEBFN3VITmBvfDd7ISNTTWEmVTd0MlYyNHFkIWxpcSYmU3JfVHwwWGBJYSRgXnhVR2g0
TnkhcVVXe0sjOEB3WGMKejFBV3khbXQ/T3RmPzAyZz1zbzF1R0hPXjxkP05OKj4/JihvJWtWTWtT
T1dZbyZYX3B1WSolUHskbEpldEk2cFByCnpgTG4pOD1qb1RpOCEtQG4rWHo+NiMwNj92N1I2R0pt
ZzFvX2c2VUxqMWFDZEU3VHZHTHBNMCplKXtuV2dndj9acAp6UTxOR3VoRlZLJDQhPlZBKk13aFEp
dihqYTlCVyhXPEBLNyg/Qm5VPV9DK0QtdmZQakR4V2RCVWs9N1E2e0lYaU4KeiVIRVArc2hRWDwr
IXxgRT57dVkpeWQ2PDBWWjJuWCVaVG1DanVuc1VfVm45PHlqXmZkYV40T0tPN24xalk2b0orCnpi
UFp4JD4rRiYxTGJheztWP1B3Vz9eYitVbkk4KnJib2BaO3lScyZSQGtJSzRDWm5qVUp2U1VSdllH
WSpXRmBQKAp6dzt6Y1dAWk98bT07XjZpOXZSYlVBTmdIQz17LXEoQ3FuTzZGNWklNFg0Jl5tcHNr
Klgtb3ZuSDBBNTtzd3FEPCkKeil4NEFjZUxha2dATCM0SiZkWUtWI01tPGJTcVopcGtEPEl7c25W
SzxqIV56cXNOa0ZSWEIzZ1N5NTVpZCopJFc+CnpIJT5RPyVEd2g9dX08cFc8M1gyRGFaMzVVU24l
MUs+eSkkTnFOUjlYSGREQm50MnI0OEwwc1VIJSVhPipDSnVMcAp6LVBeTXBxNk97eTI2PF41UWB4
KE9FOEB4QWtkWSMpbDQ2cGRPYH0rckB0UHItJChMbE9tUD5SXllreG18b1lfdmwKeismT3RVJVVl
ZXtCaW0yIVJAKTkxMzt3Y14mS05GMk88JnFXQDBraHAyLUxMXiU7VyYoYEA7UDdHUTFhaHNiQXtS
CnptYGt9TU0jXmgyPzJiZHIhMEtgT3NjN3QtTnghaVpkV3dhbjZIfiFAPXBCNkdoSSk9e2REMipJ
ZUlkI0dIKkwlTAp6cTF0bX4hUjw4bCUtPlp9JDdRS31mNEdpfjFhZVUrOVpMVzRPaj5QSj45JFoy
TjspZjlQd2EmVnczSEZVM1oqJCkKenUwWTU9KCRkUyg/fWN7eGUhUHskRmclZGlpezl5ZEQxR2FS
Mz84KHF3Qj9GXzNFb1NjbjFTbDUtb3dJJXZ9QDVFCnpsJUVuVz49Nit1JmxoaEJ5O1NiVXJtPkZ2
Xmw2bXMzaXRUeVc3dnlPJWBJK15sN0lKVHQpR2RtQD1+OUVCYW5Pcwp6YDxoUGFDSG1sX2VOKmJh
VVJnfjlxdkA4IypoKmNkMlIoPjVnXz5XKjhrMFMzZEtuVk5Xdll3dCQyVEt1P3pHSHsKejwoOW42
YlczKk95YlN3cFQ5YjJwejFsY3R0UzVHfmsyJSUpRj1OZmo3ZXNEfWU2PWlzI2w5V0l7SSVQQF9y
IWAyCnombitiant3MyUmbCpkJTRAbmNNVF4te2B0Yz82czhecDZAVGtQQ19ic1dvMVZ3PyVyYStC
dDhqRVB7b3x4NG1iSwp6JV5sfD5mUFY/dlBnJWRuZExYXm03eHVQdE1eZzJxPzkmYHZnY3x1UVpN
MmBBdXo1bSE0V2xQaiY0dXh8LTM/Y3gKenYjWi1PTSZySmV0Iy1rUSNVYmxhOFMjK2RjUl5qeCUr
TnxOe2srOSlJQUF9UnlqRExTYi1QX352LUN4VElxbTRUCnpePmFsT2VFQ31zYFppbnNFPWhgTzs/
cn1zWEwmeFEqSDE0MGhvQkphO1RLe0I+ZGZuTU87SjhhYTR+QT5kfVMjdwp6TDgmZ20kRWEpZWtM
azk0Tnd3NShNeCtsRnF4NWV3PUIjb3lAOyE8NlV9OTkjSjM+VWlefjZTVmlgcmh6IUE3V1IKenIx
WU5YM3tpVmQlZ1Y/SzxKTzBYUCQ1cHJJVnE9d0UmalNUaXV0YUxpKUt7IWFoTFU4P0ReTiQla2kj
ansxX2swCno/a2NTP0RTUG1hbDs8Xm1qQ3s5X3k7QTgqNXA3RTRGPkZMTyRpWG1Pd155M2JOTTFn
JlEqfn5jdztBM19jP31MZgp6bSZ8ekw+aHptQ1JRUkE0RkM2OCYta0hgd1UjcXA4RmJYKipgQzZX
amI7PHUrdDJpZSZDI21yRVIrMHx5aTVeYmwKem5jSTtoayk8fHFFPiFtdDd4V1A+aH0lNlZlNCln
fVFreXN6Yi0lRTN5cHFFbTFueWEmJD1DK0NEP1BOdFJUTXtACnolZXZuXkV8KVlaaW8/JlBvPX16
MSlqTnxWKDNxPGk2TExsKSVYbk5+OG98VV9jeG15I1dUa09UVyZhV2AkfEttMgp6UnpBblRxLTdC
LWs9c0d1SjRUd1AhI2VweWN4MSg4QTJ4czYyPHxeRkZZQmV8P1FkVXhjczxESXE+O2NIc2VSWUgK
enRkVXh0KTJfT35YJm11JCt5NCtEPUcoflN0fCEtIzc+K29YcEd8b00qYnBvVT9AcmZxT3xgV0w3
cEdTR2xCdTdSCnp1ZmFDSERAWSNJQ3pFdFA4QV9Ma0Itc3FUZDBWJVNhKSZnX1p4ZEs9dDtVYSQt
NnY3RGBuelpCIXR4cH4jXmNGdgp6ZG5fMD1yfWsye2Y2KDFzVUdLJFN3bDJOPXdyJmtwbF59T1pA
U00lMzk9JW5OYGB6X0NPUE5fMCErRFdqPG91MkwKelExKjFXN3dkNHdkTkdhPj1xVDZxRzM/KDs0
N2p2SmpGcCE5RzJ6ajBHbDdgSlp7IzE9bWY0PDF2YFo/ITdWOXxoCnooeWlnVilWYDg8SWt9WUB3
U0Y/NDJHcmkrN3sqS0dVI0M/PEdadS19NlR7Sy1QQXJfbyVRYWBDb2MrPDNVWEpkYAp6KzFpIXE+
bGF0Nm9ZdU1+ZzdIQXxgZmZIXnZTNz8+ezF+ckUpP2w1Ym12KnJDSG9iYTNjMDNEQ0UkfVphdVhG
Uz0KekU0IWczPW9zWmtxNjVVYWBaQERUdUxyWjEzSztWaiZoan4yUSleK0BQXzxQJUEyRm47eXxV
VUVYM2N6VGRBSVU0CnoqZHxWQG84fkdKI2hVNlAqamF5MEMjQDs+bnFWJkxCM1E5Z2pBT2FLMTd9
X24hRCNXOyhRVjshXnA+RjRRU1JScwp6OSNRVD91Y0xlQHF0eGJZQTx4dik5NDExQTcmRmxjKUFY
YEdiIWBNUWVnWnJDYTs8PnR5ZTVKJWY1KCFuPkhiJUAKenBmQ3J5bVpJaTx0RitvYTxySGhrd0c/
a2pQbCQrY3MhJl4jb0wmakhtS3YpKD1rdURBSEFrPDhUdVZgWG1OYGxXCno1dXVQckVqNjtNS0Zp
NXVtSDNfZ3B9c3QhZWp7KFE1eThPY0E7TmhrYzhXUTFkSmRidTJBcHp3RWJ+UykpPVNTRgp6NGc2
U0t0ZCYkZjNPV0QmSiQmOHNjQW4mVHNnM2NRLWZuSUEmRmpgO1JYPVdRUzkwSF5nPFZnendpdS1x
RX4oYkEKekZ7K3g0anpeYnJWS25BdShYMEF+a2RDUmhVNCREdk9Tckp9bXdveDJISH1AYT02UGRq
KzdreWppbmFBfmcpRXJVCnp3WitaTFc3dFlmMSY/M3I1MlVCYXIxIW1udyQ5NUpFel5uUVR6Pkhx
cUBOPFUxOU02NmJyNEdZODEoRE1kX3p5OAp6VFdDUkExeHdzWnVvMD5uUm9pWlFJU1hsP0B+WHVn
V1B+RSM3X1h6JWVNO3FQdShjanV7dH0xUHVFOUokOF9YJXgKelEwcGotV0Q7M1ImfXQkWWBiclck
SyM4QGpfNEF0QWomTWVGb3wmKVReUkJVX0AoNkVjT1VTK0F3bnZTJXR6VTs3Cnp0NmooQSUqeUwy
c2gkXzxTRlNYQjJNdFgzbDdOMClNZmhgenIjRGBBTVBxRio/Zllsd185ekZiPTZjKl85VClodQp6
Xl94V0lvc1AkTXpTU0J8KVVRckNQP3BePzskYUxRcXN8PSsreEBuKiVHeE9BOT1fUTgpaSpgdikr
KVJtYnxmYFMKemdqWDxfMTwlKGMjY2VlYWpMQVEhV3N1a1NHMXw+fHdMOXJHWEooR3dyQDFBMWRA
OG9OeWlJZDM/U1JSTUB3U2F+CnojYVI8TzZXJUxnaG5UPEcxYyVyJiM+aWYmc2VSPGM8MnA+Yzsy
OGZNLSNObHQqPTlGZmtQVjwtZVVjaHBFSGttQgp6bXVzciZNPUwrPHN1eUZ0MmtwSzA5Izx7WUkh
YnV8eTBifkwoUll0aiVsTjtadU12UjtSYDJ8YyN9dipraEJlLWsKemBzRld1NFVsdFgtWkVtMEll
am5maEs7WWNaSmFCcEtOWUZyQzJOJFkmcHs2XlBSK2ErY0JrQnJ6JjUwcDQoKXJXCnpEU3hodjVH
OHhEMkc0cUtIM3BWbXpgN3tjWXcpZS1wMHhwZS1eSUhVP0Zke1BgPGtBYSY5O2JTWjF5TDZ5NC0j
Wgp6Y1J0SXpPdUpgT3k+QCpXeVQ1MWM4Kj5MQEUmZUtjNzRob0dfdllPe1kjS0FhanVzdD1DRigo
VmBQYFRHY3BIYnAKejghTEtsJEojbkNSXz0zUzdrUXpoJSl6S0B5Y3FGViVoK1UoPDJmaVZDR3J2
MnZEWXo/UjJzKWJ7UHdRbzBAIU4+CnpuaXIrTWEmNGBSJlFoQ29UPERpXyZxU0tHfEhqNWVgSEVw
IyEpYjRIKTV6cmQ4cEhsdEpRekhtRD45IXJVKDVBZgp6QHdYNVczWTw5Rk5lfiVCWTBZbEVrI3RB
MnBUaH0xN3N0MXJgJnU/N0ZBKnpke2xHYFRpc0A/eDhkcVgxI1FTVnQKemREWSFvbzc8WT9hdUl4
U3hoUz4xUklGfGRSP1ppZ2dTKmljeSlDdjUtK0p5eFFxakp9YiVoc1I+K0R3Pl9mIXwqCnpteHlg
SXJJdG1wRUxyQjwxSHRwYUJGeCtXSDV8bGphRyQzYmp0R31fYCtpU213JndUZyQjLWpVPU9FKTB2
RiZ6fQp6U0M2KCpEazBXVDd+emQreHBCaWpsSDd8Qyk+T1pTUzhIOUxKSnxhT2MkUHsoY0I9NzRx
RjlWOFpNWDY9MzlJUWQKemlNeDx0VVk9KGpofFFtZV80ZXlmezQjeSVBRDsxZyo7QUpPWnxPfldU
ZntsSXsrQCV7MUpCMVgoVnY2JlE+V2omCnp3VElseFo7MDZ+MWlmKHY2ZyEzZC1MZitvRlNTS1BP
a1JqemotUjVER1BeJVlkX25pd0RlPyp3YkI1OThaYiRoJgp6JkJJQjV6N0lTRnJNVWVPbmNVa1NQ
aFckPT1ZQkFHI01XREsxMmBBMC0pPWthWj5WKklHclB5RGFpI1BIKE57OGQKejhZeGEwQmVreUVD
PXhsdzw2M1NWPU0ycURDKmReKEpaZmFBdz9mY0FqVC0xJHU2ezlaSUUqO285cmopS0VKZEk2Cnoj
dz41diUpTDUrcDZGUTRfc05ITSpTJiRLYXlSYEBkYygqTzBvaEhAO3h6b2RZLTFIXnpaa2AwN1BH
WTVOK0gjKQp6I2FnYnIjLS10bnRodl9LYntmZn10ODFkWHZSQyswdzNRSm4qS1dnSEwjJn4yTCo5
cSgkciMqUDdzSn1fNTBxT2cKel9oVVBqVFhzKip0JCVzP1F0fj9vN29vO0hFQXRAXiNVQCYqOX4w
dyttQUA+fUo2K2xOJUgmJkYtT0UkVyEpYXY0CnprYmE4b2AqNFN7TEp+KnpgQFVaWmY4M0B6NT9A
WU4xcEU+X0lwUGE/YCR0elZhJHl5PXsmd2VqOU54WXs7a28+JAp6XjBmR3ZNJEdYRipzYmZVVWdj
VUFZdjw8JT5Gey1OPGZFQV5ZRzFKaWBmMzhfS3lYezEtK2VWbkhxdGlBKXRVSDgKelhmKVpDUUxn
LUxWX2V+VDxVWTRXLWptZi14czJldilYM0UxQil7Qyg9QX5YdFVrZkhaKFg4VmhieGoyMHNwelIl
CnojQndEOVhJVTQpWVR1UktAOVk7Xkkhbi1nJTAjV1AoNDE2UTdMPVc4LWt0UGNCa09vSyV2bnlw
WF9NUld1Y3dsQQp6U3Axd2FsNjtUbjMhJCNJdUg+T3RANWlwXmxIMU1LKHI1TztDR05JMWpgezVA
PTJSUVElPGpHWlVkR29WQTZeOHQKejhaWDlnV1BhWmgzRypeNUZaPD4pWHpRWF8/K0hJKCNuS2Fa
KWJsTGpjKVpRYzNAdkI4UVNgTm9hbnR0OXp1Rj1sCnotVnkjclZsKzJKVm5wTGtze0Y1ViMoRzxM
YHwkNj0hNWlVIzhBbT1mN01DME1NMjNrUVhtJCF+e2xvSilxdSZ4aAp6JlNWZWh6Mk5sNDY1ZUJm
RnlUT0JFT3hIKkltSXJwNHo+ZCRhc2ReKVlvayNTb3U1elNNM3hMXzt3Tn5iZS0jZCYKejNJMXxi
fEthdV9JIWYzfWJeJkh4SWgjcWI1JSV9UWFxKlhKV0ZBUEZ6UlNwWD5OeDU5cnt2fTglTzUlIylZ
bjxzCnokd3YxansmRCUpdEBPfiZJKHMlSXl9MzFSanI9fTVNX3ZqM0xBMXlzWnNkNWUjX1AqZWU9
MDJkSmUtJT5BSHtFWgp6dT0hbHtAeWNZQ0lEZ0VvWWA7RV5KIU8wKHpjYi1ad08tNztfKWtVPm1N
YGJHRWNhcj1YM30jI2Y2ZWpMSEN+S3gKek1xVTlwJU40bjxAblc8e050XmpuKkxYM2FTTH5zJVV3
Tk8pYXhYVVEpN3RgJW0zVDJRcUIkUz54M0BMK15QJjd4CnpZbjxiJFl5MjNHV3U/QGVOUyN+Qnl+
bmM3aSZmVkZSIz9xNClmMGN0Qjw5WStCQ1g8X19eSjBIeSVoMGNoXiNWMwp6PkRFYS0/c0hIUE4q
YlRHSChFM1lPTEpZeTg0MTA0KmY+PllJa3RuSkJXZzhGb0M9eilad2lpUmxuYCtXYE9WPmMKelA5
PlJANU1CIURiIVIpVFl0UDVveCNzN29XQ157TnYwXlRrcDg3N1p0Pit4QkBUfkVjXihGKEheR2J4
QjFWPWNKCnpWX1ZPOHg7TW1iNFVSZVNENUNfZVl7I3dFYjMlTlBgSml6I0ZESyh4PnA3Vl9ySF9u
YjFrWllJZDI+RmBET2pzQAp6NWo8WFF8NEhWbGpfUGxWYi1nVjJWIUpEdnNqREQrR0hkYFY9dkdk
eGY1UTNvXm1CQ2pQUnYtZD9ldzFjKzIkQTAKemt7dCZsWUNBS3FzbjVjJGpYa3NPKGNjT1RHZ3wk
TmR7Mm1QS248RzlPJDYyJCZKVDQ+aHBUY2deMjY9SjR8JFlgCnpaKHZtIVVEZTAkfEVUbk57e0Q9
QHZnUSs4KHN7IzRoKzFeISZVWT5RaSpmcEtCPm97fjFuIUlXWUElTkE8OSFMawp6TUw4XjJnfUpZ
S2AxcDxDeUQwYStsYk00am1kNlBEWW56WXo3KE9yZXd6SU1yaUFKZWQ0fDhlZHk5UkZ5RjkpfjkK
enZaVWBCPGRvX2ZGR2Y0enokZUpAbUV+Uyt3PGk5JHV+aEVRJTVwRVp5WFhFejh7dyNIeWNqUF95
a0M3NSNhVSljCnpebEg3QkBxVWpja0JJIXFRaiVxajd2bSs3cTMjWSspP0pCdDFRRGF+bk5TJkZP
MGkzWW4xbDZHV3lhSmVHcHcxVgp6JmZyYXM7YlBSMz8+VCZWUGt+ISo1IyErVTxpVD95ajkxUDM7
UGVsI3tIblk/ZHV4aERyLS1iYlkkNmtiRXA9NjsKenZtMzE1byt6ak4qRCpgWVQhUXBjb0xrMntl
NWBCbDw8M3JpUV5iSE1EVkMqdms4JW1wT1l4VEEqV0Z1Z1ZlKFFoCnpydXNYPUlsaXtlaX1sS01o
SSU0OVA0dH1laVgzbVIpe0VJUj5YITZoJiphPHR8Nj4/RzcyYlR+K25NRFZ8NWY9cgp6bTN5KC1F
WTQrKyVEaDt2aCVDYDRQN3VwVFJiQXU3bX51T0YmaGs8KHJVUWArYF4+eTt2WlRGUUZKXlFfVSU0
NyMKekEzPUMyKyFsR1o+I0xxJGxtRCtUVihGWHVMPGBNIXJ4Ul5yJkgzOT5MfHVzSjVna0VDUSFZ
RjxxNHh6dGpxMCVYCnpyNSYtRDxsUFp9O1lCeykjJTUxZi0kKGRpXjZ3cDshfW1FSGNtfk0+c196
fShpIWF9Y2h+bl5hJEApdGlUK2JBVgp6QiR1bW56dXUxPnVMfmM2cEVjJlgmV2phWSo0IUNwdTRk
cShmJDdjeWBvPnV3K0w+RjNYaUcwZzxtRWsoeWBOXncKekYkWVItcUY/WER7LXVuTj1JZlNOJVde
TmFMKmJRfFNhUHxmR0F8YWgtMGteJFVFe0BnT3s4YXxjfml5P1RheHFHCnp1bEhpTjdtfH4wdy1Q
U356QlBGfFdwPCEtYDcxVyVqKCM0X09SZCRJVG8lMXJGWHFkX2AjYnJNSmNwT2ZvVUg1bwp6U2d+
VmQhSzV7VjU+fUZXLXBAbU5EVmlUTD9TcmNxfEp5bipSXnQ3ZiYtU3BrYnpaRlhKeGtVXiRxbFR5
b2BkcEkKenhfajwqdSMjJiRTNjFHTiZLU2xePCUmcCZfZmhLbjxnKG4wRXhqP3NvWXo7UFNRflBV
QUgmM3tTaWIrNU1oVzRpCnpmYVBOYnBoMnVaXzNHMkZfaFNFUEFySm9Zd3Ele0slKlhAYk95QldJ
bWF0IyUjaCFuO0hYcElGKz4zMmJeY08kJQp6TktQSGR4Tk54e0wzays7PVh4cHM3XlUpa3BTczQy
aygpfnxyeTAkZTZ7fCRLUFdTNyoqbmNXPVZFNUx+UDN6VHEKekZ7Nip7JVFPbml5IylUcyQ4WkdV
ckdVUj5fI2VyUD92TG1rbCRSM3JMMSEpWmkyOEtLRmtVSzFuPmNsdUhKNnVxCnpGJiYtRC1zfk1g
Mlcya1oyKk9KdFUmKyVRdXpZayE1TUJ6SihWTzJaVn5AdypYVnAjbkJ9Z3d0b2RyRWp0IXVtKAp6
SEgkZClBKHV+RT1mI0BhSzc4N35ST1g8KGwhJjVVNzd2VFBIaHc5OD1ZOG5jZCRCWUJQbFM4czZa
MlRfSnN5Z3QKekBfWHJARlQrTnR2ST55dkw3JVFvYkEjSSFfMDFKJSZPdiU5eyFhUkxNYG1efHht
NCFHZzc+NU0jZDE3KHNUVUxUCnoxPFElJT0ta0MkRU4kfWAjIUtadV98PTslZCFqWDtQWEJWd2B9
SnxgPFBeK2QmK0VPfFFeWG9DbSpeOURMWmoybAp6XjQqVmtUUTY3V0JqY25pWH1MPSo9ajlUbG0h
ZklgLW9ELV47O3lYVG50Q0hNN2pFPm5GQTxSXmxZWHtRa0BZeSUKemJJQV5reUlxT1ArbWtqJXhi
KSlpYSt4Z0hqbWJhTSRmKDUkbER8OTs3cEtPMTRIayE7cXQ9Ny1Rb0EjKSVWPE8xCnpIPmA/ekco
QFNuRXRPazxOVUp5fWQ0SDQ+X0o0Uzl0VGlKfW1Sb3JfVkh9dylXY0tIPT9PWHo1NyV2cSlMcGF+
QAp6U0YzWWQ9ZiVwYTNGK21Ce2J7dXt6c09jPT5gPmtwZTtZM3NII2F7TUp+JDZmWEJfRW5pQG5T
OE4xNWZuLXV6MWIKemB9PX5RSExibXp7WStNTFRpeHR6JElzY0MpP1V1QVRJKGVpWlJfUmdCR1FW
dF4+UzVAK141cmdNUzg/NiptZCp2CnozIVdsNTI3OGs9VjxuYEhTeHA9dnowXyZoRDcyc0FadnRU
X1M5YlMpb0MmcGlVaHJGI2RwKlVBQGJ6SU5Yd29kRAp6VkRFfk5pO0Yqd1p3anc9eDM7dH4qa15X
UU5jZlRYZU9URGhoXj9qZi1TKiE0JV5MQVdkUjFxeyN4IUhwPVJPczAKelBaY1dgVS1lJCFzJTR+
KGdsbF5WeyFCRUV6WUdyVEN6OUxsOCtVYHglWUJPT1lIckJmVUF0VntWKHNHRzxmbEM5CnpCWEdY
fThKRklDOyR5eXJtamZiVm9YRn1hNGJzNTJzcHM9cmV5VSYzJlhWMFBKN2Fke3huJE8yQE4kPyhg
czNXSwp6WTM9MiNDI2lIJnh8USNqdiopZE0ofih3UVBVPG54MnEtYXZ4c2w0RHlwKHYkTXQ3WmQ+
UnN3Knp1dD5JP0U9KVEKektOcjIhOD0ta1c9QWdXa3hYOzcrMmBkTExHSTZKZVRmNGZ1PWlVJFRi
I19iNGZ9P1omRlFmU0RhZF40SlliUlEoCnpIOyNEWXFaaSM2IUZaYD9jOHZCRk48PnhGMktDazs1
NDR4XjRlMWY5NXZ6eDA2RU9uJFNkU3BRNm0ofHJxNiV7NAp6PnZaa2d0dk5qKHlxQ0l0TjJgPT1l
TS0mZ0FhX0Q3cmljODJTeDtxJkxJZ1lHalc0RlI0KTd2LS1xOytKdzt4MUAKej9CeCZpMGxETzMp
MzVocC15NjxwamM5QXNuYilZOGBSVFViK2V0c3w8dDFTOCVoWTw8P0xoVklVJmAjbj5mMml8Cnp4
I3pETEwmc3VzKHlHZDlLQ0clMTZDbHBiUEQxblV0dTtUKGB8dCkyRldUT3M4Nn5lfXcjYVYhfE5a
TnNjbF5uegp6dTw9cl8yQT5EM1BfQn5tYTkoUGhxcTZzNzx6VCU7V0FmNEl5Pm4ybXEtIXlGSW47
OSZ2SXoxeW1YfkBsQzVfaWkKejViVXxtbSU1ajJMXiQ1byVheUtFeXhfTz12UjthfWByQ045UDxm
KGJwVUV1N3ZoYSEpPnooYkViZV58aztBIUxLCnoweHZsQy18YTJnKWJrTzltcU5XV1AyVSROXlJW
YVB5d3Z2Mj9jVEJNTmQ3I0B2ZCk3WEwzazxUQyNIQnFEbkZ0Owp6WCtEPilRcT8oQz9mU0psb1Yp
Rz9uYmhSJXVzYHFqQmR2Uz1gZG9qI3tvRG1ydU8hbUdTeDIoPXg2KElIeHNBO0gKentKRV49ZDlU
KURATiE1dHJ+MkVmSVczMSszYWZpT2AzYHVCQzZeYiQ7Xmg+WnJnalcoLVMjSj90b2pnczNKRVhY
Cno0bjQ8JVZzQkUlI1BVNS1BOWZ2OFhsbkZ8RkZONDJFenVzZ0BOJSN4eX45JmI0PllZXnhvcFFV
PiFAJU96cyk1bQp6c3BLJFREdSpJMyY5R0VZaCg0OGhNPFdPP2cmUShMI0tgSWhPSWh5NF9HXihs
ZXp4WURsKWhNNz1mKFBXR2cjWD8KekZWPXNVIVA/ZSZ2RmZSOyN6TDZZTkoze291NzdoLVVQfFNo
VyFeeTVvNillUXdVQEl5PWw0Q3h0M3xpU151V3EjCnpXUiFGSVRIQ3hXezJiX1JeMFg3e3hnK0Mm
NE5QQGp0ZmtCdFNAem84emMkfXlFezl9SVljRlIrTm0tTk1PbSt4fgp6PWxWY3lHcEJDMzI2fGd1
bG1reFcqP2FwcnM5VVYoMEcrZUVHPmdLPTw+SlRVPDx1ZSNrMDwtVWBDQzNSeTs/NzMKenk9bFZF
cT5YcHtRblZ0Y3ZrZEV7ZFBnazJgbnwqa2tUQUpJPFRCPjs9QWh6fnVxZXh2U3x+NTI8ZillWHFm
ZXd+CnpvQ0QpeVhyRTZlRF99WFB5bVZPaGA9WGU8OTIwZjVTQWFPPChXcUFjV3M7T3JIQFpRLTN2
QkIreDRsSzVeOUxlcgp6e016VERiTiMjVENGa3B+Y3skJH5VQUlVc3d4OFhIZUl0V2RHflpMcz1Z
UzkxUG58ZUNFMTkwK3YjUXFnYFZkfFUKelV5Qn55bFQ2emleNTM7OE9UNFl+Vm0mLVJBN1AhK3Z4
S0AyPmREdn0/ISpZVjx4SkVWP30xZXBPT3k3fiRlUD8rCnpiYzRJUWBoXzk9bn4wR3tEOWNebSRL
PTgqc2NYXzcpJnU7PUc2cSFGY3JrTGpNZjFYU2YyNm1HcE5mb2ZKKU1Lewp6UWNDdGRlYFA3QkdK
XjBeTlJne2dDVmdRMThFc1l1VE9EfUdmVmZPYUlvOHQ0KGN6Py1vZDR6MkA9YEEqVUtgTX0KeilF
cllAPmNzXjBselY5Vk5haFlSPSheO1FeMVgoZmlub1FBZ1MqcE0pVl5fQD4wSXdAQmR4cmdxX3NI
RHs2RyVhCnpAc3hGNF5BYzw0PD50RGBNZlhRQlplczFjK342eD1YRHVxJGxTIzY7JSg0Z2E0fUhS
bGI1OFNHRz50dTs/THVgUApuViFkb1hRdWl9dTU5SXB5dXtyVGQ/MXBGITxNLXs8fEV1eF5wMWM+
bVRFWUIzVUB1O3IKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yLmpzb24gYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KaW5kZXgg
YzJjNGZlZWI0ZWM3M2ZjOWMxZjNjZmI2OGQ2ZWY2ODA5NmJkOTM0NC4uNzcwYjFiMWRiYzkxZDU4
ZTU3NTQ0OTI4YTk5ZjJiYzc1Y2MwMjM1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3Rvci5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3IuanNvbgpAQCAtMzE3LDYgKzMxNywyMiBAQAogICAgICAgICAgICAgICAgICAgICB7ICJu
YW1lIjogImhlaWdodCIsICJ0eXBlIjogImludGVnZXIiLCAiZGVzY3JpcHRpb24iOiAiT3ZlcnJp
ZGluZyBoZWlnaHQgdmFsdWUgaW4gcGl4ZWxzIChtaW5pbXVtIDAsIG1heGltdW0gMTAwMDAwMDAp
LiAwIGRpc2FibGVzIHRoZSBvdmVycmlkZS4iIH0KICAgICAgICAgICAgICAgICBdLAogICAgICAg
ICAgICAgICAgICJoaWRkZW4iOiB0cnVlCisgICAgICAgICAgICB9LAorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgICJuYW1lIjogImNhblNob3dQYWludFJlY3RzIiwKKyAgICAgICAgICAg
ICAgICAiZGVzY3JpcHRpb24iOiAiUmV0dXJucyB0cnVlIGlmIHRoZSBiYWNrZW5kIGNhbiBzaG93
IHBhaW50IHJlY3RzIiwKKyAgICAgICAgICAgICAgICAicmV0dXJucyI6IFsKKyAgICAgICAgICAg
ICAgICAgICAgeyAibmFtZSI6ICJyZXN1bHQiLCAidHlwZSI6ICJib29sZWFuIiB9CisgICAgICAg
ICAgICAgICAgXSwKKyAgICAgICAgICAgICAgICAiaGlkZGVuIjogdHJ1ZQorICAgICAgICAgICAg
fSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAibmFtZSI6ICJzZXRTaG93UGFpbnRS
ZWN0cyIsCisgICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlJlcXVlc3RzIHRoYXQgYmFj
a2VuZCBzaG93cyBwYWludCByZWN0YW5nbGVzIiwKKyAgICAgICAgICAgICAgICAicGFyYW1ldGVy
cyI6IFsKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJyZXN1bHQiLCAidHlwZSI6ICJi
b29sZWFuIiwgImRlc2NyaXB0aW9uIjogIlRydWUgZm9yIHNob3dpbmcgcGFpbnQgcmVjdGFuZ2xl
cyIgfQorICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgImhpZGRlbiI6IHRydWUK
ICAgICAgICAgICAgIH0KICAgICAgICAgXSwKICAgICAgICAgImV2ZW50cyI6IFsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDbGllbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDbGllbnQuaAppbmRleCA1M2I1NWM1ZWFiYjE3MDQ3
ZGIyNTQ3MjY4Zjk2ZjRiN2E2ZDE0N2E4Li5kNWRkZGZmMDBiNTgyMTgwY2YxN2FiMTM1ZTZmOGJi
NTI2YjAzZjE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
Q2xpZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNsaWVudC5o
CkBAIC01NCw2ICs1NCw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJCcm93c2Vy
Q2FjaGUoKSB7IH0KICAgICB2aXJ0dWFsIGJvb2wgY2FuQ2xlYXJCcm93c2VyQ29va2llcygpIHsg
cmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVhbCB2b2lkIGNsZWFyQnJvd3NlckNvb2tpZXMoKSB7
IH0KKyAgICB2aXJ0dWFsIGJvb2wgY2FuU2hvd1BhaW50UmVjdHMoKSB7IHJldHVybiBmYWxzZTsg
fQorICAgIHZpcnR1YWwgdm9pZCBzZXRTaG93UGFpbnRSZWN0cyhib29sKSB7IH0KIAogICAgIGJv
b2wgZG9EaXNwYXRjaE1lc3NhZ2VPbkZyb250ZW5kUGFnZShQYWdlKiBmcm9udGVuZFBhZ2UsIGNv
bnN0IFN0cmluZyYgbWVzc2FnZSk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCmluZGV4IDQ5MWU2NTA2YmFhYzg1YWZiMjk3MTE3MDA3
Y2ZhYTRmMTc5YTg2YjEuLmMwODcyMWQ5YjNlZDkzODllMDczNTc5MzBlOTEwOTRiZTllMDNlZTUg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5j
cHAKQEAgLTgzLDcgKzgzLDcgQEAgSW5zcGVjdG9yQ29udHJvbGxlcjo6SW5zcGVjdG9yQ29udHJv
bGxlcihQYWdlKiBwYWdlLCBJbnNwZWN0b3JDbGllbnQqIGluc3BlY3RvckMKICAgICBtX2luc3Bl
Y3RvckFnZW50ID0gaW5zcGVjdG9yQWdlbnRQdHIuZ2V0KCk7CiAgICAgbV9hZ2VudHMuYXBwZW5k
KGluc3BlY3RvckFnZW50UHRyLnJlbGVhc2UoKSk7CiAKLSAgICBPd25QdHI8SW5zcGVjdG9yUGFn
ZUFnZW50PiBwYWdlQWdlbnRQdHIoSW5zcGVjdG9yUGFnZUFnZW50OjpjcmVhdGUobV9pbnN0cnVt
ZW50aW5nQWdlbnRzLmdldCgpLCBwYWdlLCBtX3N0YXRlLmdldCgpLCBtX2luamVjdGVkU2NyaXB0
TWFuYWdlci5nZXQoKSkpOworICAgIE93blB0cjxJbnNwZWN0b3JQYWdlQWdlbnQ+IHBhZ2VBZ2Vu
dFB0cihJbnNwZWN0b3JQYWdlQWdlbnQ6OmNyZWF0ZShtX2luc3RydW1lbnRpbmdBZ2VudHMuZ2V0
KCksIHBhZ2UsIG1fc3RhdGUuZ2V0KCksIG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLmdldCgpLCBp
bnNwZWN0b3JDbGllbnQpKTsKICAgICBJbnNwZWN0b3JQYWdlQWdlbnQqIHBhZ2VBZ2VudCA9IHBh
Z2VBZ2VudFB0ci5nZXQoKTsKICAgICBtX3BhZ2VBZ2VudCA9IHBhZ2VBZ2VudFB0ci5nZXQoKTsK
ICAgICBtX2FnZW50cy5hcHBlbmQocGFnZUFnZW50UHRyLnJlbGVhc2UoKSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCmluZGV4IDNiZjQ2ZDJl
NTIxZWM0MjM4Yzk4N2I1ZmMzM2FiNTE5NjQ3MjhjZjEuLjA3MmE0YzU2ZDhjNGYzNzY3ZWMyZGFk
OTQ5ZTVjMDQyYzY0NjczNTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JQYWdlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JQYWdlQWdlbnQuY3BwCkBAIC01Myw2ICs1Myw3IEBACiAjaW5jbHVkZSAiSFRNTE5hbWVz
LmgiCiAjaW5jbHVkZSAiSWRlbnRpZmllcnNGYWN0b3J5LmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRT
Y3JpcHRNYW5hZ2VyLmgiCisjaW5jbHVkZSAiSW5zcGVjdG9yQ2xpZW50LmgiCiAjaW5jbHVkZSAi
SW5zcGVjdG9yRnJvbnRlbmQuaCIKICNpbmNsdWRlICJJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24u
aCIKICNpbmNsdWRlICJJbnNwZWN0b3JTdGF0ZS5oIgpAQCAtODAsNiArODEsNyBAQCBzdGF0aWMg
Y29uc3QgY2hhciBwYWdlQWdlbnRFbmFibGVkW10gPSAicGFnZUFnZW50RW5hYmxlZCI7CiBzdGF0
aWMgY29uc3QgY2hhciBwYWdlQWdlbnRTY3JpcHRzVG9FdmFsdWF0ZU9uTG9hZFtdID0gInBhZ2VB
Z2VudFNjcmlwdHNUb0V2YWx1YXRlT25Mb2FkIjsKIHN0YXRpYyBjb25zdCBjaGFyIHBhZ2VBZ2Vu
dFNjcmVlbldpZHRoT3ZlcnJpZGVbXSA9ICJwYWdlQWdlbnRTY3JlZW5XaWR0aE92ZXJyaWRlIjsK
IHN0YXRpYyBjb25zdCBjaGFyIHBhZ2VBZ2VudFNjcmVlbkhlaWdodE92ZXJyaWRlW10gPSAicGFn
ZUFnZW50U2NyZWVuSGVpZ2h0T3ZlcnJpZGUiOworc3RhdGljIGNvbnN0IGNoYXIgc2hvd1BhaW50
UmVjdHNbXSA9ICJzaG93UGFpbnRSZWN0cyI7CiB9CiAKIHN0YXRpYyBib29sIGRlY29kZVNoYXJl
ZEJ1ZmZlcihQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gYnVmZmVyLCBjb25zdCBTdHJpbmcmIHRl
eHRFbmNvZGluZ05hbWUsIFN0cmluZyogcmVzdWx0KQpAQCAtMTg4LDkgKzE5MCw5IEBAIGJvb2wg
SW5zcGVjdG9yUGFnZUFnZW50OjpzaGFyZWRCdWZmZXJDb250ZW50KFBhc3NSZWZQdHI8U2hhcmVk
QnVmZmVyPiBidWZmZXIsIGNvCiAgICAgcmV0dXJuIGRlY29kZVNoYXJlZEJ1ZmZlcihidWZmZXIs
IHRleHRFbmNvZGluZ05hbWUsIHJlc3VsdCk7CiB9CiAKLVBhc3NPd25QdHI8SW5zcGVjdG9yUGFn
ZUFnZW50PiBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNyZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRzKiBp
bnN0cnVtZW50aW5nQWdlbnRzLCBQYWdlKiBwYWdlLCBJbnNwZWN0b3JTdGF0ZSogc3RhdGUsIElu
amVjdGVkU2NyaXB0TWFuYWdlciogaW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKQorUGFzc093blB0cjxJ
bnNwZWN0b3JQYWdlQWdlbnQ+IEluc3BlY3RvclBhZ2VBZ2VudDo6Y3JlYXRlKEluc3RydW1lbnRp
bmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMsIFBhZ2UqIHBhZ2UsIEluc3BlY3RvclN0YXRl
KiBzdGF0ZSwgSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKiBpbmplY3RlZFNjcmlwdE1hbmFnZXIsIElu
c3BlY3RvckNsaWVudCogY2xpZW50KQogewotICAgIHJldHVybiBhZG9wdFB0cihuZXcgSW5zcGVj
dG9yUGFnZUFnZW50KGluc3RydW1lbnRpbmdBZ2VudHMsIHBhZ2UsIHN0YXRlLCBpbmplY3RlZFNj
cmlwdE1hbmFnZXIpKTsKKyAgICByZXR1cm4gYWRvcHRQdHIobmV3IEluc3BlY3RvclBhZ2VBZ2Vu
dChpbnN0cnVtZW50aW5nQWdlbnRzLCBwYWdlLCBzdGF0ZSwgaW5qZWN0ZWRTY3JpcHRNYW5hZ2Vy
LCBjbGllbnQpKTsKIH0KIAogLy8gc3RhdGljCkBAIC0yNzMsMTAgKzI3NSwxMSBAQCBTdHJpbmcg
SW5zcGVjdG9yUGFnZUFnZW50OjpjYWNoZWRSZXNvdXJjZVR5cGVTdHJpbmcoY29uc3QgQ2FjaGVk
UmVzb3VyY2UmIGNhY2hlZAogICAgIHJldHVybiByZXNvdXJjZVR5cGVTdHJpbmcoY2FjaGVkUmVz
b3VyY2VUeXBlKGNhY2hlZFJlc291cmNlKSk7CiB9CiAKLUluc3BlY3RvclBhZ2VBZ2VudDo6SW5z
cGVjdG9yUGFnZUFnZW50KEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRpbmdBZ2VudHMs
IFBhZ2UqIHBhZ2UsIEluc3BlY3RvclN0YXRlKiBpbnNwZWN0b3JTdGF0ZSwgSW5qZWN0ZWRTY3Jp
cHRNYW5hZ2VyKiBpbmplY3RlZFNjcmlwdE1hbmFnZXIpCitJbnNwZWN0b3JQYWdlQWdlbnQ6Oklu
c3BlY3RvclBhZ2VBZ2VudChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRz
LCBQYWdlKiBwYWdlLCBJbnNwZWN0b3JTdGF0ZSogaW5zcGVjdG9yU3RhdGUsIEluamVjdGVkU2Ny
aXB0TWFuYWdlciogaW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLCBJbnNwZWN0b3JDbGllbnQqIGNsaWVu
dCkKICAgICA6IEluc3BlY3RvckJhc2VBZ2VudDxJbnNwZWN0b3JQYWdlQWdlbnQ+KCJQYWdlIiwg
aW5zdHJ1bWVudGluZ0FnZW50cywgaW5zcGVjdG9yU3RhdGUpCiAgICAgLCBtX3BhZ2UocGFnZSkK
ICAgICAsIG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKGluamVjdGVkU2NyaXB0TWFuYWdlcikKKyAg
ICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1fZnJvbnRlbmQoMCkKICAgICAsIG1fbGFzdFNj
cmlwdElkZW50aWZpZXIoMCkKICAgICAsIG1fb3JpZ2luYWxVc2VGaXhlZExheW91dChmYWxzZSkK
QEAgLTMwNSw2ICszMDgsNyBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6cmVzdG9yZSgpCiAg
ICAgICAgIGludCB3aWR0aCA9IHN0YXRpY19jYXN0PGludD4obV9zdGF0ZS0+Z2V0TG9uZyhQYWdl
QWdlbnRTdGF0ZTo6cGFnZUFnZW50U2NyZWVuV2lkdGhPdmVycmlkZSkpOwogICAgICAgICBpbnQg
aGVpZ2h0ID0gc3RhdGljX2Nhc3Q8aW50PihtX3N0YXRlLT5nZXRMb25nKFBhZ2VBZ2VudFN0YXRl
OjpwYWdlQWdlbnRTY3JlZW5IZWlnaHRPdmVycmlkZSkpOwogICAgICAgICB1cGRhdGVGcmFtZVZp
ZXdGaXhlZExheW91dCh3aWR0aCwgaGVpZ2h0KTsKKyAgICAgICAgbV9jbGllbnQtPnNldFNob3dQ
YWludFJlY3RzKG1fc3RhdGUtPmdldEJvb2xlYW4oUGFnZUFnZW50U3RhdGU6OnNob3dQYWludFJl
Y3RzKSk7CiAgICAgfQogfQogCkBAIC02MjMsNiArNjI3LDIxIEBAIHZvaWQgSW5zcGVjdG9yUGFn
ZUFnZW50OjpzZXRTY3JlZW5TaXplT3ZlcnJpZGUoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBj
b25zdCBpCiAgICAgdXBkYXRlRnJhbWVWaWV3Rml4ZWRMYXlvdXQod2lkdGgsIGhlaWdodCk7CiB9
CiAKK3ZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpjYW5TaG93UGFpbnRSZWN0cyhFcnJvclN0cmlu
ZyosIGJvb2wqIHJlc3VsdCkKK3sKKyAgICAqcmVzdWx0ID0gbV9jbGllbnQtPmNhblNob3dQYWlu
dFJlY3RzKCk7Cit9CisKK3ZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpzZXRTaG93UGFpbnRSZWN0
cyhFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGJvb2wgc2hvdykKK3sKKyAgICBpZiAoIW1fY2xp
ZW50LT5jYW5TaG93UGFpbnRSZWN0cygpKSB7CisgICAgICAgICplcnJvclN0cmluZyA9ICJTaG93
aW5nIHBhaW50IHJlY3RzIGlzIG5vdCBzdXBwb3J0ZWQuIjsKKyAgICAgICAgcmV0dXJuOworICAg
IH0KKyAgICBtX3N0YXRlLT5zZXRCb29sZWFuKFBhZ2VBZ2VudFN0YXRlOjpzaG93UGFpbnRSZWN0
cywgc2hvdyk7CisgICAgbV9jbGllbnQtPnNldFNob3dQYWludFJlY3RzKHNob3cpOworfQorCiB2
b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKEZyYW1l
KiBmcmFtZSwgRE9NV3JhcHBlcldvcmxkKiB3b3JsZCkKIHsKICAgICBpZiAod29ybGQgIT0gbWFp
blRocmVhZE5vcm1hbFdvcmxkKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yUGFnZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yUGFnZUFnZW50LmgKaW5kZXggNTllZDcwOWQ3YmQ1NjYwZGZlM2UxODYyZDY1MTdmYWE0MmIw
NWViYi4uYTc0Y2Y2ZTkwMDA3ZjdkMDU0NTUwNjkyNDdhZTExNDhmMzVmMGUwOCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuaApAQCAtNTAsNiArNTAs
NyBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIEZyb250ZW5kOwogY2xhc3MgSW5qZWN0ZWRTY3JpcHRN
YW5hZ2VyOwogY2xhc3MgSW5zcGVjdG9yQXJyYXk7CitjbGFzcyBJbnNwZWN0b3JDbGllbnQ7CiBj
bGFzcyBJbnNwZWN0b3JPYmplY3Q7CiBjbGFzcyBJbnNwZWN0b3JTdGF0ZTsKIGNsYXNzIEluc3Ry
dW1lbnRpbmdBZ2VudHM7CkBAIC03NCw3ICs3NSw3IEBAIHB1YmxpYzoKICAgICAgICAgT3RoZXJS
ZXNvdXJjZQogICAgIH07CiAKLSAgICBzdGF0aWMgUGFzc093blB0cjxJbnNwZWN0b3JQYWdlQWdl
bnQ+IGNyZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRzKiwgUGFnZSosIEluc3BlY3RvclN0YXRlKiwg
SW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKik7CisgICAgc3RhdGljIFBhc3NPd25QdHI8SW5zcGVjdG9y
UGFnZUFnZW50PiBjcmVhdGUoSW5zdHJ1bWVudGluZ0FnZW50cyosIFBhZ2UqLCBJbnNwZWN0b3JT
dGF0ZSosIEluamVjdGVkU2NyaXB0TWFuYWdlciosIEluc3BlY3RvckNsaWVudCopOwogCiAgICAg
c3RhdGljIGJvb2wgY2FjaGVkUmVzb3VyY2VDb250ZW50KENhY2hlZFJlc291cmNlKiwgU3RyaW5n
KiByZXN1bHQsIGJvb2wqIGJhc2U2NEVuY29kZWQpOwogICAgIHN0YXRpYyBib29sIHNoYXJlZEJ1
ZmZlckNvbnRlbnQoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+LCBjb25zdCBTdHJpbmcmIHRleHRF
bmNvZGluZ05hbWUsIGJvb2wgd2l0aEJhc2U2NEVuY29kZSwgU3RyaW5nKiByZXN1bHQpOwpAQCAt
MTAxLDYgKzEwMiw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2VhcmNoSW5SZXNvdXJj
ZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmLCBjb25zdCBib29sKiBjYXNlU2Vuc2l0aXZl
LCBjb25zdCBib29sKiBpc1JlZ2V4LCBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+Jik7CiAgICAgdmly
dHVhbCB2b2lkIHNldERvY3VtZW50Q29udGVudChFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYg
ZnJhbWVJZCwgY29uc3QgU3RyaW5nJiBodG1sKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0U2NyZWVu
U2l6ZU92ZXJyaWRlKEVycm9yU3RyaW5nKiwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKyAgICB2
aXJ0dWFsIHZvaWQgY2FuU2hvd1BhaW50UmVjdHMoRXJyb3JTdHJpbmcqLCBib29sKiByZXN1bHQp
OworICAgIHZpcnR1YWwgdm9pZCBzZXRTaG93UGFpbnRSZWN0cyhFcnJvclN0cmluZyosIGJvb2wg
c2hvdyk7CiAKICAgICAvLyBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24gQVBJCiAgICAgdm9pZCBk
aWRDbGVhcldpbmRvd09iamVjdEluV29ybGQoRnJhbWUqLCBET01XcmFwcGVyV29ybGQqKTsKQEAg
LTEyNyw3ICsxMzAsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIERvY3VtZW50TG9hZGVyKiBhc3Nl
cnREb2N1bWVudExvYWRlcihFcnJvclN0cmluZyosIEZyYW1lKik7CiAKIHByaXZhdGU6Ci0gICAg
SW5zcGVjdG9yUGFnZUFnZW50KEluc3RydW1lbnRpbmdBZ2VudHMqLCBQYWdlKiwgSW5zcGVjdG9y
U3RhdGUqLCBJbmplY3RlZFNjcmlwdE1hbmFnZXIqKTsKKyAgICBJbnNwZWN0b3JQYWdlQWdlbnQo
SW5zdHJ1bWVudGluZ0FnZW50cyosIFBhZ2UqLCBJbnNwZWN0b3JTdGF0ZSosIEluamVjdGVkU2Ny
aXB0TWFuYWdlciosIEluc3BlY3RvckNsaWVudCopOwogICAgIHZvaWQgdXBkYXRlRnJhbWVWaWV3
Rml4ZWRMYXlvdXQoaW50LCBpbnQpOwogICAgIHZvaWQgc2V0RnJhbWVWaWV3Rml4ZWRMYXlvdXQo
aW50LCBpbnQpOwogICAgIHZvaWQgY2xlYXJGcmFtZVZpZXdGaXhlZExheW91dCgpOwpAQCAtMTM2
LDYgKzEzOSw3IEBAIHByaXZhdGU6CiAgICAgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1
aWxkT2JqZWN0Rm9yRnJhbWVUcmVlKEZyYW1lKik7CiAgICAgUGFnZSogbV9wYWdlOwogICAgIElu
amVjdGVkU2NyaXB0TWFuYWdlciogbV9pbmplY3RlZFNjcmlwdE1hbmFnZXI7CisgICAgSW5zcGVj
dG9yQ2xpZW50KiBtX2NsaWVudDsKICAgICBJbnNwZWN0b3JGcm9udGVuZDo6UGFnZSogbV9mcm9u
dGVuZDsKICAgICBsb25nIG1fbGFzdFNjcmlwdElkZW50aWZpZXI7CiAgICAgU3RyaW5nIG1fcGVu
ZGluZ1NjcmlwdFRvRXZhbHVhdGVPbkxvYWRPbmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5ncy5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMKaW5kZXggYWU0OWQ3M2U2NzQ0NmU3NjFhYzM3MTRm
Njk0ZjQ2OWMzZDQwZDZlMC4uMjNkMDExMjUwMzRjYTgzYzllYjBmNjk5N2M3NTg4YTQ2MjQ4Mjkw
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5n
cy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpz
CkBAIC04OSw2ICs4OSw3IEBAIFdlYkluc3BlY3Rvci5TZXR0aW5ncyA9IGZ1bmN0aW9uKCkKICAg
ICB0aGlzLnNob3dTY3JpcHRGb2xkZXJzID0gdGhpcy5jcmVhdGVTZXR0aW5nKCJzaG93U2NyaXB0
Rm9sZGVycyIsIHRydWUpOwogICAgIHRoaXMuZG9ja1RvUmlnaHQgPSB0aGlzLmNyZWF0ZVNldHRp
bmcoImRvY2tUb1JpZ2h0IiwgZmFsc2UpOwogICAgIHRoaXMuZW11bGF0ZVRvdWNoRXZlbnRzID0g
dGhpcy5jcmVhdGVTZXR0aW5nKCJlbXVsYXRlVG91Y2hFdmVudHMiLCBmYWxzZSk7CisgICAgdGhp
cy5zaG93UGFpbnRSZWN0cyA9IHRoaXMuY3JlYXRlU2V0dGluZygic2hvd1BhaW50UmVjdHMiLCBm
YWxzZSk7CiAKICAgICAvLyBJZiB0aGVyZSBhcmUgdG9vIG1hbnkgYnJlYWtwb2ludHMgaW4gYSBz
dG9yYWdlLCBpdCBpcyBsaWtlbHkgZHVlIHRvIGEgcmVjZW50IGJ1ZyB0aGF0IGNhdXNlZAogICAg
IC8vIHBlcmlvZGljYWwgYnJlYWtwb2ludHMgZHVwbGljYXRpb24gbGVhZGluZyB0byBpbnNwZWN0
b3Igc2xvd25lc3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL1NldHRpbmdzU2NyZWVuLmpzIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVu
ZC9TZXR0aW5nc1NjcmVlbi5qcwppbmRleCA2NzMxMGE2MWJiMzcyMWUxNzNlMDU3OWVkYTU5MWFh
Zjk4YWJmNDg4Li5lNWFhOWFhYzhhNTBhYWQ2NjJiZmI0YTZiYTkzNGM2MTFjMWVhZGIzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzU2NyZWVu
LmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3NTY3Jl
ZW4uanMKQEAgLTQwLDEyICs0MCwxNiBAQCBXZWJJbnNwZWN0b3IuU2V0dGluZ3NTY3JlZW4gPSBm
dW5jdGlvbigpCiAgICAgdGhpcy5fcmlnaHRDb2x1bW5FbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgidGQiKTsKICAgICB2YXIgcDsKIAotICAgIGlmIChQcmVmZXJlbmNlcy5zaG93RG9j
a1RvUmlnaHQgfHwgUHJlZmVyZW5jZXMuZXhwb3NlRGlzYWJsZUNhY2hlKSB7CisgICAgaWYgKFBy
ZWZlcmVuY2VzLnNob3dEb2NrVG9SaWdodCB8fCBQcmVmZXJlbmNlcy5leHBvc2VEaXNhYmxlQ2Fj
aGUgfHwgQ2FwYWJpbGl0aWVzLmNhblNob3dQYWludFJlY3RzKSB7CiAgICAgICAgIHAgPSB0aGlz
Ll9hcHBlbmRTZWN0aW9uKFdlYkluc3BlY3Rvci5VSVN0cmluZygiR2VuZXJhbCIpKTsKICAgICAg
ICAgaWYgKFByZWZlcmVuY2VzLnNob3dEb2NrVG9SaWdodCkKICAgICAgICAgICAgIHAuYXBwZW5k
Q2hpbGQodGhpcy5fY3JlYXRlQ2hlY2tib3hTZXR0aW5nKFdlYkluc3BlY3Rvci5VSVN0cmluZygi
RG9jayB0byByaWdodCIpLCBXZWJJbnNwZWN0b3Iuc2V0dGluZ3MuZG9ja1RvUmlnaHQpKTsKICAg
ICAgICAgaWYgKFByZWZlcmVuY2VzLmV4cG9zZURpc2FibGVDYWNoZSkKICAgICAgICAgICAgIHAu
YXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlQ2hlY2tib3hTZXR0aW5nKFdlYkluc3BlY3Rvci5VSVN0
cmluZygiRGlzYWJsZSBjYWNoZSIpLCBXZWJJbnNwZWN0b3Iuc2V0dGluZ3MuY2FjaGVEaXNhYmxl
ZCkpOworICAgICAgICBpZiAoQ2FwYWJpbGl0aWVzLmNhblNob3dQYWludFJlY3RzKSB7CisgICAg
ICAgICAgICBwLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUNoZWNrYm94U2V0dGluZyhXZWJJbnNw
ZWN0b3IuVUlTdHJpbmcoIlNob3cgcGFpbnQgcmVjdGFuZ2xlcyIpLCBXZWJJbnNwZWN0b3Iuc2V0
dGluZ3Muc2hvd1BhaW50UmVjdHMpKTsKKyAgICAgICAgICAgIFdlYkluc3BlY3Rvci5zZXR0aW5n
cy5zaG93UGFpbnRSZWN0cy5hZGRDaGFuZ2VMaXN0ZW5lcih0aGlzLl9zaG93UGFpbnRSZWN0c0No
YW5nZWQsIHRoaXMpOworICAgICAgICB9CiAgICAgfQogCiAgICAgcCA9IHRoaXMuX2FwcGVuZFNl
Y3Rpb24oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJFbGVtZW50cyIpKTsKQEAgLTM3Myw2ICszNzcs
MTEgQEAgV2ViSW5zcGVjdG9yLlNldHRpbmdzU2NyZWVuLnByb3RvdHlwZSA9IHsKIAogICAgICAg
ICBzZWxlY3Rpb25DaGFuZ2VkLmNhbGwodGhpcyk7CiAgICAgICAgIHJldHVybiBmaWVsZHNldEVs
ZW1lbnQ7CisgICAgfSwKKworICAgIF9zaG93UGFpbnRSZWN0c0NoYW5nZWQ6IGZ1bmN0aW9uKCkK
KyAgICB7CisgICAgICAgIFBhZ2VBZ2VudC5zZXRTaG93UGFpbnRSZWN0cyhXZWJJbnNwZWN0b3Iu
c2V0dGluZ3Muc2hvd1BhaW50UmVjdHMuZ2V0KCkpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9pbnNwZWN0b3IuanMgYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcwppbmRleCAyOWQwNWZhNzBl
ZTkyYjZlOTY1MzI3ZmYyNzQ1MTc0NTY0MmNjMzcwLi41N2ZhNjk0NjkwYzE2ZjdhODQ3Mjc2ZDll
NWU1NzUyNzAzYjM2Y2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL2luc3BlY3Rvci5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQt
ZW5kL2luc3BlY3Rvci5qcwpAQCAtMzU3LDYgKzM1Nyw3IEBAIFdlYkluc3BlY3Rvci5kb0xvYWRl
ZERvbmUgPSBmdW5jdGlvbigpCiAgICAgSW5zcGVjdG9yRnJvbnRlbmRIb3N0LmxvYWRlZCgpOwog
ICAgIFdlYkluc3BlY3Rvci5Xb3JrZXJNYW5hZ2VyLmxvYWRlZCgpOwogCisgICAgUGFnZUFnZW50
LmNhblNob3dQYWludFJlY3RzKFdlYkluc3BlY3Rvci5faW5pdGlhbGl6ZUNhcGFiaWxpdHkuYmlu
ZChXZWJJbnNwZWN0b3IsICJjYW5TaG93UGFpbnRSZWN0cyIsIG51bGwpKTsKICAgICBEZWJ1Z2dl
ckFnZW50LmNhdXNlc1JlY29tcGlsYXRpb24oV2ViSW5zcGVjdG9yLl9pbml0aWFsaXplQ2FwYWJp
bGl0eS5iaW5kKFdlYkluc3BlY3RvciwgImRlYnVnZ2VyQ2F1c2VzUmVjb21waWxhdGlvbiIsIG51
bGwpKTsKICAgICBEZWJ1Z2dlckFnZW50LnN1cHBvcnRzTmF0aXZlQnJlYWtwb2ludHMoV2ViSW5z
cGVjdG9yLl9pbml0aWFsaXplQ2FwYWJpbGl0eS5iaW5kKFdlYkluc3BlY3RvciwgIm5hdGl2ZUlu
c3RydW1lbnRhdGlvbkVuYWJsZWQiLCBudWxsKSk7CiAgICAgUHJvZmlsZXJBZ2VudC5jYXVzZXNS
ZWNvbXBpbGF0aW9uKFdlYkluc3BlY3Rvci5faW5pdGlhbGl6ZUNhcGFiaWxpdHkuYmluZChXZWJJ
bnNwZWN0b3IsICJwcm9maWxlckNhdXNlc1JlY29tcGlsYXRpb24iLCBudWxsKSk7CkBAIC00MDYs
NyArNDA3LDYgQEAgV2ViSW5zcGVjdG9yLl9kb0xvYWRlZERvbmVXaXRoQ2FwYWJpbGl0aWVzID0g
ZnVuY3Rpb24oKQogICAgIHRoaXMuX2NyZWF0ZVBhbmVscygpOwogICAgIHRoaXMuX2NyZWF0ZUds
b2JhbFN0YXR1c0Jhckl0ZW1zKCk7CiAKLQogICAgIHRoaXMudG9vbGJhciA9IG5ldyBXZWJJbnNw
ZWN0b3IuVG9vbGJhcigpOwogICAgIFdlYkluc3BlY3Rvci5faW5zdGFsbERvY2tUb1JpZ2h0KCk7
CiAKQEAgLTQ0MCw2ICs0NDAsOSBAQCBXZWJJbnNwZWN0b3IuX2RvTG9hZGVkRG9uZVdpdGhDYXBh
YmlsaXRpZXMgPSBmdW5jdGlvbigpCiAgICAgRGF0YWJhc2VBZ2VudC5lbmFibGUoKTsKICAgICBE
T01TdG9yYWdlQWdlbnQuZW5hYmxlKCk7CiAKKyAgICBpZiAoQ2FwYWJpbGl0aWVzLmNhblNob3dQ
YWludFJlY3RzICYmIFdlYkluc3BlY3Rvci5zZXR0aW5ncy5zaG93UGFpbnRSZWN0cy5nZXQoKSkK
KyAgICAgICAgUGFnZUFnZW50LnNldFNob3dQYWludFJlY3RzKHRydWUpOworCiAgICAgV2ViSW5z
cGVjdG9yLkNTU0NvbXBsZXRpb25zLnJlcXVlc3RDU1NOYW1lQ29tcGxldGlvbnMoKTsKICAgICBX
ZWJJbnNwZWN0b3IuV29ya2VyTWFuYWdlci5sb2FkQ29tcGxldGVkKCk7CiAgICAgSW5zcGVjdG9y
RnJvbnRlbmRBUEkubG9hZENvbXBsZXRlZCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9wdWJsaWMvV2ViV2lkZ2V0LmggYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1Ymxp
Yy9XZWJXaWRnZXQuaAppbmRleCA1OGYzZmExNjk1ZjhjZTM2MjJkNjdmY2M1Y2Y2YzU1NDA5ZDdm
YmIyLi5jMDM5ZjY1NTA5OGYwZWQ5MzQxMTI4MjQxNDhlN2YwYTE1OGMyNmQ3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXQuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJXaWRnZXQuaApAQCAtMTkyLDYgKzE5MiwxMCBAQCBw
dWJsaWM6CiAgICAgLy8gcmVjdC4pCiAgICAgdmlydHVhbCB2b2lkIGRpZENoYW5nZVdpbmRvd1Jl
c2l6ZXJSZWN0KCkgeyB9CiAKKyAgICAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIFdlYldpZGdldCBi
ZWxvbmdzIHRvIGEgcGFnZSB0aGF0IHJlcXVlc3RlZAorICAgIC8vIGNvcnJlc3BvbmRpbmcgZGVi
dWdnaW5nIG1vZGUuCisgICAgdmlydHVhbCBib29sIHNob3VsZFNob3dQYWludFJlY3RzKCkgY29u
c3QgeyByZXR1cm4gZmFsc2U7IH0KKwogcHJvdGVjdGVkOgogICAgIH5XZWJXaWRnZXQoKSB7IH0K
IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9JbnNwZWN0b3JDbGll
bnRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0luc3BlY3RvckNsaWVudElt
cGwuY3BwCmluZGV4IDMxN2I1NzY5MzRhOWM4ZWRiNTdjNTJlMGY2MWI2OGNiMzJhNTYzMTEuLmU2
NmI5ZTNiMzQ5NTM1NzA3YzFjZGY3MjYyZThhM2E4YmM4NTNlYTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0luc3BlY3RvckNsaWVudEltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vc3JjL0luc3BlY3RvckNsaWVudEltcGwuY3BwCkBAIC0xMjgsNiAr
MTI4LDE3IEBAIHZvaWQgSW5zcGVjdG9yQ2xpZW50SW1wbDo6Y2xlYXJCcm93c2VyQ29va2llcygp
CiAgICAgICAgIGFnZW50LT5jbGVhckJyb3dzZXJDb29raWVzKCk7CiB9CiAKK2Jvb2wgSW5zcGVj
dG9yQ2xpZW50SW1wbDo6Y2FuU2hvd1BhaW50UmVjdHMoKQoreworICAgIHJldHVybiB0cnVlOwor
fQorCit2b2lkIEluc3BlY3RvckNsaWVudEltcGw6OnNldFNob3dQYWludFJlY3RzKGJvb2wgZW5h
YmxlZCkKK3sKKyAgICBpZiAoV2ViRGV2VG9vbHNBZ2VudEltcGwqIGFnZW50ID0gZGV2VG9vbHNB
Z2VudCgpKQorICAgICAgICBhZ2VudC0+c2V0U2hvd1BhaW50UmVjdHMoZW5hYmxlZCk7Cit9CisK
IFdlYkRldlRvb2xzQWdlbnRJbXBsKiBJbnNwZWN0b3JDbGllbnRJbXBsOjpkZXZUb29sc0FnZW50
KCkKIHsKICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8V2ViRGV2VG9vbHNBZ2VudEltcGwqPihtX2lu
c3BlY3RlZFdlYlZpZXctPmRldlRvb2xzQWdlbnQoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9JbnNwZWN0b3JDbGllbnRJbXBsLmggYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9JbnNwZWN0b3JDbGllbnRJbXBsLmgKaW5kZXggYjE2YjZmNDY4MThjMzNjZTQy
OTVlNWY4M2E2YTc1YzliNWUyMWQyYy4uZTUxNjM4YzJjZGIwZWMwYTQyOWUxMWQ2NTgwM2M5YmJh
ZWIwNTc2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvSW5zcGVjdG9y
Q2xpZW50SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL0luc3BlY3RvckNs
aWVudEltcGwuaApAQCAtNjMsNiArNjMsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGNs
ZWFyQnJvd3NlckNhY2hlKCk7CiAgICAgdmlydHVhbCBib29sIGNhbkNsZWFyQnJvd3NlckNvb2tp
ZXMoKTsKICAgICB2aXJ0dWFsIHZvaWQgY2xlYXJCcm93c2VyQ29va2llcygpOworICAgIHZpcnR1
YWwgYm9vbCBjYW5TaG93UGFpbnRSZWN0cygpOworICAgIHZpcnR1YWwgdm9pZCBzZXRTaG93UGFp
bnRSZWN0cyhib29sKTsKKwogcHJpdmF0ZToKICAgICBXZWJEZXZUb29sc0FnZW50SW1wbCogZGV2
VG9vbHNBZ2VudCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9X
ZWJEZXZUb29sc0FnZW50SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJE
ZXZUb29sc0FnZW50SW1wbC5jcHAKaW5kZXggNTJlYjM3NDAwZjRlNjk3YzQ1MGRiZjMwOGI2OGJi
OWNhM2MwODdmYi4uMTdkNDQ3ZWZmZjgzNzc3YzI0OTk0MGQ0NjJhNTExYjI2ODlhOGM2YiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2VG9vbHNBZ2VudEltcGwu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRJbXBs
LmNwcApAQCAtMTgwLDYgKzE4MCw3IEBAIFdlYkRldlRvb2xzQWdlbnRJbXBsOjpXZWJEZXZUb29s
c0FnZW50SW1wbCgKICAgICAsIG1fY2xpZW50KGNsaWVudCkKICAgICAsIG1fd2ViVmlld0ltcGwo
d2ViVmlld0ltcGwpCiAgICAgLCBtX2F0dGFjaGVkKGZhbHNlKQorICAgICwgbV9zaG93UGFpbnRS
ZWN0cyhmYWxzZSkKIHsKICAgICBBU1NFUlQobV9ob3N0SWQgPiAwKTsKIH0KQEAgLTIzMSw2ICsy
MzIsMTEgQEAgdm9pZCBXZWJEZXZUb29sc0FnZW50SW1wbDo6ZGlkQ2xlYXJXaW5kb3dPYmplY3Qo
V2ViRnJhbWVJbXBsKiB3ZWJmcmFtZSkKICAgICAgICAgcHJveHktPnNldENvbnRleHREZWJ1Z0lk
KG1faG9zdElkKTsKIH0KIAorYm9vbCBXZWJEZXZUb29sc0FnZW50SW1wbDo6c2hvdWxkU2hvd1Bh
aW50UmVjdHMoKQoreworICAgIHJldHVybiBtX3Nob3dQYWludFJlY3RzOworfQorCiB2b2lkIFdl
YkRldlRvb2xzQWdlbnRJbXBsOjpkaXNwYXRjaE9uSW5zcGVjdG9yQmFja2VuZChjb25zdCBXZWJT
dHJpbmcmIG1lc3NhZ2UpCiB7CiAgICAgaW5zcGVjdG9yQ29udHJvbGxlcigpLT5kaXNwYXRjaE1l
c3NhZ2VGcm9tRnJvbnRlbmQobWVzc2FnZSk7CkBAIC0zMTYsNiArMzIyLDExIEBAIHZvaWQgV2Vi
RGV2VG9vbHNBZ2VudEltcGw6OmNsZWFyQnJvd3NlckNvb2tpZXMoKQogICAgIG1fY2xpZW50LT5j
bGVhckJyb3dzZXJDb29raWVzKCk7CiB9CiAKK3ZvaWQgV2ViRGV2VG9vbHNBZ2VudEltcGw6OnNl
dFNob3dQYWludFJlY3RzKGJvb2wgZW5hYmxlZCkKK3sKKyAgICBtX3Nob3dQYWludFJlY3RzID0g
ZW5hYmxlZDsKK30KKwogdm9pZCBXZWJEZXZUb29sc0FnZW50SW1wbDo6c2V0UHJvY2Vzc0lkKGxv
bmcgcHJvY2Vzc0lkKQogewogICAgIGluc3BlY3RvckNvbnRyb2xsZXIoKS0+c2V0UHJvY2Vzc0lk
KHByb2Nlc3NJZCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJE
ZXZUb29sc0FnZW50SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViRGV2VG9v
bHNBZ2VudEltcGwuaAppbmRleCA2NmZkNmM2ZWVhNjg4YjAzOGRlNzI0NzdhM2IxOWM1YjUxNWE3
YjUxLi5kYTJjZmI4NDVkZDRkNDBmMTU1NDM0YTg1OGEzZTc4MDk2YTljMjA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0FnZW50SW1wbC5oCisrKyBi
L1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRJbXBsLmgKQEAgLTY5
LDYgKzY5LDcgQEAgcHVibGljOgogCiAgICAgLy8gV2ViRGV2VG9vbHNBZ2VudFByaXZhdGUgaW1w
bGVtZW50YXRpb24uCiAgICAgdmlydHVhbCB2b2lkIGRpZENsZWFyV2luZG93T2JqZWN0KFdlYkZy
YW1lSW1wbCogZnJhbWUpOworICAgIHZpcnR1YWwgYm9vbCBzaG91bGRTaG93UGFpbnRSZWN0cygp
OwogCiAgICAgLy8gV2ViRGV2VG9vbHNBZ2VudCBpbXBsZW1lbnRhdGlvbi4KICAgICB2aXJ0dWFs
IHZvaWQgYXR0YWNoKCk7CkBAIC05NCw2ICs5NSw3IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwg
dm9pZCBjbGVhckJyb3dzZXJDYWNoZSgpOwogICAgIHZpcnR1YWwgdm9pZCBjbGVhckJyb3dzZXJD
b29raWVzKCk7CisgICAgdmlydHVhbCB2b2lkIHNldFNob3dQYWludFJlY3RzKGJvb2wpOwogCiAg
ICAgaW50IGhvc3RJZCgpIHsgcmV0dXJuIG1faG9zdElkOyB9CiAKQEAgLTEwOCw2ICsxMTAsNyBA
QCBwcml2YXRlOgogICAgIFdlYkRldlRvb2xzQWdlbnRDbGllbnQqIG1fY2xpZW50OwogICAgIFdl
YlZpZXdJbXBsKiBtX3dlYlZpZXdJbXBsOwogICAgIGJvb2wgbV9hdHRhY2hlZDsKKyAgICBib29s
IG1fc2hvd1BhaW50UmVjdHM7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRQcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJEZXZUb29sc0FnZW50UHJpdmF0ZS5oCmlu
ZGV4IDcwMzhhNWU1Y2I4MzJkZTAwOWFhN2E4YzZmNzJmY2FjNDBlNzg1YTMuLmVjZThmZWMyOWNh
YTgxOWE5YTBhYjFjNTE1NmRiMGVhMTAzYzZmN2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYkRldlRvb2xzQWdlbnRQcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViRGV2VG9vbHNBZ2VudFByaXZhdGUuaApAQCAtNDMsNiArNDMsOSBA
QCBwdWJsaWM6CiAgICAgLy8gVGhlIHdpbmRvdyBvYmplY3QgZm9yIHRoZSBmcmFtZSBoYXMgYmVl
biBjbGVhcmVkIG9mIGFueSBleHRyYSBwcm9wZXJ0aWVzCiAgICAgLy8gdGhhdCBtYXkgaGF2ZSBi
ZWVuIHNldCBieSBzY3JpcHQgZnJvbSB0aGUgcHJldmlvdXNseSBsb2FkZWQgZG9jdW1lbnQuCiAg
ICAgdmlydHVhbCB2b2lkIGRpZENsZWFyV2luZG93T2JqZWN0KFdlYkZyYW1lSW1wbCopID0gMDsK
KworICAgIC8vIFdlYlZpZXdJbXBsIHdpbGwgcmVxdWVzdCBjb3JyZXNwb25kaW5nIGRlYnVnZ2lu
ZyBjYXBhYmlsaXR5LgorICAgIHZpcnR1YWwgYm9vbCBzaG91bGRTaG93UGFpbnRSZWN0cygpID0g
MDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktpdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViVmlld0ltcGwuY3BwCmluZGV4IDgwYTFkOTY4ZjdkYzg2MmRmOWFiMWU0ZmUyNTM3MjYx
MDg2YTEzMGQuLmEwODUwMWFmYjBjZDExNGMwY2M2ZDlkMDc2Mjc4MGY4MmQwMThlYjMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTE5MzksNiArMTkz
OSwxMSBAQCB2b2lkIFdlYlZpZXdJbXBsOjpkaWRDaGFuZ2VXaW5kb3dSZXNpemVyUmVjdCgpCiAg
ICAgICAgIG1haW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3KCktPndpbmRvd1Jlc2l6ZXJSZWN0Q2hh
bmdlZCgpOwogfQogCitib29sIFdlYlZpZXdJbXBsOjpzaG91bGRTaG93UGFpbnRSZWN0cygpIGNv
bnN0Cit7CisgICAgcmV0dXJuIG1fZGV2VG9vbHNBZ2VudCAmJiBtX2RldlRvb2xzQWdlbnQtPnNo
b3VsZFNob3dQYWludFJlY3RzKCk7ICAgCit9CisKIC8vIFdlYlZpZXcgLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIAog
V2ViU2V0dGluZ3MqIFdlYlZpZXdJbXBsOjpzZXR0aW5ncygpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViVmlld0ltcGwuaAppbmRleCBlOGQ1M2JiOTQ1ZTU3NWRiMGE3YjYyM2Q1NzJiN2Vl
MTE4YmZmNjlhLi5hNjViNWYxNzkwMjQ3YTlhZTE4MzUxOTNjNDFjODNkZmU5MWFjNWQ3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmgKQEAgLTEzNyw2ICsxMzcsNyBA
QCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGRpZE5vdEFjcXVpcmVQb2ludGVyTG9jaygpOwog
ICAgIHZpcnR1YWwgdm9pZCBkaWRMb3NlUG9pbnRlckxvY2soKTsKICAgICB2aXJ0dWFsIHZvaWQg
ZGlkQ2hhbmdlV2luZG93UmVzaXplclJlY3QoKTsKKyAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkU2hv
d1BhaW50UmVjdHMoKSBjb25zdDsKIAogICAgIC8vIFdlYlZpZXcgbWV0aG9kczoKICAgICB2aXJ0
dWFsIHZvaWQgaW5pdGlhbGl6ZU1haW5GcmFtZShXZWJGcmFtZUNsaWVudCopOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>127939</attachid>
            <date>2012-02-21 01:51:20 -0800</date>
            <delta_ts>2012-02-21 02:25:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79030-20120221135118.patch</filename>
            <type>text/plain</type>
            <size>23010</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4MzE3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2M5ODdmMjkwOGU5MGQz
ZmZmYjU1NGFjYzIzZWY2N2IyMWIyNzc4ZC4uYzBhM2YxODg5Mzk2NDI4MDY3YzU3ZjI3MzBjZDgw
OGMyM2I4ZmNmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTAyLTIxICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiBhZGQgInNob3cgcGFpbnQgcmVjdGFuZ2xlcyIgc2V0dGluZy4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc5MDMwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBFbmdsaXNoLmxwcm9qL2xvY2FsaXplZFN0
cmluZ3MuanM6CisgICAgICAgICogaW5zcGVjdG9yL0RPTU5vZGVIaWdobGlnaHRlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpET01Ob2RlSGlnaGxpZ2h0ZXI6OmRyYXdPdXRsaW5lKToKKyAgICAg
ICAgKERPTU5vZGVIaWdobGlnaHRlcik6CisgICAgICAgICogaW5zcGVjdG9yL0RPTU5vZGVIaWdo
bGlnaHRlci5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChET01Ob2RlSGlnaGxpZ2h0
ZXIpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3IuanNvbjoKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDb250cm9sbGVyOjpJbnNwZWN0b3JDb250cm9sbGVyKToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckluc3RydW1lbnRhdGlvbjo6d2lsbFBhaW50SW1wbCk6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb246OmRpZFBhaW50SW1wbCk6CisgICAgICAgICogaW5zcGVjdG9y
L0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAg
IChJbnNwZWN0b3JJbnN0cnVtZW50YXRpb24pOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp3aWxsUGFpbnQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0
b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAoUGFnZUFnZW50U3RhdGUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6SW5z
cGVjdG9yUGFnZUFnZW50OjpJbnNwZWN0b3JQYWdlQWdlbnQpOgorICAgICAgICAoV2ViQ29yZTo6
SW5zcGVjdG9yUGFnZUFnZW50OjpzZXRTaG93UGFpbnRSZWN0cyk6CisgICAgICAgIChXZWJDb3Jl
KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ2xlYXJXaW5kb3dP
YmplY3RJbldvcmxkKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6d2ls
bFBhaW50KToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkUGFpbnQp
OgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpidWlsZE9iamVjdEZvckZy
YW1lKToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50Lmg6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzOgor
ICAgICAgICAoV2ViSW5zcGVjdG9yLlNldHRpbmdzKToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJv
bnQtZW5kL1NldHRpbmdzU2NyZWVuLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlNldHRpbmdz
U2NyZWVuKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TZXR0aW5nc1NjcmVlbi5wcm90b3R5cGUu
X3Nob3dQYWludFJlY3RzQ2hhbmdlZCk6CisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9p
bnNwZWN0b3IuanM6CisgICAgICAgICogcGFnZS9GcmFtZVZpZXcuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6RnJhbWVWaWV3OjpwYWludENvbnRlbnRzKToKKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyTGF5ZXJCYWNraW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyQmFja2lu
Zzo6cGFpbnRDb250ZW50cyk6CisKIDIwMTItMDItMjAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBJbnZhbGlkIGNhc3QgaW4gV2ViQ29yZTo6dG9FbGVtZW50IC8g
V2ViQ29yZTo6SFRNTEVsZW1lbnRTdGFjazo6RWxlbWVudFJlY29yZDo6ZWxlbWVudApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzIGIv
U291cmNlL1dlYkNvcmUvRW5nbGlzaC5scHJvai9sb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDE5
MjQ4NDkxNDA0ODA3MThjNDVjNTZkYjcyNDkxNjZiOWJhZDc3YjkuLjM4MzhmZDUzMDc5MGMxYmQ5
OGNkYjIxZDFiZTIzYjJkNjRjMjQyY2UgMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEgODgK
emNtZXghbzJCaDhPVCFrJUtmMDZDbWd+ekZGZUVaJEdVUEZvRmVvcS1Ge0NtaTE2aGVjZW1YLUFM
K2JQYlBEVipwCk95aDwyfjhJJX5UOE1wdzBqdW5eeQoKZGVsdGEgMTEKU2NtWnA+JWt0K29PVCFr
JUtlXy1VMDBwNHsKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvRE9NTm9k
ZUhpZ2hsaWdodGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9ET01Ob2RlSGlnaGxp
Z2h0ZXIuY3BwCmluZGV4IDdiMDNjMmUxYWVjNWMzYTc5MGY4NmVlN2Q2MDNjNjBkMDgyYzUxNjUu
LmY1M2RjNzk1Mjg5YWEzN2QwYjYxYzM2OGI0NjljYWRkYWM4OTRiNzYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9ET01Ob2RlSGlnaGxpZ2h0ZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9ET01Ob2RlSGlnaGxpZ2h0ZXIuY3BwCkBAIC01MTQsNiArNTE0
LDEyIEBAIHZvaWQgZ2V0SGlnaGxpZ2h0KERvY3VtZW50KiBkb2N1bWVudCwgSGlnaGxpZ2h0RGF0
YSogaGlnaGxpZ2h0RGF0YSwgSGlnaGxpZ2h0KiBoCiAgICAgICAgIGdldE9yRHJhd1JlY3RIaWdo
bGlnaHQoMCwgZG9jdW1lbnQsIGhpZ2hsaWdodERhdGEsIGhpZ2hsaWdodCk7CiB9CiAKK3ZvaWQg
ZHJhd091dGxpbmUoR3JhcGhpY3NDb250ZXh0JiBjb250ZXh0LCBGcmFtZVZpZXcqIHZpZXcsIGNv
bnN0IExheW91dFJlY3QmIHJlY3QsIGNvbnN0IENvbG9yJiBjb2xvcikKK3sKKyAgICBGbG9hdFJl
Y3Qgb3V0bGluZVJlY3QgPSByZWN0OworICAgIGRyYXdPdXRsaW5lZFF1YWQoY29udGV4dCwgb3V0
bGluZVJlY3QsIENvbG9yKCksIGNvbG9yKTsKK30KKwogfSAvLyBuYW1lc3BhY2UgRE9NTm9kZUhp
Z2hsaWdodGVyCiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9ET01Ob2RlSGlnaGxpZ2h0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9ET01Ob2RlSGlnaGxpZ2h0ZXIuaAppbmRleCBkMDYzYWU4NDAxODllZDE2YzgwY2M4
NTA4ZTZjNjkxMTFkOTdiOWFmLi4zYTQ2MDU4MmJiMDhkNzBlM2U1N2FhMDRiMmU4YjNlNzM5Zjhh
Yjc4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvRE9NTm9kZUhpZ2hsaWdo
dGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0RPTU5vZGVIaWdobGlnaHRlci5o
CkBAIC0zMSw2ICszMSw3IEBACiAKICNpbmNsdWRlICJDb2xvci5oIgogI2luY2x1ZGUgIkZsb2F0
UXVhZC5oIgorI2luY2x1ZGUgIkxheW91dFR5cGVzLmgiCiAKICNpbmNsdWRlIDx3dGYvT3duUHRy
Lmg+CiAjaW5jbHVkZSA8d3RmL1JlZlB0ci5oPgpAQCAtNDAsOCArNDEsOCBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKIGNsYXNzIENvbG9yOwogY2xhc3MgRG9jdW1lbnQ7CitjbGFzcyBGcmFtZVZp
ZXc7CiBjbGFzcyBHcmFwaGljc0NvbnRleHQ7Ci1jbGFzcyBJbnRSZWN0OwogY2xhc3MgTm9kZTsK
IAogc3RydWN0IEhpZ2hsaWdodERhdGEgewpAQCAtNzgsNiArNzksNyBAQCBuYW1lc3BhY2UgRE9N
Tm9kZUhpZ2hsaWdodGVyIHsKIAogdm9pZCBkcmF3SGlnaGxpZ2h0KEdyYXBoaWNzQ29udGV4dCYs
IERvY3VtZW50KiwgSGlnaGxpZ2h0RGF0YSopOwogdm9pZCBnZXRIaWdobGlnaHQoRG9jdW1lbnQq
LCBIaWdobGlnaHREYXRhKiwgSGlnaGxpZ2h0Kik7Cit2b2lkIGRyYXdPdXRsaW5lKEdyYXBoaWNz
Q29udGV4dCYsIEZyYW1lVmlldyosIGNvbnN0IExheW91dFJlY3QmLCBjb25zdCBDb2xvciYpOwog
CiB9IC8vIG5hbWVzcGFjZSBET01Ob2RlSGlnaGxpZ2h0ZXIKIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5qc29uIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3Rvci5qc29uCmluZGV4IGMyYzRmZWViNGVjNzNmYzljMWYzY2ZiNjhkNmVmNjgw
OTZiZDkzNDQuLjI0ZWM3MmVjOThkMjQ5YTYwNDg1YjliNTIxNDI3MWI0ZDQ2NTg0ZDEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KQEAgLTMxNyw2ICszMTcsMTQgQEAK
ICAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJoZWlnaHQiLCAidHlwZSI6ICJpbnRlZ2Vy
IiwgImRlc2NyaXB0aW9uIjogIk92ZXJyaWRpbmcgaGVpZ2h0IHZhbHVlIGluIHBpeGVscyAobWlu
aW11bSAwLCBtYXhpbXVtIDEwMDAwMDAwKS4gMCBkaXNhYmxlcyB0aGUgb3ZlcnJpZGUuIiB9CiAg
ICAgICAgICAgICAgICAgXSwKICAgICAgICAgICAgICAgICAiaGlkZGVuIjogdHJ1ZQorICAgICAg
ICAgICAgfSwKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAibmFtZSI6ICJzZXRTaG93
UGFpbnRSZWN0cyIsCisgICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIlJlcXVlc3RzIHRo
YXQgYmFja2VuZCBzaG93cyBwYWludCByZWN0YW5nbGVzIiwKKyAgICAgICAgICAgICAgICAicGFy
YW1ldGVycyI6IFsKKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJyZXN1bHQiLCAidHlw
ZSI6ICJib29sZWFuIiwgImRlc2NyaXB0aW9uIjogIlRydWUgZm9yIHNob3dpbmcgcGFpbnQgcmVj
dGFuZ2xlcyIgfQorICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgImhpZGRlbiI6
IHRydWUKICAgICAgICAgICAgIH0KICAgICAgICAgXSwKICAgICAgICAgImV2ZW50cyI6IFsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDb250cm9sbGVyLmNwcAppbmRl
eCA0OTFlNjUwNmJhYWM4NWFmYjI5NzExNzAwN2NmYWE0ZjE3OWE4NmIxLi5jMDg3MjFkOWIzZWQ5
Mzg5ZTA3MzU3OTMwZTkxMDk0YmU5ZTAzZWU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9p
bnNwZWN0b3IvSW5zcGVjdG9yQ29udHJvbGxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckNvbnRyb2xsZXIuY3BwCkBAIC04Myw3ICs4Myw3IEBAIEluc3BlY3Rv
ckNvbnRyb2xsZXI6Okluc3BlY3RvckNvbnRyb2xsZXIoUGFnZSogcGFnZSwgSW5zcGVjdG9yQ2xp
ZW50KiBpbnNwZWN0b3JDCiAgICAgbV9pbnNwZWN0b3JBZ2VudCA9IGluc3BlY3RvckFnZW50UHRy
LmdldCgpOwogICAgIG1fYWdlbnRzLmFwcGVuZChpbnNwZWN0b3JBZ2VudFB0ci5yZWxlYXNlKCkp
OwogCi0gICAgT3duUHRyPEluc3BlY3RvclBhZ2VBZ2VudD4gcGFnZUFnZW50UHRyKEluc3BlY3Rv
clBhZ2VBZ2VudDo6Y3JlYXRlKG1faW5zdHJ1bWVudGluZ0FnZW50cy5nZXQoKSwgcGFnZSwgbV9z
dGF0ZS5nZXQoKSwgbV9pbmplY3RlZFNjcmlwdE1hbmFnZXIuZ2V0KCkpKTsKKyAgICBPd25QdHI8
SW5zcGVjdG9yUGFnZUFnZW50PiBwYWdlQWdlbnRQdHIoSW5zcGVjdG9yUGFnZUFnZW50OjpjcmVh
dGUobV9pbnN0cnVtZW50aW5nQWdlbnRzLmdldCgpLCBwYWdlLCBtX3N0YXRlLmdldCgpLCBtX2lu
amVjdGVkU2NyaXB0TWFuYWdlci5nZXQoKSwgaW5zcGVjdG9yQ2xpZW50KSk7CiAgICAgSW5zcGVj
dG9yUGFnZUFnZW50KiBwYWdlQWdlbnQgPSBwYWdlQWdlbnRQdHIuZ2V0KCk7CiAgICAgbV9wYWdl
QWdlbnQgPSBwYWdlQWdlbnRQdHIuZ2V0KCk7CiAgICAgbV9hZ2VudHMuYXBwZW5kKHBhZ2VBZ2Vu
dFB0ci5yZWxlYXNlKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3Rvckluc3RydW1lbnRhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9ySW5zdHJ1bWVudGF0aW9uLmNwcAppbmRleCBhYjk0OTQ0MjQ2YTYzMTdkNmNhODlmMDFl
YWIxMDk3ODAwNjQ1ZWI0Li43ZGQ4OGY5NDg0YjgzZDgyNzcyZTljNWU3YjZiZjA5YzBkZmU0NGM4
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uLmNwcApAQCAtMzk5LDggKzM5OSwxMSBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbjo6ZGlkTG9hZFhIUkltcGwoY29uc3QgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29v
awogICAgICAgICB0aW1lbGluZUFnZW50LT5kaWRMb2FkWEhSKCk7CiB9CiAKLUluc3BlY3Rvcklu
c3RydW1lbnRhdGlvbkNvb2tpZSBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxQYWludElt
cGwoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cywgY29uc3QgTGF5b3V0
UmVjdCYgcmVjdCkKK0luc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSBJbnNwZWN0b3JJbnN0
cnVtZW50YXRpb246OndpbGxQYWludEltcGwoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVu
dGluZ0FnZW50cywgRnJhbWUqIGZyYW1lLCBHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0
IExheW91dFJlY3QmIHJlY3QpCiB7CisgICAgaWYgKEluc3BlY3RvclBhZ2VBZ2VudCogcGFnZUFn
ZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy0+aW5zcGVjdG9yUGFnZUFnZW50KCkpCisgICAgICAg
IHBhZ2VBZ2VudC0+d2lsbFBhaW50KGZyYW1lLCBjb250ZXh0LCByZWN0KTsKKwogICAgIGludCB0
aW1lbGluZUFnZW50SWQgPSAwOwogICAgIGlmIChJbnNwZWN0b3JUaW1lbGluZUFnZW50KiB0aW1l
bGluZUFnZW50ID0gaW5zdHJ1bWVudGluZ0FnZW50cy0+aW5zcGVjdG9yVGltZWxpbmVBZ2VudCgp
KSB7CiAgICAgICAgIHRpbWVsaW5lQWdlbnQtPndpbGxQYWludChyZWN0KTsKQEAgLTQxMyw2ICs0
MTYsOCBAQCB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6ZGlkUGFpbnRJbXBsKGNvbnN0
IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZQogewogICAgIGlmIChJbnNwZWN0b3JUaW1l
bGluZUFnZW50KiB0aW1lbGluZUFnZW50ID0gcmV0cmlldmVUaW1lbGluZUFnZW50KGNvb2tpZSkp
CiAgICAgICAgIHRpbWVsaW5lQWdlbnQtPmRpZFBhaW50KCk7CisgICAgaWYgKEluc3BlY3RvclBh
Z2VBZ2VudCogcGFnZUFnZW50ID0gY29va2llLmZpcnN0ID8gY29va2llLmZpcnN0LT5pbnNwZWN0
b3JQYWdlQWdlbnQoKSA6IDApCisgICAgICAgIHBhZ2VBZ2VudC0+ZGlkUGFpbnQoKTsKIH0KIAog
SW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
d2lsbFJlY2FsY3VsYXRlU3R5bGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqIGluc3RydW1lbnRp
bmdBZ2VudHMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5z
dHJ1bWVudGF0aW9uLmgKaW5kZXggYTE0Y2EyMDc0NjMwZmY1ZDc3MTVjMDgyNTkxOTA4MTA0MWU2
YjM5NC4uMGM1NGFkMjI1MzA2YTZmMzhjZjIzMDE4OTA1N2U0MjQxYjQ5NDYwNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvckluc3RydW1lbnRhdGlvbi5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JJbnN0cnVtZW50YXRpb24uaApA
QCAtNTEsNiArNTEsNyBAQCBjbGFzcyBEYXRhYmFzZTsKIGNsYXNzIEVsZW1lbnQ7CiBjbGFzcyBF
dmVudENvbnRleHQ7CiBjbGFzcyBEb2N1bWVudExvYWRlcjsKK2NsYXNzIEdyYXBoaWNzQ29udGV4
dDsKIGNsYXNzIEhpdFRlc3RSZXN1bHQ7CiBjbGFzcyBJbnNwZWN0b3JDU1NBZ2VudDsKIGNsYXNz
IEluc3BlY3RvclRpbWVsaW5lQWdlbnQ7CkBAIC0xMjAsNyArMTIxLDcgQEAgcHVibGljOgogICAg
IHN0YXRpYyB2b2lkIGRpZExheW91dChjb25zdCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29r
aWUmKTsKICAgICBzdGF0aWMgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIHdpbGxMb2Fk
WEhSKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBYTUxIdHRwUmVxdWVzdCopOwogICAgIHN0YXRp
YyB2b2lkIGRpZExvYWRYSFIoY29uc3QgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llJik7
Ci0gICAgc3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSB3aWxsUGFpbnQoRnJh
bWUqLCBjb25zdCBMYXlvdXRSZWN0Jik7CisgICAgc3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbkNvb2tpZSB3aWxsUGFpbnQoRnJhbWUqLCBHcmFwaGljc0NvbnRleHQqLCBjb25zdCBMYXlv
dXRSZWN0Jik7CiAgICAgc3RhdGljIHZvaWQgZGlkUGFpbnQoY29uc3QgSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uQ29va2llJik7CiAgICAgc3RhdGljIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNv
b2tpZSB3aWxsUmVjYWxjdWxhdGVTdHlsZShEb2N1bWVudCopOwogICAgIHN0YXRpYyB2b2lkIGRp
ZFJlY2FsY3VsYXRlU3R5bGUoY29uc3QgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llJik7
CkBAIC0yNzAsNyArMjcxLDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgdm9pZCBkaWRMYXlvdXRJ
bXBsKGNvbnN0IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSYpOwogICAgIHN0YXRpYyBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgd2lsbExvYWRYSFJJbXBsKEluc3RydW1lbnRp
bmdBZ2VudHMqLCBYTUxIdHRwUmVxdWVzdCopOwogICAgIHN0YXRpYyB2b2lkIGRpZExvYWRYSFJJ
bXBsKGNvbnN0IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSYpOwotICAgIHN0YXRpYyBJ
bnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgd2lsbFBhaW50SW1wbChJbnN0cnVtZW50aW5n
QWdlbnRzKiwgY29uc3QgTGF5b3V0UmVjdCYpOworICAgIHN0YXRpYyBJbnNwZWN0b3JJbnN0cnVt
ZW50YXRpb25Db29raWUgd2lsbFBhaW50SW1wbChJbnN0cnVtZW50aW5nQWdlbnRzKiwgRnJhbWUq
LCBHcmFwaGljc0NvbnRleHQqLCBjb25zdCBMYXlvdXRSZWN0Jik7CiAgICAgc3RhdGljIHZvaWQg
ZGlkUGFpbnRJbXBsKGNvbnN0IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSYpOwogICAg
IHN0YXRpYyBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgd2lsbFJlY2FsY3VsYXRlU3R5
bGVJbXBsKEluc3RydW1lbnRpbmdBZ2VudHMqKTsKICAgICBzdGF0aWMgdm9pZCBkaWRSZWNhbGN1
bGF0ZVN0eWxlSW1wbChjb25zdCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUmKTsKQEAg
LTcyMiwxMiArNzIzLDEyIEBAIGlubGluZSB2b2lkIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6
ZGlkTG9hZFhIUihjb25zdCBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25DCiAjZW5kaWYKIH0KIAot
aW5saW5lIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSBJbnNwZWN0b3JJbnN0cnVtZW50
YXRpb246OndpbGxQYWludChGcmFtZSogZnJhbWUsIGNvbnN0IExheW91dFJlY3QmIHJlY3QpCitp
bmxpbmUgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIEluc3BlY3Rvckluc3RydW1lbnRh
dGlvbjo6d2lsbFBhaW50KEZyYW1lKiBmcmFtZSwgR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBj
b25zdCBMYXlvdXRSZWN0JiByZWN0KQogewogI2lmIEVOQUJMRShJTlNQRUNUT1IpCiAgICAgRkFT
VF9SRVRVUk5fSUZfTk9fRlJPTlRFTkRTKEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSgp
KTsKICAgICBpZiAoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cyA9IGlu
c3RydW1lbnRpbmdBZ2VudHNGb3JGcmFtZShmcmFtZSkpCi0gICAgICAgIHJldHVybiB3aWxsUGFp
bnRJbXBsKGluc3RydW1lbnRpbmdBZ2VudHMsIHJlY3QpOworICAgICAgICByZXR1cm4gd2lsbFBh
aW50SW1wbChpbnN0cnVtZW50aW5nQWdlbnRzLCBmcmFtZSwgY29udGV4dCwgcmVjdCk7CiAjZW5k
aWYKICAgICByZXR1cm4gSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llKCk7CiB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCmluZGV4IDNi
ZjQ2ZDJlNTIxZWM0MjM4Yzk4N2I1ZmMzM2FiNTE5NjQ3MjhjZjEuLjNkMWJmOGZlNTRkZWEwZTA2
ODA0MGM1MzRmNjU1MGRlOTA3NDFmZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwCkBAIC00NCw2ICs0NCw3IEBACiAjaW5jbHVkZSAiQ29u
dGVudFNlYXJjaFV0aWxzLmgiCiAjaW5jbHVkZSAiQ29va2llLmgiCiAjaW5jbHVkZSAiQ29va2ll
SmFyLmgiCisjaW5jbHVkZSAiRE9NTm9kZUhpZ2hsaWdodGVyLmgiCiAjaW5jbHVkZSAiRE9NUGF0
Y2hTdXBwb3J0LmgiCiAjaW5jbHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJEb2N1bWVudExv
YWRlci5oIgpAQCAtNTMsNiArNTQsNyBAQAogI2luY2x1ZGUgIkhUTUxOYW1lcy5oIgogI2luY2x1
ZGUgIklkZW50aWZpZXJzRmFjdG9yeS5oIgogI2luY2x1ZGUgIkluamVjdGVkU2NyaXB0TWFuYWdl
ci5oIgorI2luY2x1ZGUgIkluc3BlY3RvckNsaWVudC5oIgogI2luY2x1ZGUgIkluc3BlY3RvckZy
b250ZW5kLmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uLmgiCiAjaW5jbHVk
ZSAiSW5zcGVjdG9yU3RhdGUuaCIKQEAgLTgwLDYgKzgyLDcgQEAgc3RhdGljIGNvbnN0IGNoYXIg
cGFnZUFnZW50RW5hYmxlZFtdID0gInBhZ2VBZ2VudEVuYWJsZWQiOwogc3RhdGljIGNvbnN0IGNo
YXIgcGFnZUFnZW50U2NyaXB0c1RvRXZhbHVhdGVPbkxvYWRbXSA9ICJwYWdlQWdlbnRTY3JpcHRz
VG9FdmFsdWF0ZU9uTG9hZCI7CiBzdGF0aWMgY29uc3QgY2hhciBwYWdlQWdlbnRTY3JlZW5XaWR0
aE92ZXJyaWRlW10gPSAicGFnZUFnZW50U2NyZWVuV2lkdGhPdmVycmlkZSI7CiBzdGF0aWMgY29u
c3QgY2hhciBwYWdlQWdlbnRTY3JlZW5IZWlnaHRPdmVycmlkZVtdID0gInBhZ2VBZ2VudFNjcmVl
bkhlaWdodE92ZXJyaWRlIjsKK3N0YXRpYyBjb25zdCBjaGFyIHNob3dQYWludFJlY3RzW10gPSAi
c2hvd1BhaW50UmVjdHMiOwogfQogCiBzdGF0aWMgYm9vbCBkZWNvZGVTaGFyZWRCdWZmZXIoUGFz
c1JlZlB0cjxTaGFyZWRCdWZmZXI+IGJ1ZmZlciwgY29uc3QgU3RyaW5nJiB0ZXh0RW5jb2RpbmdO
YW1lLCBTdHJpbmcqIHJlc3VsdCkKQEAgLTE4OCw5ICsxOTEsOSBAQCBib29sIEluc3BlY3RvclBh
Z2VBZ2VudDo6c2hhcmVkQnVmZmVyQ29udGVudChQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gYnVm
ZmVyLCBjbwogICAgIHJldHVybiBkZWNvZGVTaGFyZWRCdWZmZXIoYnVmZmVyLCB0ZXh0RW5jb2Rp
bmdOYW1lLCByZXN1bHQpOwogfQogCi1QYXNzT3duUHRyPEluc3BlY3RvclBhZ2VBZ2VudD4gSW5z
cGVjdG9yUGFnZUFnZW50OjpjcmVhdGUoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGlu
Z0FnZW50cywgUGFnZSogcGFnZSwgSW5zcGVjdG9yU3RhdGUqIHN0YXRlLCBJbmplY3RlZFNjcmlw
dE1hbmFnZXIqIGluamVjdGVkU2NyaXB0TWFuYWdlcikKK1Bhc3NPd25QdHI8SW5zcGVjdG9yUGFn
ZUFnZW50PiBJbnNwZWN0b3JQYWdlQWdlbnQ6OmNyZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRzKiBp
bnN0cnVtZW50aW5nQWdlbnRzLCBQYWdlKiBwYWdlLCBJbnNwZWN0b3JTdGF0ZSogc3RhdGUsIElu
amVjdGVkU2NyaXB0TWFuYWdlciogaW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLCBJbnNwZWN0b3JDbGll
bnQqIGNsaWVudCkKIHsKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IEluc3BlY3RvclBhZ2VBZ2Vu
dChpbnN0cnVtZW50aW5nQWdlbnRzLCBwYWdlLCBzdGF0ZSwgaW5qZWN0ZWRTY3JpcHRNYW5hZ2Vy
KSk7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBJbnNwZWN0b3JQYWdlQWdlbnQoaW5zdHJ1bWVu
dGluZ0FnZW50cywgcGFnZSwgc3RhdGUsIGluamVjdGVkU2NyaXB0TWFuYWdlciwgY2xpZW50KSk7
CiB9CiAKIC8vIHN0YXRpYwpAQCAtMjczLDEzICsyNzYsMTYgQEAgU3RyaW5nIEluc3BlY3RvclBh
Z2VBZ2VudDo6Y2FjaGVkUmVzb3VyY2VUeXBlU3RyaW5nKGNvbnN0IENhY2hlZFJlc291cmNlJiBj
YWNoZWQKICAgICByZXR1cm4gcmVzb3VyY2VUeXBlU3RyaW5nKGNhY2hlZFJlc291cmNlVHlwZShj
YWNoZWRSZXNvdXJjZSkpOwogfQogCi1JbnNwZWN0b3JQYWdlQWdlbnQ6Okluc3BlY3RvclBhZ2VB
Z2VudChJbnN0cnVtZW50aW5nQWdlbnRzKiBpbnN0cnVtZW50aW5nQWdlbnRzLCBQYWdlKiBwYWdl
LCBJbnNwZWN0b3JTdGF0ZSogaW5zcGVjdG9yU3RhdGUsIEluamVjdGVkU2NyaXB0TWFuYWdlciog
aW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKQorSW5zcGVjdG9yUGFnZUFnZW50OjpJbnNwZWN0b3JQYWdl
QWdlbnQoSW5zdHJ1bWVudGluZ0FnZW50cyogaW5zdHJ1bWVudGluZ0FnZW50cywgUGFnZSogcGFn
ZSwgSW5zcGVjdG9yU3RhdGUqIGluc3BlY3RvclN0YXRlLCBJbmplY3RlZFNjcmlwdE1hbmFnZXIq
IGluamVjdGVkU2NyaXB0TWFuYWdlciwgSW5zcGVjdG9yQ2xpZW50KiBjbGllbnQpCiAgICAgOiBJ
bnNwZWN0b3JCYXNlQWdlbnQ8SW5zcGVjdG9yUGFnZUFnZW50PigiUGFnZSIsIGluc3RydW1lbnRp
bmdBZ2VudHMsIGluc3BlY3RvclN0YXRlKQogICAgICwgbV9wYWdlKHBhZ2UpCiAgICAgLCBtX2lu
amVjdGVkU2NyaXB0TWFuYWdlcihpbmplY3RlZFNjcmlwdE1hbmFnZXIpCisgICAgLCBtX2NsaWVu
dChjbGllbnQpCiAgICAgLCBtX2Zyb250ZW5kKDApCiAgICAgLCBtX2xhc3RTY3JpcHRJZGVudGlm
aWVyKDApCiAgICAgLCBtX29yaWdpbmFsVXNlRml4ZWRMYXlvdXQoZmFsc2UpCisgICAgLCBtX2xh
c3RQYWludEZyYW1lKDApCisgICAgLCBtX2xhc3RQYWludENvbnRleHQoMCkKIHsKIH0KIApAQCAt
NjIzLDYgKzYyOSwxMSBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6c2V0U2NyZWVuU2l6ZU92
ZXJyaWRlKEVycm9yU3RyaW5nKiBlcnJvclN0cmluZywgY29uc3QgaQogICAgIHVwZGF0ZUZyYW1l
Vmlld0ZpeGVkTGF5b3V0KHdpZHRoLCBoZWlnaHQpOwogfQogCit2b2lkIEluc3BlY3RvclBhZ2VB
Z2VudDo6c2V0U2hvd1BhaW50UmVjdHMoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBib29sIHNo
b3cpCit7CisgICAgbV9zdGF0ZS0+c2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6c2hvd1BhaW50
UmVjdHMsIHNob3cpOworfQorCiB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6ZGlkQ2xlYXJXaW5k
b3dPYmplY3RJbldvcmxkKEZyYW1lKiBmcmFtZSwgRE9NV3JhcHBlcldvcmxkKiB3b3JsZCkKIHsK
ICAgICBpZiAod29ybGQgIT0gbWFpblRocmVhZE5vcm1hbFdvcmxkKCkpCkBAIC03NTIsNiArNzYz
LDM0IEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjphcHBseVNjcmVlbkhlaWdodE92ZXJyaWRl
KGxvbmcqIGhlaWdodCkKICAgICAgICAgKmhlaWdodCA9IGhlaWdodE92ZXJyaWRlOwogfQogCit2
b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6d2lsbFBhaW50KEZyYW1lKiBmcmFtZSwgR3JhcGhpY3ND
b250ZXh0KiBjb250ZXh0LCBjb25zdCBMYXlvdXRSZWN0JiByZWN0KQoreworICAgIGlmIChtX3N0
YXRlLT5nZXRCb29sZWFuKFBhZ2VBZ2VudFN0YXRlOjpzaG93UGFpbnRSZWN0cykpIHsKKyAgICAg
ICAgbV9sYXN0UGFpbnRGcmFtZSA9IGZyYW1lOworICAgICAgICBtX2xhc3RQYWludENvbnRleHQg
PSBjb250ZXh0OworICAgICAgICBtX2xhc3RQYWludFJlY3QgPSByZWN0OworICAgICAgICBtX2xh
c3RQYWludFJlY3QuaW5mbGF0ZSgtMSk7CisgICAgfQorfQorCit2b2lkIEluc3BlY3RvclBhZ2VB
Z2VudDo6ZGlkUGFpbnQoKQoreworICAgIGlmICghbV9sYXN0UGFpbnRGcmFtZSB8fCAhbV9zdGF0
ZS0+Z2V0Qm9vbGVhbihQYWdlQWdlbnRTdGF0ZTo6c2hvd1BhaW50UmVjdHMpKQorICAgICAgICBy
ZXR1cm47CisKKyAgICBzdGF0aWMgaW50IGNvbG9yU2VsZWN0b3IgPSAwOworICAgIGNvbnN0IENv
bG9yIGNvbG9yc1tdID0geworICAgICAgICBDb2xvcigweEZGLCAwLCAwLCAweDNGKSwKKyAgICAg
ICAgQ29sb3IoMHhGRiwgMCwgMHhGRiwgMHgzRiksCisgICAgICAgIENvbG9yKDAsIDAsIDB4RkYs
IDB4M0YpLAorICAgIH07CisKKyAgICBET01Ob2RlSGlnaGxpZ2h0ZXI6OmRyYXdPdXRsaW5lKCpt
X2xhc3RQYWludENvbnRleHQsIG1fbGFzdFBhaW50RnJhbWUtPnZpZXcoKSwgbV9sYXN0UGFpbnRS
ZWN0LCBjb2xvcnNbY29sb3JTZWxlY3RvcisrICUgV1RGX0FSUkFZX0xFTkdUSChjb2xvcnMpXSk7
CisKKyAgICBtX2xhc3RQYWludEZyYW1lID0gMDsKKyAgICBtX2xhc3RQYWludENvbnRleHQgPSAw
OworfQorCiBQYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gSW5zcGVjdG9yUGFnZUFnZW50Ojpi
dWlsZE9iamVjdEZvckZyYW1lKEZyYW1lKiBmcmFtZSkKIHsKICAgICBSZWZQdHI8SW5zcGVjdG9y
T2JqZWN0PiBmcmFtZU9iamVjdCA9IEluc3BlY3Rvck9iamVjdDo6Y3JlYXRlKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmgKaW5kZXggNTllZDcwOWQ3
YmQ1NjYwZGZlM2UxODYyZDY1MTdmYWE0MmIwNWViYi4uNWQ1MTk4ZjI4MTlhMGE4MTkxZjBmMzRj
ZTJmNzYxMjM4ZGQyYzVhNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclBhZ2VBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JQYWdlQWdlbnQuaApAQCAtNTAsNiArNTAsNyBAQCBjbGFzcyBGcmFtZTsKIGNsYXNzIEZyb250
ZW5kOwogY2xhc3MgSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyOwogY2xhc3MgSW5zcGVjdG9yQXJyYXk7
CitjbGFzcyBJbnNwZWN0b3JDbGllbnQ7CiBjbGFzcyBJbnNwZWN0b3JPYmplY3Q7CiBjbGFzcyBJ
bnNwZWN0b3JTdGF0ZTsKIGNsYXNzIEluc3RydW1lbnRpbmdBZ2VudHM7CkBAIC03NCw3ICs3NSw3
IEBAIHB1YmxpYzoKICAgICAgICAgT3RoZXJSZXNvdXJjZQogICAgIH07CiAKLSAgICBzdGF0aWMg
UGFzc093blB0cjxJbnNwZWN0b3JQYWdlQWdlbnQ+IGNyZWF0ZShJbnN0cnVtZW50aW5nQWdlbnRz
KiwgUGFnZSosIEluc3BlY3RvclN0YXRlKiwgSW5qZWN0ZWRTY3JpcHRNYW5hZ2VyKik7CisgICAg
c3RhdGljIFBhc3NPd25QdHI8SW5zcGVjdG9yUGFnZUFnZW50PiBjcmVhdGUoSW5zdHJ1bWVudGlu
Z0FnZW50cyosIFBhZ2UqLCBJbnNwZWN0b3JTdGF0ZSosIEluamVjdGVkU2NyaXB0TWFuYWdlcios
IEluc3BlY3RvckNsaWVudCopOwogCiAgICAgc3RhdGljIGJvb2wgY2FjaGVkUmVzb3VyY2VDb250
ZW50KENhY2hlZFJlc291cmNlKiwgU3RyaW5nKiByZXN1bHQsIGJvb2wqIGJhc2U2NEVuY29kZWQp
OwogICAgIHN0YXRpYyBib29sIHNoYXJlZEJ1ZmZlckNvbnRlbnQoUGFzc1JlZlB0cjxTaGFyZWRC
dWZmZXI+LCBjb25zdCBTdHJpbmcmIHRleHRFbmNvZGluZ05hbWUsIGJvb2wgd2l0aEJhc2U2NEVu
Y29kZSwgU3RyaW5nKiByZXN1bHQpOwpAQCAtMTAxLDYgKzEwMiw3IEBAIHB1YmxpYzoKICAgICB2
aXJ0dWFsIHZvaWQgc2VhcmNoSW5SZXNvdXJjZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcm
LCBjb25zdCBib29sKiBjYXNlU2Vuc2l0aXZlLCBjb25zdCBib29sKiBpc1JlZ2V4LCBSZWZQdHI8
SW5zcGVjdG9yQXJyYXk+Jik7CiAgICAgdmlydHVhbCB2b2lkIHNldERvY3VtZW50Q29udGVudChF
cnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgY29uc3QgU3RyaW5nJiBodG1sKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0U2NyZWVuU2l6ZU92ZXJyaWRlKEVycm9yU3RyaW5nKiwgaW50
IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKyAgICB2aXJ0dWFsIHZvaWQgc2V0U2hvd1BhaW50UmVjdHMo
RXJyb3JTdHJpbmcqLCBib29sIHNob3cpOwogCiAgICAgLy8gSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uIEFQSQogICAgIHZvaWQgZGlkQ2xlYXJXaW5kb3dPYmplY3RJbldvcmxkKEZyYW1lKiwgRE9N
V3JhcHBlcldvcmxkKik7CkBAIC0xMTEsNiArMTEzLDggQEAgcHVibGljOgogICAgIHZvaWQgbG9h
ZGVyRGV0YWNoZWRGcm9tRnJhbWUoRG9jdW1lbnRMb2FkZXIqKTsKICAgICB2b2lkIGFwcGx5U2Ny
ZWVuV2lkdGhPdmVycmlkZShsb25nKik7CiAgICAgdm9pZCBhcHBseVNjcmVlbkhlaWdodE92ZXJy
aWRlKGxvbmcqKTsKKyAgICB2b2lkIHdpbGxQYWludChGcmFtZSosIEdyYXBoaWNzQ29udGV4dCos
IGNvbnN0IExheW91dFJlY3QmKTsKKyAgICB2b2lkIGRpZFBhaW50KCk7CiAKICAgICAvLyBJbnNw
ZWN0b3IgQ29udHJvbGxlciBBUEkKICAgICB2aXJ0dWFsIHZvaWQgc2V0RnJvbnRlbmQoSW5zcGVj
dG9yRnJvbnRlbmQqKTsKQEAgLTEyNyw3ICsxMzEsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIERv
Y3VtZW50TG9hZGVyKiBhc3NlcnREb2N1bWVudExvYWRlcihFcnJvclN0cmluZyosIEZyYW1lKik7
CiAKIHByaXZhdGU6Ci0gICAgSW5zcGVjdG9yUGFnZUFnZW50KEluc3RydW1lbnRpbmdBZ2VudHMq
LCBQYWdlKiwgSW5zcGVjdG9yU3RhdGUqLCBJbmplY3RlZFNjcmlwdE1hbmFnZXIqKTsKKyAgICBJ
bnNwZWN0b3JQYWdlQWdlbnQoSW5zdHJ1bWVudGluZ0FnZW50cyosIFBhZ2UqLCBJbnNwZWN0b3JT
dGF0ZSosIEluamVjdGVkU2NyaXB0TWFuYWdlciosIEluc3BlY3RvckNsaWVudCopOwogICAgIHZv
aWQgdXBkYXRlRnJhbWVWaWV3Rml4ZWRMYXlvdXQoaW50LCBpbnQpOwogICAgIHZvaWQgc2V0RnJh
bWVWaWV3Rml4ZWRMYXlvdXQoaW50LCBpbnQpOwogICAgIHZvaWQgY2xlYXJGcmFtZVZpZXdGaXhl
ZExheW91dCgpOwpAQCAtMTM2LDYgKzE0MCw3IEBAIHByaXZhdGU6CiAgICAgUGFzc1JlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yRnJhbWVUcmVlKEZyYW1lKik7CiAgICAgUGFn
ZSogbV9wYWdlOwogICAgIEluamVjdGVkU2NyaXB0TWFuYWdlciogbV9pbmplY3RlZFNjcmlwdE1h
bmFnZXI7CisgICAgSW5zcGVjdG9yQ2xpZW50KiBtX2NsaWVudDsKICAgICBJbnNwZWN0b3JGcm9u
dGVuZDo6UGFnZSogbV9mcm9udGVuZDsKICAgICBsb25nIG1fbGFzdFNjcmlwdElkZW50aWZpZXI7
CiAgICAgU3RyaW5nIG1fcGVuZGluZ1NjcmlwdFRvRXZhbHVhdGVPbkxvYWRPbmNlOwpAQCAtMTQ1
LDYgKzE1MCw5IEBAIHByaXZhdGU6CiAgICAgSGFzaE1hcDxEb2N1bWVudExvYWRlciosIFN0cmlu
Zz4gbV9sb2FkZXJUb0lkZW50aWZpZXI7CiAgICAgT3duUHRyPEludFNpemU+IG1fb3JpZ2luYWxG
aXhlZExheW91dFNpemU7CiAgICAgYm9vbCBtX29yaWdpbmFsVXNlRml4ZWRMYXlvdXQ7CisgICAg
RnJhbWUqIG1fbGFzdFBhaW50RnJhbWU7CisgICAgR3JhcGhpY3NDb250ZXh0KiBtX2xhc3RQYWlu
dENvbnRleHQ7CisgICAgTGF5b3V0UmVjdCBtX2xhc3RQYWludFJlY3Q7CiB9OwogCiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3MuanMgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1NldHRpbmdzLmpzCmluZGV4IGFlNDlk
NzNlNjc0NDZlNzYxYWMzNzE0ZjY5NGY0NjljM2Q0MGQ2ZTAuLjIzZDAxMTI1MDM0Y2E4M2M5ZWIw
ZjY5OTdjNzU4OGE0NjI0ODI5MDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rv
ci9mcm9udC1lbmQvU2V0dGluZ3MuanMKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9TZXR0aW5ncy5qcwpAQCAtODksNiArODksNyBAQCBXZWJJbnNwZWN0b3IuU2V0dGlu
Z3MgPSBmdW5jdGlvbigpCiAgICAgdGhpcy5zaG93U2NyaXB0Rm9sZGVycyA9IHRoaXMuY3JlYXRl
U2V0dGluZygic2hvd1NjcmlwdEZvbGRlcnMiLCB0cnVlKTsKICAgICB0aGlzLmRvY2tUb1JpZ2h0
ID0gdGhpcy5jcmVhdGVTZXR0aW5nKCJkb2NrVG9SaWdodCIsIGZhbHNlKTsKICAgICB0aGlzLmVt
dWxhdGVUb3VjaEV2ZW50cyA9IHRoaXMuY3JlYXRlU2V0dGluZygiZW11bGF0ZVRvdWNoRXZlbnRz
IiwgZmFsc2UpOworICAgIHRoaXMuc2hvd1BhaW50UmVjdHMgPSB0aGlzLmNyZWF0ZVNldHRpbmco
InNob3dQYWludFJlY3RzIiwgZmFsc2UpOwogCiAgICAgLy8gSWYgdGhlcmUgYXJlIHRvbyBtYW55
IGJyZWFrcG9pbnRzIGluIGEgc3RvcmFnZSwgaXQgaXMgbGlrZWx5IGR1ZSB0byBhIHJlY2VudCBi
dWcgdGhhdCBjYXVzZWQKICAgICAvLyBwZXJpb2RpY2FsIGJyZWFrcG9pbnRzIGR1cGxpY2F0aW9u
IGxlYWRpbmcgdG8gaW5zcGVjdG9yIHNsb3duZXNzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TZXR0aW5nc1NjcmVlbi5qcyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU2V0dGluZ3NTY3JlZW4uanMKaW5kZXggNjczMTBhNjFiYjM3
MjFlMTczZTA1NzllZGE1OTFhYWY5OGFiZjQ4OC4uZjkyZmIxZTliZDZiZTExYzViODNhZjM2NGQy
NzYxZGViOWQxMzVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250
LWVuZC9TZXR0aW5nc1NjcmVlbi5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL1NldHRpbmdzU2NyZWVuLmpzCkBAIC00Nyw2ICs0NywxMCBAQCBXZWJJbnNwZWN0b3Iu
U2V0dGluZ3NTY3JlZW4gPSBmdW5jdGlvbigpCiAgICAgICAgIGlmIChQcmVmZXJlbmNlcy5leHBv
c2VEaXNhYmxlQ2FjaGUpCiAgICAgICAgICAgICBwLmFwcGVuZENoaWxkKHRoaXMuX2NyZWF0ZUNo
ZWNrYm94U2V0dGluZyhXZWJJbnNwZWN0b3IuVUlTdHJpbmcoIkRpc2FibGUgY2FjaGUiKSwgV2Vi
SW5zcGVjdG9yLnNldHRpbmdzLmNhY2hlRGlzYWJsZWQpKTsKICAgICB9CisgICAgCisgICAgcCA9
IHRoaXMuX2FwcGVuZFNlY3Rpb24oV2ViSW5zcGVjdG9yLlVJU3RyaW5nKCJSZW5kZXJpbmciKSk7
CisgICAgcC5hcHBlbmRDaGlsZCh0aGlzLl9jcmVhdGVDaGVja2JveFNldHRpbmcoV2ViSW5zcGVj
dG9yLlVJU3RyaW5nKCJTaG93IHBhaW50IHJlY3RhbmdsZXMiKSwgV2ViSW5zcGVjdG9yLnNldHRp
bmdzLnNob3dQYWludFJlY3RzKSk7CisgICAgV2ViSW5zcGVjdG9yLnNldHRpbmdzLnNob3dQYWlu
dFJlY3RzLmFkZENoYW5nZUxpc3RlbmVyKHRoaXMuX3Nob3dQYWludFJlY3RzQ2hhbmdlZCwgdGhp
cyk7CiAKICAgICBwID0gdGhpcy5fYXBwZW5kU2VjdGlvbihXZWJJbnNwZWN0b3IuVUlTdHJpbmco
IkVsZW1lbnRzIikpOwogICAgIHAuYXBwZW5kQ2hpbGQodGhpcy5fY3JlYXRlQ2hlY2tib3hTZXR0
aW5nKFdlYkluc3BlY3Rvci5VSVN0cmluZygiV29yZCB3cmFwIiksIFdlYkluc3BlY3Rvci5zZXR0
aW5ncy5kb21Xb3JkV3JhcCkpOwpAQCAtMzczLDYgKzM3NywxMSBAQCBXZWJJbnNwZWN0b3IuU2V0
dGluZ3NTY3JlZW4ucHJvdG90eXBlID0gewogCiAgICAgICAgIHNlbGVjdGlvbkNoYW5nZWQuY2Fs
bCh0aGlzKTsKICAgICAgICAgcmV0dXJuIGZpZWxkc2V0RWxlbWVudDsKKyAgICB9LAorCisgICAg
X3Nob3dQYWludFJlY3RzQ2hhbmdlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgUGFnZUFn
ZW50LnNldFNob3dQYWludFJlY3RzKFdlYkluc3BlY3Rvci5zZXR0aW5ncy5zaG93UGFpbnRSZWN0
cy5nZXQoKSk7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL2luc3BlY3Rvci5qcyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvaW5zcGVjdG9yLmpzCmluZGV4IDI5ZDA1ZmE3MGVlOTJiNmU5NjUzMjdmZjI3NDUxNzQ1
NjQyY2MzNzAuLjE3NjYyMzMxZTA2YmU5MjRiY2JmNjEwYjUwY2MwNDM5NmMyNmU4OWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvaW5zcGVjdG9yLmpzCkBAIC00
MDYsNyArNDA2LDYgQEAgV2ViSW5zcGVjdG9yLl9kb0xvYWRlZERvbmVXaXRoQ2FwYWJpbGl0aWVz
ID0gZnVuY3Rpb24oKQogICAgIHRoaXMuX2NyZWF0ZVBhbmVscygpOwogICAgIHRoaXMuX2NyZWF0
ZUdsb2JhbFN0YXR1c0Jhckl0ZW1zKCk7CiAKLQogICAgIHRoaXMudG9vbGJhciA9IG5ldyBXZWJJ
bnNwZWN0b3IuVG9vbGJhcigpOwogICAgIFdlYkluc3BlY3Rvci5faW5zdGFsbERvY2tUb1JpZ2h0
KCk7CiAKQEAgLTQ0MCw2ICs0MzksOSBAQCBXZWJJbnNwZWN0b3IuX2RvTG9hZGVkRG9uZVdpdGhD
YXBhYmlsaXRpZXMgPSBmdW5jdGlvbigpCiAgICAgRGF0YWJhc2VBZ2VudC5lbmFibGUoKTsKICAg
ICBET01TdG9yYWdlQWdlbnQuZW5hYmxlKCk7CiAKKyAgICBpZiAoV2ViSW5zcGVjdG9yLnNldHRp
bmdzLnNob3dQYWludFJlY3RzLmdldCgpKQorICAgICAgICBQYWdlQWdlbnQuc2V0U2hvd1BhaW50
UmVjdHModHJ1ZSk7CisKICAgICBXZWJJbnNwZWN0b3IuQ1NTQ29tcGxldGlvbnMucmVxdWVzdENT
U05hbWVDb21wbGV0aW9ucygpOwogICAgIFdlYkluc3BlY3Rvci5Xb3JrZXJNYW5hZ2VyLmxvYWRD
b21wbGV0ZWQoKTsKICAgICBJbnNwZWN0b3JGcm9udGVuZEFQSS5sb2FkQ29tcGxldGVkKCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0ZyYW1lVmlldy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL0ZyYW1lVmlldy5jcHAKaW5kZXggYjg0ZDExMjZiZjAwMzcyMWE5NjYxOWEyOTQ0
OGMxODhlNGE4ODNmNi4uNzM0MTBjYzA3NGU3ZGU0MmFkNDk5YmFlYWFiOWJjMDE4ZDU4ZTEzYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9GcmFtZVZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BhZ2UvRnJhbWVWaWV3LmNwcApAQCAtMjg0Nyw3ICsyODQ3LDcgQEAgdm9pZCBG
cmFtZVZpZXc6OnBhaW50Q29udGVudHMoR3JhcGhpY3NDb250ZXh0KiBwLCBjb25zdCBJbnRSZWN0
JiByZWN0KQogICAgIGlmICghZnJhbWUoKSkKICAgICAgICAgcmV0dXJuOwogCi0gICAgSW5zcGVj
dG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIGNvb2tpZSA9IEluc3BlY3Rvckluc3RydW1lbnRhdGlv
bjo6d2lsbFBhaW50KG1fZnJhbWUuZ2V0KCksIHJlY3QpOworICAgIEluc3BlY3Rvckluc3RydW1l
bnRhdGlvbkNvb2tpZSBjb29raWUgPSBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxQYWlu
dChtX2ZyYW1lLmdldCgpLCBwLCByZWN0KTsKIAogICAgIERvY3VtZW50KiBkb2N1bWVudCA9IG1f
ZnJhbWUtPmRvY3VtZW50KCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJMYXllckJhY2tpbmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckxheWVyQmFja2luZy5jcHAKaW5kZXggNDVjZTRjM2FiMzNkYzVhZTYwZjRmNzc3ZjE4ZTJkNTlh
MTY1ODkyNS4uYjkyZTZiNmQwYjEyZDk1YWIwNjg2MTk2MGQwMTE5OWRhMGRlNDI3OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKQEAgLTEx
NDAsNyArMTE0MCw3IEBAIHN0YXRpYyB2b2lkIHBhaW50U2Nyb2xsYmFyKFNjcm9sbGJhciogc2Ny
b2xsYmFyLCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIGNvbnN0CiB2b2lkIFJlbmRlckxheWVy
QmFja2luZzo6cGFpbnRDb250ZW50cyhjb25zdCBHcmFwaGljc0xheWVyKiBncmFwaGljc0xheWVy
LCBHcmFwaGljc0NvbnRleHQmIGNvbnRleHQsIEdyYXBoaWNzTGF5ZXJQYWludGluZ1BoYXNlIHBh
aW50aW5nUGhhc2UsIGNvbnN0IEludFJlY3QmIGNsaXApCiB7CiAgICAgaWYgKGdyYXBoaWNzTGF5
ZXIgPT0gbV9ncmFwaGljc0xheWVyLmdldCgpIHx8IGdyYXBoaWNzTGF5ZXIgPT0gbV9mb3JlZ3Jv
dW5kTGF5ZXIuZ2V0KCkgfHwgZ3JhcGhpY3NMYXllciA9PSBtX21hc2tMYXllci5nZXQoKSkgewot
ICAgICAgICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgY29va2llID0gSW5zcGVjdG9y
SW5zdHJ1bWVudGF0aW9uOjp3aWxsUGFpbnQobV9vd25pbmdMYXllci0+cmVuZGVyZXIoKS0+ZnJh
bWUoKSwgY2xpcCk7CisgICAgICAgIEluc3BlY3Rvckluc3RydW1lbnRhdGlvbkNvb2tpZSBjb29r
aWUgPSBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb246OndpbGxQYWludChtX293bmluZ0xheWVyLT5y
ZW5kZXJlcigpLT5mcmFtZSgpLCAmY29udGV4dCwgY2xpcCk7CiAKICAgICAgICAgLy8gVGhlIGRp
cnR5UmVjdCBpcyBpbiB0aGUgY29vcmRzIG9mIHRoZSBwYWludGluZyByb290LgogICAgICAgICBJ
bnRSZWN0IGRpcnR5UmVjdCA9IGNvbXBvc2l0ZWRCb3VuZHMoKTsK
</data>
<flag name="review"
          id="130197"
          type_id="1"
          status="+"
          setter="yurys"
    />
          </attachment>
      

    </bug>

</bugzilla>