<?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>231536</bug_id>
          
          <creation_ts>2021-10-11 14:46:17 -0700</creation_ts>
          <short_desc>Implement alternate style for text fields</short_desc>
          <delta_ts>2021-10-11 19:43:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>akeerthi</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1802813</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-11 14:46:17 -0700</bug_when>
    <thetext>Implement alternate style for text fields</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802819</commentid>
    <comment_count>1</comment_count>
      <attachid>440842</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-11 14:58:34 -0700</bug_when>
    <thetext>Created attachment 440842
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802832</commentid>
    <comment_count>2</comment_count>
      <attachid>440842</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2021-10-11 15:16:50 -0700</bug_when>
    <thetext>Comment on attachment 440842
Patch

r=mews</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802870</commentid>
    <comment_count>3</comment_count>
      <attachid>440852</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-11 16:27:08 -0700</bug_when>
    <thetext>Created attachment 440852
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802881</commentid>
    <comment_count>4</comment_count>
      <attachid>440856</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2021-10-11 16:36:32 -0700</bug_when>
    <thetext>Created attachment 440856
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802927</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-10-11 19:42:54 -0700</bug_when>
    <thetext>Committed r283962 (242809@main): &lt;https://commits.webkit.org/242809@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 440856.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802928</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2021-10-11 19:43:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/84128514&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440842</attachid>
            <date>2021-10-11 14:58:34 -0700</date>
            <delta_ts>2021-10-11 16:27:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231536-20211011145833.patch</filename>
            <type>text/plain</type>
            <size>12737</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWYwMWQ1NjY0YmU3YjUx
