<?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>9216</bug_id>
          
          <creation_ts>2006-06-01 13:55:18 -0700</creation_ts>
          <short_desc>Implement CSS3 resize property</short_desc>
          <delta_ts>2006-06-01 18:39:58 -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>CSS</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adele Peterson">adele</reporter>
          <assigned_to name="Adele Peterson">adele</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>44291</commentid>
    <comment_count>0</comment_count>
    <who name="Adele Peterson">adele</who>
    <bug_when>2006-06-01 13:55:18 -0700</bug_when>
    <thetext>Implement CSS3 resize property</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44302</commentid>
    <comment_count>1</comment_count>
      <attachid>8653</attachid>
    <who name="Adele Peterson">adele</who>
    <bug_when>2006-06-01 16:02:14 -0700</bug_when>
    <thetext>Created attachment 8653
Patch to implement CSS3 resize

There are a few outstanding issues that I&apos;ll have to file after I land this, but I think this is a good first cut.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44309</commentid>
    <comment_count>2</comment_count>
      <attachid>8653</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2006-06-01 16:52:35 -0700</bug_when>
    <thetext>Comment on attachment 8653
Patch to implement CSS3 resize

r=me

File a followup bug about needing a better way to do the resizing than poking the width/height in the DOM.  Also file a followup about the cursors being wrong on scrollbars, since that will become a p1 regression when you turn textareas on.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>8653</attachid>
            <date>2006-06-01 16:02:14 -0700</date>
            <delta_ts>2006-06-01 16:52:35 -0700</delta_ts>
            <desc>Patch to implement CSS3 resize</desc>
            <filename>patch_resize_6_1.txt</filename>
            <type>text/plain</type>
            <size>31697</size>
            <attacher name="Adele Peterson">adele</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDE0Njcx
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNjIgQEAKKzIwMDYtMDYt
MDEgIEFkZWxlIFBldGVyc29uICA8YWRlbGVAYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBmb3IgaHR0cDovL2J1Z3ppbGxhLm9w
ZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD05MjE2CisgICAgICAgIEltcGxlbWVudCBDU1Mz
IHJlc2l6ZSBwcm9wZXJ0eQorCisgICAgICAgICogY3NzL2h0bWw0LmNzczogU2V0cyByZXNpemU6
Ym90aCBmb3IgdGV4dGFyZWFzLiBUaGlzIHdvbid0IGFmZmVjdCBvbGQtc3R5bGUgdGV4dGFyZWFz
LgorCisgICAgICAgICogY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW46IEFkZGVkIHJlc2l6ZSBwcm9w
ZXJ0eS4KKyAgICAgICAgKiBjc3MvY3NzcGFyc2VyLmNwcDogKFdlYkNvcmU6OkNTU1BhcnNlcjo6
cGFyc2VWYWx1ZSk6IEFkZGVkIGNhc2UgZm9yIENTU19QUk9QX1JFU0laRS4KKyAgICAgICAgKiBj
c3MvY3Nzc3R5bGVzZWxlY3Rvci5jcHA6IChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9yOjphcHBs
eVByb3BlcnR5KTogZGl0dG8uCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5jcHA6IChXZWJDb3JlOjpDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb246OmdldFByb3Bl
cnR5Q1NTVmFsdWUpOiBkaXR0by4KKworICAgICAgICAqIHJlbmRlcmluZy9yZW5kZXJfc3R5bGUu
Y3BwOiAoV2ViQ29yZTo6U3R5bGVDU1MzSW5oZXJpdGVkRGF0YSk6IEluaXRpYWxpemUgcmVzaXpl
LgorICAgICAgICAqIHJlbmRlcmluZy9yZW5kZXJfc3R5bGUuaDoKKyAgICAgICAgKFdlYkNvcmU6
Oik6IEFkZGVkIEVSZXNpemUgZW51bS4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjpy
ZXNpemUpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldFJlc2l6ZSk6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6aW5pdGlhbFJlc2l6ZSk6CisKKyAgICAgICAgKiBw
YWdlL0ZyYW1lVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXdQcml2YXRlOjpG
cmFtZVZpZXdQcml2YXRlKTogQWRkZWQgbV9yZXNpemVMYXllciB0byBrZWVwIHRyYWNrIG9mIGEg
bGF5ZXIgdGhhdCBoYXMgYmVndW4gcmVzaXppbmcuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZp
ZXdQcml2YXRlOjpyZXNldCk6IFJlc2V0IG1fcmVzaXplTGF5ZXIuCisgICAgICAgIChXZWJDb3Jl
OjpGcmFtZVZpZXc6OmhhbmRsZU1vdXNlUHJlc3NFdmVudCk6IElmIHRoZSBtb3VzZSB3YXMgcHJl
c3NlZCBpbiBhIGxheWVyJ3MgcmVzaXplIGNvbnRyb2wsIHRoZW4gcHV0IHRoZSBsYXllciBpbnRv
IHJlc2l6ZSBtb2RlLgorICAgICAgICAoV2ViQ29yZTo6c2VsZWN0Q3Vyc29yKTogVXBkYXRlZCBz
byB3ZSBnZXQgYSBwb2ludGVyIGN1cnNvciBmb3IgdGhlIHJlc2l6ZSBjb250cm9sLgorICAgICAg
ICAoV2ViQ29yZTo6RnJhbWVWaWV3OjpoYW5kbGVNb3VzZU1vdmVFdmVudCk6IElmIHRoZXJlJ3Mg
YSBsYXllciBjdXJyZW50bHkgcmVzaXppbmcsIHRoZW4gdGVsbCB0aGUgbGF5ZXIgdG8gY29udGlu
dWUgcmVzaXppbmcuCisgICAgICAgIChXZWJDb3JlOjpGcmFtZVZpZXc6OmhhbmRsZU1vdXNlUmVs
ZWFzZUV2ZW50KTogSWYgdGhlcmUncyBhIGxheWVyIGN1cnJlbnRseSByZXNpemluZywgdGhlbiBw
dWxsIGl0IG91dCBvZiByZXNpemUgbW9kZS4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJC
bG9jay5jcHA6IChXZWJDb3JlOjpSZW5kZXJCbG9jazo6aXNQb2ludEluU2Nyb2xsYmFyKTogVXBk
YXRlZCBzbyB0aGUgcmVzaXplIGNvbnRyb2wgaXNuJ3QgY29uc2lkZXJlZCBwYXJ0IG9mIHRoZSBz
Y3JvbGxiYXIuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlJlbmRlckxheWVyOjpSZW5kZXJMYXllcik6IEluaXRpYWxpemUgbV9pblJlc2l6
ZU1vZGUKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxheWVyOjp1cGRhdGVMYXllclBvc2l0aW9u
cyk6IENhbGxzIHBvc2l0aW9uUmVzaXplQ29udHJvbC4KKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckxheWVyOjpyZXNpemUpOiBBZGRlZC4gU2V0cyBhIG5ldyB3aWR0aCBhbmQgaGVpZ2h0IGJhc2Vk
IG9uIHRoZSBjdXJyZW50IG1vdXNlIHBvaW50LgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5
ZXI6OmlzUG9pbnRJblJlc2l6ZUNvbnRyb2wpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OlJl
bmRlckxheWVyOjpwb3NpdGlvblJlc2l6ZUNvbnRyb2wpOiBBZGRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OlJlbmRlckxheWVyOjpwb3NpdGlvblNjcm9sbGJhcnMpOiBDYWxscyBwb3NpdGlvblJlc2l6
ZUNvbnRyb2wuCisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJMYXllcjo6cGFpbnRTY3JvbGxiYXJz
KTogQ2FsbHMgcG9zaXRpb25SZXNpemVDb250cm9sLgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
TGF5ZXI6OnBhaW50UmVzaXplQ29udHJvbCk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6UmVu
ZGVyTGF5ZXI6OnBhaW50TGF5ZXIpOiBDYWxscyBwYWludFJlc2l6ZUNvbnRyb2wuCisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlckxheWVyLmg6IEFkZGVkIG1faW5SZXNpemVNb2RlLgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyTGF5ZXI6OnJlc2l6ZUNvbnRyb2xSZWN0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJlbmRlckxheWVyOjpzZXRSZXNpemVDb250cm9sUmVjdCk6CisgICAgICAgIChXZWJD
b3JlOjpSZW5kZXJMYXllcjo6aW5SZXNpemVNb2RlKTogQWRkZWQuCisgICAgICAgIChXZWJDb3Jl
OjpSZW5kZXJMYXllcjo6c2V0SW5SZXNpemVNb2RlKTogQWRkZWQuIAorCisgICAgICAgICogcGxh
dGZvcm0vbWFjL0ltYWdlTWFjLm1tOiAoV2ViQ29yZTo6SW1hZ2U6OmxvYWRSZXNvdXJjZSk6IE1v
dmVkIGNvZGUgZnJvbSBXZWJJbWFnZVJlbmRlcmVyRmFjdG9yeS4gIE5vdyBsb2FkcyBpbWFnZXMg
ZnJvbSBXZWJDb3JlJ3MgcmVzb3VyY2VzLgorICAgICAgICBXZWJJbWFnZVJlbmRlcmVyRmFjdG9y
eSBpcyBubyBsb25nZXIgdXNlZCBhbmQgc2hvdWxkIGJlIHJlbW92ZWQuCisgICAgICAgICogUmVz
b3VyY2VzL21pc3NpbmdJbWFnZS50aWZmOiBBZGRlZC4gQ29waWVkIGZyb20gV2ViS2l0LgorICAg
ICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkZWQgbWlzc2luZ0lt
YWdlLnRpZmYKKyAgICAgICAgKiBsb2FkZXIvQ2FjaGUuY3BwOiAoV2ViQ29yZTo6Q2FjaGU6Omlu
aXQpOiBVcGRhdGVkIG5hbWUgZnJvbSBtaXNzaW5nX2ltYWdlIHRvIG1pc3NpbmdJbWFnZS4KKwor
ICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZS5oOgorICAgICAgICAqIHJlbmRlcmluZy9S
ZW5kZXJUaGVtZS5jcHA6IChXZWJDb3JlOjpSZW5kZXJUaGVtZTo6cGFpbnRSZXNpemVDb250cm9s
KTogQWRkZWQuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLmg6CisgICAgICAg
ICogcmVuZGVyaW5nL1JlbmRlclRoZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVy
VGhlbWVNYWM6OlJlbmRlclRoZW1lTWFjKTogSW5pdGlhbGl6ZSByZXNpemVDb3JuZXJJbWFnZS4K
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTWFjOjpwYWludFJlc2l6ZUNvbnRyb2wpOiBQ
YWludHMgcmVzaXplQ29ybmVySW1hZ2UuCisKIDIwMDYtMDYtMDEgIEdlb2ZmcmV5IEdhcmVuICA8
Z2dhcmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBGaXggYnkgTWl0ei4gUmV2aWV3ZWQsIHR3ZWFr
ZWQsIHRlc3RlZCwgbGFuZGVkIGJ5IG1lLgpJbmRleDogcGxhdGZvcm0vbWFjL0ltYWdlTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIHBsYXRmb3JtL21hYy9JbWFnZU1hYy5tbQkocmV2aXNpb24gMTQ2Njgp
CisrKyBwbGF0Zm9ybS9tYWMvSW1hZ2VNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTkwLDcgKzkw
LDkgQEAKIAogSW1hZ2UqIEltYWdlOjpsb2FkUmVzb3VyY2UoY29uc3QgY2hhciAqbmFtZSkKIHsK
LSAgICBOU0RhdGEqIG5hbWVkSW1hZ2VEYXRhID0gW1tXZWJDb3JlSW1hZ2VSZW5kZXJlckZhY3Rv
cnkgc2hhcmVkRmFjdG9yeV0gaW1hZ2VEYXRhRm9yTmFtZTpbTlNTdHJpbmcgc3RyaW5nV2l0aFVU
RjhTdHJpbmc6bmFtZV1dOworICAgIE5TQnVuZGxlICpidW5kbGUgPSBbTlNCdW5kbGUgYnVuZGxl
Rm9yQ2xhc3M6W1dlYkNvcmVGcmFtZUJyaWRnZSBjbGFzc11dOworICAgIE5TU3RyaW5nICppbWFn
ZVBhdGggPSBbYnVuZGxlIHBhdGhGb3JSZXNvdXJjZTpbTlNTdHJpbmcgc3RyaW5nV2l0aFVURjhT
dHJpbmc6bmFtZV0gb2ZUeXBlOkAidGlmZiJdOworICAgIE5TRGF0YSAqbmFtZWRJbWFnZURhdGEg
PSBbTlNEYXRhIGRhdGFXaXRoQ29udGVudHNPZkZpbGU6aW1hZ2VQYXRoXTsKICAgICBpZiAobmFt
ZWRJbWFnZURhdGEpIHsKICAgICAgICAgSW1hZ2UqIGltYWdlID0gbmV3IEltYWdlOwogICAgICAg
ICBpbWFnZS0+c2V0TmF0aXZlRGF0YSgoQ0ZEYXRhUmVmKW5hbWVkSW1hZ2VEYXRhLCB0cnVlKTsK
SW5kZXg6IHJlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSByZW5kZXJp
bmcvUmVuZGVyVGhlbWVNYWMubW0JKHJldmlzaW9uIDE0NjY4KQorKysgcmVuZGVyaW5nL1JlbmRl
clRoZW1lTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw2ICsyNSw4IEBACiAjaW1wb3J0ICJE
b2N1bWVudC5oIgogI2ltcG9ydCAiRm91bmRhdGlvbkV4dHJhcy5oIgogI2ltcG9ydCAiRnJhbWVW
aWV3LmgiCisjaW1wb3J0ICJHcmFwaGljc0NvbnRleHQuaCIKKyNpbXBvcnQgIkltYWdlLmgiCiAj
aW1wb3J0ICJSZW5kZXJWaWV3LmgiCiAjaW1wb3J0ICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgi
CiAjaW1wb3J0ICJjc3NzdHlsZXNlbGVjdG9yLmgiCkBAIC01MCw2ICs1Miw3IEBACiAgICAgOiBj
aGVja2JveChuaWwpCiAgICAgLCByYWRpbyhuaWwpCiAgICAgLCBidXR0b24obmlsKQorICAgICwg
cmVzaXplQ29ybmVySW1hZ2UoMCkKIHsKIH0KIApAQCAtNjEsNiArNjQsMTUgQEAKICAgICByZXR1
cm4gUmVuZGVyVGhlbWU6OmlzQ29udHJvbFN0eWxlZChzdHlsZSwgYm9yZGVyLCBiYWNrZ3JvdW5k
LCBiYWNrZ3JvdW5kQ29sb3IpOwogfQogCit2b2lkIFJlbmRlclRoZW1lTWFjOjpwYWludFJlc2l6
ZUNvbnRyb2woR3JhcGhpY3NDb250ZXh0KiBjLCBjb25zdCBJbnRSZWN0JiByKQoreworICAgIGlm
ICghcmVzaXplQ29ybmVySW1hZ2UpCisgICAgICAgIHJlc2l6ZUNvcm5lckltYWdlID0gSW1hZ2U6
OmxvYWRSZXNvdXJjZSgidGV4dEFyZWFSZXNpemVDb3JuZXIiKTsKKworICAgIEludFBvaW50IGlt
YWdlUG9pbnQoci5yaWdodCgpIC0gcmVzaXplQ29ybmVySW1hZ2UtPndpZHRoKCksIHIuYm90dG9t
KCkgLSByZXNpemVDb3JuZXJJbWFnZS0+aGVpZ2h0KCkpOworICAgIGMtPmRyYXdJbWFnZShyZXNp
emVDb3JuZXJJbWFnZSwgaW1hZ2VQb2ludCk7Cit9CisKIHZvaWQgUmVuZGVyVGhlbWVNYWM6OmFk
anVzdFJlcGFpbnRSZWN0KGNvbnN0IFJlbmRlck9iamVjdCogbywgSW50UmVjdCYgcikKIHsKICAg
ICBzd2l0Y2ggKG8tPnN0eWxlKCktPmFwcGVhcmFuY2UoKSkgewpJbmRleDogcmVuZGVyaW5nL3Jl
bmRlcl9zdHlsZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHJlbmRlcmluZy9yZW5kZXJfc3R5bGUuaAkocmV2
aXNpb24gMTQ2NjgpCisrKyByZW5kZXJpbmcvcmVuZGVyX3N0eWxlLmgJKHdvcmtpbmcgY29weSkK
QEAgLTY4NCw2ICs2ODQsMTAgQEAKICAgICBCQ05PUk1BTCwgTUFUQ0gKIH07CiAKK2VudW0gRVJl
c2l6ZSB7CisgICAgUkVTSVpFX05PTkUsIFJFU0laRV9CT1RILCBSRVNJWkVfSE9SSVpPTlRBTCwg
UkVTSVpFX1ZFUlRJQ0FMCit9OworCiBlbnVtIEVBcHBlYXJhbmNlIHsKICAgICBOb0FwcGVhcmFu
Y2UsIENoZWNrYm94QXBwZWFyYW5jZSwgUmFkaW9BcHBlYXJhbmNlLCBQdXNoQnV0dG9uQXBwZWFy
YW5jZSwgU3F1YXJlQnV0dG9uQXBwZWFyYW5jZSwgQnV0dG9uQXBwZWFyYW5jZSwKICAgICBCdXR0
b25CZXZlbEFwcGVhcmFuY2UsIExpc3Rib3hBcHBlYXJhbmNlLCBMaXN0SXRlbUFwcGVhcmFuY2Us
IE1lbnVsaXN0QXBwZWFyYW5jZSwKQEAgLTc1OCw2ICs3NjIsNyBAQAogICAgIHVuc2lnbmVkIG5i
c3BNb2RlIDogMTsgLy8gRU5CU1BNb2RlCiAgICAgdW5zaWduZWQga2h0bWxMaW5lQnJlYWsgOiAx
OyAvLyBFS0hUTUxMaW5lQnJlYWsKICAgICBib29sIHRleHRTaXplQWRqdXN0IDogMTsgICAgLy8g
QW4gQXBwbGUgZXh0ZW5zaW9uLiAgTm90IHJlYWxseSBDU1MzIGJ1dCBub3Qgd29ydGggbWFraW5n
IGEgbmV3IHN0cnVjdCBvdmVyLgorICAgIHVuc2lnbmVkIHJlc2l6ZSA6IDI7IC8vIEVSZXNpemUK
ICAgICAKIHByaXZhdGU6CiAgICAgU3R5bGVDU1MzSW5oZXJpdGVkRGF0YSAmb3BlcmF0b3I9KGNv
bnN0IFN0eWxlQ1NTM0luaGVyaXRlZERhdGEgJik7CkBAIC0xMzMzLDYgKzEzMzgsNyBAQAogICAg
IEVOQlNQTW9kZSBuYnNwTW9kZSgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEVOQlNQTW9k
ZT4oY3NzM0luaGVyaXRlZERhdGEtPm5ic3BNb2RlKTsgfQogICAgIEVLSFRNTExpbmVCcmVhayBr
aHRtbExpbmVCcmVhaygpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PEVLSFRNTExpbmVCcmVh
az4oY3NzM0luaGVyaXRlZERhdGEtPmtodG1sTGluZUJyZWFrKTsgfQogICAgIEVNYXRjaE5lYXJl
c3RNYWlsQmxvY2txdW90ZUNvbG9yIG1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3IoKSBj
b25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFTWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xv
cj4oY3NzM05vbkluaGVyaXRlZERhdGEtPm1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3Ip
OyB9CisgICAgRVJlc2l6ZSByZXNpemUoKSBjb25zdCB7IHJldHVybiBzdGF0aWNfY2FzdDxFUmVz
aXplPihjc3MzSW5oZXJpdGVkRGF0YS0+cmVzaXplKTsgfQogICAgIC8vIEVuZCBDU1MzIEdldHRl
cnMKIAogICAgIC8vIEFwcGxlLXNwZWNpZmljIHByb3BlcnR5IGdldHRlciBtZXRob2RzCkBAIC0x
NTUwLDYgKzE1NTYsNyBAQAogICAgIHZvaWQgc2V0TkJTUE1vZGUoRU5CU1BNb2RlIGIpIHsgU0VU
X1ZBUihjc3MzSW5oZXJpdGVkRGF0YSwgbmJzcE1vZGUsIGIpOyB9CiAgICAgdm9pZCBzZXRLSFRN
TExpbmVCcmVhayhFS0hUTUxMaW5lQnJlYWsgYikgeyBTRVRfVkFSKGNzczNJbmhlcml0ZWREYXRh
LCBraHRtbExpbmVCcmVhaywgYik7IH0KICAgICB2b2lkIHNldE1hdGNoTmVhcmVzdE1haWxCbG9j
a3F1b3RlQ29sb3IoRU1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3IgYykgIHsgU0VUX1ZB
Uihjc3MzTm9uSW5oZXJpdGVkRGF0YSwgbWF0Y2hOZWFyZXN0TWFpbEJsb2NrcXVvdGVDb2xvciwg
Yyk7IH0KKyAgICB2b2lkIHNldFJlc2l6ZShFUmVzaXplIHIpIHsgU0VUX1ZBUihjc3MzSW5oZXJp
dGVkRGF0YSwgcmVzaXplLCByKTsgfQogICAgIC8vIEVuZCBDU1MzIFNldHRlcnMKICAgIAogICAg
IC8vIEFwcGxlLXNwZWNpZmljIHByb3BlcnR5IHNldHRlcnMKQEAgLTE2NzAsNiArMTY3Nyw3IEBA
CiAgICAgc3RhdGljIEVOQlNQTW9kZSBpbml0aWFsTkJTUE1vZGUoKSB7IHJldHVybiBOQk5PUk1B
TDsgfQogICAgIHN0YXRpYyBFS0hUTUxMaW5lQnJlYWsgaW5pdGlhbEtIVE1MTGluZUJyZWFrKCkg
eyByZXR1cm4gTEJOT1JNQUw7IH0KICAgICBzdGF0aWMgRU1hdGNoTmVhcmVzdE1haWxCbG9ja3F1
b3RlQ29sb3IgaW5pdGlhbE1hdGNoTmVhcmVzdE1haWxCbG9ja3F1b3RlQ29sb3IoKSB7IHJldHVy
biBCQ05PUk1BTDsgfQorICAgIHN0YXRpYyBFUmVzaXplIGluaXRpYWxSZXNpemUoKSB7IHJldHVy
biBSRVNJWkVfTk9ORTsgfQogICAgIHN0YXRpYyBFQXBwZWFyYW5jZSBpbml0aWFsQXBwZWFyYW5j
ZSgpIHsgcmV0dXJuIE5vQXBwZWFyYW5jZTsgfQogICAgIHN0YXRpYyBib29sIGluaXRpYWxWaXN1
YWxseU9yZGVyZWQoKSB7IHJldHVybiBmYWxzZTsgfQogCkluZGV4OiByZW5kZXJpbmcvUmVuZGVy
TGF5ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIHJlbmRlcmluZy9SZW5kZXJMYXllci5jcHAJKHJldmlz
aW9uIDE0NjY4KQorKysgcmVuZGVyaW5nL1JlbmRlckxheWVyLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUgIlJlbmRlckxheWVyLmgiCiAKICNpbmNsdWRlICJE
b2N1bWVudC5oIgorI2luY2x1ZGUgIkNTU1Byb3BlcnR5TmFtZXMuaCIKICNpbmNsdWRlICJFdmVu
dE5hbWVzLmgiCiAjaW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIKQEAg
LTUzLDYgKzU0LDcgQEAKICNpbmNsdWRlICJkb20yX2V2ZW50c2ltcGwuaCIKICNpbmNsdWRlICJI
VE1MTWFycXVlZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJQ
bGF0Zm9ybU1vdXNlRXZlbnQuaCIKICNpbmNsdWRlICJSZW5kZXJBcmVuYS5oIgogI2luY2x1ZGUg
IlJlbmRlclZpZXcuaCIKICNpbmNsdWRlICJSZW5kZXJJbmxpbmUuaCIKQEAgLTg4LDYgKzkwLDkg
QEAKIGNvbnN0IFJlbmRlckxheWVyOjpTY3JvbGxBbGlnbm1lbnQgUmVuZGVyTGF5ZXI6OmdBbGln
blRvcEFsd2F5cyA9IHsgUmVuZGVyTGF5ZXI6OmFsaWduVG9wLCBSZW5kZXJMYXllcjo6YWxpZ25U
b3AsIFJlbmRlckxheWVyOjphbGlnblRvcCB9OwogY29uc3QgUmVuZGVyTGF5ZXI6OlNjcm9sbEFs
aWdubWVudCBSZW5kZXJMYXllcjo6Z0FsaWduQm90dG9tQWx3YXlzID0geyBSZW5kZXJMYXllcjo6
YWxpZ25Cb3R0b20sIFJlbmRlckxheWVyOjphbGlnbkJvdHRvbSwgUmVuZGVyTGF5ZXI6OmFsaWdu
Qm90dG9tIH07CiAKK2NvbnN0IGludCBNaW5pbXVtV2lkdGhXaGlsZVJlc2l6aW5nID0gMTAwOwor
Y29uc3QgaW50IE1pbmltdW1IZWlnaHRXaGlsZVJlc2l6aW5nID0gNDA7CisKIHZvaWQqIENsaXBS
ZWN0czo6b3BlcmF0b3IgbmV3KHNpemVfdCBzeiwgUmVuZGVyQXJlbmEqIHJlbmRlckFyZW5hKSB0
aHJvdygpCiB7CiAgICAgcmV0dXJuIHJlbmRlckFyZW5hLT5hbGxvY2F0ZShzeik7CkBAIC0xMjgs
NiArMTMzLDcgQEAKIG1fc2Nyb2xsSGVpZ2h0KDApLAogbV9oQmFyKDApLAogbV92QmFyKDApLAor
bV9pblJlc2l6ZU1vZGUoZmFsc2UpLAogbV9wb3NaT3JkZXJMaXN0KDApLAogbV9uZWdaT3JkZXJM
aXN0KDApLAogbV9vdmVyZmxvd0xpc3QoMCksCkBAIC0xODEsNiArMTg3LDcgQEAKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIC8vIHdlIG5lZWQgdG8ga2VlcCBpbiBzeW5jLCBzaW5jZSB3ZSBt
YXkgaGF2ZSBzaGlmdGVkIHJlbGF0aXZlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyB0
byBvdXIgcGFyZW50IGxheWVyLgogCisgICAgcG9zaXRpb25SZXNpemVDb250cm9sKCk7CiAgICAg
aWYgKG1faEJhciB8fCBtX3ZCYXIpIHsKICAgICAgICAgLy8gTmVlZCB0byBwb3NpdGlvbiB0aGUg
c2Nyb2xsYmFycy4KICAgICAgICAgaW50IHggPSAwOwpAQCAtMzEwLDcgKzMxNyw3IEBACiAgICAg
ICAgICAgICBzZXRXaWR0aChtX29iamVjdC0+b3ZlcmZsb3dXaWR0aCgpKTsKICAgICAgICAgaWYg
KG1fb2JqZWN0LT5vdmVyZmxvd0hlaWdodCgpID4gbV9vYmplY3QtPmhlaWdodCgpKQogICAgICAg
ICAgICAgc2V0SGVpZ2h0KG1fb2JqZWN0LT5vdmVyZmxvd0hlaWdodCgpKTsKLSAgICB9ICAgIAor
ICAgIH0KIH0KIAogUmVuZGVyTGF5ZXIgKlJlbmRlckxheWVyOjpzdGFja2luZ0NvbnRleHQoKSBj
b25zdApAQCAtNzg5LDYgKzc5Niw1MyBAQAogICAgIHJldHVybiBmYWxzZTsKIH0KIAordm9pZCBS
ZW5kZXJMYXllcjo6cmVzaXplKCkKK3sKKyAgICBpZiAoIWluUmVzaXplTW9kZSgpIHx8ICFyZW5k
ZXJlcigpLT5oYXNPdmVyZmxvd0NsaXAoKSB8fCBtX29iamVjdC0+c3R5bGUoKS0+cmVzaXplKCkg
PT0gUkVTSVpFX05PTkUpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBQbGF0Zm9ybU1vdXNl
RXZlbnQqIGV2dCA9IG5ldyBQbGF0Zm9ybU1vdXNlRXZlbnQoKTsKKyAgICBpZiAoIWV2dC0+aXNN
b3VzZUJ1dHRvbkRvd24oTGVmdEJ1dHRvbikpCisgICAgICAgIHJldHVybjsKKworICAgIC8vIEZJ
WE1FIFJhZGFyIDQxMTg1NTk6IFRoaXMgYmVoYXZlcyB2ZXJ5IG9kZGx5IGZvciB0ZXh0YXJlYXMg
dGhhdCBhcmUgaW4gYmxvY2tzIHdpdGggcmlnaHQtYWxpZ25lZCB0ZXh0OyB5b3UgaGF2ZQorICAg
IC8vIHRvIGRyYWcgdGhlIGJvdHRvbS1yaWdodCBjb3JuZXIgdG8gbWFrZSB0aGUgYm90dG9tLWxl
ZnQgY29ybmVyIG1vdmUuCisgICAgLy8gRklYTUUgUmFkYXIgNDExODU2NDogaWRlYWxseSB3ZSdk
IGF1dG9zY3JvbGwgdGhlIHdpbmRvdyBhcyBuZWNlc3NhcnkgdG8ga2VlcCB0aGUgcG9pbnQgdW5k
ZXIKKyAgICAvLyB0aGUgY3Vyc29yIGluIHZpZXcuCisKKyAgICBJbnRQb2ludCBjdXJyZW50UG9p
bnQgPSBtX29iamVjdC0+ZG9jdW1lbnQoKS0+dmlldygpLT52aWV3cG9ydFRvQ29udGVudHMoZXZ0
LT5wb3MoKSk7CisKKyAgICBpbnQgeDsKKyAgICBpbnQgeTsKKyAgICBtX29iamVjdC0+YWJzb2x1
dGVQb3NpdGlvbih4LCB5KTsKKyAgICBpbnQgcmlnaHQgPSB4ICsgbV9vYmplY3QtPndpZHRoKCk7
CisgICAgaW50IGJvdHRvbSA9IHkgKyBtX29iamVjdC0+aGVpZ2h0KCk7CisgICAgaW50IGRpZmZX
aWR0aCA9ICBtYXgoY3VycmVudFBvaW50LngoKSAtIHJpZ2h0LCBtaW4oMCwgTWluaW11bVdpZHRo
V2hpbGVSZXNpemluZyAtIG1fb2JqZWN0LT53aWR0aCgpKSk7CisgICAgaW50IGRpZmZIZWlnaHQg
PSBtYXgoY3VycmVudFBvaW50LnkoKSAtIGJvdHRvbSwgbWluKDAsIE1pbmltdW1IZWlnaHRXaGls
ZVJlc2l6aW5nIC0gbV9vYmplY3QtPmhlaWdodCgpKSk7CisgICAgCisgICAgRXhjZXB0aW9uQ29k
ZSBlYyA9IDA7CisgICAgLy8gU2V0IHRoZSB3aWR0aCBhbmQgaGVpZ2h0IGZvciB0aGUgc2hhZG93
IGFuY2VzdG9yIG5vZGUuICBUaGlzIGlzIG5lY2Vzc2FyeSBmb3IgdGV4dGFyZWFzIHNpbmNlIHRo
ZSByZXNpemFibGUgbGF5ZXIgaXMgb24gdGhlIGlubmVyIGRpdi4KKyAgICAvLyBGb3Igbm9uLXNo
YWRvdyBjb250ZW50LCB0aGlzIHdpbGwgc2V0IHRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9uIHRoZSBv
cmlnaW5hbCBub2RlLgorICAgIFJlbmRlck9iamVjdCogcmVuZGVyZXIgPSBtX29iamVjdC0+bm9k
ZSgpLT5zaGFkb3dBbmNlc3Rvck5vZGUoKS0+cmVuZGVyZXIoKTsKKyAgICBpZiAoZGlmZldpZHRo
ICYmIChtX29iamVjdC0+c3R5bGUoKS0+cmVzaXplKCkgPT0gUkVTSVpFX0hPUklaT05UQUwgfHwg
bV9vYmplY3QtPnN0eWxlKCktPnJlc2l6ZSgpID09IFJFU0laRV9CT1RIKSkKKyAgICAgICAgc3Rh
dGljX2Nhc3Q8RWxlbWVudCo+KG1fb2JqZWN0LT5ub2RlKCktPnNoYWRvd0FuY2VzdG9yTm9kZSgp
KS0+c3R5bGUoKS0+c2V0UHJvcGVydHkoQ1NTX1BST1BfV0lEVEgsIAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTdHJpbmc6Om51bWJlcihyZW5kZXJlci0+d2lkdGgoKSArIGRpZmZXaWR0aCkgKyAi
cHgiLCBmYWxzZSwgZWMpOworCisgICAgaWYgKGRpZmZIZWlnaHQgJiYgKG1fb2JqZWN0LT5zdHls
ZSgpLT5yZXNpemUoKSA9PSBSRVNJWkVfVkVSVElDQUwgfHwgbV9vYmplY3QtPnN0eWxlKCktPnJl
c2l6ZSgpID09IFJFU0laRV9CT1RIKSkKKyAgICAgICAgc3RhdGljX2Nhc3Q8RWxlbWVudCo+KG1f
b2JqZWN0LT5ub2RlKCktPnNoYWRvd0FuY2VzdG9yTm9kZSgpKS0+c3R5bGUoKS0+c2V0UHJvcGVy
dHkoQ1NTX1BST1BfSEVJR0hULCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RyaW5nOjpudW1i
ZXIocmVuZGVyZXItPmhlaWdodCgpICsgZGlmZkhlaWdodCkgKyAicHgiLCBmYWxzZSwgZWMpOwor
ICAgIAorICAgIEFTU0VSVChlYyA9PSAwKTsKKworICAgIGlmIChtX29iamVjdC0+c3R5bGUoKS0+
cmVzaXplKCkgIT0gUkVTSVpFX05PTkUpIHsKKyAgICAgICAgbV9vYmplY3QtPnNldE5lZWRzTGF5
b3V0KHRydWUpOworICAgICAgICBtX29iamVjdC0+bm9kZSgpLT5zaGFkb3dBbmNlc3Rvck5vZGUo
KS0+cmVuZGVyZXIoKS0+c2V0TmVlZHNMYXlvdXQodHJ1ZSk7CisgICAgICAgIG1fb2JqZWN0LT5k
b2N1bWVudCgpLT51cGRhdGVMYXlvdXQoKTsKKyAgICB9CisgICAgICAgIAorICAgIGRlbGV0ZSBl
dnQ7Cit9CisKIHZvaWQgUmVuZGVyTGF5ZXI6OnZhbHVlQ2hhbmdlZChXaWRnZXQqKQogewogICAg
IC8vIFVwZGF0ZSBzY3JvbGwgcG9zaXRpb24gZnJvbSBzY3JvbGwgYmFycy4KQEAgLTg3MiwyMSAr
OTI2LDQwIEBACiAgICAgICAgIG1fdkJhci0+bW92ZSgwLCAtNTAwMDApOwogfQogCitib29sIFJl
bmRlckxheWVyOjppc1BvaW50SW5SZXNpemVDb250cm9sKGNvbnN0IEludFBvaW50JiBwKQorewor
ICAgIHJldHVybiByZXNpemVDb250cm9sUmVjdCgpLmNvbnRhaW5zKEludFJlY3QocCwgSW50U2l6
ZSgpKSk7Cit9CisKK3ZvaWQgUmVuZGVyTGF5ZXI6OnBvc2l0aW9uUmVzaXplQ29udHJvbCgpCit7
CisgICAgaWYgKG1fb2JqZWN0LT5oYXNPdmVyZmxvd0NsaXAoKSAmJiBtX29iamVjdC0+c3R5bGUo
KS0+cmVzaXplKCkgIT0gUkVTSVpFX05PTkUpIHsKKyAgICAgICAgLy8gRklYTUU6IG5lZWRzIHRv
IGJlIHVwZGF0ZWQgZm9yIFJUTC4KKyAgICAgICAgaW50IHggPSAwOworICAgICAgICBpbnQgeSA9
IDA7CisgICAgICAgIGNvbnZlcnRUb0xheWVyQ29vcmRzKHJvb3QoKSwgeCwgeSk7CisgICAgICAg
IC8vIEZJWE1FOiBnZXQgdGhlIHBvdGVudGlhbCBzY3JvbGxiYXIgc2l6ZSBmcm9tIHRoZSB0aGVt
ZQorICAgICAgICBpbnQgc2Nyb2xsYmFyU2l6ZSA9IDE1OworICAgICAgICBzZXRSZXNpemVDb250
cm9sUmVjdChJbnRSZWN0KHggKyB3aWR0aCgpIC0gc2Nyb2xsYmFyU2l6ZSAtIG1fb2JqZWN0LT5z
dHlsZSgpLT5ib3JkZXJSaWdodFdpZHRoKCkgLSAxLCAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgeSArIGhlaWdodCgpIC0gc2Nyb2xsYmFyU2l6ZSAtIG1fb2JqZWN0LT5zdHlsZSgpLT5i
b3JkZXJCb3R0b21XaWR0aCgpIC0gMSwgc2Nyb2xsYmFyU2l6ZSwgc2Nyb2xsYmFyU2l6ZSkpOwor
ICAgIH0KK30KKwogdm9pZAogUmVuZGVyTGF5ZXI6OnBvc2l0aW9uU2Nyb2xsYmFycyhjb25zdCBJ
bnRSZWN0JiBhYnNCb3VuZHMpCiB7CisgICAgaW50IHJlc2l6ZUNvbnRyb2xTaXplID0gbWF4KHJl
c2l6ZUNvbnRyb2xSZWN0KCkuaGVpZ2h0KCkgLSAxLCAwKTsKICAgICBpZiAobV92QmFyKSB7CiAg
ICAgICAgIG1fdkJhci0+bW92ZShhYnNCb3VuZHMucmlnaHQoKSAtIG1fb2JqZWN0LT5ib3JkZXJS
aWdodCgpIC0gbV92QmFyLT53aWR0aCgpLAogICAgICAgICAgICAgYWJzQm91bmRzLnkoKSArIG1f
b2JqZWN0LT5ib3JkZXJUb3AoKSk7Ci0gICAgICAgIG1fdkJhci0+cmVzaXplKG1fdkJhci0+d2lk
dGgoKSwKLSAgICAgICAgICAgIGFic0JvdW5kcy5oZWlnaHQoKSAtIChtX29iamVjdC0+Ym9yZGVy
VG9wKCkgKyBtX29iamVjdC0+Ym9yZGVyQm90dG9tKCkpIC0gKG1faEJhciA/IG1faEJhci0+aGVp
Z2h0KCkgLSAxIDogMCkpOworICAgICAgICBtX3ZCYXItPnJlc2l6ZShtX3ZCYXItPndpZHRoKCks
IGFic0JvdW5kcy5oZWlnaHQoKSAtIChtX29iamVjdC0+Ym9yZGVyVG9wKCkgKyBtX29iamVjdC0+
Ym9yZGVyQm90dG9tKCkpIC0gKG1faEJhciA/IG1faEJhci0+aGVpZ2h0KCkgLSAxIDogcmVzaXpl
Q29udHJvbFNpemUpKTsKICAgICB9CiAKKyAgICByZXNpemVDb250cm9sU2l6ZSA9IG1heChyZXNp
emVDb250cm9sUmVjdCgpLndpZHRoKCkgLSAxLCAwKTsKICAgICBpZiAobV9oQmFyKSB7CiAgICAg
ICAgIG1faEJhci0+bW92ZShhYnNCb3VuZHMueCgpICsgbV9vYmplY3QtPmJvcmRlckxlZnQoKSwK
ICAgICAgICAgICAgIGFic0JvdW5kcy5ib3R0b20oKSAtIG1fb2JqZWN0LT5ib3JkZXJCb3R0b20o
KSAtIG1faEJhci0+aGVpZ2h0KCkpOwotICAgICAgICBtX2hCYXItPnJlc2l6ZShhYnNCb3VuZHMu
d2lkdGgoKSAtIChtX29iamVjdC0+Ym9yZGVyTGVmdCgpICsgbV9vYmplY3QtPmJvcmRlclJpZ2h0
KCkpIC0gKG1fdkJhciA/IG1fdkJhci0+d2lkdGgoKSAtIDEgOiAwKSwKLSAgICAgICAgICAgIG1f
aEJhci0+aGVpZ2h0KCkpOworICAgICAgICBtX2hCYXItPnJlc2l6ZShhYnNCb3VuZHMud2lkdGgo
KSAtIChtX29iamVjdC0+Ym9yZGVyTGVmdCgpICsgbV9vYmplY3QtPmJvcmRlclJpZ2h0KCkpIC0g
KG1fdkJhciA/IG1fdkJhci0+d2lkdGgoKSAtIDEgOiByZXNpemVDb250cm9sU2l6ZSksIG1faEJh
ci0+aGVpZ2h0KCkpOwogICAgIH0KIH0KIApAQCAtMTAyNSw2ICsxMDk4LDcgQEAKICAgICAvLyBN
b3ZlIHRoZSB3aWRnZXRzIGlmIG5lY2Vzc2FyeS4gIFdlIG5vcm1hbGx5IG1vdmUgYW5kIHJlc2l6
ZSB3aWRnZXRzIGR1cmluZyBsYXlvdXQsIGJ1dCBzb21ldGltZXMKICAgICAvLyB3aWRnZXRzIGNh
biBtb3ZlIHdpdGhvdXQgbGF5b3V0IG9jY3VycmluZyAobW9zdCBub3RhYmx5IHdoZW4geW91IHNj
cm9sbCBhIGRvY3VtZW50IHRoYXQKICAgICAvLyBjb250YWlucyBmaXhlZCBwb3NpdGlvbmVkIGVs
ZW1lbnRzKS4KKyAgICBwb3NpdGlvblJlc2l6ZUNvbnRyb2woKTsKICAgICBpZiAobV9oQmFyIHx8
IG1fdkJhcikgewogICAgICAgICBpbnQgeCA9IDA7CiAgICAgICAgIGludCB5ID0gMDsKQEAgLTEw
NDAsNiArMTExNCwxMiBAQAogICAgICAgICBtX3ZCYXItPnBhaW50KHAsIGRhbWFnZVJlY3QpOwog
fQogCit2b2lkIFJlbmRlckxheWVyOjpwYWludFJlc2l6ZUNvbnRyb2woR3JhcGhpY3NDb250ZXh0
KiBjKQoreworICAgIGlmICghcmVzaXplQ29udHJvbFJlY3QoKS5pc0VtcHR5KCkpCisgICAgICAg
IHRoZW1lKCktPnBhaW50UmVzaXplQ29udHJvbChjLCByZXNpemVDb250cm9sUmVjdCgpKTsKK30K
KwogYm9vbCBSZW5kZXJMYXllcjo6c2Nyb2xsKEtXUVNjcm9sbERpcmVjdGlvbiBkaXJlY3Rpb24s
IEtXUVNjcm9sbEdyYW51bGFyaXR5IGdyYW51bGFyaXR5LCBmbG9hdCBtdWx0aXBsaWVyKQogewog
ICAgIGJvb2wgZGlkSG9yaXpvbnRhbFNjcm9sbCA9IGZhbHNlOwpAQCAtMTEzMyw2ICsxMjEzLDcg
QEAKICAgICAgICAgLy8gei1pbmRleC4gIFdlIHBhaW50IGFmdGVyIHdlIHBhaW50ZWQgdGhlIGJh
Y2tncm91bmQvYm9yZGVyLCBzbyB0aGF0IHRoZSBzY3JvbGxiYXJzIHdpbGwKICAgICAgICAgLy8g
c2l0IGFib3ZlIHRoZSBiYWNrZ3JvdW5kL2JvcmRlci4KICAgICAgICAgcGFpbnRTY3JvbGxiYXJz
KHAsIGRhbWFnZVJlY3QpOworICAgICAgICBwYWludFJlc2l6ZUNvbnRyb2wocCk7CiAgICAgICAg
IC8vIFJlc3RvcmUgdGhlIGNsaXAuCiAgICAgICAgIHJlc3RvcmVDbGlwKHAsIHBhaW50RGlydHlS
ZWN0LCBkYW1hZ2VSZWN0KTsKICAgICB9CkluZGV4OiByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMuaAkocmV2aXNpb24gMTQ2
NjgpCisrKyByZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMuaAkod29ya2luZyBjb3B5KQpAQCAtNDks
NiArNDksOCBAQAogCiAgICAgdmlydHVhbCBib29sIGlzQ29udHJvbFN0eWxlZChjb25zdCBSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IEJvcmRlckRhdGEmIGJvcmRlciwgCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBjb25zdCBCYWNrZ3JvdW5kTGF5ZXImIGJhY2tncm91bmQsIGNv
bnN0IENvbG9yJiBiYWNrZ3JvdW5kQ29sb3IpIGNvbnN0OworICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAKKyAgICB2aXJ0dWFsIHZvaWQgcGFpbnRSZXNpemVDb250cm9sKEdyYXBoaWNz
Q29udGV4dCosIGNvbnN0IEludFJlY3QmKTsKIAogcHJvdGVjdGVkOgogICAgIC8vIE1ldGhvZHMg
Zm9yIGVhY2ggYXBwZWFyYW5jZSB2YWx1ZS4KQEAgLTEwMiw2ICsxMDQsNyBAQAogICAgIE5TQnV0
dG9uQ2VsbCogY2hlY2tib3g7CiAgICAgTlNCdXR0b25DZWxsKiByYWRpbzsKICAgICBOU0J1dHRv
bkNlbGwqIGJ1dHRvbjsKKyAgICBJbWFnZSogcmVzaXplQ29ybmVySW1hZ2U7CiB9OwogCiB9Cklu
ZGV4OiByZW5kZXJpbmcvcmVuZGVyX3N0eWxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSByZW5kZXJpbmcv
cmVuZGVyX3N0eWxlLmNwcAkocmV2aXNpb24gMTQ2NjgpCisrKyByZW5kZXJpbmcvcmVuZGVyX3N0
eWxlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDIyLDYgKzQyMiw3IEBACiAgICAgbmJzcE1vZGUg
PSBvLm5ic3BNb2RlOwogICAgIGtodG1sTGluZUJyZWFrID0gby5raHRtbExpbmVCcmVhazsKICAg
ICB0ZXh0U2l6ZUFkanVzdCA9IG8udGV4dFNpemVBZGp1c3Q7CisgICAgcmVzaXplID0gby5yZXNp
emU7CiB9CiAKIFN0eWxlQ1NTM0luaGVyaXRlZERhdGE6On5TdHlsZUNTUzNJbmhlcml0ZWREYXRh
KCkKSW5kZXg6IHJlbmRlcmluZy9SZW5kZXJUaGVtZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gcmVuZGVy
aW5nL1JlbmRlclRoZW1lLmNwcAkocmV2aXNpb24gMTQ2NjgpCisrKyByZW5kZXJpbmcvUmVuZGVy
VGhlbWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjAsNiArMTIwLDEwIEBACiAgICAgcmV0dXJu
IGZhbHNlOwogfQogCit2b2lkIFJlbmRlclRoZW1lOjpwYWludFJlc2l6ZUNvbnRyb2woR3JhcGhp
Y3NDb250ZXh0KiwgY29uc3QgSW50UmVjdCYpCit7Cit9CisKIHNob3J0IFJlbmRlclRoZW1lOjpi
YXNlbGluZVBvc2l0aW9uKGNvbnN0IFJlbmRlck9iamVjdCogbykgY29uc3QKIHsKICAgICByZXR1
cm4gby0+aGVpZ2h0KCkgKyBvLT5tYXJnaW5Ub3AoKTsKSW5kZXg6IHJlbmRlcmluZy9SZW5kZXJM
YXllci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIHJlbmRlcmluZy9SZW5kZXJMYXllci5oCShyZXZpc2lvbiAx
NDY2OCkKKysrIHJlbmRlcmluZy9SZW5kZXJMYXllci5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNDAs
MTIgKzI0MCwyMCBAQAogICAgIGludCBob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KCk7CiAgICAg
dm9pZCBtb3ZlU2Nyb2xsYmFyc0FzaWRlKCk7CiAgICAgdm9pZCBwb3NpdGlvblNjcm9sbGJhcnMo
Y29uc3QgSW50UmVjdCYgYWJzQm91bmRzKTsKKyAgICB2b2lkIHBvc2l0aW9uUmVzaXplQ29udHJv
bCgpOworICAgIGJvb2wgaXNQb2ludEluUmVzaXplQ29udHJvbChjb25zdCBJbnRQb2ludCYpOwog
ICAgIHZvaWQgcGFpbnRTY3JvbGxiYXJzKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEludFJlY3Qm
IGRhbWFnZVJlY3QpOworICAgIHZvaWQgcGFpbnRSZXNpemVDb250cm9sKEdyYXBoaWNzQ29udGV4
dCopOwogICAgIHZvaWQgdXBkYXRlU2Nyb2xsSW5mb0FmdGVyTGF5b3V0KCk7CiAgICAgdm9pZCBz
bG90VmFsdWVDaGFuZ2VkKGludCk7CiAgICAgYm9vbCBzY3JvbGwoS1dRU2Nyb2xsRGlyZWN0aW9u
IGRpcmVjdGlvbiwgS1dRU2Nyb2xsR3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHksIGZsb2F0IG11bHRp
cGxpZXI9MS4wKTsKICAgICB2b2lkIGF1dG9zY3JvbGwoKTsKICAgICBib29sIHNob3VsZEF1dG9z
Y3JvbGwoKTsKKyAgICBJbnRSZWN0IHJlc2l6ZUNvbnRyb2xSZWN0KCkgeyByZXR1cm4gbV9yZXNp
emVDb250cm9sUmVjdDsgfQorICAgIHZvaWQgc2V0UmVzaXplQ29udHJvbFJlY3QoY29uc3QgSW50
UmVjdCYgcikgeyBtX3Jlc2l6ZUNvbnRyb2xSZWN0ID0gcjsgfQorICAgIHZvaWQgcmVzaXplKCk7
CisgICAgYm9vbCBpblJlc2l6ZU1vZGUoKSBjb25zdCB7IHJldHVybiBtX2luUmVzaXplTW9kZTsg
fQorICAgIHZvaWQgc2V0SW5SZXNpemVNb2RlKGJvb2wgYikgeyBtX2luUmVzaXplTW9kZSA9IGI7
IH0KICAgICAKICAgICB2b2lkIHVwZGF0ZUxheWVyUG9zaXRpb24oKTsKICAgICB2b2lkIHVwZGF0
ZUxheWVyUG9zaXRpb25zKGJvb2wgZG9GdWxsUmVwYWludCA9IGZhbHNlLCBib29sIGNoZWNrRm9y
UmVwYWludD10cnVlKTsKQEAgLTM3NSw2ICszODMsMTEgQEAKICAgICAvLyBGb3IgbGF5ZXJzIHdp
dGggb3ZlcmZsb3csIHdlIGhhdmUgYSBwYWlyIG9mIHNjcm9sbGJhcnMuCiAgICAgUVNjcm9sbEJh
ciogbV9oQmFyOwogICAgIFFTY3JvbGxCYXIqIG1fdkJhcjsKKyAgICAKKyAgICAvLyBUaGUgcmVj
dGFuZ2xlIGZvciB0aGUgY29udHJvbCB0byByZXNpemUgbGF5ZXJzIHRoYXQgaGF2ZSBvdmVyZmxv
dy4KKyAgICBJbnRSZWN0IG1fcmVzaXplQ29udHJvbFJlY3Q7CisgICAgLy8gS2VlcHMgdHJhY2sg
b2Ygd2hldGhlciB0aGUgbGF5ZXIgaXMgY3VycmVudGx5IHJlc2l6aW5nLCBzbyBldmVudHMgY2Fu
IGNhdXNlIHJlc2l6aW5nIHRvIHN0YXJ0IGFuZCBzdG9wLgorICAgIGJvb2wgbV9pblJlc2l6ZU1v
ZGU7CiAKICAgICAvLyBGb3IgbGF5ZXJzIHRoYXQgZXN0YWJsaXNoIHN0YWNraW5nIGNvbnRleHRz
LCBtX3Bvc1pPcmRlckxpc3QgaG9sZHMgYSBzb3J0ZWQgbGlzdCBvZiBhbGwgdGhlCiAgICAgLy8g
ZGVzY2VuZGFudCBsYXllcnMgd2l0aGluIHRoZSBzdGFja2luZyBjb250ZXh0IHRoYXQgaGF2ZSB6
LWluZGljZXMgb2YgMCBvciBncmVhdGVyCkluZGV4OiByZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSByZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAkocmV2aXNpb24gMTQ2NjgpCisr
KyByZW5kZXJpbmcvUmVuZGVyVGhlbWUuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsNiArNDcsNyBA
QAogICAgIC8vIHdoZXRoZXIgdGhlIENTUyBib3JkZXIvYmFja2dyb3VuZCBzaG91bGQgYWxzbyBi
ZSBwYWludGVkLgogICAgIGJvb2wgcGFpbnQoUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBSZW5kZXJP
YmplY3Q6OlBhaW50SW5mbyYgaSwgY29uc3QgSW50UmVjdCYgcik7CiAgICAgYm9vbCBwYWludEJv
cmRlck9ubHkoUmVuZGVyT2JqZWN0KiBvLCBjb25zdCBSZW5kZXJPYmplY3Q6OlBhaW50SW5mbyYg
aSwgY29uc3QgSW50UmVjdCYgcik7CisgICAgdmlydHVhbCB2b2lkIHBhaW50UmVzaXplQ29udHJv
bChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBJbnRSZWN0Jik7CiAKICAgICAvLyBUaGUgcmVtYWlu
aW5nIG1ldGhvZHMgc2hvdWxkIGJlIGltcGxlbWVudGVkIGJ5IHRoZSBwbGF0Zm9ybS1zcGVjaWZp
YyBwb3J0aW9uIG9mIHRoZSB0aGVtZSwgZS5nLiwKICAgICAvLyBSZW5kZXJUaGVtZU1hYy5jcHAg
Zm9yIE1hYyBPUyBYLgpJbmRleDogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSByZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCShyZXZpc2lvbiAxNDY2OCkKKysrIHJlbmRl
cmluZy9SZW5kZXJCbG9jay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0MzQsNyArMjQzNCw3IEBA
CiAgICAgICAgIEludFJlY3QgdmVydFJlY3QoX3R4ICsgd2lkdGgoKSAtIGJvcmRlclJpZ2h0KCkg
LSBtX2xheWVyLT52ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKCksCiAgICAgICAgICAgICAgICAgICAg
ICAgIF90eSArIGJvcmRlclRvcCgpIC0gYm9yZGVyVG9wRXh0cmEoKSwKICAgICAgICAgICAgICAg
ICAgICAgICAgbV9sYXllci0+dmVydGljYWxTY3JvbGxiYXJXaWR0aCgpLAotICAgICAgICAgICAg
ICAgICAgICAgICBoZWlnaHQoKSArIGJvcmRlclRvcEV4dHJhKCkgKyBib3JkZXJCb3R0b21FeHRy
YSgpIC0gYm9yZGVyVG9wKCkgLSBib3JkZXJCb3R0b20oKSk7CisgICAgICAgICAgICAgICAgICAg
ICAgIGhlaWdodCgpICsgYm9yZGVyVG9wRXh0cmEoKSArIGJvcmRlckJvdHRvbUV4dHJhKCkgLSBi
b3JkZXJUb3AoKSAtIGJvcmRlckJvdHRvbSgpIC0gIG1fbGF5ZXItPmhvcml6b250YWxTY3JvbGxi
YXJIZWlnaHQoKSk7CiAgICAgICAgIGlmICh2ZXJ0UmVjdC5jb250YWlucyhfeCwgX3kpKSB7CiAg
ICAgICAgICAgICBSZW5kZXJMYXllcjo6Z1Njcm9sbEJhciA9IG1fbGF5ZXItPnZlcnRpY2FsU2Ny
b2xsYmFyKCk7CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTI0NDQsNyArMjQ0NCw3IEBA
CiAgICAgaWYgKG1fbGF5ZXItPmhvcml6b250YWxTY3JvbGxiYXJIZWlnaHQoKSkgewogICAgICAg
ICBJbnRSZWN0IGhvcml6UmVjdChfdHggKyBib3JkZXJMZWZ0KCksCiAgICAgICAgICAgICAgICAg
ICAgICAgICBfdHkgKyBoZWlnaHQoKSArIGJvcmRlckJvdHRvbUV4dHJhKCkgLSBtX2xheWVyLT5o
b3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KCkgLSBib3JkZXJCb3R0b20oKSwKLSAgICAgICAgICAg
ICAgICAgICAgICAgIHdpZHRoKCkgLSBib3JkZXJMZWZ0KCkgLSBib3JkZXJSaWdodCgpLAorICAg
ICAgICAgICAgICAgICAgICAgICAgd2lkdGgoKSAtIGJvcmRlckxlZnQoKSAtIGJvcmRlclJpZ2h0
KCkgLSBtX2xheWVyLT52ZXJ0aWNhbFNjcm9sbGJhcldpZHRoKCksCiAgICAgICAgICAgICAgICAg
ICAgICAgICBtX2xheWVyLT5ob3Jpem9udGFsU2Nyb2xsYmFySGVpZ2h0KCkpOwogICAgICAgICBp
ZiAoaG9yaXpSZWN0LmNvbnRhaW5zKF94LCBfeSkpIHsKICAgICAgICAgICAgIFJlbmRlckxheWVy
OjpnU2Nyb2xsQmFyID0gbV9sYXllci0+aG9yaXpvbnRhbFNjcm9sbGJhcigpOwpJbmRleDogV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTQ2NjgpCisrKyBXZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTEzMzYsNiArMTMzNiw3IEBA
CiAJCUFCMjNBMzEzMDlCQkE3NzYwMDY3Q0M1MyAvKiBIVE1MVGV4dEZpZWxkSW5uZXJFbGVtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjIzQTMx
MTA5QkJBNzc2MDA2N0NDNTMgLyogSFRNTFRleHRGaWVsZElubmVyRWxlbWVudC5oICovOyB9Owog
CQlBQjIzQTMyNzA5QkJBN0QwMDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQUIyM0EzMjUw
OUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmNwcCAqLzsgfTsKIAkJ
QUIyM0EzMjgwOUJCQTdEMDAwNjdDQzUzIC8qIEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50LmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjIzQTMyNjA5QkJB
N0QwMDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuaCAqLzsgfTsKKwkJQUI0MjYx
RDgwQTJGNkM5NzAwQkREMTdEIC8qIG1pc3NpbmdJbWFnZS50aWZmIGluIFJlc291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBQjQyNjFENzBBMkY2Qzk3MDBCREQxN0Qg
LyogbWlzc2luZ0ltYWdlLnRpZmYgKi87IH07CiAJCUFCNjdEMUE4MDk3RjNBRTMwMEY5MzkyRSAv
KiBSZW5kZXJUZXh0RmllbGQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gQUI2N0QxQTYwOTdGM0FFMzAwRjkzOTJFIC8qIFJlbmRlclRleHRGaWVsZC5j
cHAgKi87IH07CiAJCUFCNjdEMUE5MDk3RjNBRTMwMEY5MzkyRSAvKiBSZW5kZXJUZXh0RmllbGQu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEFCNjdEMUE3
MDk3RjNBRTMwMEY5MzkyRSAvKiBSZW5kZXJUZXh0RmllbGQuaCAqLzsgfTsKIAkJQkMwNjZGNkYw
OUZFQjJGQTAwQzU4OUE3IC8qIFdlYkNvcmVUZXh0UmVuZGVyZXIuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMDY2RjZDMDlGRUIyRkEwMEM1ODlBNyAv
KiBXZWJDb3JlVGV4dFJlbmRlcmVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJp
dmF0ZSwgKTsgfTsgfTsKQEAgLTMwMTIsNiArMzAxMyw3IEBACiAJCUFCMjNBMzExMDlCQkE3NzYw
MDY3Q0M1MyAvKiBIVE1MVGV4dEZpZWxkSW5uZXJFbGVtZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBIVE1MVGV4dEZpZWxkSW5uZXJFbGVtZW50Lmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCUFCMjNBMzI1MDlCQkE3RDAwMDY3Q0M1MyAvKiBCZWZvcmVUZXh0
SW5zZXJ0ZWRFdmVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
QmVmb3JlVGV4dEluc2VydGVkRXZlbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlBQjIzQTMyNjA5QkJBN0QwMDA2N0NDNTMgLyogQmVmb3JlVGV4dEluc2VydGVkRXZlbnQuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJlZm9yZVRleHRJbnNlcnRlZEV2ZW50
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCUFCNDI2MUQ3MEEyRjZDOTcwMEJERDE3
RCAvKiBtaXNzaW5nSW1hZ2UudGlmZiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IGltYWdlLnRpZmY7IHBhdGggPSBtaXNzaW5nSW1hZ2UudGlmZjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUI2N0QxQTYwOTdGM0FFMzAwRjkzOTJFIC8qIFJl
bmRlclRleHRGaWVsZC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
UmVuZGVyVGV4dEZpZWxkLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQUI2N0Qx
QTcwOTdGM0FFMzAwRjkzOTJFIC8qIFJlbmRlclRleHRGaWVsZC5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gUmVuZGVyVGV4dEZpZWxkLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUJDMDY2RjZDMDlGRUIyRkEwMEM1ODlBNyAvKiBXZWJDb3JlVGV4dFJlbmRlcmVy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJDb3JlVGV4dFJlbmRlcmVy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0zMzYxLDYgKzMzNjMsNyBAQAogCQkw
ODlDMTY2NUZFODQxMTU4QzAyQUFDMDcgLyogUmVzb3VyY2VzICovID0gewogCQkJaXNhID0gUEJY
R3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQlBQjQyNjFENzBBMkY2Qzk3MDBCREQxN0QgLyog
bWlzc2luZ0ltYWdlLnRpZmYgKi8sCiAJCQkJODRDMEZBMjQwNTJCOTY2RDAwMDQ0MEExIC8qIGVh
c3RSZXNpemVDdXJzb3IudGlmZiAqLywKIAkJCQk4NEMwRkEyNTA1MkI5NjZEMDAwNDQwQTEgLyog
aGVscEN1cnNvci50aWZmICovLAogCQkJCUY1QTFCMDQ5MDJERThBQkEwMTg2MzVDQSAvKiBsaW5r
Q3Vyc29yLnRpZmYgKi8sCkBAIC02MjQzLDYgKzYyNDYsNyBAQAogCQkJCUE3Qjk3QjgyMDk3OUMz
QTEwMDBFOEVCMSAvKiBXS0xpbmVhclRyYW5zZmVyRmlsdGVyLmNpa2VybmVsIGluIFJlc291cmNl
cyAqLywKIAkJCQlBN0I5N0I4NTA5NzlDM0ExMDAwRThFQjEgLyogV0tUYWJsZVRyYW5zZmVyRmls
dGVyLmNpa2VybmVsIGluIFJlc291cmNlcyAqLywKIAkJCQlBNzYzOEE5MjA5OTU5MkMzMDAwN0Ux
NEYgLyogV0tEaXNwbGFjZW1lbnRNYXBGaWx0ZXIuY2lrZXJuZWwgaW4gUmVzb3VyY2VzICovLAor
CQkJCUFCNDI2MUQ4MEEyRjZDOTcwMEJERDE3RCAvKiBtaXNzaW5nSW1hZ2UudGlmZiBpbiBSZXNv
dXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQb3N0cHJvY2Vzc2luZyA9
IDA7CiAJCX07CkluZGV4OiBjc3MvaHRtbDQuY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGNzcy9odG1sNC5j
c3MJKHJldmlzaW9uIDE0NjY4KQorKysgY3NzL2h0bWw0LmNzcwkod29ya2luZyBjb3B5KQpAQCAt
MzMwLDYgKzMzMCw3IEBACiAgICAgLXdlYmtpdC1ydGwtb3JkZXJpbmc6IGxvZ2ljYWw7CiAgICAg
LXdlYmtpdC11c2VyLXNlbGVjdDogdGV4dDsKICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRp
Y2FsOworICAgIHJlc2l6ZTogYm90aDsKIH0KIAogaW5wdXRbdHlwZT0icGFzc3dvcmQiXSwgaW5w
dXRbdHlwZT0ic2VhcmNoIl0sIGlucHV0W3R5cGU9ImhpZGRlbiJdLCBpbnB1dFt0eXBlPSJpbWFn
ZSJdLCBpbnB1dFt0eXBlPSJmaWxlIl0gewpJbmRleDogY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4JKHJldmlzaW9uIDE0NjY4KQor
KysgY3NzL0NTU1Byb3BlcnR5TmFtZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE0MSw2ICsxNDEs
NyBAQAogdGV4dC11bmRlcmxpbmUtbW9kZQogdGV4dC11bmRlcmxpbmUtc3R5bGUKIHRleHQtdW5k
ZXJsaW5lLXdpZHRoCityZXNpemUKIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdAogLXdlYmtpdC1k
YXNoYm9hcmQtcmVnaW9uCiB0b3AKSW5kZXg6IGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRp
b24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CShyZXZpc2lvbiAxNDY2OCkKKysrIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xMTUyLDYgKzExNTIsMTggQEAKICAgICAgICAgfQogICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgcmV0dXJuIDA7CisgICAgY2FzZSBDU1Nf
UFJPUF9SRVNJWkU6CisgICAgICAgIHN3aXRjaCAoc3R5bGUtPnJlc2l6ZSgpKSB7CisgICAgICAg
ICAgICBjYXNlIFJFU0laRV9CT1RIOgorICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ1NTUHJp
bWl0aXZlVmFsdWUoQ1NTX1ZBTF9CT1RIKTsKKyAgICAgICAgICAgIGNhc2UgUkVTSVpFX0hPUkla
T05UQUw6CisgICAgICAgICAgICAgICAgcmV0dXJuIG5ldyBDU1NQcmltaXRpdmVWYWx1ZShDU1Nf
VkFMX0hPUklaT05UQUwpOworICAgICAgICAgICAgY2FzZSBSRVNJWkVfVkVSVElDQUw6CisgICAg
ICAgICAgICAgICAgcmV0dXJuIG5ldyBDU1NQcmltaXRpdmVWYWx1ZShDU1NfVkFMX1ZFUlRJQ0FM
KTsKKyAgICAgICAgICAgIGNhc2UgUkVTSVpFX05PTkU6CisgICAgICAgICAgICBkZWZhdWx0Ogor
ICAgICAgICAgICAgICAgIHJldHVybiBuZXcgQ1NTUHJpbWl0aXZlVmFsdWUoQ1NTX1ZBTF9OT05F
KTsKKyAgICAgICAgfQogICAgIGNhc2UgQ1NTX1BST1BfWl9JTkRFWDoKICAgICAgICAgaWYgKHN0
eWxlLT5oYXNBdXRvWkluZGV4KCkpCiAgICAgICAgICAgICByZXR1cm4gbmV3IENTU1ByaW1pdGl2
ZVZhbHVlKENTU19WQUxfTk9STUFMKTsKSW5kZXg6IGNzcy9jc3NzdHlsZXNlbGVjdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBjc3MvY3Nzc3R5bGVzZWxlY3Rvci5jcHAJKHJldmlzaW9uIDE0NjY4KQor
KysgY3NzL2Nzc3N0eWxlc2VsZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNTE1LDcgKzI1
MTUsMzMgQEAKICAgICAgICAgYnJlYWs7CiAgICAgfQogCi0gICAgICAgIC8vIGxlbmd0aCwgcGVy
Y2VudAorICAgIGNhc2UgQ1NTX1BST1BfUkVTSVpFOgorICAgIHsKKyAgICAgICAgSEFORExFX0lO
SEVSSVRfQU5EX0lOSVRJQUwocmVzaXplLCBSZXNpemUpCisKKyAgICAgICAgaWYgKCFwcmltaXRp
dmVWYWx1ZS0+Z2V0SWRlbnQoKSkgcmV0dXJuOworCisgICAgICAgIEVSZXNpemUgcjsKKyAgICAg
ICAgc3dpdGNoKHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpKSB7CisgICAgICAgIGNhc2UgQ1NT
X1ZBTF9CT1RIOgorICAgICAgICAgICAgciA9IFJFU0laRV9CT1RIOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIGNhc2UgQ1NTX1ZBTF9IT1JJWk9OVEFMOgorICAgICAgICAgICAgciA9IFJF
U0laRV9IT1JJWk9OVEFMOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQ1NTX1ZB
TF9WRVJUSUNBTDoKKyAgICAgICAgICAgIHIgPSBSRVNJWkVfVkVSVElDQUw7CisgICAgICAgICAg
ICBicmVhazsKKyAgICAgICAgY2FzZSBDU1NfVkFMX05PTkU6CisgICAgICAgIGRlZmF1bHQ6Cisg
ICAgICAgICAgICByID0gUkVTSVpFX05PTkU7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
fQorICAgICAgICBzdHlsZS0+c2V0UmVzaXplKHIpOworICAgICAgICBicmVhazsKKyAgICB9Cisg
ICAgCisgICAgLy8gbGVuZ3RoLCBwZXJjZW50CiAgICAgY2FzZSBDU1NfUFJPUF9NQVhfV0lEVEg6
CiAgICAgICAgIC8vICtub25lICtpbmhlcml0CiAgICAgICAgIGlmKHByaW1pdGl2ZVZhbHVlICYm
IHByaW1pdGl2ZVZhbHVlLT5nZXRJZGVudCgpID09IENTU19WQUxfTk9ORSkKSW5kZXg6IGNzcy9j
c3NwYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGNzcy9jc3NwYXJzZXIuY3BwCShyZXZpc2lvbiAx
NDY2OCkKKysrIGNzcy9jc3NwYXJzZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTExLDcgKzEx
MTEsMTAgQEAKICAgICAgICAgZWxzZQogICAgICAgICAgICAgdmFsaWRfcHJpbWl0aXZlID0gIWlk
ICYmIHZhbGlkVW5pdCh2YWx1ZSwgRk51bWJlcnxGTGVuZ3RofEZQZXJjZW50LCBzdHJpY3QpOwog
ICAgICAgICBicmVhazsKLSAgICAKKyAgICBjYXNlIENTU19QUk9QX1JFU0laRTogLy8gbm9uZSB8
IGJvdGggfCBob3Jpem9udGFsIHwgdmVydGljYWwgfCBpbmhlcml0CisgICAgICAgIGlmIChpZCA9
PSBDU1NfVkFMX05PTkUgfHwgaWQgPT0gQ1NTX1ZBTF9CT1RIIHx8IGlkID09IENTU19WQUxfSE9S
SVpPTlRBTCB8fCBpZCA9PSBDU1NfVkFMX1ZFUlRJQ0FMKQorICAgICAgICAgICAgdmFsaWRfcHJp
bWl0aXZlID0gdHJ1ZTsKKyAgICAgICAgYnJlYWs7CiAgICAgLy8gRW5kIG9mIENTUzMgcHJvcGVy
dGllcwogCiAgICAgLy8gQXBwbGUgc3BlY2lmaWMgcHJvcGVydGllcy4gIFRoZXNlIHdpbGwgbmV2
ZXIgYmUgc3RhbmRhcmRpemVkIGFuZCBhcmUgcHVyZWx5IHRvCkluZGV4OiBsb2FkZXIvQ2FjaGUu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIGxvYWRlci9DYWNoZS5jcHAJKHJldmlzaW9uIDE0NjY4KQorKysg
bG9hZGVyL0NhY2hlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODgsNyArODgsNyBAQAogICAgICAg
ICBudWxsSW1hZ2UgPSBuZXcgSW1hZ2U7CiAKICAgICBpZiAoIWJyb2tlbkltYWdlKQotICAgICAg
ICBicm9rZW5JbWFnZSA9IEltYWdlOjpsb2FkUmVzb3VyY2UoIm1pc3NpbmdfaW1hZ2UiKTsKKyAg
ICAgICAgYnJva2VuSW1hZ2UgPSBJbWFnZTo6bG9hZFJlc291cmNlKCJtaXNzaW5nSW1hZ2UiKTsK
IAogICAgIGlmICghbV9sb2FkZXIpCiAgICAgICAgIG1fbG9hZGVyID0gbmV3IExvYWRlcigpOwpJ
bmRleDogcGFnZS9GcmFtZVZpZXcuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHBhZ2UvRnJhbWVWaWV3LmNw
cAkocmV2aXNpb24gMTQ2NjgpCisrKyBwYWdlL0ZyYW1lVmlldy5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTU3LDYgKzU3LDcgQEAKICAgICAgICAgOiBtX2hhc0JvcmRlcihmYWxzZSkKICAgICAgICAg
LCBsYXlvdXRUaW1lcih2aWV3LCAmRnJhbWVWaWV3OjpsYXlvdXRUaW1lckZpcmVkKQogICAgICAg
ICAsIGhvdmVyVGltZXIodmlldywgJkZyYW1lVmlldzo6aG92ZXJUaW1lckZpcmVkKQorICAgICAg
ICAsIG1fcmVzaXplTGF5ZXIoMCkKICAgICAgICAgLCBtX21lZGlhVHlwZSgic2NyZWVuIikKICAg
ICB7CiAgICAgICAgIHJlcGFpbnRSZWN0cyA9IDA7CkBAIC05OCw2ICs5OSw3IEBACiAgICAgICAg
IGlmIChyZXBhaW50UmVjdHMpCiAgICAgICAgICAgICByZXBhaW50UmVjdHMtPmNsZWFyKCk7CiAg
ICAgICAgIHJlc2l6aW5nRnJhbWVTZXQgPSAwOworICAgICAgICBtX3Jlc2l6ZUxheWVyID0gMDsK
ICAgICB9CiAKICAgICBSZWZQdHI8Tm9kZT4gdW5kZXJNb3VzZTsKQEAgLTEzNiw2ICsxMzgsOCBA
QAogICAgIAogICAgIFRpbWVyPEZyYW1lVmlldz4gaG92ZXJUaW1lcjsKICAgICAKKyAgICBSZW5k
ZXJMYXllciogbV9yZXNpemVMYXllcjsKKyAgICAKICAgICAvLyBVc2VkIGJ5IG9iamVjdHMgZHVy
aW5nIGxheW91dCB0byBjb21tdW5pY2F0ZSByZXBhaW50cyB0aGF0IG5lZWQgdG8gdGFrZSBwbGFj
ZSBvbmx5CiAgICAgLy8gYWZ0ZXIgYWxsIGxheW91dCBoYXMgYmVlbiBjb21wbGV0ZWQuCiAgICAg
RGVwcmVjYXRlZFB0ckxpc3Q8UmVuZGVyT2JqZWN0OjpSZXBhaW50SW5mbz4qIHJlcGFpbnRSZWN0
czsKQEAgLTUwOCw2ICs1MTIsMTUgQEAKIAogICAgIGQtPmNsaWNrQ291bnQgPSBtb3VzZUV2ZW50
LmNsaWNrQ291bnQoKTsKICAgICBkLT5jbGlja05vZGUgPSBtZXYudGFyZ2V0Tm9kZSgpOworICAg
IAorICAgIFJlbmRlckxheWVyKiBsYXllciA9IGQtPmNsaWNrTm9kZS0+cmVuZGVyZXIoKT8gZC0+
Y2xpY2tOb2RlLT5yZW5kZXJlcigpLT5lbmNsb3NpbmdMYXllcigpIDogMDsKKyAgICBJbnRQb2lu
dCBwID0gIHZpZXdwb3J0VG9Db250ZW50cyhtb3VzZUV2ZW50LnBvcygpKTsKKyAgICBpZiAobGF5
ZXIgJiYgbGF5ZXItPmlzUG9pbnRJblJlc2l6ZUNvbnRyb2wocCkpIHsKKyAgICAgICAgbGF5ZXIt
PnNldEluUmVzaXplTW9kZSh0cnVlKTsKKyAgICAgICAgZC0+bV9yZXNpemVMYXllciA9IGxheWVy
OworICAgICAgICBpbnZhbGlkYXRlQ2xpY2soKTsKKyAgICAgICAgcmV0dXJuOyAgCisgICAgfQog
CiAgICAgYm9vbCBzd2FsbG93RXZlbnQgPSBkaXNwYXRjaE1vdXNlRXZlbnQobW91c2Vkb3duRXZl
bnQsIG1ldi50YXJnZXROb2RlKCksIHRydWUsIGQtPmNsaWNrQ291bnQsIG1vdXNlRXZlbnQsIHRy
dWUpOwogCkBAIC01NzksOCArNTkyLDE0IEBACiAgICAgICAgICAgICBib29sIGVkaXRhYmxlID0g
KG5vZGUgJiYgbm9kZS0+aXNDb250ZW50RWRpdGFibGUoKSk7CiAgICAgICAgICAgICBpZiAoKGV2
ZW50LmlzT3ZlckxpbmsoKSB8fCBpc1N1Ym1pdEltYWdlKG5vZGUpKSAmJiAoIWVkaXRhYmxlIHx8
IGV2ZW50LmV2ZW50KCkuc2hpZnRLZXkoKSkpCiAgICAgICAgICAgICAgICAgcmV0dXJuIGhhbmRD
dXJzb3IoKTsKLSAgICAgICAgICAgIGlmIChlZGl0YWJsZSB8fCAocmVuZGVyZXIgJiYgcmVuZGVy
ZXItPmlzVGV4dCgpICYmIHJlbmRlcmVyLT5jYW5TZWxlY3QoKSkpCisgICAgICAgICAgICBSZW5k
ZXJMYXllciogbGF5ZXIgPSByZW5kZXJlciA/IHJlbmRlcmVyLT5lbmNsb3NpbmdMYXllcigpIDog
MDsKKyAgICAgICAgICAgIGJvb2wgaW5SZXNpemVyID0gZmFsc2U7CisgICAgICAgICAgICBJbnRQ
b2ludCBwb2ludCA9IGZyYW1lLT52aWV3KCktPnZpZXdwb3J0VG9Db250ZW50cyhldmVudC5ldmVu
dCgpLnBvcygpKTsKKyAgICAgICAgICAgIGlmIChsYXllciAmJiBsYXllci0+aXNQb2ludEluUmVz
aXplQ29udHJvbChwb2ludCkpCisgICAgICAgICAgICAgICAgaW5SZXNpemVyID0gdHJ1ZTsKKyAg
ICAgICAgICAgIGlmICgoZWRpdGFibGUgfHwgKHJlbmRlcmVyICYmIHJlbmRlcmVyLT5pc1RleHQo
KSAmJiByZW5kZXJlci0+Y2FuU2VsZWN0KCkpKSAmJiAhaW5SZXNpemVyKQogICAgICAgICAgICAg
ICAgIHJldHVybiBpQmVhbUN1cnNvcigpOworICAgICAgICAgICAgLy8gRklYTUU6IElmIHRoZSBw
b2ludCBpcyBpbiBhIGxheWVyJ3Mgb3ZlcmZsb3cgc2Nyb2xsYmFycywgd2Ugc2hvdWxkIHVzZSB0
aGUgcG9pbnRlciBjdXJzb3IKICAgICAgICAgICAgIHJldHVybiBwb2ludGVyQ3Vyc29yKCk7CiAg
ICAgICAgIH0KICAgICAgICAgY2FzZSBDVVJTT1JfQ1JPU1M6CkBAIC02NDgsNiArNjY3LDEwIEBA
CiAgICAgICAgIG1fZnJhbWUtPnBhc3NTdWJmcmFtZUV2ZW50VG9TdWJmcmFtZShtZXYsIGQtPm9s
ZFN1YmZyYW1lLmdldCgpKTsKIAogICAgIGJvb2wgc3dhbGxvd0V2ZW50ID0gZGlzcGF0Y2hNb3Vz
ZUV2ZW50KG1vdXNlbW92ZUV2ZW50LCBtZXYudGFyZ2V0Tm9kZSgpLCBmYWxzZSwgMCwgbW91c2VF
dmVudCwgdHJ1ZSk7CisgICAgCisgICAgaWYgKGQtPm1fcmVzaXplTGF5ZXIgJiYgZC0+bV9yZXNp
emVMYXllci0+aW5SZXNpemVNb2RlKCkpCisgICAgICAgIGQtPm1fcmVzaXplTGF5ZXItPnJlc2l6
ZSgpOworCiAgICAgaWYgKCFzd2FsbG93RXZlbnQpCiAgICAgICAgIG1fZnJhbWUtPmhhbmRsZU1v
dXNlTW92ZUV2ZW50KG1ldik7CiAgICAgCkBAIC02OTEsNiArNzE0LDExIEBACiAgICAgaWYgKGQt
PmNsaWNrQ291bnQgPiAwICYmIG1ldi50YXJnZXROb2RlKCkgPT0gZC0+Y2xpY2tOb2RlKQogICAg
ICAgICBkaXNwYXRjaE1vdXNlRXZlbnQoY2xpY2tFdmVudCwgbWV2LnRhcmdldE5vZGUoKSwgdHJ1
ZSwgZC0+Y2xpY2tDb3VudCwgbW91c2VFdmVudCwgdHJ1ZSk7CiAKKyAgICBpZiAoZC0+bV9yZXNp
emVMYXllcikgeworICAgICAgICBkLT5tX3Jlc2l6ZUxheWVyLT5zZXRJblJlc2l6ZU1vZGUoZmFs
c2UpOworICAgICAgICBkLT5tX3Jlc2l6ZUxheWVyID0gMDsKKyAgICB9CisKICAgICBpZiAoIXN3
YWxsb3dFdmVudCkKICAgICAgICAgbV9mcmFtZS0+aGFuZGxlTW91c2VSZWxlYXNlRXZlbnQobWV2
KTsKIAo=
</data>
<flag name="review"
          id="2490"
          type_id="1"
          status="+"
          setter="hyatt"
    />
          </attachment>
      

    </bug>

</bugzilla>