<?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>205929</bug_id>
          
          <creation_ts>2020-01-08 08:27:20 -0800</creation_ts>
          <short_desc>Replace all Element::rendererIsNeeded() overrides that don&apos;t require RenderStyle with Element::rendererIsEverNeeded() overrides</short_desc>
          <delta_ts>2020-01-13 05:56:16 -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>CSS</component>
          <version>Safari Technology Preview</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=205925</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>dbarton</cc>
    
    <cc>dbates</cc>
    
    <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fmalita</cc>
    
    <cc>fred.wang</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>koivisto</cc>
    
    <cc>mifenton</cc>
    
    <cc>pdr</cc>
    
    <cc>philipj</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1604099</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-01-08 08:27:20 -0800</bug_when>
    <thetext>This is a followup to https://bugs.webkit.org/show_bug.cgi?id=205925.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1604556</commentid>
    <comment_count>1</comment_count>
      <attachid>387204</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2020-01-09 02:22:54 -0800</bug_when>
    <thetext>Created attachment 387204
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605811</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-13 05:56:16 -0800</bug_when>
    <thetext>&lt;rdar://problem/58527189&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>387204</attachid>
            <date>2020-01-09 02:22:54 -0800</date>
            <delta_ts>2020-01-09 02:25:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205929-20200109112252.patch</filename>
            <type>text/plain</type>
            <size>55226</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU0MjAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzU0YTdjNzk3OTVlMjk3