NWZmM2UxZDllYjNlZDE3MGZmYTRjNDMyZi4uZjRmYWM1YjQ4MWE5MTAyMTQ2ZWE3YmEwZWE1N2Vj
M2Q2NTNlMGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTEwLTExICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBh
bHRlcm5hdGUgc3R5bGUgZm9yIHRleHQgZmllbGRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE1MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5oOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWU6OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWU6OnBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRpb25z
KToKKyAgICAgICAgVGlnaHRlbiB1cCB0aGUgdHlwZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW06
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUlPUzo6YWRqdXN0VGV4dEZpZWxkU3R5bGUg
Y29uc3QpOgorICAgICAgICBEcm9wIHRoZSBib3JkZXIgYW5kIGNsZWFyIHRoZSBiYWNrZ3JvdW5k
LCBzbyB0aGF0IHdlIGNhbiB1c2Ugb3VyCisgICAgICAgIGN1c3RvbSBpbm5lciBzaGFkb3cgcGFp
bnRpbmcgaW5zdGVhZC4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6OnBhaW50
VGV4dEZpZWxkSW5uZXJTaGFkb3cpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6
OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhl
bWVJT1M6OnBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZUlPUzo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRpb25zKToKKyAgICAgICAgUGFpbnQg
b3VyIGN1c3RvbSBpbm5lciBzaGFkb3cgZm9yIHRleHQgZmllbGRzLCB3aGVuIHVzaW5nIHRoZSBh
bHRlcm5hdGUgYXBwZWFyYW5jZS4KKworICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnJlc2V0Qm9yZGVyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpyZXNldEJvcmRlckV4Y2VwdFJhZGl1cyk6Cisg
ICAgICAgIEFkZCBhIG1lY2hhbmlzbSB0byByZXNldCBhbGwgYm9yZGVyIHByb3BlcnRpZXMgZXhj
ZXB0IHJhZGl1cy4KKwogMjAyMS0xMC0wNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CiAKICAgICAgICAgU2ltcGxpZnkgQmFzZUF1ZGlvU2hhcmVkVW5pdCBjbGllbnQgbWFuYWdl
bWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAppbmRleCBlN2U2ZWJiMWI5
ZDFlYmIxODgwN2ZiMGFhODkxNmY5YzgwMWY3ODMxLi45YjA2ZjY0YWNmNDYwNmE4Nzc0YzdmODY0
MGM3MTdhMmViMzVjYzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVGhlbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaApA
QCAtMzIzLDExICszMjMsMTEgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCB2b2lkIGFkanVz
dFRleHRGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0OwogICAg
IHZpcnR1YWwgYm9vbCBwYWludFRleHRGaWVsZChjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQ
YWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVh
bCB2b2lkIHBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29u
c3QgUGFpbnRJbmZvJiwgY29uc3QgRmxvYXRSZWN0JikgeyB9CisgICAgdmlydHVhbCB2b2lkIHBh
aW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZv
JiwgY29uc3QgRmxvYXRSZWN0JikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0VGV4dEFy
ZWFTdHlsZShSZW5kZXJTdHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2aXJ0dWFs
IGJvb2wgcGFpbnRUZXh0QXJlYShjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8m
LCBjb25zdCBGbG9hdFJlY3QmKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHBh
aW50VGV4dEFyZWFEZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludElu
Zm8mLCBjb25zdCBGbG9hdFJlY3QmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRUZXh0QXJl
YURlY29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEZs
b2F0UmVjdCYpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIGFkanVzdE1lbnVMaXN0U3R5bGUoUmVu
ZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHBhaW50
TWVudUxpc3QoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgRmxv
YXRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMzcxLDcgKzM3MSw3IEBAIHByb3RlY3RlZDoK
IAogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiwg
Y29uc3QgRWxlbWVudCopIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBwYWludFNlYXJjaEZpZWxk
KGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSB7
IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNvcmF0
aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0
JikgeyB9CisgICAgdmlydHVhbCB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9ucyhjb25z
dCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgeyB9CiAKICAg
ICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2VhcmNoRmllbGRDYW5jZWxCdXR0b25TdHlsZShSZW5kZXJT
dHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRTZWFy
Y2hGaWVsZENhbmNlbEJ1dHRvbihjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBj
b25zdCBJbnRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MuaAppbmRleCA0YjEwMWIzOGI1YzhlMTRkMGE2NzdmNTA3NDNkMWQ2N2I0
NTEzMTRmLi5lMDIxZWUzMzYyN2Q2YzJlNGYwYTM3NjQyZjM5ZmU3ODMxYzNhYTk4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MuaApAQCAtOTIsOCArOTIsMTAgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHBhaW50RmlsZVVwbG9hZEljb25EZWNvcmF0aW9ucyhjb25zdCBS
ZW5kZXJPYmplY3QmIGlucHV0UmVuZGVyZXIsIGNvbnN0IFJlbmRlck9iamVjdCYgYnV0dG9uUmVu
ZGVyZXIsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmLCBJY29uKiwgRmlsZVVwbG9h
ZERlY29yYXRpb25zKSBvdmVycmlkZTsKIAogICAgIHZvaWQgYWRqdXN0VGV4dEZpZWxkU3R5bGUo
UmVuZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBwYWlu
dFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5m
byYsIGNvbnN0IEZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgcGFpbnRUZXh0QXJlYURl
Y29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEZs
b2F0UmVjdCYpIG92ZXJyaWRlOworICAgIHZvaWQgcGFpbnRUZXh0RmllbGREZWNvcmF0aW9ucyhj
b25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJCb3gm
LCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSBvdmVycmlkZTsKKworICAgIHZv
aWQgcGFpbnRUZXh0RmllbGRJbm5lclNoYWRvdyhjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9h
dFJvdW5kZWRSZWN0Jik7CiAKICAgICB2b2lkIGFkanVzdE1lbnVMaXN0QnV0dG9uU3R5bGUoUmVu
ZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdm9pZCBwYWlu
dE1lbnVMaXN0QnV0dG9uRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJ
bmZvJiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CkBAIC0xMTIsNyArMTE0LDcgQEAgcHJp
dmF0ZToKICNlbmRpZgogCiAgICAgdm9pZCBhZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0
eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgcGFpbnRTZWFy
Y2hGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNv
cmF0aW9ucyhjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0
Jikgb3ZlcnJpZGU7CiAKICNpZiBFTkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQogICAg
IENvbG9yIGNoZWNrYm94UmFkaW9Cb3JkZXJDb2xvcihPcHRpb25TZXQ8Q29udHJvbFN0YXRlczo6
U3RhdGVzPiwgT3B0aW9uU2V0PFN0eWxlQ29sb3I6Ok9wdGlvbnM+KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQppbmRleCA2OWVlNDk2MzM2MGU4YzYwNjVjMWZm
NzExZjFmYjE2NmRlM2I0ZjVlLi4zZDI0MGNlNjJiMTFiNDA2Zjc4MGMzNTI4NzJiOTU5ODM0Yjg2
ZTM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1Mu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tCkBAIC01
MzUsNDEgKzUzNSwxMDIgQEAgdm9pZCBSZW5kZXJUaGVtZUlPUzo6YWRqdXN0VGV4dEZpZWxkU3R5
bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGUKICAgICBpZiAoIWVsZW1l
bnQpCiAgICAgICAgIHJldHVybjsKIAorICAgIGJvb2wgaGFzVGV4dGZpZWxkQXBwZWFyYW5jZSA9
IGZhbHNlOwogICAgIC8vIERvIG5vdCBmb3JjZSBhIGJhY2tncm91bmQgY29sb3IgZm9yIGVsZW1l
bnRzIHRoYXQgaGF2ZSBhIHRleHRmaWVsZAogICAgIC8vIGFwcGVhcmFuY2UgYnkgZGVmYXVsdCwg
c28gdGhhdCB0aGVpciBiYWNrZ3JvdW5kIGNvbG9yIGNhbiBiZSBzdHlsZWQuCiAgICAgaWYgKGlz
PEhUTUxJbnB1dEVsZW1lbnQ+KCplbGVtZW50KSkgewogICAgICAgICBhdXRvJiBpbnB1dCA9IGRv
d25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KCplbGVtZW50KTsKICAgICAgICAgLy8gPGlucHV0IHR5
cGU9c2VhcmNoPiBpcyB0aGUgb25seSBUZXh0RmllbGRJbnB1dFR5cGUgdGhhdCBoYXMgYQogICAg
ICAgICAvLyBub24tdGV4dGZpZWxkIGFwcGVhcmFuY2UgdmFsdWUuCi0gICAgICAgIGlmIChpbnB1
dC5pc1RleHRGaWVsZCgpICYmICFpbnB1dC5pc1NlYXJjaEZpZWxkKCkpCi0gICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIGhhc1RleHRmaWVsZEFwcGVhcmFuY2UgPSBpbnB1dC5pc1RleHRGaWVs
ZCgpICYmICFpbnB1dC5pc1NlYXJjaEZpZWxkKCk7CiAgICAgfQogCisgICAgYm9vbCB1c2VBbHRl
cm5hdGVEZXNpZ24gPSBlbGVtZW50LT5kb2N1bWVudCgpLnNldHRpbmdzKCkuYWx0ZXJuYXRlRm9y
bUNvbnRyb2xEZXNpZ25FbmFibGVkKCk7CisgICAgaWYgKHVzZUFsdGVybmF0ZURlc2lnbikgewor
ICAgICAgICBpZiAoaGFzVGV4dGZpZWxkQXBwZWFyYW5jZSkKKyAgICAgICAgICAgIHN0eWxlLnNl
dEJhY2tncm91bmRDb2xvcihDb2xvcjo6dHJhbnNwYXJlbnRCbGFjayk7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIHN0eWxlLnNldEJhY2tncm91bmRDb2xvcihzeXN0ZW1Db2xvcihDU1NWYWx1
ZVdlYmtpdENvbnRyb2xCYWNrZ3JvdW5kLCBlbGVtZW50LT5kb2N1bWVudCgpLnN0eWxlQ29sb3JP
cHRpb25zKCZzdHlsZSkpKTsKKyAgICAgICAgc3R5bGUucmVzZXRCb3JkZXJFeGNlcHRSYWRpdXMo
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChoYXNUZXh0ZmllbGRBcHBlYXJh
bmNlKQorICAgICAgICByZXR1cm47CisKICAgICBzdHlsZS5zZXRCYWNrZ3JvdW5kQ29sb3Ioc3lz
dGVtQ29sb3IoQ1NTVmFsdWVXZWJraXRDb250cm9sQmFja2dyb3VuZCwgZWxlbWVudC0+ZG9jdW1l
bnQoKS5zdHlsZUNvbG9yT3B0aW9ucygmc3R5bGUpKSk7CiB9CiAKLXZvaWQgUmVuZGVyVGhlbWVJ
T1M6OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyT2JqZWN0JiBib3gsIGNv
bnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCit2b2lkIFJl
bmRlclRoZW1lSU9TOjpwYWludFRleHRGaWVsZElubmVyU2hhZG93KGNvbnN0IFBhaW50SW5mbyYg
cGFpbnRJbmZvLCBjb25zdCBGbG9hdFJvdW5kZWRSZWN0JiByb3VuZGVkUmVjdCkKIHsKLSNpZiBF
TkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQotICAgIGlmIChib3guc2V0dGluZ3MoKS5p
T1NGb3JtQ29udHJvbFJlZnJlc2hFbmFibGVkKCkpCi0gICAgICAgIHJldHVybjsKLSNlbmRpZgor
ICAgIGF1dG8mIGNvbnRleHQgPSBwYWludEluZm8uY29udGV4dCgpOworCisgICAgY29uc3QgRmxv
YXRTaXplIGlubmVyU2hhZG93T2Zmc2V0IHsgMCwgNSB9OworICAgIGNvbnN0ZXhwciBhdXRvIGlu
bmVyU2hhZG93Qmx1ciA9IDEwLjBmOworICAgIGF1dG8gaW5uZXJTaGFkb3dDb2xvciA9IERpc3Bs
YXlQMzxmbG9hdD4geyAwLCAwLCAwLCAwLjA0ZiB9OworICAgIGNvbnRleHQuc2V0U2hhZG93KGlu
bmVyU2hhZG93T2Zmc2V0LCBpbm5lclNoYWRvd0JsdXIsIGlubmVyU2hhZG93Q29sb3IpOworICAg
IGNvbnRleHQuc2V0RmlsbENvbG9yKENvbG9yOjpibGFjayk7CisKKyAgICBQYXRoIGlubmVyU2hh
ZG93UGF0aDsKKyAgICBGbG9hdFJlY3QgaW5uZXJTaGFkb3dSZWN0ID0gcm91bmRlZFJlY3QucmVj
dCgpOworICAgIGlubmVyU2hhZG93UmVjdC5pbmZsYXRlKHN0ZDo6bWF4PGZsb2F0Pihpbm5lclNo
YWRvd09mZnNldC53aWR0aCgpLCBpbm5lclNoYWRvd09mZnNldC5oZWlnaHQoKSkgKyBpbm5lclNo
YWRvd0JsdXIpOworICAgIGlubmVyU2hhZG93UGF0aC5hZGRSZWN0KGlubmVyU2hhZG93UmVjdCk7
CisKKyAgICBGbG9hdFJvdW5kZWRSZWN0IGlubmVyU2hhZG93SG9sZVJlY3QgPSByb3VuZGVkUmVj
dDsKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBub3QgZnJvbSB0aGUgc3BlYzsgYnV0IHdpdGhvdXQg
aXQgd2UgZ2V0IGFudGlhbGlhc2luZyBmcmluZ2UgZnJvbSB0aGUgZmlsbDsgd2UgbmVlZCBhIGJl
dHRlciBzb2x1dGlvbi4KKyAgICBpbm5lclNoYWRvd0hvbGVSZWN0LmluZmxhdGUoMC41KTsKKyAg
ICBpbm5lclNoYWRvd1BhdGguYWRkUm91bmRlZFJlY3QoaW5uZXJTaGFkb3dIb2xlUmVjdCk7CisK
KyAgICBjb250ZXh0LnNldEZpbGxSdWxlKFdpbmRSdWxlOjpFdmVuT2RkKTsKKyAgICBjb250ZXh0
LmZpbGxQYXRoKGlubmVyU2hhZG93UGF0aCk7Cit9CisKK3ZvaWQgUmVuZGVyVGhlbWVJT1M6OnBh
aW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IFBhaW50
SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCit7CisgICAgYXV0byYgY29u
dGV4dCA9IHBhaW50SW5mby5jb250ZXh0KCk7CisgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZl
ciBzdGF0ZVNhdmVyKGNvbnRleHQpOwogCiAgICAgYXV0byYgc3R5bGUgPSBib3guc3R5bGUoKTsK
LSAgICBGbG9hdFBvaW50IHBvaW50KHJlY3QueCgpICsgc3R5bGUuYm9yZGVyTGVmdFdpZHRoKCks
IHJlY3QueSgpICsgc3R5bGUuYm9yZGVyVG9wV2lkdGgoKSk7CisgICAgYXV0byByb3VuZGVkUmVj
dCA9IHN0eWxlLmdldFJvdW5kZWRCb3JkZXJGb3IoTGF5b3V0UmVjdChyZWN0KSkucGl4ZWxTbmFw
cGVkUm91bmRlZFJlY3RGb3JQYWludGluZyhib3guZG9jdW1lbnQoKS5kZXZpY2VTY2FsZUZhY3Rv
cigpKTsKIAotICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcihwYWludElu
Zm8uY29udGV4dCgpKTsKKyNpZiBFTkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQorICAg
IGlmIChib3guc2V0dGluZ3MoKS5pT1NGb3JtQ29udHJvbFJlZnJlc2hFbmFibGVkKCkpIHsKKyAg
ICAgICAgYm9vbCBzaG91bGRQYWludEZpbGxBbmRJbm5lclNoYWRvdyA9IHRydWU7CisgICAgICAg
IGF1dG8gZWxlbWVudCA9IGJveC5lbGVtZW50KCk7CisgICAgICAgIGlmIChpczxIVE1MU2VsZWN0
RWxlbWVudD4oKmVsZW1lbnQpKQorICAgICAgICAgICAgc2hvdWxkUGFpbnRGaWxsQW5kSW5uZXJT
aGFkb3cgPSBmYWxzZTsKKyAgICAgICAgZWxzZSBpZiAoaXM8SFRNTElucHV0RWxlbWVudD4oKmVs
ZW1lbnQpKSB7CisgICAgICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0PEhUTUxJbnB1dEVs
ZW1lbnQ+KCplbGVtZW50KTsKKyAgICAgICAgICAgIGlmIChpbnB1dC5pc1RleHRGaWVsZCgpICYm
ICFpbnB1dC5pc1NlYXJjaEZpZWxkKCkpCisgICAgICAgICAgICAgICAgc2hvdWxkUGFpbnRGaWxs
QW5kSW5uZXJTaGFkb3cgPSBmYWxzZTsKKyAgICAgICAgfQorCisgICAgICAgIGJvb2wgdXNlQWx0
ZXJuYXRlRGVzaWduID0gYm94LnNldHRpbmdzKCkuYWx0ZXJuYXRlRm9ybUNvbnRyb2xEZXNpZ25F
bmFibGVkKCk7CisgICAgICAgIGlmICh1c2VBbHRlcm5hdGVEZXNpZ24gJiYgIXNob3VsZFBhaW50
RmlsbEFuZElubmVyU2hhZG93KSB7CisgICAgICAgICAgICBQYXRoIHBhdGg7CisgICAgICAgICAg
ICBwYXRoLmFkZFJvdW5kZWRSZWN0KHJvdW5kZWRSZWN0KTsKKworICAgICAgICAgICAgY29udGV4
dC5zZXRGaWxsQ29sb3IoQ29sb3I6OmJsYWNrLmNvbG9yV2l0aEFscGhhQnl0ZSgxMCkpOworICAg
ICAgICAgICAgY29udGV4dC5kcmF3UGF0aChwYXRoKTsKKyAgICAgICAgICAgIGNvbnRleHQuY2xp
cFBhdGgocGF0aCk7CisgICAgICAgICAgICBwYWludFRleHRGaWVsZElubmVyU2hhZG93KHBhaW50
SW5mbywgcm91bmRlZFJlY3QpOworICAgICAgICB9CisgICAgICAgIHJldHVybjsKKyAgICB9Cisj
ZW5kaWYKIAotICAgIHBhaW50SW5mby5jb250ZXh0KCkuY2xpcFJvdW5kZWRSZWN0KHN0eWxlLmdl
dFJvdW5kZWRCb3JkZXJGb3IoTGF5b3V0UmVjdChyZWN0KSkucGl4ZWxTbmFwcGVkUm91bmRlZFJl
Y3RGb3JQYWludGluZyhib3guZG9jdW1lbnQoKS5kZXZpY2VTY2FsZUZhY3RvcigpKSk7CisgICAg
Y29udGV4dC5jbGlwUm91bmRlZFJlY3Qocm91bmRlZFJlY3QpOwogCiAgICAgLy8gVGhpcyBncmFk
aWVudCBnZXRzIGRyYXduIGJsYWNrIHdoZW4gcHJpbnRpbmcuCiAgICAgLy8gRG8gbm90IGRyYXcg
dGhlIGdyYWRpZW50IGlmIHRoZXJlIGlzIG5vIHZpc2libGUgdG9wIGJvcmRlci4KICAgICBib29s
IHRvcEJvcmRlcklzSW52aXNpYmxlID0gIXN0eWxlLmhhc0JvcmRlcigpIHx8ICFzdHlsZS5ib3Jk
ZXJUb3BXaWR0aCgpIHx8IHN0eWxlLmJvcmRlclRvcElzVHJhbnNwYXJlbnQoKTsKLSAgICBpZiAo
IWJveC52aWV3KCkucHJpbnRpbmcoKSAmJiAhdG9wQm9yZGVySXNJbnZpc2libGUpCi0gICAgICAg
IGRyYXdBeGlhbEdyYWRpZW50KHBhaW50SW5mby5jb250ZXh0KCkucGxhdGZvcm1Db250ZXh0KCks
IGdyYWRpZW50V2l0aE5hbWUoSW5zZXRHcmFkaWVudCksIHBvaW50LCBGbG9hdFBvaW50KENHUG9p
bnRNYWtlKHBvaW50LngoKSwgcG9pbnQueSgpICsgMy4wZikpLCBMaW5lYXJJbnRlcnBvbGF0aW9u
KTsKKyAgICBpZiAoIWJveC52aWV3KCkucHJpbnRpbmcoKSAmJiAhdG9wQm9yZGVySXNJbnZpc2li
bGUpIHsKKyAgICAgICAgRmxvYXRQb2ludCBwb2ludChyZWN0LngoKSArIHN0eWxlLmJvcmRlckxl
ZnRXaWR0aCgpLCByZWN0LnkoKSArIHN0eWxlLmJvcmRlclRvcFdpZHRoKCkpOworICAgICAgICBk
cmF3QXhpYWxHcmFkaWVudChjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpLCBncmFkaWVudFdpdGhO
YW1lKEluc2V0R3JhZGllbnQpLCBwb2ludCwgRmxvYXRQb2ludChDR1BvaW50TWFrZShwb2ludC54
KCksIHBvaW50LnkoKSArIDMuMGYpKSwgTGluZWFySW50ZXJwb2xhdGlvbik7CisgICAgfQogfQog
Ci12b2lkIFJlbmRlclRoZW1lSU9TOjpwYWludFRleHRBcmVhRGVjb3JhdGlvbnMoY29uc3QgUmVu
ZGVyT2JqZWN0JiBib3gsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBGbG9hdFJl
Y3QmIHJlY3QpCit2b2lkIFJlbmRlclRoZW1lSU9TOjpwYWludFRleHRBcmVhRGVjb3JhdGlvbnMo
Y29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBG
bG9hdFJlY3QmIHJlY3QpCiB7CiAgICAgcGFpbnRUZXh0RmllbGREZWNvcmF0aW9ucyhib3gsIHBh
aW50SW5mbywgcmVjdCk7CiB9CkBAIC0xMTAwLDcgKzExNjEsNyBAQCB2b2lkIFJlbmRlclRoZW1l
SU9TOjphZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgRWxl
bWVudCogZQogICAgIGFkanVzdFJvdW5kQm9yZGVyUmFkaXVzKHN0eWxlLCAqYm94KTsKIH0KIAot
dm9pZCBSZW5kZXJUaGVtZUlPUzo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRpb25zKGNvbnN0IFJl
bmRlck9iamVjdCYgYm94LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgSW50UmVj
dCYgcmVjdCkKK3ZvaWQgUmVuZGVyVGhlbWVJT1M6OnBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9u
cyhjb25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNvbnN0
IEludFJlY3QmIHJlY3QpCiB7CiAgICAgcGFpbnRUZXh0RmllbGREZWNvcmF0aW9ucyhib3gsIHBh
aW50SW5mbywgcmVjdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5k
ZXJTdHlsZS5oCmluZGV4IDBmY2NlNzk2Yjc3OWUwMDUzZDI5MTBlODJlOTVkMGRlMWRjNDM1ZTYu
LjE0OTY2NGRjNGIzNThkMjNkMTljZTU1NjZjNjc4MzVlNjA2NDQ5YjggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC04ODAsNyArODgwLDggQEAg
cHVibGljOgogICAgIHZvaWQgc2V0TWluSGVpZ2h0KExlbmd0aCYmIGxlbmd0aCkgeyBTRVRfVkFS
KG1fYm94RGF0YSwgbV9taW5IZWlnaHQsIFdURk1vdmUobGVuZ3RoKSk7IH0KICAgICB2b2lkIHNl
dE1heEhlaWdodChMZW5ndGgmJiBsZW5ndGgpIHsgU0VUX1ZBUihtX2JveERhdGEsIG1fbWF4SGVp
Z2h0LCBXVEZNb3ZlKGxlbmd0aCkpOyB9CiAKLSAgICB2b2lkIHJlc2V0Qm9yZGVyKCkgeyByZXNl
dEJvcmRlckltYWdlKCk7IHJlc2V0Qm9yZGVyVG9wKCk7IHJlc2V0Qm9yZGVyUmlnaHQoKTsgcmVz
ZXRCb3JkZXJCb3R0b20oKTsgcmVzZXRCb3JkZXJMZWZ0KCk7IHJlc2V0Qm9yZGVyUmFkaXVzKCk7
IH0KKyAgICB2b2lkIHJlc2V0Qm9yZGVyKCkgeyByZXNldEJvcmRlckV4Y2VwdFJhZGl1cygpOyBy
ZXNldEJvcmRlclJhZGl1cygpOyB9CisgICAgdm9pZCByZXNldEJvcmRlckV4Y2VwdFJhZGl1cygp
IHsgcmVzZXRCb3JkZXJJbWFnZSgpOyByZXNldEJvcmRlclRvcCgpOyByZXNldEJvcmRlclJpZ2h0
KCk7IHJlc2V0Qm9yZGVyQm90dG9tKCk7IHJlc2V0Qm9yZGVyTGVmdCgpOyB9CiAgICAgdm9pZCBy
ZXNldEJvcmRlclRvcCgpIHsgU0VUX1ZBUihtX3N1cnJvdW5kRGF0YSwgYm9yZGVyLm1fdG9wLCBC
b3JkZXJWYWx1ZSgpKTsgfQogICAgIHZvaWQgcmVzZXRCb3JkZXJSaWdodCgpIHsgU0VUX1ZBUiht
X3N1cnJvdW5kRGF0YSwgYm9yZGVyLm1fcmlnaHQsIEJvcmRlclZhbHVlKCkpOyB9CiAgICAgdm9p
ZCByZXNldEJvcmRlckJvdHRvbSgpIHsgU0VUX1ZBUihtX3N1cnJvdW5kRGF0YSwgYm9yZGVyLm1f
Ym90dG9tLCBCb3JkZXJWYWx1ZSgpKTsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440852</attachid>
            <date>2021-10-11 16:27:08 -0700</date>
            <delta_ts>2021-10-11 16:36:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231536-20211011162707.patch</filename>
            <type>text/plain</type>
            <size>12635</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWYwMWQ1NjY0YmU3YjUx
NWZmM2UxZDllYjNlZDE3MGZmYTRjNDMyZi4uZjRmYWM1YjQ4MWE5MTAyMTQ2ZWE3YmEwZWE1N2Vj
M2Q2NTNlMGQwYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTEwLTExICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBh
bHRlcm5hdGUgc3R5bGUgZm9yIHRleHQgZmllbGRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE1MzYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5oOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyVGhlbWU6OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWU6OnBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyk6Cisg
ICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRpb25z
KToKKyAgICAgICAgVGlnaHRlbiB1cCB0aGUgdHlwZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW06
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZUlPUzo6YWRqdXN0VGV4dEZpZWxkU3R5bGUg
Y29uc3QpOgorICAgICAgICBEcm9wIHRoZSBib3JkZXIgYW5kIGNsZWFyIHRoZSBiYWNrZ3JvdW5k
LCBzbyB0aGF0IHdlIGNhbiB1c2Ugb3VyCisgICAgICAgIGN1c3RvbSBpbm5lciBzaGFkb3cgcGFp
bnRpbmcgaW5zdGVhZC4KKworICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6OnBhaW50
VGV4dEZpZWxkSW5uZXJTaGFkb3cpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6
OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhl
bWVJT1M6OnBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZUlPUzo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRpb25zKToKKyAgICAgICAgUGFpbnQg
b3VyIGN1c3RvbSBpbm5lciBzaGFkb3cgZm9yIHRleHQgZmllbGRzLCB3aGVuIHVzaW5nIHRoZSBh
bHRlcm5hdGUgYXBwZWFyYW5jZS4KKworICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9SZW5kZXJT
dHlsZS5oOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnJlc2V0Qm9yZGVyKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpyZXNldEJvcmRlckV4Y2VwdFJhZGl1cyk6Cisg
ICAgICAgIEFkZCBhIG1lY2hhbmlzbSB0byByZXNldCBhbGwgYm9yZGVyIHByb3BlcnRpZXMgZXhj
ZXB0IHJhZGl1cy4KKwogMjAyMS0xMC0wNiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CiAKICAgICAgICAgU2ltcGxpZnkgQmFzZUF1ZGlvU2hhcmVkVW5pdCBjbGllbnQgbWFuYWdl
bWVudApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAppbmRleCBlN2U2ZWJiMWI5
ZDFlYmIxODgwN2ZiMGFhODkxNmY5YzgwMWY3ODMxLi45YjA2ZjY0YWNmNDYwNmE4Nzc0YzdmODY0
MGM3MTdhMmViMzVjYzkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVGhlbWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWUuaApA
QCAtMzIzLDExICszMjMsMTEgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCB2b2lkIGFkanVz
dFRleHRGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0OwogICAg
IHZpcnR1YWwgYm9vbCBwYWludFRleHRGaWVsZChjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQ
YWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVh
bCB2b2lkIHBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29u
c3QgUGFpbnRJbmZvJiwgY29uc3QgRmxvYXRSZWN0JikgeyB9CisgICAgdmlydHVhbCB2b2lkIHBh
aW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZv
JiwgY29uc3QgRmxvYXRSZWN0JikgeyB9CiAKICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0VGV4dEFy
ZWFTdHlsZShSZW5kZXJTdHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2aXJ0dWFs
IGJvb2wgcGFpbnRUZXh0QXJlYShjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8m
LCBjb25zdCBGbG9hdFJlY3QmKSB7IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHBh
aW50VGV4dEFyZWFEZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludElu
Zm8mLCBjb25zdCBGbG9hdFJlY3QmKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRUZXh0QXJl
YURlY29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEZs
b2F0UmVjdCYpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIGFkanVzdE1lbnVMaXN0U3R5bGUoUmVu
ZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHBhaW50
TWVudUxpc3QoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgRmxv
YXRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMzcxLDcgKzM3MSw3IEBAIHByb3RlY3RlZDoK
IAogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiwg
Y29uc3QgRWxlbWVudCopIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBwYWludFNlYXJjaEZpZWxk
KGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmKSB7
IHJldHVybiB0cnVlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNvcmF0
aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0
JikgeyB9CisgICAgdmlydHVhbCB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9ucyhjb25z
dCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgeyB9CiAKICAg
ICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2VhcmNoRmllbGRDYW5jZWxCdXR0b25TdHlsZShSZW5kZXJT
dHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRTZWFy
Y2hGaWVsZENhbmNlbEJ1dHRvbihjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBj
b25zdCBJbnRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGhlbWVJT1MuaAppbmRleCA0YjEwMWIzOGI1YzhlMTRkMGE2NzdmNTA3NDNkMWQ2N2I0
NTEzMTRmLi5lMDIxZWUzMzYyN2Q2YzJlNGYwYTM3NjQyZjM5ZmU3ODMxYzNhYTk4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MuaApAQCAtOTIsOCArOTIsMTAgQEAg
cHJpdmF0ZToKICAgICB2b2lkIHBhaW50RmlsZVVwbG9hZEljb25EZWNvcmF0aW9ucyhjb25zdCBS
ZW5kZXJPYmplY3QmIGlucHV0UmVuZGVyZXIsIGNvbnN0IFJlbmRlck9iamVjdCYgYnV0dG9uUmVu
ZGVyZXIsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEludFJlY3QmLCBJY29uKiwgRmlsZVVwbG9h
ZERlY29yYXRpb25zKSBvdmVycmlkZTsKIAogICAgIHZvaWQgYWRqdXN0VGV4dEZpZWxkU3R5bGUo
UmVuZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3QgZmluYWw7Ci0gICAgdm9pZCBwYWlu
dFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5m
byYsIGNvbnN0IEZsb2F0UmVjdCYpIG92ZXJyaWRlOwotICAgIHZvaWQgcGFpbnRUZXh0QXJlYURl
Y29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEZs
b2F0UmVjdCYpIG92ZXJyaWRlOworICAgIHZvaWQgcGFpbnRUZXh0RmllbGREZWNvcmF0aW9ucyhj
b25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSBvdmVy
cmlkZTsKKyAgICB2b2lkIHBhaW50VGV4dEFyZWFEZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJCb3gm
LCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9hdFJlY3QmKSBvdmVycmlkZTsKKworICAgIHZv
aWQgcGFpbnRUZXh0RmllbGRJbm5lclNoYWRvdyhjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9h
dFJvdW5kZWRSZWN0Jik7CiAKICAgICB2b2lkIGFkanVzdE1lbnVMaXN0QnV0dG9uU3R5bGUoUmVu
ZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgdm9pZCBwYWlu
dE1lbnVMaXN0QnV0dG9uRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJ
bmZvJiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CkBAIC0xMTIsNyArMTE0LDcgQEAgcHJp
dmF0ZToKICNlbmRpZgogCiAgICAgdm9pZCBhZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0
eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0IG92ZXJyaWRlOwotICAgIHZvaWQgcGFpbnRTZWFy
Y2hGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEludFJlY3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIHBhaW50U2VhcmNoRmllbGREZWNv
cmF0aW9ucyhjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0
Jikgb3ZlcnJpZGU7CiAKICNpZiBFTkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQogICAg
IENvbG9yIGNoZWNrYm94UmFkaW9Cb3JkZXJDb2xvcihPcHRpb25TZXQ8Q29udHJvbFN0YXRlczo6
U3RhdGVzPiwgT3B0aW9uU2V0PFN0eWxlQ29sb3I6Ok9wdGlvbnM+KTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQppbmRleCA2OWVlNDk2MzM2MGU4YzYwNjVjMWZm
NzExZjFmYjE2NmRlM2I0ZjVlLi5jMmJmZWJjODk1MDQ2ODIxNDA3YjM4OTZiNTE3MGUxMjI4MWM1
ODNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1Mu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tCkBAIC01
MzUsNDEgKzUzNSwxMDEgQEAgdm9pZCBSZW5kZXJUaGVtZUlPUzo6YWRqdXN0VGV4dEZpZWxkU3R5
bGUoUmVuZGVyU3R5bGUmIHN0eWxlLCBjb25zdCBFbGVtZW50KiBlbGUKICAgICBpZiAoIWVsZW1l
bnQpCiAgICAgICAgIHJldHVybjsKIAorICAgIGJvb2wgaGFzVGV4dGZpZWxkQXBwZWFyYW5jZSA9
IGZhbHNlOwogICAgIC8vIERvIG5vdCBmb3JjZSBhIGJhY2tncm91bmQgY29sb3IgZm9yIGVsZW1l
bnRzIHRoYXQgaGF2ZSBhIHRleHRmaWVsZAogICAgIC8vIGFwcGVhcmFuY2UgYnkgZGVmYXVsdCwg
c28gdGhhdCB0aGVpciBiYWNrZ3JvdW5kIGNvbG9yIGNhbiBiZSBzdHlsZWQuCiAgICAgaWYgKGlz
PEhUTUxJbnB1dEVsZW1lbnQ+KCplbGVtZW50KSkgewogICAgICAgICBhdXRvJiBpbnB1dCA9IGRv
d25jYXN0PEhUTUxJbnB1dEVsZW1lbnQ+KCplbGVtZW50KTsKICAgICAgICAgLy8gPGlucHV0IHR5
cGU9c2VhcmNoPiBpcyB0aGUgb25seSBUZXh0RmllbGRJbnB1dFR5cGUgdGhhdCBoYXMgYQogICAg
ICAgICAvLyBub24tdGV4dGZpZWxkIGFwcGVhcmFuY2UgdmFsdWUuCi0gICAgICAgIGlmIChpbnB1
dC5pc1RleHRGaWVsZCgpICYmICFpbnB1dC5pc1NlYXJjaEZpZWxkKCkpCi0gICAgICAgICAgICBy
ZXR1cm47CisgICAgICAgIGhhc1RleHRmaWVsZEFwcGVhcmFuY2UgPSBpbnB1dC5pc1RleHRGaWVs
ZCgpICYmICFpbnB1dC5pc1NlYXJjaEZpZWxkKCk7CiAgICAgfQogCisgICAgYm9vbCB1c2VBbHRl
cm5hdGVEZXNpZ24gPSBlbGVtZW50LT5kb2N1bWVudCgpLnNldHRpbmdzKCkuYWx0ZXJuYXRlRm9y
bUNvbnRyb2xEZXNpZ25FbmFibGVkKCk7CisgICAgaWYgKHVzZUFsdGVybmF0ZURlc2lnbikgewor
ICAgICAgICBpZiAoaGFzVGV4dGZpZWxkQXBwZWFyYW5jZSkKKyAgICAgICAgICAgIHN0eWxlLnNl
dEJhY2tncm91bmRDb2xvcihDb2xvcjo6dHJhbnNwYXJlbnRCbGFjayk7CisgICAgICAgIGVsc2UK
KyAgICAgICAgICAgIHN0eWxlLnNldEJhY2tncm91bmRDb2xvcihzeXN0ZW1Db2xvcihDU1NWYWx1
ZVdlYmtpdENvbnRyb2xCYWNrZ3JvdW5kLCBlbGVtZW50LT5kb2N1bWVudCgpLnN0eWxlQ29sb3JP
cHRpb25zKCZzdHlsZSkpKTsKKyAgICAgICAgc3R5bGUucmVzZXRCb3JkZXJFeGNlcHRSYWRpdXMo
KTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmIChoYXNUZXh0ZmllbGRBcHBlYXJh
bmNlKQorICAgICAgICByZXR1cm47CisKICAgICBzdHlsZS5zZXRCYWNrZ3JvdW5kQ29sb3Ioc3lz
dGVtQ29sb3IoQ1NTVmFsdWVXZWJraXRDb250cm9sQmFja2dyb3VuZCwgZWxlbWVudC0+ZG9jdW1l
bnQoKS5zdHlsZUNvbG9yT3B0aW9ucygmc3R5bGUpKSk7CiB9CiAKLXZvaWQgUmVuZGVyVGhlbWVJ
T1M6OnBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyT2JqZWN0JiBib3gsIGNv
bnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCit2b2lkIFJl
bmRlclRoZW1lSU9TOjpwYWludFRleHRGaWVsZElubmVyU2hhZG93KGNvbnN0IFBhaW50SW5mbyYg
cGFpbnRJbmZvLCBjb25zdCBGbG9hdFJvdW5kZWRSZWN0JiByb3VuZGVkUmVjdCkKIHsKLSNpZiBF
TkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQotICAgIGlmIChib3guc2V0dGluZ3MoKS5p
T1NGb3JtQ29udHJvbFJlZnJlc2hFbmFibGVkKCkpCi0gICAgICAgIHJldHVybjsKLSNlbmRpZgor
ICAgIGF1dG8mIGNvbnRleHQgPSBwYWludEluZm8uY29udGV4dCgpOworCisgICAgY29uc3QgRmxv
YXRTaXplIGlubmVyU2hhZG93T2Zmc2V0IHsgMCwgNSB9OworICAgIGNvbnN0ZXhwciBhdXRvIGlu
bmVyU2hhZG93Qmx1ciA9IDEwLjBmOworICAgIGF1dG8gaW5uZXJTaGFkb3dDb2xvciA9IERpc3Bs
YXlQMzxmbG9hdD4geyAwLCAwLCAwLCAwLjA0ZiB9OworICAgIGNvbnRleHQuc2V0U2hhZG93KGlu
bmVyU2hhZG93T2Zmc2V0LCBpbm5lclNoYWRvd0JsdXIsIGlubmVyU2hhZG93Q29sb3IpOworICAg
IGNvbnRleHQuc2V0RmlsbENvbG9yKENvbG9yOjpibGFjayk7CisKKyAgICBQYXRoIGlubmVyU2hh
ZG93UGF0aDsKKyAgICBGbG9hdFJlY3QgaW5uZXJTaGFkb3dSZWN0ID0gcm91bmRlZFJlY3QucmVj
dCgpOworICAgIGlubmVyU2hhZG93UmVjdC5pbmZsYXRlKHN0ZDo6bWF4PGZsb2F0Pihpbm5lclNo
YWRvd09mZnNldC53aWR0aCgpLCBpbm5lclNoYWRvd09mZnNldC5oZWlnaHQoKSkgKyBpbm5lclNo
YWRvd0JsdXIpOworICAgIGlubmVyU2hhZG93UGF0aC5hZGRSZWN0KGlubmVyU2hhZG93UmVjdCk7
CisKKyAgICBGbG9hdFJvdW5kZWRSZWN0IGlubmVyU2hhZG93SG9sZVJlY3QgPSByb3VuZGVkUmVj
dDsKKyAgICAvLyBGSVhNRTogVGhpcyBpcyBub3QgZnJvbSB0aGUgc3BlYzsgYnV0IHdpdGhvdXQg
aXQgd2UgZ2V0IGFudGlhbGlhc2luZyBmcmluZ2UgZnJvbSB0aGUgZmlsbDsgd2UgbmVlZCBhIGJl
dHRlciBzb2x1dGlvbi4KKyAgICBpbm5lclNoYWRvd0hvbGVSZWN0LmluZmxhdGUoMC41KTsKKyAg
ICBpbm5lclNoYWRvd1BhdGguYWRkUm91bmRlZFJlY3QoaW5uZXJTaGFkb3dIb2xlUmVjdCk7CisK
KyAgICBjb250ZXh0LnNldEZpbGxSdWxlKFdpbmRSdWxlOjpFdmVuT2RkKTsKKyAgICBjb250ZXh0
LmZpbGxQYXRoKGlubmVyU2hhZG93UGF0aCk7Cit9CisKK3ZvaWQgUmVuZGVyVGhlbWVJT1M6OnBh
aW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IFBhaW50
SW5mbyYgcGFpbnRJbmZvLCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCit7CisgICAgYXV0byYgY29u
dGV4dCA9IHBhaW50SW5mby5jb250ZXh0KCk7CisgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZl
ciBzdGF0ZVNhdmVyKGNvbnRleHQpOwogCiAgICAgYXV0byYgc3R5bGUgPSBib3guc3R5bGUoKTsK
LSAgICBGbG9hdFBvaW50IHBvaW50KHJlY3QueCgpICsgc3R5bGUuYm9yZGVyTGVmdFdpZHRoKCks
IHJlY3QueSgpICsgc3R5bGUuYm9yZGVyVG9wV2lkdGgoKSk7CisgICAgYXV0byByb3VuZGVkUmVj
dCA9IHN0eWxlLmdldFJvdW5kZWRCb3JkZXJGb3IoTGF5b3V0UmVjdChyZWN0KSkucGl4ZWxTbmFw
cGVkUm91bmRlZFJlY3RGb3JQYWludGluZyhib3guZG9jdW1lbnQoKS5kZXZpY2VTY2FsZUZhY3Rv
cigpKTsKIAotICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcihwYWludElu
Zm8uY29udGV4dCgpKTsKKyNpZiBFTkFCTEUoSU9TX0ZPUk1fQ09OVFJPTF9SRUZSRVNIKQorICAg
IGlmIChib3guc2V0dGluZ3MoKS5pT1NGb3JtQ29udHJvbFJlZnJlc2hFbmFibGVkKCkpIHsKKyAg
ICAgICAgYm9vbCBzaG91bGRQYWludEZpbGxBbmRJbm5lclNoYWRvdyA9IGZhbHNlOworICAgICAg
ICBhdXRvIGVsZW1lbnQgPSBib3guZWxlbWVudCgpOworICAgICAgICBpZiAoaXM8SFRNTElucHV0
RWxlbWVudD4oKmVsZW1lbnQpKSB7CisgICAgICAgICAgICBhdXRvJiBpbnB1dCA9IGRvd25jYXN0
PEhUTUxJbnB1dEVsZW1lbnQ+KCplbGVtZW50KTsKKyAgICAgICAgICAgIGlmIChpbnB1dC5pc1Rl
eHRGaWVsZCgpICYmICFpbnB1dC5pc1NlYXJjaEZpZWxkKCkpCisgICAgICAgICAgICAgICAgc2hv
dWxkUGFpbnRGaWxsQW5kSW5uZXJTaGFkb3cgPSB0cnVlOworICAgICAgICB9CiAKLSAgICBwYWlu
dEluZm8uY29udGV4dCgpLmNsaXBSb3VuZGVkUmVjdChzdHlsZS5nZXRSb3VuZGVkQm9yZGVyRm9y
KExheW91dFJlY3QocmVjdCkpLnBpeGVsU25hcHBlZFJvdW5kZWRSZWN0Rm9yUGFpbnRpbmcoYm94
LmRvY3VtZW50KCkuZGV2aWNlU2NhbGVGYWN0b3IoKSkpOworICAgICAgICBib29sIHVzZUFsdGVy
bmF0ZURlc2lnbiA9IGJveC5zZXR0aW5ncygpLmFsdGVybmF0ZUZvcm1Db250cm9sRGVzaWduRW5h
YmxlZCgpOworICAgICAgICBpZiAodXNlQWx0ZXJuYXRlRGVzaWduICYmIHNob3VsZFBhaW50Rmls
bEFuZElubmVyU2hhZG93KSB7CisgICAgICAgICAgICBQYXRoIHBhdGg7CisgICAgICAgICAgICBw
YXRoLmFkZFJvdW5kZWRSZWN0KHJvdW5kZWRSZWN0KTsKKworICAgICAgICAgICAgY29udGV4dC5z
ZXRGaWxsQ29sb3IoQ29sb3I6OmJsYWNrLmNvbG9yV2l0aEFscGhhQnl0ZSgxMCkpOworICAgICAg
ICAgICAgY29udGV4dC5kcmF3UGF0aChwYXRoKTsKKyAgICAgICAgICAgIGNvbnRleHQuY2xpcFBh
dGgocGF0aCk7CisgICAgICAgICAgICBwYWludFRleHRGaWVsZElubmVyU2hhZG93KHBhaW50SW5m
bywgcm91bmRlZFJlY3QpOworICAgICAgICB9CisKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyNl
bmRpZgorCisgICAgY29udGV4dC5jbGlwUm91bmRlZFJlY3Qocm91bmRlZFJlY3QpOwogCiAgICAg
Ly8gVGhpcyBncmFkaWVudCBnZXRzIGRyYXduIGJsYWNrIHdoZW4gcHJpbnRpbmcuCiAgICAgLy8g
RG8gbm90IGRyYXcgdGhlIGdyYWRpZW50IGlmIHRoZXJlIGlzIG5vIHZpc2libGUgdG9wIGJvcmRl
ci4KICAgICBib29sIHRvcEJvcmRlcklzSW52aXNpYmxlID0gIXN0eWxlLmhhc0JvcmRlcigpIHx8
ICFzdHlsZS5ib3JkZXJUb3BXaWR0aCgpIHx8IHN0eWxlLmJvcmRlclRvcElzVHJhbnNwYXJlbnQo
KTsKLSAgICBpZiAoIWJveC52aWV3KCkucHJpbnRpbmcoKSAmJiAhdG9wQm9yZGVySXNJbnZpc2li
bGUpCi0gICAgICAgIGRyYXdBeGlhbEdyYWRpZW50KHBhaW50SW5mby5jb250ZXh0KCkucGxhdGZv
cm1Db250ZXh0KCksIGdyYWRpZW50V2l0aE5hbWUoSW5zZXRHcmFkaWVudCksIHBvaW50LCBGbG9h
dFBvaW50KENHUG9pbnRNYWtlKHBvaW50LngoKSwgcG9pbnQueSgpICsgMy4wZikpLCBMaW5lYXJJ
bnRlcnBvbGF0aW9uKTsKKyAgICBpZiAoIWJveC52aWV3KCkucHJpbnRpbmcoKSAmJiAhdG9wQm9y
ZGVySXNJbnZpc2libGUpIHsKKyAgICAgICAgRmxvYXRQb2ludCBwb2ludChyZWN0LngoKSArIHN0
eWxlLmJvcmRlckxlZnRXaWR0aCgpLCByZWN0LnkoKSArIHN0eWxlLmJvcmRlclRvcFdpZHRoKCkp
OworICAgICAgICBkcmF3QXhpYWxHcmFkaWVudChjb250ZXh0LnBsYXRmb3JtQ29udGV4dCgpLCBn
cmFkaWVudFdpdGhOYW1lKEluc2V0R3JhZGllbnQpLCBwb2ludCwgRmxvYXRQb2ludChDR1BvaW50
TWFrZShwb2ludC54KCksIHBvaW50LnkoKSArIDMuMGYpKSwgTGluZWFySW50ZXJwb2xhdGlvbik7
CisgICAgfQogfQogCi12b2lkIFJlbmRlclRoZW1lSU9TOjpwYWludFRleHRBcmVhRGVjb3JhdGlv
bnMoY29uc3QgUmVuZGVyT2JqZWN0JiBib3gsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJbmZvLCBj
b25zdCBGbG9hdFJlY3QmIHJlY3QpCit2b2lkIFJlbmRlclRoZW1lSU9TOjpwYWludFRleHRBcmVh
RGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJ
bmZvLCBjb25zdCBGbG9hdFJlY3QmIHJlY3QpCiB7CiAgICAgcGFpbnRUZXh0RmllbGREZWNvcmF0
aW9ucyhib3gsIHBhaW50SW5mbywgcmVjdCk7CiB9CkBAIC0xMTAwLDcgKzExNjAsNyBAQCB2b2lk
IFJlbmRlclRoZW1lSU9TOjphZGp1c3RTZWFyY2hGaWVsZFN0eWxlKFJlbmRlclN0eWxlJiBzdHls
ZSwgY29uc3QgRWxlbWVudCogZQogICAgIGFkanVzdFJvdW5kQm9yZGVyUmFkaXVzKHN0eWxlLCAq
Ym94KTsKIH0KIAotdm9pZCBSZW5kZXJUaGVtZUlPUzo6cGFpbnRTZWFyY2hGaWVsZERlY29yYXRp
b25zKGNvbnN0IFJlbmRlck9iamVjdCYgYm94LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywg
Y29uc3QgSW50UmVjdCYgcmVjdCkKK3ZvaWQgUmVuZGVyVGhlbWVJT1M6OnBhaW50U2VhcmNoRmll
bGREZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgUGFpbnRJbmZvJiBwYWlu
dEluZm8sIGNvbnN0IEludFJlY3QmIHJlY3QpCiB7CiAgICAgcGFpbnRUZXh0RmllbGREZWNvcmF0
aW9ucyhib3gsIHBhaW50SW5mbywgcmVjdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9zdHlsZS9SZW5kZXJTdHlsZS5oCmluZGV4IDBmY2NlNzk2Yjc3OWUwMDUzZDI5MTBlODJlOTVk
MGRlMWRjNDM1ZTYuLjE0OTY2NGRjNGIzNThkMjNkMTljZTU1NjZjNjc4MzVlNjA2NDQ5YjggMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC04ODAs
NyArODgwLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0TWluSGVpZ2h0KExlbmd0aCYmIGxlbmd0
aCkgeyBTRVRfVkFSKG1fYm94RGF0YSwgbV9taW5IZWlnaHQsIFdURk1vdmUobGVuZ3RoKSk7IH0K
ICAgICB2b2lkIHNldE1heEhlaWdodChMZW5ndGgmJiBsZW5ndGgpIHsgU0VUX1ZBUihtX2JveERh
dGEsIG1fbWF4SGVpZ2h0LCBXVEZNb3ZlKGxlbmd0aCkpOyB9CiAKLSAgICB2b2lkIHJlc2V0Qm9y
ZGVyKCkgeyByZXNldEJvcmRlckltYWdlKCk7IHJlc2V0Qm9yZGVyVG9wKCk7IHJlc2V0Qm9yZGVy
UmlnaHQoKTsgcmVzZXRCb3JkZXJCb3R0b20oKTsgcmVzZXRCb3JkZXJMZWZ0KCk7IHJlc2V0Qm9y
ZGVyUmFkaXVzKCk7IH0KKyAgICB2b2lkIHJlc2V0Qm9yZGVyKCkgeyByZXNldEJvcmRlckV4Y2Vw
dFJhZGl1cygpOyByZXNldEJvcmRlclJhZGl1cygpOyB9CisgICAgdm9pZCByZXNldEJvcmRlckV4
Y2VwdFJhZGl1cygpIHsgcmVzZXRCb3JkZXJJbWFnZSgpOyByZXNldEJvcmRlclRvcCgpOyByZXNl
dEJvcmRlclJpZ2h0KCk7IHJlc2V0Qm9yZGVyQm90dG9tKCk7IHJlc2V0Qm9yZGVyTGVmdCgpOyB9
CiAgICAgdm9pZCByZXNldEJvcmRlclRvcCgpIHsgU0VUX1ZBUihtX3N1cnJvdW5kRGF0YSwgYm9y
ZGVyLm1fdG9wLCBCb3JkZXJWYWx1ZSgpKTsgfQogICAgIHZvaWQgcmVzZXRCb3JkZXJSaWdodCgp
IHsgU0VUX1ZBUihtX3N1cnJvdW5kRGF0YSwgYm9yZGVyLm1fcmlnaHQsIEJvcmRlclZhbHVlKCkp
OyB9CiAgICAgdm9pZCByZXNldEJvcmRlckJvdHRvbSgpIHsgU0VUX1ZBUihtX3N1cnJvdW5kRGF0
YSwgYm9yZGVyLm1fYm90dG9tLCBCb3JkZXJWYWx1ZSgpKTsgfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>440856</attachid>
            <date>2021-10-11 16:36:32 -0700</date>
            <delta_ts>2021-10-11 19:42:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-231536-20211011163631.patch</filename>
            <type>text/plain</type>
            <size>12633</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgzNjEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWYwMWQ1NjY0YmU3YjUx