OWFhNjM4MzgwMjc1YmYzMTZkOWM0MTk0Mi4uMmIxNjdjMzlkODY3NTZjN2ZlNWZmMTQyMmQ2Mzc5
ZmM2M2NiYTU3MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDExOSBAQAorMjAyMC0wMS0wOSAgQW50
b2luZSBRdWludCAgPGdyYW91dHNAYXBwbGUuY29tPgorCisgICAgICAgIFJlcGxhY2UgYWxsIEVs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoKSBvdmVycmlkZXMgdGhhdCBkb24ndCByZXF1aXJlIFJl
bmRlclN0eWxlIHdpdGggRWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlkZXMK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwNTkyOQor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaHRtbC9I
VE1MQXBwbGV0RWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MQXBwbGV0RWxlbWVu
dDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEFwcGxldEVs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRNTEFw
cGxldEVsZW1lbnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50Lmg6CisgICAgICAgICog
aHRtbC9IVE1MRW1iZWRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbWJlZEVs
ZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbWJl
ZEVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRN
TEVtYmVkRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTEZyYW1lRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MRnJhbWVFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCk6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MRnJhbWVFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKTog
RGVsZXRlZC4KKyAgICAgICAgKiBodG1sL0hUTUxGcmFtZUVsZW1lbnQuaDoKKyAgICAgICAgKiBo
dG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0RWxl
bWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTElucHV0
RWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCk6IERlbGV0ZWQuCisgICAgICAgICogaHRtbC9IVE1M
SW5wdXRFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToK
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBE
ZWxldGVkLgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5oOgorICAgICAgICAqIGh0
bWwvSFRNTE9wdEdyb3VwRWxlbWVudC5oOgorICAgICAgICAqIGh0bWwvSFRNTE9wdGlvbkVsZW1l
bnQuaDoKKyAgICAgICAgKiBodG1sL0hUTUxWaWRlb0VsZW1lbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFZpZGVvRWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFZpZGVvRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCk6IERlbGV0ZWQuCisg
ICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IaWRkZW5J
bnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SGlkZGVuSW5wdXRUeXBlOjpyZW5kZXJl
cklzRXZlck5lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpIaWRkZW5JbnB1dFR5cGU6OnJlbmRl
cmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSGlkZGVuSW5wdXRUeXBlLmg6
CisgICAgICAgICogaHRtbC9JbnB1dFR5cGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5wdXRU
eXBlOjpyZW5kZXJlcklzRXZlck5lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpJbnB1dFR5cGU6
OnJlbmRlcmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvSW5wdXRUeXBlLmg6
CisgICAgICAgICogaHRtbC9zaGFkb3cvRGV0YWlsc01hcmtlckNvbnRyb2wuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6RGV0YWlsc01hcmtlckNvbnRyb2w6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToK
KyAgICAgICAgKFdlYkNvcmU6OkRldGFpbHNNYXJrZXJDb250cm9sOjpyZW5kZXJlcklzTmVlZGVk
KTogRGVsZXRlZC4KKyAgICAgICAgKiBodG1sL3NoYWRvdy9EZXRhaWxzTWFya2VyQ29udHJvbC5o
OgorICAgICAgICAqIGh0bWwvc2hhZG93L1Byb2dyZXNzU2hhZG93RWxlbWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpQcm9ncmVzc1NoYWRvd0VsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVk
KToKKyAgICAgICAgKFdlYkNvcmU6OlByb2dyZXNzSW5uZXJFbGVtZW50OjpyZW5kZXJlcklzRXZl
ck5lZWRlZCk6CisgICAgICAgIChXZWJDb3JlOjpQcm9ncmVzc1NoYWRvd0VsZW1lbnQ6OnJlbmRl
cmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6UHJvZ3Jlc3NJbm5lckVs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIGh0bWwvc2hhZG93
L1Byb2dyZXNzU2hhZG93RWxlbWVudC5oOgorICAgICAgICAqIG1hdGhtbC9NYXRoTUxVbmtub3du
RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdBbHRHbHlwaERlZkVsZW1lbnQuaDoKKyAgICAg
ICAgKiBzdmcvU1ZHQWx0R2x5cGhJdGVtRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdDb21w
b25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdDdXJzb3JF
bGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0Rlc2NFbGVtZW50Lmg6CisgICAgICAgICogc3Zn
L1NWR0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRWxlbWVudDo6cmVuZGVyZXJJ
c0V2ZXJOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHRWxlbWVudDo6cmVuZGVyZXJJc05l
ZWRlZCk6IERlbGV0ZWQuCisgICAgICAgICogc3ZnL1NWR0VsZW1lbnQuaDoKKyAgICAgICAgKiBz
dmcvU1ZHRkVMaWdodEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHRkVNZXJnZU5vZGVFbGVt
ZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRl
cy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJp
YnV0ZXM6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ZpbHRl
clByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlczo6cmVuZGVyZXJJc05lZWRlZCk6IERlbGV0ZWQu
CisgICAgICAgICogc3ZnL1NWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5oOgor
ICAgICAgICAqIHN2Zy9TVkdGb250RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdGb250RmFj
ZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50Lmg6Cisg
ICAgICAgICogc3ZnL1NWR0ZvbnRGYWNlTmFtZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZH
Rm9udEZhY2VTcmNFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVu
dC5oOgorICAgICAgICAqIHN2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpTVkdGb3JlaWduT2JqZWN0RWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQp
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6OnJlbmRlcmVySXNO
ZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIHN2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5o
OgorICAgICAgICAqIHN2Zy9TVkdHRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdH
RWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHR0Vs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBEZWxldGVkLgorICAgICAgICAqIHN2Zy9TVkdHRWxl
bWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdHbHlwaEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcv
U1ZHR2x5cGhSZWZFbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR0hLZXJuRWxlbWVudC5oOgor
ICAgICAgICAqIHN2Zy9TVkdNUGF0aEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHTWFya2Vy
RWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdNZXRhZGF0YUVsZW1lbnQuaDoKKyAgICAgICAg
KiBzdmcvU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdTVkdFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnJlbmRlcmVySXNFdmVy
TmVlZGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR1NWR0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVk
ZWQpOiBEZWxldGVkLgorICAgICAgICAqIHN2Zy9TVkdTVkdFbGVtZW50Lmg6CisgICAgICAgICog
c3ZnL1NWR1NjcmlwdEVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHU3RvcEVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHU3RvcEVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQpOiBE
ZWxldGVkLgorICAgICAgICAqIHN2Zy9TVkdTdG9wRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9T
VkdTdHlsZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVFJlZkVsZW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6U1ZHVFJlZkVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlNWR1RSZWZFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKiBzdmcvU1ZHVFJlZkVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVFNw
YW5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RTcGFuRWxlbWVudDo6cmVuZGVy
ZXJJc0V2ZXJOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6U1ZHVFNwYW5FbGVtZW50OjpyZW5k
ZXJlcklzTmVlZGVkKTogRGVsZXRlZC4KKyAgICAgICAgKiBzdmcvU1ZHVFNwYW5FbGVtZW50Lmg6
CisgICAgICAgICogc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdUZXh0UGF0aEVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKToKKyAgICAgICAgKFdl
YkNvcmU6OlNWR1RleHRQYXRoRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCk6IERlbGV0ZWQuCisg
ICAgICAgICogc3ZnL1NWR1RleHRQYXRoRWxlbWVudC5oOgorICAgICAgICAqIHN2Zy9TVkdUaXRs
ZUVsZW1lbnQuaDoKKyAgICAgICAgKiBzdmcvU1ZHVW5rbm93bkVsZW1lbnQuaDoKKyAgICAgICAg
KiBzdmcvU1ZHVktlcm5FbGVtZW50Lmg6CisgICAgICAgICogc3ZnL1NWR1ZpZXdFbGVtZW50Lmg6
CisgICAgICAgICogc3ZnL2FuaW1hdGlvbi9TVkdTTUlMRWxlbWVudC5oOgorCiAyMDIwLTAxLTA4
ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBz
dXBwb3J0IGZvciBlbmNvZGluZyBXZWJDb3JlOjpGb250IG92ZXIgSVBDIGZvciBEaXNwbGF5TGlz
dDo6RHJhd0dseXBocwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXBwbGV0
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmNwcApp
bmRleCA0NDUxMTY3M2NkN2Q2ZWExNzNiODU2ZTVkN2MwZjcyM2ZiYjZmYjI2Li5kMmU2ZjZlNGI2
N2E2ODU1YmQ3ZjkxNDE2ZmE5Y2E3MTRmZmQ0ODMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxBcHBsZXRFbGVtZW50LmNwcApAQCAtNzksMTEgKzc5LDExIEBAIGJvb2wgSFRNTEFwcGxldEVs
ZW1lbnQ6OmlzVVJMQXR0cmlidXRlKGNvbnN0IEF0dHJpYnV0ZSYgYXR0cmlidXRlKSBjb25zdAog
ICAgICAgICB8fCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojppc1VSTEF0dHJpYnV0ZShhdHRyaWJ1
dGUpOwogfQogCi1ib29sIEhUTUxBcHBsZXRFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0
IFJlbmRlclN0eWxlJiBzdHlsZSkKK2Jvb2wgSFRNTEFwcGxldEVsZW1lbnQ6OnJlbmRlcmVySXNF
dmVyTmVlZGVkKCkKIHsKICAgICBpZiAoIWhhc0F0dHJpYnV0ZVdpdGhvdXRTeW5jaHJvbml6YXRp
b24oY29kZUF0dHIpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgcmV0dXJuIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoc3R5bGUpOworICAgIHJldHVybiBIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpOwogfQogCiBSZW5kZXJQ
dHI8UmVuZGVyRWxlbWVudD4gSFRNTEFwcGxldEVsZW1lbnQ6OmNyZWF0ZUVsZW1lbnRSZW5kZXJl
cihSZW5kZXJTdHlsZSYmIHN0eWxlLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MQXBwbGV0RWxlbWVudC5oCmluZGV4IDZkOWNiMmY0MmQxZDljM2JiMGFi
ZDFlNDNiYWY1NzM0YWE2YzQzZTQuLjU4ZjFiMzk5YjFjN2M0ZGNhNzlhNzlhYTliNmE2YWQwNjUy
NDBlY2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEFwcGxldEVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBcHBsZXRFbGVtZW50LmgKQEAgLTM3LDcg
KzM3LDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmll
ZE5hbWUmLCBjb25zdCBBdG9tU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBpc1VSTEF0dHJpYnV0
ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdCBmaW5hbDsKICAgICAKLSAgICBib29sIHJlbmRlcmVy
SXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbDsKKyAgICBib29sIHJlbmRlcmVySXNF
dmVyTmVlZGVkKCkgZmluYWw7CiAgICAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IGNyZWF0ZUVs
ZW1lbnRSZW5kZXJlcihSZW5kZXJTdHlsZSYmLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKSBm
aW5hbDsKIAogICAgIFJlbmRlcldpZGdldCogcmVuZGVyV2lkZ2V0TG9hZGluZ1BsdWdpbigpIGNv
bnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5oCmluZGV4IDM5NWRiMWU2MmVlZGQx
ZDkwMGU5ZTdjM2VjODg4Y2IwMGNiMmE0YTMuLmU4M2JjOWZkZDZiODk1N2ZmZjIzZWFjMTMyYTdh
NTZiZGQ1MjFiMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50LmgKQEAgLTcxLDcgKzcxLDcg
QEAgcHVibGljOgogICAgIHZvaWQgYWNjZXNzS2V5QWN0aW9uKGJvb2wgc2VuZE1vdXNlRXZlbnRz
KSBvdmVycmlkZTsKIAogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50
UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgb3ZlcnJp
ZGU7Ci0gICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsOworICAgIGJvb2wgcmVu
ZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlkZTsKIAogICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1
YWwgSFRNTEZvcm1FbGVtZW50KiBmb3JtKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxFbWJlZEVsZW1lbnQuY3BwCmluZGV4IDkxNzAxZTE0NDRlZjI4NjA4NWY3MjEyNDBiZWYwYWI2
YzI3NjE2MTIuLjMxNjQ0MjU3NmJmNWExYWRiOGM3MWE1ZDI3NjZjN2ZiM2NiNjYwNzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1iZWRFbGVtZW50LmNwcApAQCAtMTk0LDEzICsxOTQsMTMg
QEAgdm9pZCBIVE1MRW1iZWRFbGVtZW50Ojp1cGRhdGVXaWRnZXQoQ3JlYXRlUGx1Z2lucyBjcmVh
dGVQbHVnaW5zKQogICAgIHJlcXVlc3RPYmplY3QobV91cmwsIG1fc2VydmljZVR5cGUsIHBhcmFt
TmFtZXMsIHBhcmFtVmFsdWVzKTsKIH0KIAotYm9vbCBIVE1MRW1iZWRFbGVtZW50OjpyZW5kZXJl
cklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK2Jvb2wgSFRNTEVtYmVkRWxlbWVu
dDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKQogewogICAgIGlmICghaGFzVHlwZU9yU3JjKCp0aGlz
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYgKGlzSW1hZ2VUeXBlKCkpCi0gICAg
ICAgIHJldHVybiBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKHN0eWxl
KTsKKyAgICAgICAgcmV0dXJuIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbmRlcmVySXNFdmVy
TmVlZGVkKCk7CiAKICAgICAvLyBJZiBteSBwYXJlbnQgaXMgYW4gPG9iamVjdD4gYW5kIGlzIG5v
dCBzZXQgdG8gdXNlIGZhbGxiYWNrIGNvbnRlbnQsIEkKICAgICAvLyBzaG91bGQgYmUgaWdub3Jl
ZCBhbmQgbm90IGdldCBhIHJlbmRlcmVyLgpAQCAtMjE0LDcgKzIxNCw3IEBAIGJvb2wgSFRNTEVt
YmVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCiAg
ICAgICAgIH0KICAgICB9CiAKLSAgICByZXR1cm4gSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVu
ZGVyZXJJc05lZWRlZChzdHlsZSk7CisgICAgcmV0dXJuIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6
OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiB9CiAKIGJvb2wgSFRNTEVtYmVkRWxlbWVudDo6aXNV
UkxBdHRyaWJ1dGUoY29uc3QgQXR0cmlidXRlJiBhdHRyaWJ1dGUpIGNvbnN0CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbWJlZEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVtYmVkRWxlbWVudC5oCmluZGV4IDdmYTdlMTA4YmVhZGFhZTZlOGNiNGZmZWFi
ZGNhMjNjMDhiY2RmYzQuLjFiODI4ZmI1OThlZGVhM2Q3Nzk4ZjRiNjUzOGYzODllNjAzZmZhZDgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5oCkBAIC0zOCw3ICszOCw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwg
Y29uc3QgQXRvbVN0cmluZyYpIGZpbmFsOwogICAgIHZvaWQgY29sbGVjdFN0eWxlRm9yUHJlc2Vu
dGF0aW9uQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9tU3RyaW5nJiwg
TXV0YWJsZVN0eWxlUHJvcGVydGllcyYpIGZpbmFsOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVl
ZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWw7CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5l
ZWRlZCgpIGZpbmFsOwogCiAgICAgYm9vbCBpc1VSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUm
KSBjb25zdCBmaW5hbDsKICAgICBjb25zdCBBdG9tU3RyaW5nJiBpbWFnZVNvdXJjZVVSTCgpIGNv
bnN0IGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRnJhbWVFbGVt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5jcHAKaW5kZXgg
ZjJkZTk4YjRkZTAxODIwZTU1MDk2MmYwZDBjYWFhNTNkNjVmMGVhMS4uMDM4OWE3ZTdjNmQwODIy
MGQ4ODg0ZjVkZjQzMmVlZjMyMjVkOWM3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRnJhbWVFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFt
ZUVsZW1lbnQuY3BwCkBAIC00OCw3ICs0OCw3IEBAIFJlZjxIVE1MRnJhbWVFbGVtZW50PiBIVE1M
RnJhbWVFbGVtZW50OjpjcmVhdGUoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jCiAg
ICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgSFRNTEZyYW1lRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVu
dCkpOwogfQogCi1ib29sIEhUTUxGcmFtZUVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3Qg
UmVuZGVyU3R5bGUmKQorYm9vbCBIVE1MRnJhbWVFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRl
ZCgpCiB7CiAgICAgLy8gRm9yIGNvbXBhdGliaWxpdHksIGZyYW1lcyByZW5kZXIgZXZlbiB3aGVu
IGRpc3BsYXk6IG5vbmUgaXMgc2V0LgogICAgIHJldHVybiBjYW5Mb2FkKCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxGcmFtZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEZyYW1lRWxlbWVudC5oCmluZGV4IGNkODdjODU0OTYwY2M1ODMyNmQwNWVhNzg4
YjE4YTM4YjMwOTQ2M2QuLjJjYmJlMTNhYjhiODJmYjIzODQxYWM5YzU4MjIyODQ4NGMzZjA4Nzkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEZyYW1lRWxlbWVudC5oCkBAIC00Myw3ICs0Myw3IEBA
IHByaXZhdGU6CiAgICAgSFRNTEZyYW1lRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQmKTsKIAogICAgIHZvaWQgZGlkQXR0YWNoUmVuZGVyZXJzKCkgZmluYWw7Ci0gICAgYm9v
bCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWw7CisgICAgYm9vbCBy
ZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsOwogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50
PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3QgUmVuZGVyVHJlZVBv
c2l0aW9uJikgZmluYWw7CiAgICAgaW50IGRlZmF1bHRUYWJJbmRleCgpIGNvbnN0IGZpbmFsOwog
ICAgIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21T
dHJpbmcmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0
RWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuY3BwCmlu
ZGV4IGRmZTE5MGE1OWRkZDFlNmFkMTUzMGM1ZjIxOTRiMDg1N2FjN2I1ZTYuLjhjZDk4Yjk1YTA0
Mjc1ZjI1MmZhZjFkZmNmNmE5ZDQ2YmE4ZTc1NDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTElucHV0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
SW5wdXRFbGVtZW50LmNwcApAQCAtODM5LDkgKzgzOSw5IEBAIHZvaWQgSFRNTElucHV0RWxlbWVu
dDo6ZmluaXNoUGFyc2luZ0NoaWxkcmVuKCkKICAgICB9CiB9CiAKLWJvb2wgSFRNTElucHV0RWxl
bWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCitib29sIEhU
TUxJbnB1dEVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCkKIHsKLSAgICByZXR1cm4gbV9p
bnB1dFR5cGUtPnJlbmRlcmVySXNOZWVkZWQoKSAmJiBIVE1MVGV4dEZvcm1Db250cm9sRWxlbWVu
dDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7CisgICAgcmV0dXJuIG1faW5wdXRUeXBlLT5yZW5k
ZXJlcklzRXZlck5lZWRlZCgpICYmIEhUTUxUZXh0Rm9ybUNvbnRyb2xFbGVtZW50OjpyZW5kZXJl
cklzRXZlck5lZWRlZCgpOwogfQogCiBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gSFRNTElucHV0
RWxlbWVudDo6Y3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYgc3R5bGUsIGNvbnN0
IFJlbmRlclRyZWVQb3NpdGlvbiYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxJbnB1dEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5o
CmluZGV4IDNkZWFiNmI0ZWZhZDBiYWQ2YTdhNTA5YmZjODdlNjIyMDY2MTJjNTUuLmVhNzM4MDdi
ODA3YzlkNGY1MDExMzRmNGM4ZjE5ZjhjMmU5ZGRlZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TElucHV0RWxlbWVudC5oCkBAIC0yMDAsNyArMjAwLDcgQEAgcHVibGljOgogCiAgICAgYm9vbCBj
YW5IYXZlU2VsZWN0aW9uKCkgY29uc3Q7CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29u
c3QgUmVuZGVyU3R5bGUmKSBmaW5hbDsKKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkg
ZmluYWw7CiAgICAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IGNyZWF0ZUVsZW1lbnRSZW5kZXJl
cihSZW5kZXJTdHlsZSYmLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKSBmaW5hbDsKICAgICB2
b2lkIHdpbGxBdHRhY2hSZW5kZXJlcnMoKSBmaW5hbDsKICAgICB2b2lkIGRpZEF0dGFjaFJlbmRl
cmVycygpIGZpbmFsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKaW5k
ZXggY2JmMzFlYmYzNThlNzgyYjQzOGI4YzI4OGVhNmE4YTU0MDhkZjQ1Yy4uMGEzNmFkMzEwYWY5
ZGU5YWIxNTY1MjI0ZjZiMzc2ZmNmZGZmZTVkNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuY3BwCkBAIC03OTYsOSArNzk2LDkgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50
OjpmaW5pc2hQYXJzaW5nQ2hpbGRyZW4oKQogI2VuZGlmCiB9CiAKLWJvb2wgSFRNTE1lZGlhRWxl
bWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCitib29sIEhU
TUxNZWRpYUVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCkKIHsKLSAgICByZXR1cm4gY29u
dHJvbHMoKSAmJiBIVE1MRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7CisgICAgcmV0
dXJuIGNvbnRyb2xzKCkgJiYgSFRNTEVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiB9
CiAKIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBIVE1MTWVkaWFFbGVtZW50OjpjcmVhdGVFbGVt
ZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiBzdHlsZSwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9u
JikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oIGIv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKaW5kZXggMWQ2ZGQyZWQ0NDUx
YTFmYzBiMTMwZjA2ZmU3OGZiZThiZjU0Y2FjMS4uNmE1YTQ3MGQ0YTdkZWUyMWJhYjFiNzFjZDQz
NDcwZDFlNjYxNjcxNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgKQEAg
LTYyOSw3ICs2MjksNyBAQCBwcml2YXRlOgogCiAgICAgYm9vbCBzdXBwb3J0c0ZvY3VzKCkgY29u
c3Qgb3ZlcnJpZGU7CiAgICAgYm9vbCBpc01vdXNlRm9jdXNhYmxlKCkgY29uc3Qgb3ZlcnJpZGU7
Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGU7
CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIG92ZXJyaWRlOwogICAgIGJvb2wgY2hp
bGRTaG91bGRDcmVhdGVSZW5kZXJlcihjb25zdCBOb2RlJikgY29uc3Qgb3ZlcnJpZGU7CiAgICAg
SW5zZXJ0ZWRJbnRvQW5jZXN0b3JSZXN1bHQgaW5zZXJ0ZWRJbnRvQW5jZXN0b3IoSW5zZXJ0aW9u
VHlwZSwgQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgZGlkRmluaXNoSW5zZXJ0
aW5nTm9kZSgpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
T3B0R3JvdXBFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1l
bnQuaAppbmRleCBhMjMzYjM1MDRkYTNlMzc3Zjc5NDc5ODUzM2RlYjY5ZmRjN2QyYWExLi42OGM1
YzZkNTJmN2JmNzJiNWE3ZjEyZDg0ZTViMjE2MDE4OGI1MjAzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxPcHRHcm91cEVsZW1lbnQuaApAQCAtNDUsNyArNDUsNyBAQCBwcml2YXRlOgogICAg
IGNvbnN0IEF0b21TdHJpbmcmIGZvcm1Db250cm9sVHlwZSgpIGNvbnN0OwogICAgIGJvb2wgaXNG
b2N1c2FibGUoKSBjb25zdCBmaW5hbDsKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1
YWxpZmllZE5hbWUmLCBjb25zdCBBdG9tU3RyaW5nJikgZmluYWw7Ci0gICAgYm9vbCByZW5kZXJl
cklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAg
ICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIAog
ICAgIHZvaWQgY2hpbGRyZW5DaGFuZ2VkKGNvbnN0IENoaWxkQ2hhbmdlJikgZmluYWw7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE9wdGlvbkVsZW1lbnQuaAppbmRleCBmMGQ5NGM4YTZiNWYzMDgz
MzRlYWExMWRhOWU0MDIxYjVjMGU1N2U2Li4xYWFkNDY3N2E3Mjk3M2FjNmJhMWZhODU0ZjIyNTk5
NjdhNjRmNDAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPcHRpb25FbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT3B0aW9uRWxlbWVudC5oCkBAIC03
MCw3ICs3MCw3IEBAIHByaXZhdGU6CiAgICAgSFRNTE9wdGlvbkVsZW1lbnQoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIERvY3VtZW50Jik7CiAKICAgICBib29sIGlzRm9jdXNhYmxlKCkgY29uc3QgZmlu
YWw7Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwg
eyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwg
eyByZXR1cm4gZmFsc2U7IH0KICAgICBib29sIG1hdGNoZXNEZWZhdWx0UHNldWRvQ2xhc3MoKSBj
b25zdCBmaW5hbDsKIAogICAgIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFt
ZSYsIGNvbnN0IEF0b21TdHJpbmcmKSBmaW5hbDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRl
b0VsZW1lbnQuY3BwCmluZGV4IGNjOTNhZGE5NWE1YjNkYWRkNzY1NTRhOTdmYTBhZWU5NTdlOWU1
YTguLjVmMzVhN2U1MDVhNDc3MjUxMmVhNTAzNzBjODM4MjMyMTQwMmUzMmQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcApAQCAtODgsOSArODgsOSBAQCBSZWY8SFRN
TFZpZGVvRWxlbWVudD4gSFRNTFZpZGVvRWxlbWVudDo6Y3JlYXRlKERvY3VtZW50JiBkb2N1bWVu
dCkKICAgICByZXR1cm4gY3JlYXRlKHZpZGVvVGFnLCBkb2N1bWVudCwgZmFsc2UpOwogfQogCi1i
b29sIEhUTUxWaWRlb0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUm
IHN0eWxlKQorYm9vbCBIVE1MVmlkZW9FbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpCiB7
Ci0gICAgcmV0dXJuIEhUTUxFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKHN0eWxlKTsgCisgICAg
cmV0dXJuIEhUTUxFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpOwogfQogCiBSZW5kZXJQ
dHI8UmVuZGVyRWxlbWVudD4gSFRNTFZpZGVvRWxlbWVudDo6Y3JlYXRlRWxlbWVudFJlbmRlcmVy
KFJlbmRlclN0eWxlJiYgc3R5bGUsIGNvbnN0IFJlbmRlclRyZWVQb3NpdGlvbiYpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCmluZGV4IDRjODgyMDg0NGZhNGM3YzkyNWQzZTlj
NmM5ZGQwMjBhMjQzYjY0NjEuLjFiMzg5ZTI4NGQ1MThmZmE1NzU3MjA2ZmQzYjg0Y2UwM2ExY2Iw
ZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCkBAIC0xMTEsNyArMTEx
LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgc2NoZWR1bGVSZXNpemVFdmVudCgpIGZpbmFsOwog
ICAgIHZvaWQgc2NoZWR1bGVSZXNpemVFdmVudElmU2l6ZUNoYW5nZWQoKSBmaW5hbDsKLSAgICBi
b29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbDsKKyAgICBib29s
IHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWw7CiAgICAgdm9pZCBkaWRBdHRhY2hSZW5kZXJl
cnMoKSBmaW5hbDsKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBjb25zdCBBdG9tU3RyaW5nJikgZmluYWw7CiAgICAgYm9vbCBpc1ByZXNlbnRhdGlvbkF0dHJp
YnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJikgY29uc3QgZmluYWw7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L0hpZGRlbklucHV0VHlwZS5jcHAKaW5kZXggMTRiNjNiZjVmZGIwYjJlM2Q0NzI5NmQyNzZhODYy
Y2QxNDVlMjVkNS4uYzFhOGY5YWFkOThkMjU3YWE2ZTRkMmZlYzYzZWY4ZTBlNjZhNTY0NCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmNwcApAQCAtNzcsNyArNzcsNyBAQCB2
b2lkIEhpZGRlbklucHV0VHlwZTo6YWNjZXNzS2V5QWN0aW9uKGJvb2wpCiB7CiB9CiAKLWJvb2wg
SGlkZGVuSW5wdXRUeXBlOjpyZW5kZXJlcklzTmVlZGVkKCkKK2Jvb2wgSGlkZGVuSW5wdXRUeXBl
OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpCiB7CiAgICAgcmV0dXJuIGZhbHNlOwogfQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSGlkZGVuSW5wdXRUeXBlLmgKaW5kZXggMDhjZTRhODZmMGUwNzk0YjFmNDUxYTNj
Yjk5YmY2YzljODdhYmI0OS4uNTEzYjUzMzdjN2ZhZWZhMzAzNzQxMjE4NTA3YWM5ZTgxMGMyZGNh
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IaWRkZW5JbnB1dFR5cGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hpZGRlbklucHV0VHlwZS5oCkBAIC00NSw3ICs0NSw3IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBzdXBwb3J0c1ZhbGlkYXRpb24oKSBjb25zdCBvdmVycmlkZTsK
ICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJT
dHlsZSYmKSBvdmVycmlkZTsKICAgICB2b2lkIGFjY2Vzc0tleUFjdGlvbihib29sIHNlbmRNb3Vz
ZUV2ZW50cykgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKCkgb3ZlcnJpZGU7
CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIG92ZXJyaWRlOwogICAgIGJvb2wgc3Rv
cmVzVmFsdWVTZXBhcmF0ZUZyb21BdHRyaWJ1dGUoKSBvdmVycmlkZTsKICAgICBib29sIGlzSGlk
ZGVuVHlwZSgpIGNvbnN0IG92ZXJyaWRlOwogICAgIGJvb2wgc3VwcG9ydExhYmVscygpIGNvbnN0
IG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0lucHV0VHlwZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0lucHV0VHlwZS5jcHAKaW5k
ZXggZjU3ZmI2YWZjZjQ1MGNmYzE2NWNhYmJjMjQ2OWVkZWUyYTI4NzFjMi4uNDYwZTllOWJiYTgy
ZjEwOTQwMWI5OWZiNjIzY2RlODVkYWI4Nzk1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9JbnB1dFR5cGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmNw
cApAQCAtNjI1LDcgKzYyNSw3IEBAIEhUTUxFbGVtZW50KiBJbnB1dFR5cGU6OnBsYWNlaG9sZGVy
RWxlbWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKLWJvb2wgSW5wdXRUeXBl
OjpyZW5kZXJlcklzTmVlZGVkKCkKK2Jvb2wgSW5wdXRUeXBlOjpyZW5kZXJlcklzRXZlck5lZWRl
ZCgpCiB7CiAgICAgcmV0dXJuIHRydWU7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0lucHV0VHlwZS5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9JbnB1dFR5cGUuaAppbmRleCAy
MDhiZjI1OTA0MWEzNTBjYTUxMjNkMGE3YTFmZTc1OGQ0YTNiNWUwLi5jYTllZTIzZDM4ZjI1MWM4
MGI3N2ViNmU4NzI5NjEwM2Q4ZGI1NGM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L0lucHV0VHlwZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW5wdXRUeXBlLmgKQEAgLTIz
OCw3ICsyMzgsNyBAQCBwdWJsaWM6CiAKICAgICAvLyBNaXNjZWxsYW5lb3VzIGZ1bmN0aW9ucy4K
IAotICAgIHZpcnR1YWwgYm9vbCByZW5kZXJlcklzTmVlZGVkKCk7CisgICAgdmlydHVhbCBib29s
IHJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiAgICAgdmlydHVhbCBSZW5kZXJQdHI8UmVuZGVyRWxl
bWVudD4gY3JlYXRlSW5wdXRSZW5kZXJlcihSZW5kZXJTdHlsZSYmKTsKICAgICB2aXJ0dWFsIHZv
aWQgYWRkU2VhcmNoUmVzdWx0KCk7CiAgICAgdmlydHVhbCB2b2lkIGF0dGFjaCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGV0YWlsc01hcmtlckNvbnRyb2wuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGV0YWlsc01hcmtlckNvbnRyb2wuY3BwCmlu
ZGV4IDA0YTlhZTY0NGI4NjUyODY5ZTJhYjQyYzY4ODIwOGJiYTcwNDhkNDguLmZkZmJkZTJhOGY4
YjNmOGM4MDllZjQ0NTY3N2U1MjdjZGY5OGZiZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L0RldGFpbHNNYXJrZXJDb250cm9sLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3NoYWRvdy9EZXRhaWxzTWFya2VyQ29udHJvbC5jcHAKQEAgLTU3LDkgKzU3LDkgQEAg
UmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IERldGFpbHNNYXJrZXJDb250cm9sOjpjcmVhdGVFbGVt
ZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUKICAgICByZXR1cm4gY3JlYXRlUmVuZGVyZXI8UmVuZGVy
RGV0YWlsc01hcmtlcj4oKnRoaXMsIFdURk1vdmUoc3R5bGUpKTsKIH0KIAotYm9vbCBEZXRhaWxz
TWFya2VyQ29udHJvbDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUp
Citib29sIERldGFpbHNNYXJrZXJDb250cm9sOjpyZW5kZXJlcklzRXZlck5lZWRlZCgpCiB7Ci0g
ICAgcmV0dXJuIGRvd25jYXN0PEhUTUxTdW1tYXJ5RWxlbWVudD4oc2hhZG93SG9zdCgpKS0+aXNB
Y3RpdmVTdW1tYXJ5KCkgJiYgSFRNTERpdkVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoc3R5bGUp
OworICAgIHJldHVybiBkb3duY2FzdDxIVE1MU3VtbWFyeUVsZW1lbnQ+KHNoYWRvd0hvc3QoKSkt
PmlzQWN0aXZlU3VtbWFyeSgpICYmIEhUTUxEaXZFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRl
ZCgpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EZXRh
aWxzTWFya2VyQ29udHJvbC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvRGV0YWlsc01h
cmtlckNvbnRyb2wuaAppbmRleCAxNmFhMjFkNjVjY2MwMDFkYWI0ZTNjNGE2MWFhN2QwZmFmOGZm
Yjg1Li42ODY1Mzk0MDI4OTJlNWIzMmY3NjFiODIzNTdlOWQ5MDk1NTdkMTk5IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9EZXRhaWxzTWFya2VyQ29udHJvbC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0RldGFpbHNNYXJrZXJDb250cm9sLmgKQEAgLTQ0
LDcgKzQ0LDcgQEAgcHJpdmF0ZToKICAgICBEZXRhaWxzTWFya2VyQ29udHJvbChEb2N1bWVudCYp
OwogCiAgICAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IGNyZWF0ZUVsZW1lbnRSZW5kZXJlcihS
ZW5kZXJTdHlsZSYmLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKSBvdmVycmlkZTsKLSAgICBi
b29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVycmlkZTsKKyAgICBi
b29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Qcm9ncmVz
c1NoYWRvd0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvUHJvZ3Jlc3NT
aGFkb3dFbGVtZW50LmNwcAppbmRleCA4MzhiMjQ0MzI4ZTJjYTMxNDE0ZGU1NWQ2ZGNiM2MyOTY5
ZTlmZTc0Li4xMjU4Mzk1NjEyY2YxYzI4MDg5ODc2YmI3OWFjOTlkZjYzZjA5ZGM2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Qcm9ncmVzc1NoYWRvd0VsZW1lbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1Byb2dyZXNzU2hhZG93RWxlbWVudC5j
cHAKQEAgLTUyLDEwICs1MiwxMCBAQCBIVE1MUHJvZ3Jlc3NFbGVtZW50KiBQcm9ncmVzc1NoYWRv
d0VsZW1lbnQ6OnByb2dyZXNzRWxlbWVudCgpIGNvbnN0CiAgICAgcmV0dXJuIGRvd25jYXN0PEhU
TUxQcm9ncmVzc0VsZW1lbnQ+KHNoYWRvd0hvc3QoKSk7CiB9CiAKLWJvb2wgUHJvZ3Jlc3NTaGFk
b3dFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK2Jv
b2wgUHJvZ3Jlc3NTaGFkb3dFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpCiB7CiAgICAg
UmVuZGVyT2JqZWN0KiBwcm9ncmVzc1JlbmRlcmVyID0gcHJvZ3Jlc3NFbGVtZW50KCktPnJlbmRl
cmVyKCk7Ci0gICAgcmV0dXJuIHByb2dyZXNzUmVuZGVyZXIgJiYgIXByb2dyZXNzUmVuZGVyZXIt
PnN0eWxlKCkuaGFzQXBwZWFyYW5jZSgpICYmIEhUTUxEaXZFbGVtZW50OjpyZW5kZXJlcklzTmVl
ZGVkKHN0eWxlKTsKKyAgICByZXR1cm4gcHJvZ3Jlc3NSZW5kZXJlciAmJiAhcHJvZ3Jlc3NSZW5k
ZXJlci0+c3R5bGUoKS5oYXNBcHBlYXJhbmNlKCkgJiYgSFRNTERpdkVsZW1lbnQ6OnJlbmRlcmVy
SXNFdmVyTmVlZGVkKCk7CiB9CiAKIFByb2dyZXNzSW5uZXJFbGVtZW50OjpQcm9ncmVzc0lubmVy
RWxlbWVudChEb2N1bWVudCYgZG9jdW1lbnQpCkBAIC02OCwxMCArNjgsMTAgQEAgUmVuZGVyUHRy
PFJlbmRlckVsZW1lbnQ+IFByb2dyZXNzSW5uZXJFbGVtZW50OjpjcmVhdGVFbGVtZW50UmVuZGVy
ZXIoUmVuZGVyU3R5bGUKICAgICByZXR1cm4gY3JlYXRlUmVuZGVyZXI8UmVuZGVyUHJvZ3Jlc3M+
KCp0aGlzLCBXVEZNb3ZlKHN0eWxlKSk7CiB9CiAKLWJvb2wgUHJvZ3Jlc3NJbm5lckVsZW1lbnQ6
OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQorYm9vbCBQcm9ncmVz
c0lubmVyRWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKQogewogICAgIFJlbmRlck9iamVj
dCogcHJvZ3Jlc3NSZW5kZXJlciA9IHByb2dyZXNzRWxlbWVudCgpLT5yZW5kZXJlcigpOwotICAg
IHJldHVybiBwcm9ncmVzc1JlbmRlcmVyICYmICFwcm9ncmVzc1JlbmRlcmVyLT5zdHlsZSgpLmhh
c0FwcGVhcmFuY2UoKSAmJiBIVE1MRGl2RWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7
ICAgIAorICAgIHJldHVybiBwcm9ncmVzc1JlbmRlcmVyICYmICFwcm9ncmVzc1JlbmRlcmVyLT5z
dHlsZSgpLmhhc0FwcGVhcmFuY2UoKSAmJiBIVE1MRGl2RWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJO
ZWVkZWQoKTsKIH0KIAogUHJvZ3Jlc3NCYXJFbGVtZW50OjpQcm9ncmVzc0JhckVsZW1lbnQoRG9j
dW1lbnQmIGRvY3VtZW50KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
UHJvZ3Jlc3NTaGFkb3dFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Qcm9n
cmVzc1NoYWRvd0VsZW1lbnQuaAppbmRleCBkMzgyNjQyNDdhYmNkYjkwMjliMjRhMmY4NDU3MWFi
Yzc0ZDVjZDAwLi4zMGY3MjhmMDFiNDgxM2I2ZjUwM2JhM2I0YjczMzYzZjA0ZWE3MzYzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Qcm9ncmVzc1NoYWRvd0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9Qcm9ncmVzc1NoYWRvd0VsZW1lbnQu
aApAQCAtNDcsNyArNDcsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgUHJvZ3Jlc3NTaGFkb3dFbGVtZW50
KERvY3VtZW50Jik7CiAKIHByaXZhdGU6Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0
IFJlbmRlclN0eWxlJikgb3ZlcnJpZGU7CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgp
IG92ZXJyaWRlOwogfTsKIAogLy8gVGhlIHN1YmNsYXNzZXMgb2YgUHJvZ3Jlc3NTaGFkb3dFbGVt
ZW50IHNoYXJlIHRoZSBzYW1lIGlzb2hlYXAsIGJlY2F1c2UgdGhleSBkb24ndCBhZGQgYW55IG1v
cmUKQEAgLTYxLDcgKzYxLDcgQEAgcHJpdmF0ZToKICAgICBQcm9ncmVzc0lubmVyRWxlbWVudChE
b2N1bWVudCYpOwogCiAgICAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IGNyZWF0ZUVsZW1lbnRS
ZW5kZXJlcihSZW5kZXJTdHlsZSYmLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKSBvdmVycmlk
ZTsKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVycmlk
ZTsKKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgb3ZlcnJpZGU7CiB9Owogc3RhdGlj
X2Fzc2VydChzaXplb2YoUHJvZ3Jlc3NJbm5lckVsZW1lbnQpID09IHNpemVvZihQcm9ncmVzc1No
YWRvd0VsZW1lbnQpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbWF0aG1sL01hdGhN
TFVua25vd25FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9tYXRobWwvTWF0aE1MVW5rbm93bkVs
ZW1lbnQuaAppbmRleCBjZmQzZWE3YTZlZDg3ODhmNjllZGQ4NzRjOWIyOGVmYmM5OWZmNGJlLi40
MDM0YjRkMGExNDAzZDk3N2Q4NDgyZGFhYmE1ZGFlNGUyYTYzZmE3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9tYXRobWwvTWF0aE1MVW5rbm93bkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9tYXRobWwvTWF0aE1MVW5rbm93bkVsZW1lbnQuaApAQCAtNDUsNyArNDUsNyBAQCBwcml2
YXRlOgogICAgIHsKICAgICB9CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVu
ZGVyU3R5bGUmKSBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2
ZXJOZWVkZWQoKSBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoRGVmRWxl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoRGVmRWxlbWVudC5oCmluZGV4
IDQ3MTc0ZmJiMDJiNmQ3YjIyYTRiZDQ2N2JlNTdhYjU1Zjk1MjM5MjguLjYwY2Q1ZjdiNTc2OGZm
ZDAzN2NjM2IyMzdmYmEwMWQ2ZGY2NGY2MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2
Zy9TVkdBbHRHbHlwaERlZkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0
R2x5cGhEZWZFbGVtZW50LmgKQEAgLTM2LDcgKzM2LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAg
ICBTVkdBbHRHbHlwaERlZkVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Jik7
CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbCB7
IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBmaW5hbCB7
IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoSXRlbUVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdBbHRHbHlwaEl0ZW1FbGVtZW50LmgKaW5kZXggNjA2Yjc4MzM0ODQ3NjNm
NmMxMzUyOTA1OWY0ODc1OTZmNmRmZjgzMy4uMWI4ODg1NTdmMzdmY2UzYjE5Mzg5NzI2MzFmMTE5
YzAwYmMxZDE3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0FsdEdseXBoSXRl
bUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQWx0R2x5cGhJdGVtRWxlbWVu
dC5oCkBAIC0zNiw3ICszNiw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgU1ZHQWx0R2x5cGhJ
dGVtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKIAotICAgIGJvb2wg
cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHQ29tcG9uZW50VHJhbnNmZXJGdW5jdGlvbkVsZW1lbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oCmluZGV4IGU1
OTBmMmM2MzA4ZGU0YWUwMmViMWFjZDAzMzQwNmY2NWYwZWMyYmQuLjIxYWE1YzFkYTdhZTU0ZTdh
YmMxY2EwNWFlYzU5MjAzNjRiMjExYTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdDb21wb25lbnRUcmFuc2ZlckZ1bmN0aW9uRWxlbWVudC5oCkBAIC05Nyw3ICs5Nyw3
IEBAIHByb3RlY3RlZDoKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5h
bWUmLCBjb25zdCBBdG9tU3RyaW5nJikgb3ZlcnJpZGU7CiAgICAgdm9pZCBzdmdBdHRyaWJ1dGVD
aGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBvdmVycmlkZTsKIAotICAgIGJvb2wgcmVuZGVy
ZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNlOyB9
CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIG92ZXJyaWRlIHsgcmV0dXJuIGZhbHNl
OyB9CiAgICAgCiBwcml2YXRlOgogICAgIFByb3BlcnR5UmVnaXN0cnkgbV9wcm9wZXJ0eVJlZ2lz
dHJ5IHsgKnRoaXMgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdDdXJzb3JF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHQ3Vyc29yRWxlbWVudC5oCmluZGV4IDNh
ZWFmMjYzNjRjMzk4OTI1Zjc1OGQwMjZiZTBiODhlNzk0ZTUwZmIuLjIxMTFkNmY5NTM2ZWY4NWJh
YjE3N2E5M2M4MTljY2ExYjExNzA5YzYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdDdXJzb3JFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0N1cnNvckVsZW1l
bnQuaApAQCAtNTUsNyArNTUsNyBAQCBwcml2YXRlOgogICAgIHZvaWQgc3ZnQXR0cmlidXRlQ2hh
bmdlZChjb25zdCBRdWFsaWZpZWROYW1lJikgZmluYWw7CiAKICAgICBib29sIGlzVmFsaWQoKSBj
b25zdCBmaW5hbCB7IHJldHVybiBTVkdUZXN0czo6aXNWYWxpZCgpOyB9Ci0gICAgYm9vbCByZW5k
ZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0K
KyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0K
IAogICAgIHZvaWQgYWRkU3VicmVzb3VyY2VBdHRyaWJ1dGVVUkxzKExpc3RIYXNoU2V0PFVSTD4m
KSBjb25zdCBmaW5hbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Rlc2NF
bGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRGVzY0VsZW1lbnQuaAppbmRleCA1ZjVl
MWQ4MTI0YmE5MDM0NzI3MDQ4NThkZGM2YjdhODM3NzRhYjJmLi5mYmQ2ZjkxYWZkYTJjMmJhNTQ3
Y2NmMGViNWI0YWFhZWFjNjMxYjBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RGVzY0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRGVzY0VsZW1lbnQuaApA
QCAtMzQsNyArMzQsNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIFNWR0Rlc2NFbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVl
ZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29s
IHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAppbmRleCAyZmZj
YmFjNTIxMWM4YTA1YWU0NjBkMzBjYTA0MjZlNDY3Y2VhMTgzLi5kZWExNTg4ZTg4OGIzNzcwMzQ1
MjAzODdjNGEzZWRkYWJlOWU1YTM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQuY3BwCkBAIC03
NzIsNyArNzcyLDcgQEAgU3RyaW5nIFNWR0VsZW1lbnQ6OnRpdGxlKCkgY29uc3QKICAgICByZXR1
cm4gZmlyc3RUaXRsZSA/IGNvbnN0X2Nhc3Q8U1ZHVGl0bGVFbGVtZW50Kj4oZmlyc3RUaXRsZSkt
PmlubmVyVGV4dCgpIDogU3RyaW5nKCk7CiB9CiAKLWJvb2wgU1ZHRWxlbWVudDo6cmVuZGVyZXJJ
c05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCitib29sIFNWR0VsZW1lbnQ6OnJlbmRl
cmVySXNFdmVyTmVlZGVkKCkKIHsKICAgICAvLyBodHRwOi8vd3d3LnczLm9yZy9UUi9TVkcvZXh0
ZW5kLmh0bWwjUHJpdmF0ZURhdGEKICAgICAvLyBQcmV2ZW50IGFueXRoaW5nIG90aGVyIHRoYW4g
U1ZHIHJlbmRlcmVycyBmcm9tIGFwcGVhcmluZyBpbiBvdXIgcmVuZGVyIHRyZWUKQEAgLTc4MCw3
ICs3ODAsNyBAQCBib29sIFNWR0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVy
U3R5bGUmIHN0eWxlKQogICAgIC8vIHdpdGggdGhlIFNWRyBjb250ZW50LiBJbiBnZW5lcmFsLCB0
aGUgU1ZHIHVzZXIgYWdlbnQgd2lsbCBpbmNsdWRlIHRoZSB1bmtub3duCiAgICAgLy8gZWxlbWVu
dHMgaW4gdGhlIERPTSBidXQgd2lsbCBvdGhlcndpc2UgaWdub3JlIHVua25vd24gZWxlbWVudHMu
CiAgICAgaWYgKCFwYXJlbnRPclNoYWRvd0hvc3RFbGVtZW50KCkgfHwgcGFyZW50T3JTaGFkb3dI
b3N0RWxlbWVudCgpLT5pc1NWR0VsZW1lbnQoKSkKLSAgICAgICAgcmV0dXJuIFN0eWxlZEVsZW1l
bnQ6OnJlbmRlcmVySXNOZWVkZWQoc3R5bGUpOworICAgICAgICByZXR1cm4gU3R5bGVkRWxlbWVu
dDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKTsKIAogICAgIHJldHVybiBmYWxzZTsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHRWxlbWVudC5oCmluZGV4IDk4ZmNmZmJjYTRkNzEyNjdlNzQ1ZmVkYjliMzBlODBkMGM5
YjYyY2YuLmE2NmQzZjY3MmQ2ZTMyOWJjYzliNDY5N2NjNDdiMjJlYjcxMWQ5OGYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR0VsZW1lbnQuaApAQCAtMTQ5LDcgKzE0OSw3IEBAIHByb3RlY3RlZDoKICAgICBTVkdF
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwogICAgIHZpcnR1YWwgflNW
R0VsZW1lbnQoKTsKIAotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHls
ZSYpIG92ZXJyaWRlOworICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlkZTsK
ICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9t
U3RyaW5nJikgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGZpbmlzaFBhcnNpbmdDaGlsZHJlbigpIG92
ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFTGlnaHRFbGVtZW50
LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVMaWdodEVsZW1lbnQuaAppbmRleCBjZDBiZmI5
ZWRjZmQ3YjRlMWFmMzliNTVlZGJiYmQ3ODRhYWVhODlkLi44Y2MwODFiNGQ0M2UxMzJkY2QzZDA1
MWI2Nzk2ZDdkNmM1YmQ1NjEzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVM
aWdodEVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVMaWdodEVsZW1lbnQu
aApAQCAtNjAsNyArNjAsNyBAQCBwdWJsaWM6CiBwcm90ZWN0ZWQ6CiAgICAgU1ZHRkVMaWdodEVs
ZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Jik7CiAKLSAgICBib29sIHJlbmRl
cmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsg
fQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlkZSB7IHJldHVybiBmYWxz
ZTsgfQogCiBwcml2YXRlOgogICAgIHVzaW5nIFByb3BlcnR5UmVnaXN0cnkgPSBTVkdQcm9wZXJ0
eU93bmVyUmVnaXN0cnk8U1ZHRkVMaWdodEVsZW1lbnQsIFNWR0VsZW1lbnQ+OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0ZFTWVyZ2VOb2RlRWxlbWVudC5oCmluZGV4IGE5ZDJjMDc0YzUwZjk5OTdi
ODg2NTc5YTZjYWVmODI2OTRkYjE4NDIuLjU1ZmIzY2ViYjgxZTNkYzgyYjNkYWRlMzlhMWEwYWE2
ZjU4MDI2YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGRU1lcmdlTm9kZUVs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRkVNZXJnZU5vZGVFbGVtZW50LmgK
QEAgLTQyLDcgKzQyLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0
IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9tU3RyaW5nJikgZmluYWw7CiAgICAgdm9pZCBzdmdB
dHRyaWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmKSBmaW5hbDsKIAotICAgIGJvb2wg
cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNl
OyB9CiAKICAgICBQcm9wZXJ0eVJlZ2lzdHJ5IG1fcHJvcGVydHlSZWdpc3RyeSB7ICp0aGlzIH07
CiAgICAgUmVmPFNWR0FuaW1hdGVkU3RyaW5nPiBtX2luMSB7IFNWR0FuaW1hdGVkU3RyaW5nOjpj
cmVhdGUodGhpcykgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGaWx0ZXJQ
cmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Zp
bHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5jcHAKaW5kZXggY2YzYWRlZDRkYzk3ZmVl
NmQ2ODc0YTMyYmY3MjkxZTZiZTUwZjU1My4uMzg4NDhkNmM4MzI2NmNjNWIxZDc0YjFiM2M2Mzkz
ZTUyODhiMWFhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZpbHRlclByaW1p
dGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0Zp
bHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5jcHAKQEAgLTExNCwxMCArMTE0LDEwIEBA
IFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBTVkdGaWx0ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJp
YnV0ZXM6OmNyZWF0ZUVsZW1lbnRSZW5kCiAgICAgcmV0dXJuIGNyZWF0ZVJlbmRlcmVyPFJlbmRl
clNWR1Jlc291cmNlRmlsdGVyUHJpbWl0aXZlPigqdGhpcywgV1RGTW92ZShzdHlsZSkpOwogfQog
Ci1ib29sIFNWR0ZpbHRlclByaW1pdGl2ZVN0YW5kYXJkQXR0cmlidXRlczo6cmVuZGVyZXJJc05l
ZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCitib29sIFNWR0ZpbHRlclByaW1pdGl2ZVN0
YW5kYXJkQXR0cmlidXRlczo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKQogewogICAgIGlmIChwYXJl
bnROb2RlKCkgJiYgKHBhcmVudE5vZGUoKS0+aGFzVGFnTmFtZShTVkdOYW1lczo6ZmlsdGVyVGFn
KSkpCi0gICAgICAgIHJldHVybiBTVkdFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKHN0eWxlKTsK
KyAgICAgICAgcmV0dXJuIFNWR0VsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiAKICAg
ICByZXR1cm4gZmFsc2U7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRmls
dGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RmlsdGVyUHJpbWl0aXZlU3RhbmRhcmRBdHRyaWJ1dGVzLmgKaW5kZXggYzk4YjEzZWQ5NjI3NmFm
OWUxNGY2NDI4MTFhNmZkNzQ2NzcyYWNhNy4uNjVlM2YwOTViMmZlYjQ1MWM4NTVlYTNhNDM4OWQ4
YWIxYzViZTZmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZpbHRlclByaW1p
dGl2ZVN0YW5kYXJkQXR0cmlidXRlcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGaWx0
ZXJQcmltaXRpdmVTdGFuZGFyZEF0dHJpYnV0ZXMuaApAQCAtNzAsNyArNzAsNyBAQCBwcml2YXRl
OgogICAgIGJvb2wgaXNGaWx0ZXJFZmZlY3QoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiB0cnVl
OyB9CiAKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVy
KFJlbmRlclN0eWxlJiYsIGNvbnN0IFJlbmRlclRyZWVQb3NpdGlvbiYpIG92ZXJyaWRlOwotICAg
IGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIG92ZXJyaWRlOworICAg
IGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlkZTsKICAgICBib29sIGNoaWxkU2hv
dWxkQ3JlYXRlUmVuZGVyZXIoY29uc3QgTm9kZSYpIGNvbnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZh
bHNlOyB9CiAKICAgICAvLyBTcGVjOiBJZiB0aGUgeC95IGF0dHJpYnV0ZSBpcyBub3Qgc3BlY2lm
aWVkLCB0aGUgZWZmZWN0IGlzIGFzIGlmIGEgdmFsdWUgb2YgIjAlIiB3ZXJlIHNwZWNpZmllZC4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RWxlbWVudC5oIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKaW5kZXggNDVlNmI4ODMzM2ZhNDkyOTA2NmVl
ZmMwNTIwNjdmOTg1NTJkYmJkMC4uNjliYzk0YzYwNjhlZDJjNTc0ZjFlYzJkMzJkMDMzOWQ2MjBl
N2M2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRFbGVtZW50LmgKQEAgLTQ5LDcgKzQ5LDcgQEAg
cHVibGljOgogcHJpdmF0ZToKICAgICBTVkdGb250RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1l
JiwgRG9jdW1lbnQmKTsKIAotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJT
dHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5l
ZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB1c2luZyBQcm9wZXJ0eVJlZ2lz
dHJ5ID0gU1ZHUHJvcGVydHlPd25lclJlZ2lzdHJ5PFNWR0ZvbnRFbGVtZW50LCBTVkdFbGVtZW50
PjsKICAgICBjb25zdCBTVkdQcm9wZXJ0eVJlZ2lzdHJ5JiBwcm9wZXJ0eVJlZ2lzdHJ5KCkgY29u
c3QgZmluYWwgeyByZXR1cm4gbV9wcm9wZXJ0eVJlZ2lzdHJ5OyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHRm9udEZhY2VFbGVtZW50LmgKaW5kZXggOWRhMDVmMDk5N2U0NjEwZWJiM2UxOWQxYmYwYmFh
NzlhY2UyZmMxOC4uZGU4ZDgzYzljYTJmZjAzNGZlODRlZjE1MDdjMDE0OTQ2YzJlN2IzYiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUVsZW1lbnQuaApAQCAtNjMsNyArNjMsNyBAQCBw
cml2YXRlOgogICAgIEluc2VydGVkSW50b0FuY2VzdG9yUmVzdWx0IGluc2VydGVkSW50b0FuY2Vz
dG9yKEluc2VydGlvblR5cGUsIENvbnRhaW5lck5vZGUmKSBmaW5hbDsKICAgICB2b2lkIHJlbW92
ZWRGcm9tQW5jZXN0b3IoUmVtb3ZhbFR5cGUsIENvbnRhaW5lck5vZGUmKSBmaW5hbDsKIAotICAg
IGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJu
IGZhbHNlOyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJu
IGZhbHNlOyB9CiAKICAgICBSZWY8U3R5bGVSdWxlRm9udEZhY2U+IG1fZm9udEZhY2VSdWxlOwog
ICAgIFNWR0ZvbnRFbGVtZW50KiBtX2ZvbnRFbGVtZW50OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0ZvbnRGYWNlRm9ybWF0RWxlbWVudC5oCmluZGV4IDA1NjA3NWVlOWFiMzdjZjhjZTg3NDYz
Mjk4MGU3YzIxMDg0MzUzOGYuLmJjZjU1NGVlYjEyYTgwN2M4MTdiYzU1N2Q5YWMxMzVkZmQ4ZDMy
ZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZUZvcm1hdEVsZW1l
bnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VGb3JtYXRFbGVtZW50LmgK
QEAgLTM0LDcgKzM0LDcgQEAgcHJpdmF0ZToKICAgICBTVkdGb250RmFjZUZvcm1hdEVsZW1lbnQo
Y29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Jik7CiAKICAgICB2b2lkIGNoaWxkcmVuQ2hh
bmdlZChjb25zdCBDaGlsZENoYW5nZSYpIGZpbmFsOwotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRl
ZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCBy
ZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8v
IG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9u
dEZhY2VOYW1lRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlTmFtZUVs
ZW1lbnQuaAppbmRleCA4NjdjZGM4NWY2ZWQ0NDc0OTIyZjcyZThkOTM3MDkzMTU5MzY4NmI2Li4z
YWU3Y2IyODhkNmYyMDUyMTRmNDA5Y2ZiNDg2OWE4ODdlODY4OTA0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VOYW1lRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdGb250RmFjZU5hbWVFbGVtZW50LmgKQEAgLTM3LDcgKzM3LDcgQEAgcHVibGlj
OgogcHJpdmF0ZToKICAgICBTVkdGb250RmFjZU5hbWVFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5h
bWUmLCBEb2N1bWVudCYpOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRl
clN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJlbmRlcmVySXNFdmVy
TmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVNyY0VsZW1l
bnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb250RmFjZVNyY0VsZW1lbnQuaAppbmRleCA0
MTY5NjhjNjFmNWFmMTkyMTY2MjRkYTJiMWM2MTg5ZjdiZDc0MjlhLi44ZjQ4ZGZlYzI1NWNhMmZh
NGI2Yjg5NzNiM2ZkM2NiZGY5ODY2NzBjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHRm9udEZhY2VTcmNFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRG
YWNlU3JjRWxlbWVudC5oCkBAIC0zOCw3ICszOCw3IEBAIHByaXZhdGU6CiAgICAgU1ZHRm9udEZh
Y2VTcmNFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwogICAgIAogICAg
IHZvaWQgY2hpbGRyZW5DaGFuZ2VkKGNvbnN0IENoaWxkQ2hhbmdlJikgZmluYWw7Ci0gICAgYm9v
bCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFs
c2U7IH0KKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFs
c2U7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdGb250RmFjZVVyaUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdGb250RmFjZVVyaUVsZW1lbnQuaAppbmRleCA0OGZjZjJmODg3NzhiZDAzZDJiN2UzMGJiNTJm
ZTA3MDQzODgxNjc1Li5hYTAxZmJiNmIwM2YxZjJjZTFmMDhlNTNkMzdhNjY5ZDU4OGFmMWIzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRm9udEZhY2VVcmlFbGVtZW50LmgKKysr
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvbnRGYWNlVXJpRWxlbWVudC5oCkBAIC00NCw3ICs0
NCw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWRO
YW1lJiwgY29uc3QgQXRvbVN0cmluZyYpIGZpbmFsOwogICAgIHZvaWQgY2hpbGRyZW5DaGFuZ2Vk
KGNvbnN0IENoaWxkQ2hhbmdlJikgZmluYWw7CiAgICAgSW5zZXJ0ZWRJbnRvQW5jZXN0b3JSZXN1
bHQgaW5zZXJ0ZWRJbnRvQW5jZXN0b3IoSW5zZXJ0aW9uVHlwZSwgQ29udGFpbmVyTm9kZSYpIGZp
bmFsOwotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFs
IHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFs
IHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICB2b2lkIGxvYWRGb250KCk7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb3JlaWduT2JqZWN0RWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQuY3BwCmluZGV4IDhlNjc2ZDlhYTM5
ZDc5ZGE2MTAxY2M5ZjA5OWI1OGQzMGM1OGM2MjUuLmEyMGMwZjExYjVhZTMwYjdhYjJjOGVhYTg2
M2JlZjYwOWU4MjBkM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdGb3JlaWdu
T2JqZWN0RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmpl
Y3RFbGVtZW50LmNwcApAQCAtMTAzLDcgKzEwMyw3IEBAIGJvb2wgU1ZHRm9yZWlnbk9iamVjdEVs
ZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY29uc3QgTm9kZSYgY2hpbGQpIGNvbnN0
CiAgICAgcmV0dXJuIFN0eWxlZEVsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY2hp
bGQpOwogfQogCi1ib29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVk
KGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK2Jvb2wgU1ZHRm9yZWlnbk9iamVjdEVsZW1lbnQ6
OnJlbmRlcmVySXNFdmVyTmVlZGVkKCkKIHsKICAgICAvLyBTdXBwcmVzcyBmb3JlaWduT2JqZWN0
IHJlbmRlcmVycyBpbiBTVkcgaGlkZGVuIGNvbnRhaW5lcnMuCiAgICAgLy8gKGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzI5NykKQEAgLTExOCw3ICsxMTgsNyBAQCBi
b29sIFNWR0ZvcmVpZ25PYmplY3RFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRl
clN0eWxlJiBzdHlsZSkKICAgICAgICAgYW5jZXN0b3IgPSBhbmNlc3Rvci0+cGFyZW50RWxlbWVu
dCgpOwogICAgIH0KIAotICAgIHJldHVybiBTVkdHcmFwaGljc0VsZW1lbnQ6OnJlbmRlcmVySXNO
ZWVkZWQoc3R5bGUpOworICAgIHJldHVybiBTVkdHcmFwaGljc0VsZW1lbnQ6OnJlbmRlcmVySXNF
dmVyTmVlZGVkKCk7CiB9CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdG
b3JlaWduT2JqZWN0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmpl
Y3RFbGVtZW50LmgKaW5kZXggODJmYWYyZThhMjM4ZTExODc2NGQ3ZjVlYjE3NWFlOGJlMGIwMDNj
Mi4uMjI4ZDI3NTlhZjhkMjkxOTJmMTJkZTM1YmYzNTQ1NGY1MzQ0MGVkNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR0ZvcmVpZ25PYmplY3RFbGVtZW50LmgKQEAgLTQ5LDcgKzQ5LDcgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBj
b25zdCBBdG9tU3RyaW5nJikgZmluYWw7CiAgICAgdm9pZCBzdmdBdHRyaWJ1dGVDaGFuZ2VkKGNv
bnN0IFF1YWxpZmllZE5hbWUmKSBmaW5hbDsKIAotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChj
b25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsOworICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQo
KSBmaW5hbDsKICAgICBib29sIGNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY29uc3QgTm9kZSYp
IGNvbnN0IGZpbmFsOwogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50
UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgZmluYWw7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHRWxlbWVudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHR0VsZW1lbnQuY3BwCmluZGV4IGRkYzE3OTllYmE2ZTdlOWJhODk3
MzdhODhlMmQ3YWJiM2EyMTgzNjUuLjA5YzhkOTczYjdmNzBmZjZiOGU4ZGUyODZlMGVkYjY1NTM3
MGIwM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dFbGVtZW50LmNwcApAQCAtNjEsOSArNjEsOSBAQCBS
ZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gU1ZHR0VsZW1lbnQ6OmNyZWF0ZUVsZW1lbnRSZW5kZXJl
cihSZW5kZXJTdHlsZSYmIHN0eWxlLAogICAgIHJldHVybiBjcmVhdGVSZW5kZXJlcjxSZW5kZXJT
VkdUcmFuc2Zvcm1hYmxlQ29udGFpbmVyPigqdGhpcywgV1RGTW92ZShzdHlsZSkpOwogfQogCi1i
b29sIFNWR0dFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikKK2Jv
b2wgU1ZHR0VsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCkKIHsKLSAgICAvLyBVbmxpa2Ug
U1ZHRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZCgpLCB3ZSBzdGlsbCBjcmVhdGUgcmVuZGVyZXJz
LCBldmVuIGlmCisgICAgLy8gVW5saWtlIFNWR0VsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVk
KCksIHdlIHN0aWxsIGNyZWF0ZSByZW5kZXJlcnMsIGV2ZW4gaWYKICAgICAvLyBkaXNwbGF5IGlz
IHNldCB0byAnbm9uZScgLSB3aGljaCBpcyBzcGVjaWFsIHRvIFNWRyA8Zz4gY29udGFpbmVyIGVs
ZW1lbnRzLgogICAgIHJldHVybiBwYXJlbnRPclNoYWRvd0hvc3RFbGVtZW50KCkgJiYgcGFyZW50
T3JTaGFkb3dIb3N0RWxlbWVudCgpLT5pc1NWR0VsZW1lbnQoKTsKIH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdHRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dF
bGVtZW50LmgKaW5kZXggNDk5OTY3MGM0NTNkMGI1NjNiNzVhZGZlMmM3MmRlY2Q2NzA0OTUzOS4u
NmIwMzhmMDBkMTQzMDIzNDY0ZmI1MzM5MGYwODAzNWU5YTQzMGM3NSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR0dFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R0dFbGVtZW50LmgKQEAgLTQwLDcgKzQwLDcgQEAgcHJpdmF0ZToKICAgICBjb25zdCBTVkdQcm9w
ZXJ0eVJlZ2lzdHJ5JiBwcm9wZXJ0eVJlZ2lzdHJ5KCkgY29uc3QgZmluYWwgeyByZXR1cm4gbV9w
cm9wZXJ0eVJlZ2lzdHJ5OyB9CiAKICAgICBib29sIGlzVmFsaWQoKSBjb25zdCBmaW5hbCB7IHJl
dHVybiBTVkdUZXN0czo6aXNWYWxpZCgpOyB9Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNv
bnN0IFJlbmRlclN0eWxlJikgZmluYWw7CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgp
IGZpbmFsOwogCiAgICAgUHJvcGVydHlSZWdpc3RyeSBtX3Byb3BlcnR5UmVnaXN0cnkgeyAqdGhp
cyB9OwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlwaEVsZW1lbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlwaEVsZW1lbnQuaAppbmRleCA5ZmY5OTFlNzIw
Y2I4MmY4ZmEwYTA2YTYwMDgwNTAwYmE2OTg4ZDgxLi45ZjQ0ZWJlMWRhNmUzN2Q3ZDk0MjFiYjM2
MzQ0OGZkYTFhMDg4NmY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHR2x5cGhF
bGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0dseXBoRWxlbWVudC5oCkBAIC0z
OCw3ICszOCw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgU1ZHR2x5cGhFbGVtZW50KGNvbnN0
IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYpOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVk
KGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJl
bmRlcmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlw
aFJlZkVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdHbHlwaFJlZkVsZW1lbnQuaApp
bmRleCBiOTBlZWI4OGY2YzMzZGVjNWU4NmFiZDgxNjgxMWVhZmY4ZWE2MTYwLi5iNmJhZjBlNGJi
YjI4NjNkMDEzMDY4M2U5OWNmMGMyZmE3OTlkYTlkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHR2x5cGhSZWZFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0ds
eXBoUmVmRWxlbWVudC5oCkBAIC01MCw3ICs1MCw3IEBAIHByaXZhdGU6CiAgICAgY29uc3QgU1ZH
UHJvcGVydHlSZWdpc3RyeSYgcHJvcGVydHlSZWdpc3RyeSgpIGNvbnN0IGZpbmFsIHsgcmV0dXJu
IG1fcHJvcGVydHlSZWdpc3RyeTsgfQogCiAgICAgdm9pZCBwYXJzZUF0dHJpYnV0ZShjb25zdCBR
dWFsaWZpZWROYW1lJiwgY29uc3QgQXRvbVN0cmluZyYpIGZpbmFsOwotICAgIGJvb2wgcmVuZGVy
ZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9Cisg
ICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiAK
ICAgICBmbG9hdCBtX3ggeyAwIH07CiAgICAgZmxvYXQgbV95IHsgMCB9OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR0hLZXJuRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR0hLZXJuRWxlbWVudC5oCmluZGV4IDc0N2IwMzI3ZDY5ODYzN2M4ZjY1ZTdiZTkwNDQwODg0
NTQzNjUxMzMuLjQwZGVmZjY4ZWQ3OWY4YmNkMTNmNGY1MDY0YTA5ODJiNGIyYzVmZWYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdIS2VybkVsZW1lbnQuaAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHSEtlcm5FbGVtZW50LmgKQEAgLTM3LDcgKzM3LDcgQEAgcHVibGljOgog
cHJpdmF0ZToKICAgICBTVkdIS2VybkVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3Vt
ZW50Jik7CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBm
aW5hbCB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBm
aW5hbCB7IHJldHVybiBmYWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01QYXRoRWxlbWVudC5oIGIvU291cmNlL1dl
YkNvcmUvc3ZnL1NWR01QYXRoRWxlbWVudC5oCmluZGV4IDBmZDczNWYwNzkzODRmZDc5YjE5M2Y0
MmRmYmQ1NGU3NmNmMDdhOTYuLjZlNWMxYzE1MzMzNTE1NDMxN2JiYzI2NWY1ZTRjZGU1MTcxNjk2
MjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdNUGF0aEVsZW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTVBhdGhFbGVtZW50LmgKQEAgLTUzLDcgKzUzLDcgQEAg
cHJpdmF0ZToKICAgICBJbnNlcnRlZEludG9BbmNlc3RvclJlc3VsdCBpbnNlcnRlZEludG9BbmNl
c3RvcihJbnNlcnRpb25UeXBlLCBDb250YWluZXJOb2RlJikgZmluYWw7CiAgICAgdm9pZCByZW1v
dmVkRnJvbUFuY2VzdG9yKFJlbW92YWxUeXBlLCBDb250YWluZXJOb2RlJikgZmluYWw7CiAKLSAg
ICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbCB7IHJldHVy
biBmYWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBmaW5hbCB7IHJldHVy
biBmYWxzZTsgfQogICAgIHZvaWQgZGlkRmluaXNoSW5zZXJ0aW5nTm9kZSgpIGZpbmFsOwogCiAg
ICAgdm9pZCBub3RpZnlQYXJlbnRPZlBhdGhDaGFuZ2UoQ29udGFpbmVyTm9kZSopOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdNYXJrZXJFbGVtZW50LmgKaW5kZXggNWExMzZlM2VmNDVhNTdhNTFjOTJmZjc2
NTliYTZhZjc2MmYyYWU5My4uYTA1NmY5MDlhOTI2MDFiNmRiNDk5NTQ2N2Q1YmZkZjY5OTAyZjFh
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01hcmtlckVsZW1lbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWFya2VyRWxlbWVudC5oCkBAIC04MCw3ICs4MCw3IEBA
IHByaXZhdGU6CiAgICAgdm9pZCBjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2UmKSBv
dmVycmlkZTsKIAogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50UmVu
ZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgb3ZlcnJpZGU7
Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGUg
eyByZXR1cm4gdHJ1ZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBvdmVycmlk
ZSB7IHJldHVybiB0cnVlOyB9CiAKICAgICBib29sIG5lZWRzUGVuZGluZ1Jlc291cmNlSGFuZGxp
bmcoKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHTWV0YWRhdGFFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHTWV0YWRhdGFFbGVtZW50LmgKaW5kZXggNmIwNDExMmI3ZmExNDM3YTlhNGQzMGRkZTYxMTJh
NzU4NjFjMjYwMi4uZTVlZjY4NGVhMzQ2YWM5MjI3MmIxMGM3NDkyZjk5MTEwYzE0NTQxMCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01ldGFkYXRhRWxlbWVudC5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdNZXRhZGF0YUVsZW1lbnQuaApAQCAtMzIsNyArMzIsNyBAQCBw
dWJsaWM6CiBwcml2YXRlOgogICAgIFNWR01ldGFkYXRhRWxlbWVudChjb25zdCBRdWFsaWZpZWRO
YW1lJiwgRG9jdW1lbnQmKTsKIAotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5k
ZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZl
ck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHTWlzc2luZ0dseXBoRWxl
bWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR01pc3NpbmdHbHlwaEVsZW1lbnQuaAppbmRl
eCA0NGIzNzQ2YTgyN2U1ZjU3ZWQ5NTU1YTBjZTZmZDdjY2FjNWExNDdhLi5hZTk3ZGY1ZjYzZDUw
MTA0Y2MwMjE3ZDFhMWFiYmI4NDE2MDM3OWJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHTWlzc2luZ0dseXBoRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdN
aXNzaW5nR2x5cGhFbGVtZW50LmgKQEAgLTM0LDcgKzM0LDcgQEAgcHVibGljOgogcHJpdmF0ZToK
ICAgICBTVkdNaXNzaW5nR2x5cGhFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVu
dCYpOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmlu
YWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgZmlu
YWwgeyByZXR1cm4gZmFsc2U7IH0KIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdTVkdFbGVtZW50LmNwcAppbmRleCBmOTFhNDM0MDQ5OGVlMTM4MzA0MmEwNTEx
NzY0OGUxMmMwY2UyOWY3Li5lYTFiOWI2MjEwMTQ4YjEyZTI0NjlhOTBlMWU3OGZhZTQ4M2I1MDE1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1NWR0VsZW1lbnQuY3BwCkBAIC0zNzksNyArMzc5LDcgQEAg
QWZmaW5lVHJhbnNmb3JtIFNWR1NWR0VsZW1lbnQ6OmxvY2FsQ29vcmRpbmF0ZVNwYWNlVHJhbnNm
b3JtKFNWR0xvY2F0YWJsZTo6Q1RNU2MKICAgICByZXR1cm4gdHJhbnNmb3JtLm11bHRpcGx5KHZp
ZXdCb3hUcmFuc2Zvcm0pOwogfQogCi1ib29sIFNWR1NWR0VsZW1lbnQ6OnJlbmRlcmVySXNOZWVk
ZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQorYm9vbCBTVkdTVkdFbGVtZW50OjpyZW5kZXJl
cklzRXZlck5lZWRlZCgpCiB7CiAgICAgaWYgKCFpc1ZhbGlkKCkpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKQEAgLTM4OSw3ICszODksNyBAQCBib29sIFNWR1NWR0VsZW1lbnQ6OnJlbmRlcmVySXNO
ZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQogICAgIC8vIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDM0OTMKICAgICBpZiAoZG9jdW1lbnQoKS5kb2N1bWVu
dEVsZW1lbnQoKSA9PSB0aGlzKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXR1cm4gU3R5
bGVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7CisgICAgcmV0dXJuIFN0eWxlZEVs
ZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiB9CiAKIFJlbmRlclB0cjxSZW5kZXJFbGVt
ZW50PiBTVkdTVkdFbGVtZW50OjpjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiBz
dHlsZSwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9uJikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdTVkdFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU1ZHRWxlbWVu
dC5oCmluZGV4IDgyN2VmYTYzYjA1NGMwM2YyYzhiNzg4MjI2ZjJiNzBkYzdhZGZjZTIuLmRhZjNm
ZWVhZThlYTQ1MjMwZDVlODRhMDkwODI0MjIwYjZjZWFiOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdTVkdFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1NW
R0VsZW1lbnQuaApAQCAtMTI5LDcgKzEyOSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBzZWxmSGFz
UmVsYXRpdmVMZW5ndGhzKCkgY29uc3Qgb3ZlcnJpZGU7CiAgICAgYm9vbCBpc1ZhbGlkKCkgY29u
c3Qgb3ZlcnJpZGU7CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5
bGUmKSBvdmVycmlkZTsKKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgb3ZlcnJpZGU7
CiAgICAgUmVuZGVyUHRyPFJlbmRlckVsZW1lbnQ+IGNyZWF0ZUVsZW1lbnRSZW5kZXJlcihSZW5k
ZXJTdHlsZSYmLCBjb25zdCBSZW5kZXJUcmVlUG9zaXRpb24mKSBvdmVycmlkZTsKICAgICBJbnNl
cnRlZEludG9BbmNlc3RvclJlc3VsdCBpbnNlcnRlZEludG9BbmNlc3RvcihJbnNlcnRpb25UeXBl
LCBDb250YWluZXJOb2RlJikgb3ZlcnJpZGU7CiAgICAgdm9pZCByZW1vdmVkRnJvbUFuY2VzdG9y
KFJlbW92YWxUeXBlLCBDb250YWluZXJOb2RlJikgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1NjcmlwdEVsZW1lbnQuaAppbmRleCA3YTljN2ZkMDZmZjJkNzZmMDk2ZmE2MmYxYTFlM2ViYmFj
ZGJkODBlLi5jOTgzZjQ5YTdiMTJiNTI3NTllODAxYzI3YTIxOTRkNWUyZDJhYjY3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU2NyaXB0RWxlbWVudC5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdTY3JpcHRFbGVtZW50LmgKQEAgLTUzLDcgKzUzLDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIGFkZFN1YnJlc291cmNlQXR0cmlidXRlVVJMcyhMaXN0SGFzaFNldDxVUkw+Jikg
Y29uc3QgZmluYWw7CiAKICAgICBSZWY8RWxlbWVudD4gY2xvbmVFbGVtZW50V2l0aG91dEF0dHJp
YnV0ZXNBbmRDaGlsZHJlbihEb2N1bWVudCYpIGZpbmFsOwotICAgIGJvb2wgcmVuZGVyZXJJc05l
ZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9v
bCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiAKICAgICAv
LyBTY3JpcHRFbGVtZW50CiAgICAgU3RyaW5nIHNvdXJjZUF0dHJpYnV0ZVZhbHVlKCkgY29uc3Qg
ZmluYWwgeyByZXR1cm4gaHJlZigpOyB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHU3RvcEVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0b3BFbGVtZW50LmNw
cAppbmRleCBlMzE5MjNkOWJhMzk4MWQzM2ZjMjljODg3NGYzNmQ3YzllMTYwNzgyLi43MmQ0N2Vj
ZTgyZjUxNGVkNThkZjQ1ZTJhNzNhN2E3NzlkMjRlNmJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdmcvU1ZHU3RvcEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdT
dG9wRWxlbWVudC5jcHAKQEAgLTgwLDExICs4MCw2IEBAIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50
PiBTVkdTdG9wRWxlbWVudDo6Y3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYgc3R5
CiAgICAgcmV0dXJuIGNyZWF0ZVJlbmRlcmVyPFJlbmRlclNWR0dyYWRpZW50U3RvcD4oKnRoaXMs
IFdURk1vdmUoc3R5bGUpKTsKIH0KIAotYm9vbCBTVkdTdG9wRWxlbWVudDo6cmVuZGVyZXJJc05l
ZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpCi17Ci0gICAgcmV0dXJuIHRydWU7Ci19Ci0KIENvbG9y
IFNWR1N0b3BFbGVtZW50OjpzdG9wQ29sb3JJbmNsdWRpbmdPcGFjaXR5KCkgY29uc3QKIHsKICAg
ICBhdXRvKiBzdHlsZSA9IHJlbmRlcmVyKCkgPyAmcmVuZGVyZXIoKS0+c3R5bGUoKSA6IG51bGxw
dHI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3RvcEVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdTdG9wRWxlbWVudC5oCmluZGV4IGU2NTFjNGEyNjJmOTc4MzRi
YzIzMDY4N2U2MjEyNDM1MmYwOGIxNTAuLmMyODMwMDVjYmQ4ZDY4NzZkNDczOWVkOWExMjAzYjBh
NzExNWU3ZjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTdG9wRWxlbWVudC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTdG9wRWxlbWVudC5oCkBAIC00Nyw3ICs0Nyw3
IEBAIHByaXZhdGU6CiAgICAgYm9vbCBpc0dyYWRpZW50U3RvcCgpIGNvbnN0IGZpbmFsIHsgcmV0
dXJuIHRydWU7IH0KIAogICAgIFJlbmRlclB0cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50
UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29uc3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgZmluYWw7
Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgZmluYWw7Cisg
ICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KIAog
ICAgIFByb3BlcnR5UmVnaXN0cnkgbV9wcm9wZXJ0eVJlZ2lzdHJ5IHsgKnRoaXMgfTsKICAgICBS
ZWY8U1ZHQW5pbWF0ZWROdW1iZXI+IG1fb2Zmc2V0IHsgU1ZHQW5pbWF0ZWROdW1iZXI6OmNyZWF0
ZSgwKSB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5o
IGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0eWxlRWxlbWVudC5oCmluZGV4IDNjNGE2MGZhYzZi
ZDQxMDAyNGVkYzUwNzJkODk5ZDI4OTc1MTViYzguLjgwMDIwMDYyY2MwN2Y0MTQxNzg4MWQzOTM2
YzMwYzYzMDExYjM2ODYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdTdHlsZUVs
ZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVFbGVtZW50LmgKQEAgLTUx
LDcgKzUxLDcgQEAgcHJpdmF0ZToKICAgICB2b2lkIHJlbW92ZWRGcm9tQW5jZXN0b3IoUmVtb3Zh
bFR5cGUsIENvbnRhaW5lck5vZGUmKSBmaW5hbDsKICAgICB2b2lkIGNoaWxkcmVuQ2hhbmdlZChj
b25zdCBDaGlsZENoYW5nZSYpIGZpbmFsOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNv
bnN0IFJlbmRlclN0eWxlJikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJlbmRl
cmVySXNFdmVyTmVlZGVkKCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIAogICAgIHZvaWQgZmlu
aXNoUGFyc2luZ0NoaWxkcmVuKCkgZmluYWw7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdUUmVmRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVFJlZkVsZW1l
bnQuY3BwCmluZGV4IGE4NjM5NmI4MGEzM2VjMGU2NmUwYzAxMDlkMzRkMzUyMzk5NDZkZjkuLjk3
YzU0ZDFmZTFlYWI1MzEyMWE2M2Y4ZGY3OGU3ZjJkZWVjNjM0NmEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdUUmVmRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3Zn
L1NWR1RSZWZFbGVtZW50LmNwcApAQCAtMjAxLDcgKzIwMSw3IEBAIGJvb2wgU1ZHVFJlZkVsZW1l
bnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY29uc3QgTm9kZSYgY2hpbGQpIGNvbnN0CiAg
ICAgcmV0dXJuIGNoaWxkLmlzSW5TaGFkb3dUcmVlKCk7CiB9CiAKLWJvb2wgU1ZHVFJlZkVsZW1l
bnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQorYm9vbCBTVkdU
UmVmRWxlbWVudDo6cmVuZGVyZXJJc0V2ZXJOZWVkZWQoKQogewogICAgIGlmIChwYXJlbnROb2Rl
KCkKICAgICAgICAgJiYgKHBhcmVudE5vZGUoKS0+aGFzVGFnTmFtZShTVkdOYW1lczo6YVRhZykK
QEAgLTIxMSw3ICsyMTEsNyBAQCBib29sIFNWR1RSZWZFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVk
KGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKICAgICAgICAgICAgIHx8IHBhcmVudE5vZGUoKS0+
aGFzVGFnTmFtZShTVkdOYW1lczo6dGV4dFRhZykKICAgICAgICAgICAgIHx8IHBhcmVudE5vZGUo
KS0+aGFzVGFnTmFtZShTVkdOYW1lczo6dGV4dFBhdGhUYWcpCiAgICAgICAgICAgICB8fCBwYXJl
bnROb2RlKCktPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnRzcGFuVGFnKSkpCi0gICAgICAgIHJldHVy
biBTdHlsZWRFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKHN0eWxlKTsKKyAgICAgICAgcmV0dXJu
IFN0eWxlZEVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiAKICAgICByZXR1cm4gZmFs
c2U7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVFJlZkVsZW1lbnQuaCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUUmVmRWxlbWVudC5oCmluZGV4IDFiZDEzZjhhODQyODEy
ODE4NjUzNGY5YTg0YzhkNDEyYzk5NWZmOTUuLmJiYWM1NDZlNDdkM2MzZmRiZWZmOGE5YWI4OTU4
YmYyZDQxNWFkZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUUmVmRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUUmVmRWxlbWVudC5oCkBAIC00Nyw3ICs0
Nyw3IEBAIHByaXZhdGU6CiAKICAgICBSZW5kZXJQdHI8UmVuZGVyRWxlbWVudD4gY3JlYXRlRWxl
bWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYsIGNvbnN0IFJlbmRlclRyZWVQb3NpdGlvbiYpIG92
ZXJyaWRlOwogICAgIGJvb2wgY2hpbGRTaG91bGRDcmVhdGVSZW5kZXJlcihjb25zdCBOb2RlJikg
Y29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0
eWxlJikgb3ZlcnJpZGU7CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgpIG92ZXJyaWRl
OwogCiAgICAgSW5zZXJ0ZWRJbnRvQW5jZXN0b3JSZXN1bHQgaW5zZXJ0ZWRJbnRvQW5jZXN0b3Io
SW5zZXJ0aW9uVHlwZSwgQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlOwogICAgIHZvaWQgcmVtb3Zl
ZEZyb21BbmNlc3RvcihSZW1vdmFsVHlwZSwgQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RTcGFuRWxlbWVudC5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdmcvU1ZHVFNwYW5FbGVtZW50LmNwcAppbmRleCBmYmUxY2Q0ODY3Mzk3MzBjZTdm
YWFlNGY3Mzk4YmM1MzY2NTlhMzU4Li4xZWZjYjI4ODIxMDU3ZmI1ZTJlZTMyMWIxNjc4YWI4OGQ4
NDRkNGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVFNwYW5FbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVFNwYW5FbGVtZW50LmNwcApAQCAtNjAsNyAr
NjAsNyBAQCBib29sIFNWR1RTcGFuRWxlbWVudDo6Y2hpbGRTaG91bGRDcmVhdGVSZW5kZXJlcihj
b25zdCBOb2RlJiBjaGlsZCkgY29uc3QKICAgICByZXR1cm4gZmFsc2U7CiB9CiAKLWJvb2wgU1ZH
VFNwYW5FbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkK
K2Jvb2wgU1ZHVFNwYW5FbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpCiB7CiAgICAgaWYg
KHBhcmVudE5vZGUoKQogICAgICAgICAmJiAocGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNWR05h
bWVzOjphVGFnKQpAQCAtNzAsNyArNzAsNyBAQCBib29sIFNWR1RTcGFuRWxlbWVudDo6cmVuZGVy
ZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCiAgICAgICAgICAgICB8fCBwYXJl
bnROb2RlKCktPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnRleHRUYWcpCiAgICAgICAgICAgICB8fCBw
YXJlbnROb2RlKCktPmhhc1RhZ05hbWUoU1ZHTmFtZXM6OnRleHRQYXRoVGFnKQogICAgICAgICAg
ICAgfHwgcGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjp0c3BhblRhZykpKQotICAg
ICAgICByZXR1cm4gU3R5bGVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChzdHlsZSk7CisgICAg
ICAgIHJldHVybiBTdHlsZWRFbGVtZW50OjpyZW5kZXJlcklzRXZlck5lZWRlZCgpOwogCiAgICAg
cmV0dXJuIGZhbHNlOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RTcGFu
RWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RTcGFuRWxlbWVudC5oCmluZGV4IDVi
MjJlYTAyYzhhNDVhNTI2MmFjMDJlYzQ5YWI4ODc4MDljZmYzY2QuLmVjOTFlZDEwYTc4M2Q3ZTc3
YTc4ZGVlYzVkMzI4ZDRkZjI0MzNhYTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9T
VkdUU3BhbkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVFNwYW5FbGVtZW50
LmgKQEAgLTM0LDcgKzM0LDcgQEAgcHJpdmF0ZToKICAgICAgICAgICAgIAogICAgIFJlbmRlclB0
cjxSZW5kZXJFbGVtZW50PiBjcmVhdGVFbGVtZW50UmVuZGVyZXIoUmVuZGVyU3R5bGUmJiwgY29u
c3QgUmVuZGVyVHJlZVBvc2l0aW9uJikgb3ZlcnJpZGU7CiAgICAgYm9vbCBjaGlsZFNob3VsZENy
ZWF0ZVJlbmRlcmVyKGNvbnN0IE5vZGUmKSBjb25zdCBvdmVycmlkZTsKLSAgICBib29sIHJlbmRl
cmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBvdmVycmlkZTsKKyAgICBib29sIHJlbmRl
cmVySXNFdmVyTmVlZGVkKCkgb3ZlcnJpZGU7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3Jl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVsZW1lbnQuY3BwCmluZGV4IGQ5ZmUxZjQ3
NGRkNmMwZjdjNmYzNjQ0ZWM1YmViNWU4NzBhZjRjMjYuLjQ2OGRkNjM4YjRkNGUxNWJjN2QwM2E1
OWE0MmEwMmQyOTQ5MjVmZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUZXh0
UGF0aEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVsZW1l
bnQuY3BwCkBAIC0xMjMsMTIgKzEyMywxMiBAQCBib29sIFNWR1RleHRQYXRoRWxlbWVudDo6Y2hp
bGRTaG91bGRDcmVhdGVSZW5kZXJlcihjb25zdCBOb2RlJiBjaGlsZCkgY29uc3QKICAgICByZXR1
cm4gZmFsc2U7CiB9CiAKLWJvb2wgU1ZHVGV4dFBhdGhFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVk
KGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSkKK2Jvb2wgU1ZHVGV4dFBhdGhFbGVtZW50OjpyZW5k
ZXJlcklzRXZlck5lZWRlZCgpCiB7CiAgICAgaWYgKHBhcmVudE5vZGUoKQogICAgICAgICAmJiAo
cGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjphVGFnKQogICAgICAgICAgICAgfHwg
cGFyZW50Tm9kZSgpLT5oYXNUYWdOYW1lKFNWR05hbWVzOjp0ZXh0VGFnKSkpCi0gICAgICAgIHJl
dHVybiBTdHlsZWRFbGVtZW50OjpyZW5kZXJlcklzTmVlZGVkKHN0eWxlKTsKKyAgICAgICAgcmV0
dXJuIFN0eWxlZEVsZW1lbnQ6OnJlbmRlcmVySXNFdmVyTmVlZGVkKCk7CiAKICAgICByZXR1cm4g
ZmFsc2U7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVt
ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dFBhdGhFbGVtZW50LmgKaW5kZXggNzhm
MDdmMGEwYWRiNDQzYmM0MWRiYzE0NWJmNDA0ZjQ0MTdiYjI3Yy4uYjZhMjQ2MDdiMzkwZWVhNDk0
ZjhhNTI2NjY1NWQ4NDM5Njc1NjQ0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1RleHRQYXRoRWxlbWVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUZXh0UGF0aEVs
ZW1lbnQuaApAQCAtMTM0LDcgKzEzNCw3IEBAIHByaXZhdGU6CiAKICAgICBSZW5kZXJQdHI8UmVu
ZGVyRWxlbWVudD4gY3JlYXRlRWxlbWVudFJlbmRlcmVyKFJlbmRlclN0eWxlJiYsIGNvbnN0IFJl
bmRlclRyZWVQb3NpdGlvbiYpIG92ZXJyaWRlOwogICAgIGJvb2wgY2hpbGRTaG91bGRDcmVhdGVS
ZW5kZXJlcihjb25zdCBOb2RlJikgY29uc3Qgb3ZlcnJpZGU7Ci0gICAgYm9vbCByZW5kZXJlcklz
TmVlZGVkKGNvbnN0IFJlbmRlclN0eWxlJikgb3ZlcnJpZGU7CisgICAgYm9vbCByZW5kZXJlcklz
RXZlck5lZWRlZCgpIG92ZXJyaWRlOwogCiAgICAgdm9pZCBjbGVhclJlc291cmNlUmVmZXJlbmNl
cygpOwogICAgIHZvaWQgYnVpbGRQZW5kaW5nUmVzb3VyY2UoKSBvdmVycmlkZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdUaXRsZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdUaXRsZUVsZW1lbnQuaAppbmRleCAzZjUzMzM1NjcwN2QzZTg1NGM0NDMwN2MzNDBj
YjhiMTA3YzQzZThkLi40NGI4ZTNhODhhZjc5YTQ4ZWE1MTI4OTkwMmE5YTczOTBiZGU2ODJiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGl0bGVFbGVtZW50LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvc3ZnL1NWR1RpdGxlRWxlbWVudC5oCkBAIC0zNyw3ICszNyw3IEBAIHByaXZh
dGU6CiAgICAgdm9pZCByZW1vdmVkRnJvbUFuY2VzdG9yKFJlbW92YWxUeXBlLCBDb250YWluZXJO
b2RlJikgZmluYWw7CiAgICAgdm9pZCBjaGlsZHJlbkNoYW5nZWQoY29uc3QgQ2hpbGRDaGFuZ2Um
KSBmaW5hbDsKIAotICAgIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYp
IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CisgICAgYm9vbCByZW5kZXJlcklzRXZlck5lZWRlZCgp
IGZpbmFsIHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVW5rbm93bkVsZW1lbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL3N2Zy9TVkdVbmtub3duRWxlbWVudC5oCmluZGV4IGExNWM3YWY5Nzg3YWQyMWYy
Y2E3YzMyOTNjODIwMDY4MmUxYmFiZWQuLmFkZWJmNzc0MDQyYjlhYjE1NTkzYTM4NDhjM2FjMzFl
NGU0YmMxNmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVbmtub3duRWxlbWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVbmtub3duRWxlbWVudC5oCkBAIC0zMyw3
ICszMyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIC8vIC0gVW5rbm93biBFbGVtZW50cyBpbiBT
VkcgbmFtZXNwYWNlCiAvLyAtIFJlZ2lzdGVyZWQgY3VzdG9tIHRhZyBlbGVtZW50cyBpbiBTVkcg
bmFtZXNwYWNlIChodHRwOi8vd3d3LnczLm9yZy9UUi8yMDEzL1dELWN1c3RvbS1lbGVtZW50cy0y
MDEzMDUxNC8jcmVnaXN0ZXJpbmctY3VzdG9tLWVsZW1lbnRzKQogLy8KLS8vIFRoZSBtYWluIHB1
cnBvc2Ugb2YgdGhpcyBjbGFzcyBhdCB0aGUgbW9tZW50IGlzIHRvIG92ZXJyaWRlIHJlbmRlcmVy
SXNOZWVkZWQoKSB0byByZXR1cm4KKy8vIFRoZSBtYWluIHB1cnBvc2Ugb2YgdGhpcyBjbGFzcyBh
dCB0aGUgbW9tZW50IGlzIHRvIG92ZXJyaWRlIHJlbmRlcmVySXNFdmVyTmVlZGVkKCkgdG8gcmV0
dXJuCiAvLyBmYWxzZSB0byBtYWtlIHN1cmUgd2UgZG9uJ3QgYXR0ZW1wdCB0byByZW5kZXIgc3Vj
aCBlbGVtZW50cy4KIGNsYXNzIFNWR1Vua25vd25FbGVtZW50IGZpbmFsIDogcHVibGljIFNWR0Vs
ZW1lbnQgewogICAgIFdURl9NQUtFX0lTT19BTExPQ0FURUQoU1ZHVW5rbm93bkVsZW1lbnQpOwpA
QCAtNDksNyArNDksNyBAQCBwcml2YXRlOgogICAgIHsKICAgICB9CiAKLSAgICBib29sIHJlbmRl
cmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQor
ICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBmaW5hbCB7IHJldHVybiBmYWxzZTsgfQog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1ZLZXJuRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1ZLZXJuRWxlbWVu
dC5oCmluZGV4IDc4YzhkNTUwMTg5NmQxNmNlYzcwN2I1MjZhZTFkN2QwMmFjMGRmYTYuLmFiMGY3
MzlhNjk4NDY2OTljYjZkM2FmN2JiOTk3ZDI1NWM3MWIzY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdWS2VybkVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
Vktlcm5FbGVtZW50LmgKQEAgLTM2LDcgKzM2LDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBT
VkdWS2VybkVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50Jik7CiAKLSAgICBi
b29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBmaW5hbCB7IHJldHVybiBm
YWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJc0V2ZXJOZWVkZWQoKSBmaW5hbCB7IHJldHVybiBm
YWxzZTsgfQogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3ZnL1NWR1ZpZXdFbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVmll
d0VsZW1lbnQuaAppbmRleCBiY2Q2YzE4MmViYWFhMGEwMzdkNzA5NmU2YjVjNzM3NDI1MTNjNGYz
Li41N2YzYWI5ZjhkYjZiNzlkZjUwNzViYWE1NWMyMTMyOTJkMjY3OTdjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdmcvU1ZHVmlld0VsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHVmlld0VsZW1lbnQuaApAQCAtNTAsNyArNTAsNyBAQCBwcml2YXRlOgogICAgIHZvaWQg
cGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21TdHJpbmcmKSBm
aW5hbDsKICAgICB2b2lkIHN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVhbGlmaWVkTmFtZSYp
IG92ZXJyaWRlOwogCi0gICAgYm9vbCByZW5kZXJlcklzTmVlZGVkKGNvbnN0IFJlbmRlclN0eWxl
JikgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KKyAgICBib29sIHJlbmRlcmVySXNFdmVyTmVlZGVk
KCkgZmluYWwgeyByZXR1cm4gZmFsc2U7IH0KIAogICAgIFByb3BlcnR5UmVnaXN0cnkgbV9wcm9w
ZXJ0eVJlZ2lzdHJ5IHsgKnRoaXMgfTsKICAgICBXZWFrUHRyPFNWR1NWR0VsZW1lbnQ+IG1fdGFy
Z2V0RWxlbWVudCB7IG51bGxwdHIgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9h
bmltYXRpb24vU1ZHU01JTEVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9hbmltYXRpb24v
U1ZHU01JTEVsZW1lbnQuaAppbmRleCAxODUwMDY1MDY1NWJlZjAzOTY5ZTAwOGRmZDI2MTEyOTA4
OWY4MGFlLi4xMDJkOWM1NmIwYTUzNmVhYzk5OWE3ODRhYmU5YWJhNzAxNDQ5MDhkIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9zdmcvYW5pbWF0aW9uL1NWR1NNSUxFbGVtZW50LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvc3ZnL2FuaW1hdGlvbi9TVkdTTUlMRWxlbWVudC5oCkBAIC0xMTMsNyAr
MTEzLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdm9pZCBzZXRJbmFjdGl2ZSgpIHsgbV9hY3RpdmVT
dGF0ZSA9IEluYWN0aXZlOyB9CiAKLSAgICBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVu
ZGVyU3R5bGUmKSBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQorICAgIGJvb2wgcmVuZGVyZXJJ
c0V2ZXJOZWVkZWQoKSBvdmVycmlkZSB7IHJldHVybiBmYWxzZTsgfQogCiAgICAgLy8gU3ViLWNs
YXNzZXMgbWF5IG5lZWQgdG8gdGFrZSBhY3Rpb24gd2hlbiB0aGUgdGFyZ2V0IGlzIGNoYW5nZWQu
CiAgICAgdmlydHVhbCB2b2lkIHNldFRhcmdldEVsZW1lbnQoU1ZHRWxlbWVudCopOwo=
</data>
<flag name="review"
          id="402982"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>