NWZmM2UxZDllYjNlZDE3MGZmYTRjNDMyZi4uOWQ1ZDY2MWI5MjNjZWRhN2Q4ZTM5ZWFmMWQ4OTk5
ZThmMGViMTMwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDIxLTEwLTExICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIEltcGxlbWVudCBh
bHRlcm5hdGUgc3R5bGUgZm9yIHRleHQgZmllbGRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMzE1MzYKKworICAgICAgICBSZXZpZXdlZCBieSBXZW5z
b24gSHNpZWguCisKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyVGhlbWUuaDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlclRoZW1lOjpwYWludFRleHRGaWVsZERlY29yYXRpb25zKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lOjpwYWludFRleHRBcmVhRGVjb3JhdGlvbnMpOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWU6OnBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9ucyk6
CisgICAgICAgIFRpZ2h0ZW4gdXAgdGhlIHR5cGVzLgorCisgICAgICAgICogcmVuZGVyaW5nL1Jl
bmRlclRoZW1lSU9TLmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVJT1M6OmFkanVzdFRleHRGaWVsZFN0eWxlIGNv
bnN0KToKKyAgICAgICAgRHJvcCB0aGUgYm9yZGVyIGFuZCBjbGVhciB0aGUgYmFja2dyb3VuZCwg
c28gdGhhdCB3ZSBjYW4gdXNlIG91cgorICAgICAgICBjdXN0b20gaW5uZXIgc2hhZG93IHBhaW50
aW5nIGluc3RlYWQuCisKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lSU9TOjpwYWludFRl
eHRGaWVsZElubmVyU2hhZG93KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lSU9TOjpw
YWludFRleHRGaWVsZERlY29yYXRpb25zKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1l
SU9TOjpwYWludFRleHRBcmVhRGVjb3JhdGlvbnMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VGhlbWVJT1M6OnBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9ucyk6CisgICAgICAgIFBhaW50IG91
ciBjdXN0b20gaW5uZXIgc2hhZG93IGZvciB0ZXh0IGZpZWxkcywgd2hlbiB1c2luZyB0aGUgYWx0
ZXJuYXRlIGFwcGVhcmFuY2UuCisKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5
bGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpyZXNldEJvcmRlcik6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6cmVzZXRCb3JkZXJFeGNlcHRSYWRpdXMpOgorICAg
ICAgICBBZGQgYSBtZWNoYW5pc20gdG8gcmVzZXQgYWxsIGJvcmRlciBwcm9wZXJ0aWVzIGV4Y2Vw
dCByYWRpdXMuCisKIDIwMjEtMTAtMDYgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29t
PgogCiAgICAgICAgIFNpbXBsaWZ5IEJhc2VBdWRpb1NoYXJlZFVuaXQgY2xpZW50IG1hbmFnZW1l
bnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZS5oIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKaW5kZXggZTdlNmViYjFiOWQx
ZWJiMTg4MDdmYjBhYTg5MTZmOWM4MDFmNzgzMS4uOWIwNmY2NGFjZjQ2MDZhODc3NGM3Zjg2NDBj
NzE3YTJlYjM1Y2M5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
clRoZW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lLmgKQEAg
LTMyMywxMSArMzIzLDExIEBAIHByb3RlY3RlZDoKIAogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RU
ZXh0RmllbGRTdHlsZShSZW5kZXJTdHlsZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2
aXJ0dWFsIGJvb2wgcGFpbnRUZXh0RmllbGQoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFp
bnRJbmZvJiwgY29uc3QgRmxvYXRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwg
dm9pZCBwYWludFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0
IFBhaW50SW5mbyYsIGNvbnN0IEZsb2F0UmVjdCYpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBwYWlu
dFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYsIGNvbnN0IFBhaW50SW5mbyYs
IGNvbnN0IEZsb2F0UmVjdCYpIHsgfQogCiAgICAgdmlydHVhbCB2b2lkIGFkanVzdFRleHRBcmVh
U3R5bGUoUmVuZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAgICAgdmlydHVhbCBi
b29sIHBhaW50VGV4dEFyZWEoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFpbnRJbmZvJiwg
Y29uc3QgRmxvYXRSZWN0JikgeyByZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgdm9pZCBwYWlu
dFRleHRBcmVhRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFpbnRJbmZv
JiwgY29uc3QgRmxvYXRSZWN0JikgeyB9CisgICAgdmlydHVhbCB2b2lkIHBhaW50VGV4dEFyZWFE
ZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJCb3gmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9h
dFJlY3QmKSB7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBhZGp1c3RNZW51TGlzdFN0eWxlKFJlbmRl
clN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBwYWludE1l
bnVMaXN0KGNvbnN0IFJlbmRlck9iamVjdCYsIGNvbnN0IFBhaW50SW5mbyYsIGNvbnN0IEZsb2F0
UmVjdCYpIHsgcmV0dXJuIHRydWU7IH0KQEAgLTM3MSw3ICszNzEsNyBAQCBwcm90ZWN0ZWQ6CiAK
ICAgICB2aXJ0dWFsIHZvaWQgYWRqdXN0U2VhcmNoRmllbGRTdHlsZShSZW5kZXJTdHlsZSYsIGNv
bnN0IEVsZW1lbnQqKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wgcGFpbnRTZWFyY2hGaWVsZChj
b25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JikgeyBy
ZXR1cm4gdHJ1ZTsgfQotICAgIHZpcnR1YWwgdm9pZCBwYWludFNlYXJjaEZpZWxkRGVjb3JhdGlv
bnMoY29uc3QgUmVuZGVyT2JqZWN0JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYp
IHsgfQorICAgIHZpcnR1YWwgdm9pZCBwYWludFNlYXJjaEZpZWxkRGVjb3JhdGlvbnMoY29uc3Qg
UmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYpIHsgfQogCiAgICAg
dmlydHVhbCB2b2lkIGFkanVzdFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uU3R5bGUoUmVuZGVyU3R5
bGUmLCBjb25zdCBFbGVtZW50KikgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHBhaW50U2VhcmNo
RmllbGRDYW5jZWxCdXR0b24oY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZvJiwgY29u
c3QgSW50UmVjdCYpIHsgcmV0dXJuIHRydWU7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5oIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jl
bmRlclRoZW1lSU9TLmgKaW5kZXggNGIxMDFiMzhiNWM4ZTE0ZDBhNjc3ZjUwNzQzZDFkNjdiNDUx
MzE0Zi4uZTAyMWVlMzM2MjdkNmMyZTRmMGEzNzY0MmYzOWZlNzgzMWMzYWE5OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLmgKQEAgLTkyLDggKzkyLDEwIEBAIHBy
aXZhdGU6CiAgICAgdm9pZCBwYWludEZpbGVVcGxvYWRJY29uRGVjb3JhdGlvbnMoY29uc3QgUmVu
ZGVyT2JqZWN0JiBpbnB1dFJlbmRlcmVyLCBjb25zdCBSZW5kZXJPYmplY3QmIGJ1dHRvblJlbmRl
cmVyLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBJbnRSZWN0JiwgSWNvbiosIEZpbGVVcGxvYWRE
ZWNvcmF0aW9ucykgb3ZlcnJpZGU7CiAKICAgICB2b2lkIGFkanVzdFRleHRGaWVsZFN0eWxlKFJl
bmRlclN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0IGZpbmFsOwotICAgIHZvaWQgcGFpbnRU
ZXh0RmllbGREZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8m
LCBjb25zdCBGbG9hdFJlY3QmKSBvdmVycmlkZTsKLSAgICB2b2lkIHBhaW50VGV4dEFyZWFEZWNv
cmF0aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8mLCBjb25zdCBGbG9h
dFJlY3QmKSBvdmVycmlkZTsKKyAgICB2b2lkIHBhaW50VGV4dEZpZWxkRGVjb3JhdGlvbnMoY29u
c3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJp
ZGU7CisgICAgdm9pZCBwYWludFRleHRBcmVhRGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94Jiwg
Y29uc3QgUGFpbnRJbmZvJiwgY29uc3QgRmxvYXRSZWN0Jikgb3ZlcnJpZGU7CisKKyAgICB2b2lk
IHBhaW50VGV4dEZpZWxkSW5uZXJTaGFkb3coY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgRmxvYXRS
b3VuZGVkUmVjdCYpOwogCiAgICAgdm9pZCBhZGp1c3RNZW51TGlzdEJ1dHRvblN0eWxlKFJlbmRl
clN0eWxlJiwgY29uc3QgRWxlbWVudCopIGNvbnN0IG92ZXJyaWRlOwogICAgIHZvaWQgcGFpbnRN
ZW51TGlzdEJ1dHRvbkRlY29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYsIGNvbnN0IFBhaW50SW5m
byYsIGNvbnN0IEZsb2F0UmVjdCYpIG92ZXJyaWRlOwpAQCAtMTEyLDcgKzExNCw3IEBAIHByaXZh
dGU6CiAjZW5kaWYKIAogICAgIHZvaWQgYWRqdXN0U2VhcmNoRmllbGRTdHlsZShSZW5kZXJTdHls
ZSYsIGNvbnN0IEVsZW1lbnQqKSBjb25zdCBvdmVycmlkZTsKLSAgICB2b2lkIHBhaW50U2VhcmNo
RmllbGREZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJPYmplY3QmLCBjb25zdCBQYWludEluZm8mLCBj
b25zdCBJbnRSZWN0Jikgb3ZlcnJpZGU7CisgICAgdm9pZCBwYWludFNlYXJjaEZpZWxkRGVjb3Jh
dGlvbnMoY29uc3QgUmVuZGVyQm94JiwgY29uc3QgUGFpbnRJbmZvJiwgY29uc3QgSW50UmVjdCYp
IG92ZXJyaWRlOwogCiAjaWYgRU5BQkxFKElPU19GT1JNX0NPTlRST0xfUkVGUkVTSCkKICAgICBD
b2xvciBjaGVja2JveFJhZGlvQm9yZGVyQ29sb3IoT3B0aW9uU2V0PENvbnRyb2xTdGF0ZXM6OlN0
YXRlcz4sIE9wdGlvblNldDxTdHlsZUNvbG9yOjpPcHRpb25zPik7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KaW5kZXggNjllZTQ5NjMzNjBlOGM2MDY1YzFmZjcx
MWYxZmIxNjZkZTNiNGY1ZS4uYzJiZmViYzg5NTA0NjgyMTQwN2IzODk2YjUxNzBlMTIyODFjNTgz
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQpAQCAtNTM1
LDQxICs1MzUsMTAxIEBAIHZvaWQgUmVuZGVyVGhlbWVJT1M6OmFkanVzdFRleHRGaWVsZFN0eWxl
KFJlbmRlclN0eWxlJiBzdHlsZSwgY29uc3QgRWxlbWVudCogZWxlCiAgICAgaWYgKCFlbGVtZW50
KQogICAgICAgICByZXR1cm47CiAKKyAgICBib29sIGhhc1RleHRmaWVsZEFwcGVhcmFuY2UgPSBm
YWxzZTsKICAgICAvLyBEbyBub3QgZm9yY2UgYSBiYWNrZ3JvdW5kIGNvbG9yIGZvciBlbGVtZW50
cyB0aGF0IGhhdmUgYSB0ZXh0ZmllbGQKICAgICAvLyBhcHBlYXJhbmNlIGJ5IGRlZmF1bHQsIHNv
IHRoYXQgdGhlaXIgYmFja2dyb3VuZCBjb2xvciBjYW4gYmUgc3R5bGVkLgogICAgIGlmIChpczxI
VE1MSW5wdXRFbGVtZW50PigqZWxlbWVudCkpIHsKICAgICAgICAgYXV0byYgaW5wdXQgPSBkb3du
Y2FzdDxIVE1MSW5wdXRFbGVtZW50PigqZWxlbWVudCk7CiAgICAgICAgIC8vIDxpbnB1dCB0eXBl
PXNlYXJjaD4gaXMgdGhlIG9ubHkgVGV4dEZpZWxkSW5wdXRUeXBlIHRoYXQgaGFzIGEKICAgICAg
ICAgLy8gbm9uLXRleHRmaWVsZCBhcHBlYXJhbmNlIHZhbHVlLgotICAgICAgICBpZiAoaW5wdXQu
aXNUZXh0RmllbGQoKSAmJiAhaW5wdXQuaXNTZWFyY2hGaWVsZCgpKQotICAgICAgICAgICAgcmV0
dXJuOworICAgICAgICBoYXNUZXh0ZmllbGRBcHBlYXJhbmNlID0gaW5wdXQuaXNUZXh0RmllbGQo
KSAmJiAhaW5wdXQuaXNTZWFyY2hGaWVsZCgpOwogICAgIH0KIAorICAgIGJvb2wgdXNlQWx0ZXJu
YXRlRGVzaWduID0gZWxlbWVudC0+ZG9jdW1lbnQoKS5zZXR0aW5ncygpLmFsdGVybmF0ZUZvcm1D
b250cm9sRGVzaWduRW5hYmxlZCgpOworICAgIGlmICh1c2VBbHRlcm5hdGVEZXNpZ24pIHsKKyAg
ICAgICAgaWYgKGhhc1RleHRmaWVsZEFwcGVhcmFuY2UpCisgICAgICAgICAgICBzdHlsZS5zZXRC
YWNrZ3JvdW5kQ29sb3IoQ29sb3I6OnRyYW5zcGFyZW50QmxhY2spOworICAgICAgICBlbHNlCisg
ICAgICAgICAgICBzdHlsZS5zZXRCYWNrZ3JvdW5kQ29sb3Ioc3lzdGVtQ29sb3IoQ1NTVmFsdWVX
ZWJraXRDb250cm9sQmFja2dyb3VuZCwgZWxlbWVudC0+ZG9jdW1lbnQoKS5zdHlsZUNvbG9yT3B0
aW9ucygmc3R5bGUpKSk7CisgICAgICAgIHN0eWxlLnJlc2V0Qm9yZGVyRXhjZXB0UmFkaXVzKCk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoaGFzVGV4dGZpZWxkQXBwZWFyYW5j
ZSkKKyAgICAgICAgcmV0dXJuOworCiAgICAgc3R5bGUuc2V0QmFja2dyb3VuZENvbG9yKHN5c3Rl
bUNvbG9yKENTU1ZhbHVlV2Via2l0Q29udHJvbEJhY2tncm91bmQsIGVsZW1lbnQtPmRvY3VtZW50
KCkuc3R5bGVDb2xvck9wdGlvbnMoJnN0eWxlKSkpOwogfQogCi12b2lkIFJlbmRlclRoZW1lSU9T
OjpwYWludFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlck9iamVjdCYgYm94LCBjb25z
dCBQYWludEluZm8mIHBhaW50SW5mbywgY29uc3QgRmxvYXRSZWN0JiByZWN0KQordm9pZCBSZW5k
ZXJUaGVtZUlPUzo6cGFpbnRUZXh0RmllbGRJbm5lclNoYWRvdyhjb25zdCBQYWludEluZm8mIHBh
aW50SW5mbywgY29uc3QgRmxvYXRSb3VuZGVkUmVjdCYgcm91bmRlZFJlY3QpCiB7Ci0jaWYgRU5B
QkxFKElPU19GT1JNX0NPTlRST0xfUkVGUkVTSCkKLSAgICBpZiAoYm94LnNldHRpbmdzKCkuaU9T
Rm9ybUNvbnRyb2xSZWZyZXNoRW5hYmxlZCgpKQotICAgICAgICByZXR1cm47Ci0jZW5kaWYKKyAg
ICBhdXRvJiBjb250ZXh0ID0gcGFpbnRJbmZvLmNvbnRleHQoKTsKKworICAgIGNvbnN0IEZsb2F0
U2l6ZSBpbm5lclNoYWRvd09mZnNldCB7IDAsIDUgfTsKKyAgICBjb25zdGV4cHIgYXV0byBpbm5l
clNoYWRvd0JsdXIgPSAxMC4wZjsKKyAgICBhdXRvIGlubmVyU2hhZG93Q29sb3IgPSBEaXNwbGF5
UDM8ZmxvYXQ+IHsgMCwgMCwgMCwgMC4wNGYgfTsKKyAgICBjb250ZXh0LnNldFNoYWRvdyhpbm5l
clNoYWRvd09mZnNldCwgaW5uZXJTaGFkb3dCbHVyLCBpbm5lclNoYWRvd0NvbG9yKTsKKyAgICBj
b250ZXh0LnNldEZpbGxDb2xvcihDb2xvcjo6YmxhY2spOworCisgICAgUGF0aCBpbm5lclNoYWRv
d1BhdGg7CisgICAgRmxvYXRSZWN0IGlubmVyU2hhZG93UmVjdCA9IHJvdW5kZWRSZWN0LnJlY3Qo
KTsKKyAgICBpbm5lclNoYWRvd1JlY3QuaW5mbGF0ZShzdGQ6Om1heDxmbG9hdD4oaW5uZXJTaGFk
b3dPZmZzZXQud2lkdGgoKSwgaW5uZXJTaGFkb3dPZmZzZXQuaGVpZ2h0KCkpICsgaW5uZXJTaGFk
b3dCbHVyKTsKKyAgICBpbm5lclNoYWRvd1BhdGguYWRkUmVjdChpbm5lclNoYWRvd1JlY3QpOwor
CisgICAgRmxvYXRSb3VuZGVkUmVjdCBpbm5lclNoYWRvd0hvbGVSZWN0ID0gcm91bmRlZFJlY3Q7
CisgICAgLy8gRklYTUU6IFRoaXMgaXMgbm90IGZyb20gdGhlIHNwZWM7IGJ1dCB3aXRob3V0IGl0
IHdlIGdldCBhbnRpYWxpYXNpbmcgZnJpbmdlIGZyb20gdGhlIGZpbGw7IHdlIG5lZWQgYSBiZXR0
ZXIgc29sdXRpb24uCisgICAgaW5uZXJTaGFkb3dIb2xlUmVjdC5pbmZsYXRlKDAuNSk7CisgICAg
aW5uZXJTaGFkb3dQYXRoLmFkZFJvdW5kZWRSZWN0KGlubmVyU2hhZG93SG9sZVJlY3QpOworCisg
ICAgY29udGV4dC5zZXRGaWxsUnVsZShXaW5kUnVsZTo6RXZlbk9kZCk7CisgICAgY29udGV4dC5m
aWxsUGF0aChpbm5lclNoYWRvd1BhdGgpOworfQorCit2b2lkIFJlbmRlclRoZW1lSU9TOjpwYWlu
dFRleHRGaWVsZERlY29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zdCBQYWludElu
Zm8mIHBhaW50SW5mbywgY29uc3QgRmxvYXRSZWN0JiByZWN0KQoreworICAgIGF1dG8mIGNvbnRl
eHQgPSBwYWludEluZm8uY29udGV4dCgpOworICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIg
c3RhdGVTYXZlcihjb250ZXh0KTsKIAogICAgIGF1dG8mIHN0eWxlID0gYm94LnN0eWxlKCk7Ci0g
ICAgRmxvYXRQb2ludCBwb2ludChyZWN0LngoKSArIHN0eWxlLmJvcmRlckxlZnRXaWR0aCgpLCBy
ZWN0LnkoKSArIHN0eWxlLmJvcmRlclRvcFdpZHRoKCkpOworICAgIGF1dG8gcm91bmRlZFJlY3Qg
PSBzdHlsZS5nZXRSb3VuZGVkQm9yZGVyRm9yKExheW91dFJlY3QocmVjdCkpLnBpeGVsU25hcHBl
ZFJvdW5kZWRSZWN0Rm9yUGFpbnRpbmcoYm94LmRvY3VtZW50KCkuZGV2aWNlU2NhbGVGYWN0b3Io
KSk7CiAKLSAgICBHcmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIocGFpbnRJbmZv
LmNvbnRleHQoKSk7CisjaWYgRU5BQkxFKElPU19GT1JNX0NPTlRST0xfUkVGUkVTSCkKKyAgICBp
ZiAoYm94LnNldHRpbmdzKCkuaU9TRm9ybUNvbnRyb2xSZWZyZXNoRW5hYmxlZCgpKSB7CisgICAg
ICAgIGJvb2wgc2hvdWxkUGFpbnRGaWxsQW5kSW5uZXJTaGFkb3cgPSBmYWxzZTsKKyAgICAgICAg
YXV0byBlbGVtZW50ID0gYm94LmVsZW1lbnQoKTsKKyAgICAgICAgaWYgKGlzPEhUTUxJbnB1dEVs
ZW1lbnQ+KCplbGVtZW50KSkgeworICAgICAgICAgICAgYXV0byYgaW5wdXQgPSBkb3duY2FzdDxI
VE1MSW5wdXRFbGVtZW50PigqZWxlbWVudCk7CisgICAgICAgICAgICBpZiAoaW5wdXQuaXNUZXh0
RmllbGQoKSAmJiAhaW5wdXQuaXNTZWFyY2hGaWVsZCgpKQorICAgICAgICAgICAgICAgIHNob3Vs
ZFBhaW50RmlsbEFuZElubmVyU2hhZG93ID0gdHJ1ZTsKKyAgICAgICAgfQogCi0gICAgcGFpbnRJ
bmZvLmNvbnRleHQoKS5jbGlwUm91bmRlZFJlY3Qoc3R5bGUuZ2V0Um91bmRlZEJvcmRlckZvcihM
YXlvdXRSZWN0KHJlY3QpKS5waXhlbFNuYXBwZWRSb3VuZGVkUmVjdEZvclBhaW50aW5nKGJveC5k
b2N1bWVudCgpLmRldmljZVNjYWxlRmFjdG9yKCkpKTsKKyAgICAgICAgYm9vbCB1c2VBbHRlcm5h
dGVEZXNpZ24gPSBib3guc2V0dGluZ3MoKS5hbHRlcm5hdGVGb3JtQ29udHJvbERlc2lnbkVuYWJs
ZWQoKTsKKyAgICAgICAgaWYgKHVzZUFsdGVybmF0ZURlc2lnbiAmJiBzaG91bGRQYWludEZpbGxB
bmRJbm5lclNoYWRvdykgeworICAgICAgICAgICAgUGF0aCBwYXRoOworICAgICAgICAgICAgcGF0
aC5hZGRSb3VuZGVkUmVjdChyb3VuZGVkUmVjdCk7CisKKyAgICAgICAgICAgIGNvbnRleHQuc2V0
RmlsbENvbG9yKENvbG9yOjpibGFjay5jb2xvcldpdGhBbHBoYUJ5dGUoMTApKTsKKyAgICAgICAg
ICAgIGNvbnRleHQuZHJhd1BhdGgocGF0aCk7CisgICAgICAgICAgICBjb250ZXh0LmNsaXBQYXRo
KHBhdGgpOworICAgICAgICAgICAgcGFpbnRUZXh0RmllbGRJbm5lclNoYWRvdyhwYWludEluZm8s
IHJvdW5kZWRSZWN0KTsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybjsKKyAgICB9CisjZW5k
aWYKKworICAgIGNvbnRleHQuY2xpcFJvdW5kZWRSZWN0KHJvdW5kZWRSZWN0KTsKIAogICAgIC8v
IFRoaXMgZ3JhZGllbnQgZ2V0cyBkcmF3biBibGFjayB3aGVuIHByaW50aW5nLgogICAgIC8vIERv
IG5vdCBkcmF3IHRoZSBncmFkaWVudCBpZiB0aGVyZSBpcyBubyB2aXNpYmxlIHRvcCBib3JkZXIu
CiAgICAgYm9vbCB0b3BCb3JkZXJJc0ludmlzaWJsZSA9ICFzdHlsZS5oYXNCb3JkZXIoKSB8fCAh
c3R5bGUuYm9yZGVyVG9wV2lkdGgoKSB8fCBzdHlsZS5ib3JkZXJUb3BJc1RyYW5zcGFyZW50KCk7
Ci0gICAgaWYgKCFib3gudmlldygpLnByaW50aW5nKCkgJiYgIXRvcEJvcmRlcklzSW52aXNpYmxl
KQotICAgICAgICBkcmF3QXhpYWxHcmFkaWVudChwYWludEluZm8uY29udGV4dCgpLnBsYXRmb3Jt
Q29udGV4dCgpLCBncmFkaWVudFdpdGhOYW1lKEluc2V0R3JhZGllbnQpLCBwb2ludCwgRmxvYXRQ
b2ludChDR1BvaW50TWFrZShwb2ludC54KCksIHBvaW50LnkoKSArIDMuMGYpKSwgTGluZWFySW50
ZXJwb2xhdGlvbik7CisgICAgaWYgKCFib3gudmlldygpLnByaW50aW5nKCkgJiYgIXRvcEJvcmRl
cklzSW52aXNpYmxlKSB7CisgICAgICAgIEZsb2F0UG9pbnQgcG9pbnQocmVjdC54KCkgKyBzdHls
ZS5ib3JkZXJMZWZ0V2lkdGgoKSwgcmVjdC55KCkgKyBzdHlsZS5ib3JkZXJUb3BXaWR0aCgpKTsK
KyAgICAgICAgZHJhd0F4aWFsR3JhZGllbnQoY29udGV4dC5wbGF0Zm9ybUNvbnRleHQoKSwgZ3Jh
ZGllbnRXaXRoTmFtZShJbnNldEdyYWRpZW50KSwgcG9pbnQsIEZsb2F0UG9pbnQoQ0dQb2ludE1h
a2UocG9pbnQueCgpLCBwb2ludC55KCkgKyAzLjBmKSksIExpbmVhckludGVycG9sYXRpb24pOwor
ICAgIH0KIH0KIAotdm9pZCBSZW5kZXJUaGVtZUlPUzo6cGFpbnRUZXh0QXJlYURlY29yYXRpb25z
KGNvbnN0IFJlbmRlck9iamVjdCYgYm94LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5mbywgY29u
c3QgRmxvYXRSZWN0JiByZWN0KQordm9pZCBSZW5kZXJUaGVtZUlPUzo6cGFpbnRUZXh0QXJlYURl
Y29yYXRpb25zKGNvbnN0IFJlbmRlckJveCYgYm94LCBjb25zdCBQYWludEluZm8mIHBhaW50SW5m
bywgY29uc3QgRmxvYXRSZWN0JiByZWN0KQogewogICAgIHBhaW50VGV4dEZpZWxkRGVjb3JhdGlv
bnMoYm94LCBwYWludEluZm8sIHJlY3QpOwogfQpAQCAtMTEwMCw3ICsxMTYwLDcgQEAgdm9pZCBS
ZW5kZXJUaGVtZUlPUzo6YWRqdXN0U2VhcmNoRmllbGRTdHlsZShSZW5kZXJTdHlsZSYgc3R5bGUs
IGNvbnN0IEVsZW1lbnQqIGUKICAgICBhZGp1c3RSb3VuZEJvcmRlclJhZGl1cyhzdHlsZSwgKmJv
eCk7CiB9CiAKLXZvaWQgUmVuZGVyVGhlbWVJT1M6OnBhaW50U2VhcmNoRmllbGREZWNvcmF0aW9u
cyhjb25zdCBSZW5kZXJPYmplY3QmIGJveCwgY29uc3QgUGFpbnRJbmZvJiBwYWludEluZm8sIGNv
bnN0IEludFJlY3QmIHJlY3QpCit2b2lkIFJlbmRlclRoZW1lSU9TOjpwYWludFNlYXJjaEZpZWxk
RGVjb3JhdGlvbnMoY29uc3QgUmVuZGVyQm94JiBib3gsIGNvbnN0IFBhaW50SW5mbyYgcGFpbnRJ
bmZvLCBjb25zdCBJbnRSZWN0JiByZWN0KQogewogICAgIHBhaW50VGV4dEZpZWxkRGVjb3JhdGlv
bnMoYm94LCBwYWludEluZm8sIHJlY3QpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvUmVuZGVyU3R5bGUuaAppbmRleCAwZmNjZTc5NmI3NzllMDA1M2QyOTEwZTgyZTk1ZDBk
ZTFkYzQzNWU2Li4xNDk2NjRkYzRiMzU4ZDIzZDE5Y2U1NTY2YzY3ODM1ZTYwNjQ0OWI4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuaApAQCAtODgwLDcg
Kzg4MCw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldE1pbkhlaWdodChMZW5ndGgmJiBsZW5ndGgp
IHsgU0VUX1ZBUihtX2JveERhdGEsIG1fbWluSGVpZ2h0LCBXVEZNb3ZlKGxlbmd0aCkpOyB9CiAg
ICAgdm9pZCBzZXRNYXhIZWlnaHQoTGVuZ3RoJiYgbGVuZ3RoKSB7IFNFVF9WQVIobV9ib3hEYXRh
LCBtX21heEhlaWdodCwgV1RGTW92ZShsZW5ndGgpKTsgfQogCi0gICAgdm9pZCByZXNldEJvcmRl
cigpIHsgcmVzZXRCb3JkZXJJbWFnZSgpOyByZXNldEJvcmRlclRvcCgpOyByZXNldEJvcmRlclJp
Z2h0KCk7IHJlc2V0Qm9yZGVyQm90dG9tKCk7IHJlc2V0Qm9yZGVyTGVmdCgpOyByZXNldEJvcmRl
clJhZGl1cygpOyB9CisgICAgdm9pZCByZXNldEJvcmRlcigpIHsgcmVzZXRCb3JkZXJFeGNlcHRS
YWRpdXMoKTsgcmVzZXRCb3JkZXJSYWRpdXMoKTsgfQorICAgIHZvaWQgcmVzZXRCb3JkZXJFeGNl
cHRSYWRpdXMoKSB7IHJlc2V0Qm9yZGVySW1hZ2UoKTsgcmVzZXRCb3JkZXJUb3AoKTsgcmVzZXRC
b3JkZXJSaWdodCgpOyByZXNldEJvcmRlckJvdHRvbSgpOyByZXNldEJvcmRlckxlZnQoKTsgfQog
ICAgIHZvaWQgcmVzZXRCb3JkZXJUb3AoKSB7IFNFVF9WQVIobV9zdXJyb3VuZERhdGEsIGJvcmRl
ci5tX3RvcCwgQm9yZGVyVmFsdWUoKSk7IH0KICAgICB2b2lkIHJlc2V0Qm9yZGVyUmlnaHQoKSB7
IFNFVF9WQVIobV9zdXJyb3VuZERhdGEsIGJvcmRlci5tX3JpZ2h0LCBCb3JkZXJWYWx1ZSgpKTsg
fQogICAgIHZvaWQgcmVzZXRCb3JkZXJCb3R0b20oKSB7IFNFVF9WQVIobV9zdXJyb3VuZERhdGEs
IGJvcmRlci5tX2JvdHRvbSwgQm9yZGVyVmFsdWUoKSk7IH0K
</data>

          </attachment>
      

    </bug>

</bugzilla>