<?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>208043</bug_id>
          
          <creation_ts>2020-02-20 22:38:42 -0800</creation_ts>
          <short_desc>[macOS] Large form controls are rendered at the wrong NSControlSize</short_desc>
          <delta_ts>2020-02-21 11:03:36 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Forms</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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>bdakin</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>thorton</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1621564</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-02-20 22:38:42 -0800</bug_when>
    <thetext>AX support — make sure that we set the right -controlSize on native controls when painting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621565</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-02-20 22:40:00 -0800</bug_when>
    <thetext>&lt;rdar://problem/59659134&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621668</commentid>
    <comment_count>2</comment_count>
      <attachid>391407</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-02-21 09:10:37 -0800</bug_when>
    <thetext>Created attachment 391407
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621714</commentid>
    <comment_count>3</comment_count>
      <attachid>391407</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-21 11:03:34 -0800</bug_when>
    <thetext>Comment on attachment 391407
Patch

Clearing flags on attachment: 391407

Committed r257150: &lt;https://trac.webkit.org/changeset/257150&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1621715</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2020-02-21 11:03:36 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>391407</attachid>
            <date>2020-02-21 09:10:37 -0800</date>
            <delta_ts>2020-02-21 11:03:34 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-208043-20200221091036.patch</filename>
            <type>text/plain</type>
            <size>27160</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjU2NzE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2EzYjkzYzkxMDU2NmQ4
MTY4NTEyMzRlYzU0NzQzY2YzMTk5NzY0MC4uYTBjZDc0MDIwYTFjOTA1ZDBkYmIyYmNjZDFjYzZk
NWNlZWU3ZGQwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY5IEBACisyMDIwLTAyLTIxICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFttYWNPU10gTGFy
Z2UgZm9ybSBjb250cm9scyBhcmUgcmVuZGVyZWQgYXQgdGhlIHdyb25nIE5TQ29udHJvbFNpemUK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIwODA0Mwor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk2NTkxMzQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBwYWludGluZyBmb3JtIGNvbnRyb2xzIHRo
YXQgYXJlIGxhcmdlciB0aGFuIGEgY2VydGFpbiB0aHJlc2hvbGQgKGZvciB0aGUgbW9zdCBwYXJ0
LCAyMXB4KSwgdXNlCisgICAgICAgIE5TQ29udHJvbFNpemVMYXJnZSBpbnN0ZWFkIG9mIE5TQ29u
dHJvbFNpemVSZWd1bGFyLiBUaGlzIG1ha2VzIHVzIGNob29zZSBhIG1vcmUgYXBwcm9wcmlhdGUg
YXBwZWFyYW5jZSB3aGVuCisgICAgICAgIHBhaW50aW5nIG5hdGl2ZSBsYXJnZSBmb3JtIGNvbnRy
b2xzLCBhcyBsb25nIGFzIHRoZSBzeXN0ZW0gc3VwcG9ydHMgaXQuIE5vdGUgdGhhdCBub3QgYWxs
IHRoZSBtZXRyaWNzIGZvcgorICAgICAgICBOU0NvbnRyb2xTaXplTGFyZ2UgZm9ybSBjb250cm9s
cyBhcmUgZmluYWxpemVkLCBhcyBub3RlZCBpbiB0aGUgcGVyLW1ldGhvZCBjb21tZW50cyBiZWxv
dy4KKworICAgICAgICBXaXRoIHRoaXMgcGF0Y2ggYWxvbmUsIHRoZXJlIGlzIG5vIGNoYW5nZSBp
biBiZWhhdmlvciB5ZXQ7IGluIHRoZSBuZWFyIGZ1dHVyZSwgdGhlc2UgY2hhbmdlcyB3aWxsIGJl
IGNvdmVyZWQgYnkKKyAgICAgICAgbmV3IHBsYXRmb3JtLXNwZWNpZmljIGJhc2VsaW5lcy4KKwor
ICAgICAgICAqIHBsYXRmb3JtL1BvcHVwTWVudVN0eWxlLmg6IEFkZCBhIG5ldyBQb3B1cE1lbnVT
aXplTGFyZ2UgdGhhdCBjb3JyZXNwb25kcyB0byBhIHBvcHVwIHRoYXQgaGFzIE5TQ29udHJvbFNp
emVMYXJnZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGhlbWVNYWMuaDogQWRkIGEgaGVscGVy
IHRvIGNoZWNrIChhdCBydW50aW1lKSB3aGV0aGVyIHRoZSBuZXcgbGFyZ2UgZm9ybSBjb250cm9s
IHNpemUgaXMgZW5hYmxlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvVGhlbWVNYWMubW06Cisg
ICAgICAgIChXZWJDb3JlOjpjb250cm9sU2l6ZUZvckZvbnQpOiBBZGQgYSBuZXcgZm9udCBzaXpl
IGJyZWFrcG9pbnQsIGZvciB3aGljaCB3ZSB1c2UgTlNDb250cm9sU2l6ZUxhcmdlIGluc3RlYWQg
b2YKKyAgICAgICAgTlNDb250cm9sU2l6ZVJlZ3VsYXIuCisKKyAgICAgICAgKFdlYkNvcmU6OnNp
emVGcm9tTlNDb250cm9sU2l6ZSk6CisgICAgICAgIChXZWJDb3JlOjpzaXplRnJvbUZvbnQpOgor
ICAgICAgICAoV2ViQ29yZTo6Y29udHJvbFNpemVGcm9tUGl4ZWxTaXplKToKKyAgICAgICAgKFdl
YkNvcmU6OnNldENvbnRyb2xTaXplKToKKyAgICAgICAgKFdlYkNvcmU6OmNoZWNrYm94U2l6ZXMp
OiBSZWZsZWN0IHRoZSBmYWN0IHRoYXQgY2hlY2tib3hlcyB3aXRoIE5TQ29udHJvbFNpemVMYXJn
ZSBhcmUgMTYgYnkgMTYuCisgICAgICAgIChXZWJDb3JlOjpjaGVja2JveE1hcmdpbnMpOiBKdXN0
IG1hdGNoIE5TQ29udHJvbFNpemVSZWd1bGFyIG1hcmdpbnMgZm9yIG5vdy4gVGhlc2Ugc2VlbSBp
bmNvcnJlY3QgYWxyZWFkeSwgZXZlbgorICAgICAgICBmb3IgTlNDb250cm9sU2l6ZVJlZ3VsYXIg
aW4gbWFjT1MgMTAuMTUuCisKKyAgICAgICAgKFdlYkNvcmU6OnJhZGlvU2l6ZXMpOiBSZWZsZWN0
IHRoZSBmYWN0IHRoYXQgcmFkaW8gYnV0dG9ucyB3aXRoIE5TQ29udHJvbFNpemVMYXJnZSBhcmUg
MTYgYnkgMTYsIGFuZAorICAgICAgICBOU0NvbnRyb2xTaXplUmVndWxhciByYWRpbyBidXR0b25z
IGFyZSAxNCBieSAxNC4KKworICAgICAgICAoV2ViQ29yZTo6cmFkaW9NYXJnaW5zKTogSnVzdCBt
YXRjaCBOU0NvbnRyb2xTaXplUmVndWxhciBtYXJnaW5zIGZvciBub3cuIFRoZXNlIHNlZW0gaW5j
b3JyZWN0IGFscmVhZHksIGV2ZW4gZm9yCisgICAgICAgIE5TQ29udHJvbFNpemVSZWd1bGFyIGlu
IG1hY09TIDEwLjE1LgorCisgICAgICAgIChXZWJDb3JlOjpidXR0b25TaXplcyk6IFJlZmxlY3Qg
dGhlIGZhY3QgdGhhdCBidXR0b25zIHdpdGggTlNDb250cm9sU2l6ZUxhcmdlIGFyZSAyOHB4IHRh
bGwuCisgICAgICAgIChXZWJDb3JlOjpidXR0b25NYXJnaW5zKTogSnVzdCBtYXRjaCBOU0NvbnRy
b2xTaXplUmVndWxhciBtYXJnaW5zIGZvciBub3csIGFuZCBhZGQgYSBGSVhNRSBhYm91dCB1cGRh
dGluZyB0aGVtLgorICAgICAgICAoV2ViQ29yZTo6c2V0VXBCdXR0b25DZWxsKToKKyAgICAgICAg
KFdlYkNvcmU6OnN0ZXBwZXJTaXplcyk6IE5TQ29udHJvbFNpemVMYXJnZSBtYXRjaGVzIE5TQ29u
dHJvbFNpemVSZWd1bGFyIGF0IHRoZSBtb21lbnQuCisgICAgICAgIChXZWJDb3JlOjpzdGVwcGVy
Q29udHJvbFNpemVGb3JGb250KTogQWRkIGEgbmV3IGZvbnQgc2l6ZSBicmVha3BvaW50IGZvciB1
c2luZyBOU0NvbnRyb2xTaXplTGFyZ2UuCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1l
TWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OmNvbnRyb2xTaXplRm9y
Rm9udCBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJUaGVtZU1hYzo6Y29udHJvbFNp
emVGb3JDZWxsIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTWFjOjpjb250
cm9sU2l6ZUZvclN5c3RlbUZvbnQgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhl
bWVNYWM6OnBvcHVwQnV0dG9uTWFyZ2lucyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5k
ZXJUaGVtZU1hYzo6cG9wdXBCdXR0b25TaXplcyBjb25zdCk6CisgICAgICAgIChXZWJDb3JlOjpS
ZW5kZXJUaGVtZU1hYzo6cG9wdXBCdXR0b25QYWRkaW5nIGNvbnN0KToKKworICAgICAgICBOU0Nv
bnRyb2xTaXplTGFyZ2UgbWV0cmljcyBmb3IgcG9wdXAgYnV0dG9ucyBjYW5ub3QgYmUgZGV0ZXJt
aW5lZCB5ZXQuCisKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTWFjOjpwcm9ncmVzc0Jh
clNpemVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1lTWFjOjpwcm9ncmVz
c0Jhck1hcmdpbnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnBh
aW50UHJvZ3Jlc3NCYXIpOgorCisgICAgICAgIE5TQ29udHJvbFNpemVMYXJnZSBtYXRjaGVzIE5T
Q29udHJvbFNpemVSZWd1bGFyIGF0IHRoZSBtb21lbnQuCisKKyAgICAgICAgKFdlYkNvcmU6Om1l
bnVMaXN0QnV0dG9uU2l6ZXMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnBv
cHVwTWVudVNpemUgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6Om1l
bnVMaXN0U2l6ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6OnNl
YXJjaEZpZWxkU2l6ZXMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyVGhlbWVNYWM6
OmNhbmNlbEJ1dHRvblNpemVzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclRoZW1l
TWFjOjpyZXN1bHRzQnV0dG9uU2l6ZXMgY29uc3QpOgorCisgICAgICAgIFNlYXJjaCBmaWVsZCBy
ZXN1bHRzIGFuZCBjYW5jZWwgYnV0dG9ucyBoYXZlIHRoZSBzYW1lIHNpemUgaW4gTlNDb250cm9s
U2l6ZUxhcmdlIGFzIGluIE5TQ29udHJvbFNpemVSZWd1bGFyLgorCiAyMDIwLTAyLTE2ICBaYWxh
biBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW0xGQ11bRmxvYXRdIFNpbXBs
aWZ5IEJsb2NrRm9ybWF0dGluZ0NvbnRleHQ6OnVzZWRBdmFpbGFibGVXaWR0aEZvckZsb2F0QXZv
aWRlcgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggMjAyOWMxNDZlMDkxZjMwNmU0MTNlYzQzMDg4Y2Nl
NWY2MTk0Njk4OS4uOWI1YzFhNjNmNTc2NmYzM2RkYWMyMTU1NDIxNDc4Yzg2YzA1ZWJkYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMjAtMDItMjEgIFdlbnNvbiBIc2ll
aCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CisKKyAgICAgICAgW21hY09TXSBMYXJnZSBmb3Jt
IGNvbnRyb2xzIGFyZSByZW5kZXJlZCBhdCB0aGUgd3JvbmcgTlNDb250cm9sU2l6ZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjA4MDQzCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS81OTY1OTEzND4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBJbXBvcnQgTlNBcHBlYXJhbmNlX1ByaXZhdGUuaCBpbiB0aGlz
IFNQSSBoZWFkZXIuIFNlZSBXZWJDb3JlIENoYW5nZUxvZyBmb3IgbW9yZSBkZXRhaWxzLgorCisg
ICAgICAgICogcGFsL3NwaS9tYWMvTlNBcHBlYXJhbmNlU1BJLmg6CisKIDIwMjAtMDItMTQgIE5p
a29zIE1vdWNodGFyaXMgIDxubW91Y2h0YXJpc0BhcHBsZS5jb20+CiAKICAgICAgICAgV2ViS2l0
IHN1cHBvcnQgZm9yIEFwcGxlIFBheSBCdXR0b25zIHdpdGggY3VzdG9tIGNvcm5lciByYWRpaQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5n
ZUxvZwppbmRleCAyZDM5MTBlYzFkY2JmYjJhNGQwM2EyYmVkYzZkYTE3YmE2YTIzNDk3Li5kNjll
ZmJjZWJhMTBlN2E1Njg5YjUxYzVmY2Y4YTRjNzQ0ZjIyZGM4IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsx
LDE2IEBACisyMDIwLTAyLTIxICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29t
PgorCisgICAgICAgIFttYWNPU10gTGFyZ2UgZm9ybSBjb250cm9scyBhcmUgcmVuZGVyZWQgYXQg
dGhlIHdyb25nIE5TQ29udHJvbFNpemUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIwODA0MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNTk2NTkxMzQ+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIFdl
YkNvcmUgQ2hhbmdlTG9nIGZvciBtb3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
bWFjL1dlYlBvcHVwTWVudVByb3h5TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQb3B1cE1l
bnVQcm94eU1hYzo6c2hvd1BvcHVwTWVudSk6CisKIDIwMjAtMDItMTUgIFBhdmVsIEZlbGRtYW4g
IDxwYXZlbC5mZWxkbWFuQGdtYWlsLmNvbT4KIAogICAgICAgICBbR2VvY2x1ZV0gQXZvaWQgdXNh
Z2Ugb2YgcHJvdmlkZXIgaW4gY2FsbGJhY2tzIGFmdGVyIGl0IGhhcyBiZWVuIGRlc3Ryb3llZApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCmluZGV4IGNhYzA4NzBkYjUwNjNhYzg5OTQ0NjgzYjY2
Y2QwMzBhOTg5NWFiY2EuLjIyODc5YjQ1YzRhZmViOGIzZTFjNTQ2N2QxZjAyZTBmMDVlODlkYmMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAyMC0wMi0y
MSAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbbWFj
T1NdIExhcmdlIGZvcm0gY29udHJvbHMgYXJlIHJlbmRlcmVkIGF0IHRoZSB3cm9uZyBOU0NvbnRy
b2xTaXplCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
MDgwNDMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzU5NjU5MTM0PgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNlZSBXZWJDb3JlIENoYW5nZUxvZyBm
b3IgbW9yZSBkZXRhaWxzLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvUG9wdXBNZW51TWFj
Lm1tOgorICAgICAgICAoUG9wdXBNZW51TWFjOjpzaG93KToKKwogMjAyMC0wMi0xNCAgSm9uIExl
ZSAgPGpvbmxlZUBhcHBsZS5jb20+CiAKICAgICAgICAgTWFzayBXZWJHTCBzdHJpbmdzCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNBcHBlYXJhbmNlU1BJLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL3NwaS9tYWMvTlNBcHBlYXJhbmNlU1BJLmgKaW5kZXgg
MTdjMTU3ODJhZTgwZmU3ZGEzNjg2ZWFhOWM0MzNjNDVkYzQ4OGE0Yy4uN2RiNjk3MDAwNzE3NjMx
Mzk5MTdlMDA5YTI5N2IxZDJlYWViMzVhOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9zcGkvbWFjL05TQXBwZWFyYW5jZVNQSS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9w
YWwvc3BpL21hYy9OU0FwcGVhcmFuY2VTUEkuaApAQCAtMjUsNiArMjUsMTIgQEAKIAogI2lmIFVT
RShBUFBLSVQpCiAKKyNpbXBvcnQgPEFwcEtpdC9BcHBLaXQuaD4KKworI2lmIFVTRShBUFBMRV9J
TlRFUk5BTF9TREspCisjaW1wb3J0IDxBcHBLaXQvTlNBcHBlYXJhbmNlX1ByaXZhdGUuaD4KKyNl
bmRpZgorCiBAaW50ZXJmYWNlIE5TQXBwZWFyYW5jZSAoKQogCiAtICh2b2lkKV9kcmF3SW5SZWN0
OihOU1JlY3QpcmVjdCBjb250ZXh0OihDR0NvbnRleHRSZWYpY29udGV4dCBvcHRpb25zOihOU0Rp
Y3Rpb25hcnkgKilvcHRpb25zOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UG9wdXBNZW51U3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BvcHVwTWVudVN0eWxl
LmgKaW5kZXggMzdjZWU2MzJhYmFjMTZiN2MxZjg4N2U5ZGYxMTVjNmM1NGE2ZTY3Zi4uMWQ5N2Zm
MzcxODExNTE0M2RjNDExYzAxMWZkZGU1ODY0Mzk3N2M2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vUG9wdXBNZW51U3R5bGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9Qb3B1cE1lbnVTdHlsZS5oCkBAIC0zOSw3ICszOSwxMCBAQCBwdWJsaWM6CiAgICAgZW51
bSBQb3B1cE1lbnVTaXplIHsKICAgICAgICAgUG9wdXBNZW51U2l6ZU5vcm1hbCwKICAgICAgICAg
UG9wdXBNZW51U2l6ZVNtYWxsLAotICAgICAgICBQb3B1cE1lbnVTaXplTWluaQorICAgICAgICBQ
b3B1cE1lbnVTaXplTWluaSwKKyNpZiBIQVZFKExBUkdFX0NPTlRST0xfU0laRSkKKyAgICAgICAg
UG9wdXBNZW51U2l6ZUxhcmdlLAorI2VuZGlmCiAgICAgfTsKIAogICAgIFBvcHVwTWVudVN0eWxl
KGNvbnN0IENvbG9yJiBmb3JlZ3JvdW5kLCBjb25zdCBDb2xvciYgYmFja2dyb3VuZCwgY29uc3Qg
Rm9udENhc2NhZGUmIGZvbnQsIGJvb2wgdmlzaWJsZSwgYm9vbCBpc0Rpc3BsYXlOb25lLCBib29s
IGhhc0RlZmF1bHRBcHBlYXJhbmNlLCBMZW5ndGggdGV4dEluZGVudCwgVGV4dERpcmVjdGlvbiB0
ZXh0RGlyZWN0aW9uLCBib29sIGhhc1RleHREaXJlY3Rpb25PdmVycmlkZSwgQmFja2dyb3VuZENv
bG9yVHlwZSBiYWNrZ3JvdW5kQ29sb3JUeXBlID0gRGVmYXVsdEJhY2tncm91bmRDb2xvciwgUG9w
dXBNZW51VHlwZSBtZW51VHlwZSA9IFNlbGVjdFBvcHVwLCBQb3B1cE1lbnVTaXplIG1lbnVTaXpl
ID0gUG9wdXBNZW51U2l6ZU5vcm1hbCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9UaGVtZU1hYy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1RoZW1lTWFj
LmgKaW5kZXggMDJhMGFlZWQwMjY3NzVhZTgzZmYxYTQ0ZWUyNWFmN2E2OTk4YzgwNi4uNmIwNTk3
NThkZmI1Y2Q1OWJiZGIzYjI0ZTI2MmM0NjI1Y2Y3YTFmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1RoZW1lTWFjLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1RoZW1lTWFjLmgKQEAgLTMzLDYgKzMzLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiBjbGFzcyBUaGVtZU1hYyBmaW5hbCA6IHB1YmxpYyBUaGVtZUNvY29hIHsKIHB1YmxpYzoKKyNp
ZiBIQVZFKExBUkdFX0NPTlRST0xfU0laRSkKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0xhcmdl
Rm9ybUNvbnRyb2xzKCk7CisjZW5kaWYKICAgICBzdGF0aWMgTlNWaWV3ICplbnN1cmVkVmlldyhT
Y3JvbGxWaWV3KiwgY29uc3QgQ29udHJvbFN0YXRlcyYsIGJvb2wgdXNlVW5wYXJlbnRlZFZpZXcg
PSBmYWxzZSk7CiAgICAgc3RhdGljIHZvaWQgc2V0Rm9jdXNSaW5nQ2xpcFJlY3QoY29uc3QgRmxv
YXRSZWN0Jik7CiAgICAgc3RhdGljIGJvb2wgZHJhd0NlbGxPckZvY3VzUmluZ1dpdGhWaWV3SW50
b0NvbnRleHQoTlNDZWxsICosIEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVjdCYsIE5T
VmlldyAqLCBib29sIGRyYXdCdXR0b25DZWxsLCBib29sIGRyYXdGb2N1c1JpbmcsIGJvb2wgdXNl
SW1hZ2VCdWZmZXIsIGZsb2F0IGRldmljZVNjYWxlRmFjdG9yKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9UaGVtZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9UaGVtZU1hYy5tbQppbmRleCA2NmNiNjliY2Y0NTA5MDg2NjI0YzRhMTViMTgxZjYx
ZGE3NjhlMDNiLi4yOGM5YTc1YWY2YzUxMWU0NmIxMGQ0YmU3YmE2OWEzMzIzNGJjMGFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvVGhlbWVNYWMubW0KKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1RoZW1lTWFjLm1tCkBAIC00MCw2ICs0MCw3IEBACiAj
aW1wb3J0ICJTY3JvbGxWaWV3LmgiCiAjaW1wb3J0IDxDYXJib24vQ2FyYm9uLmg+CiAjaW1wb3J0
IDxwYWwvc3BpL2NvY29hL05TQnV0dG9uQ2VsbFNQSS5oPgorI2ltcG9ydCA8cGFsL3NwaS9tYWMv
TlNBcHBlYXJhbmNlU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3BpL21hYy9OU0dyYXBoaWNzU1BJLmg+
CiAjaW1wb3J0IDx3dGYvQmxvY2tPYmpDRXhjZXB0aW9ucy5oPgogI2ltcG9ydCA8d3RmL05ldmVy
RGVzdHJveWVkLmg+CkBAIC0xMTksNiArMTIwLDEwIEBAIEBlbmQKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCisjaWYgVVNFKEFQUExFX0lOVEVSTkFMX1NESykKKyNpbXBvcnQgPFdlYktpdEFkZGl0
aW9ucy9UaGVtZU1hY0FkZGl0aW9ucy5tbT4KKyNlbmRpZgorCiBlbnVtIHsKICAgICB0b3BNYXJn
aW4sCiAgICAgcmlnaHRNYXJnaW4sCkBAIC0xMzcsNiArMTQyLDEwIEBAIFRoZW1lJiBUaGVtZTo6
c2luZ2xldG9uKCkKIHN0YXRpYyBOU0NvbnRyb2xTaXplIGNvbnRyb2xTaXplRm9yRm9udChjb25z
dCBGb250Q2FzY2FkZSYgZm9udCkKIHsKICAgICBpbnQgZm9udFNpemUgPSBmb250LnBpeGVsU2l6
ZSgpOworI2lmIEhBVkUoTEFSR0VfQ09OVFJPTF9TSVpFKQorICAgIGlmIChmb250U2l6ZSA+PSAy
MSAmJiBUaGVtZU1hYzo6c3VwcG9ydHNMYXJnZUZvcm1Db250cm9scygpKQorICAgICAgICByZXR1
cm4gTlNDb250cm9sU2l6ZUxhcmdlOworI2VuZGlmCiAgICAgaWYgKGZvbnRTaXplID49IDE2KQog
ICAgICAgICByZXR1cm4gTlNDb250cm9sU2l6ZVJlZ3VsYXI7CiAgICAgaWYgKGZvbnRTaXplID49
IDExKQpAQCAtMTQ0LDcgKzE1Myw3IEBAIHN0YXRpYyBOU0NvbnRyb2xTaXplIGNvbnRyb2xTaXpl
Rm9yRm9udChjb25zdCBGb250Q2FzY2FkZSYgZm9udCkKICAgICByZXR1cm4gTlNDb250cm9sU2l6
ZU1pbmk7CiB9CiAKLXN0YXRpYyBMZW5ndGhTaXplIHNpemVGcm9tTlNDb250cm9sU2l6ZShOU0Nv
bnRyb2xTaXplIG5zQ29udHJvbFNpemUsIGNvbnN0IExlbmd0aFNpemUmIHpvb21lZFNpemUsIGZs
b2F0IHpvb21GYWN0b3IsIGNvbnN0IHN0ZDo6YXJyYXk8SW50U2l6ZSwgMz4mIHNpemVzKQorc3Rh
dGljIExlbmd0aFNpemUgc2l6ZUZyb21OU0NvbnRyb2xTaXplKE5TQ29udHJvbFNpemUgbnNDb250
cm9sU2l6ZSwgY29uc3QgTGVuZ3RoU2l6ZSYgem9vbWVkU2l6ZSwgZmxvYXQgem9vbUZhY3Rvciwg
Y29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCA0PiYgc2l6ZXMpCiB7CiAgICAgSW50U2l6ZSBjb250
cm9sU2l6ZSA9IHNpemVzW25zQ29udHJvbFNpemVdOwogICAgIGlmICh6b29tRmFjdG9yICE9IDEu
MGYpCkBAIC0xNTcsMTMgKzE2NiwxOSBAQCBzdGF0aWMgTGVuZ3RoU2l6ZSBzaXplRnJvbU5TQ29u
dHJvbFNpemUoTlNDb250cm9sU2l6ZSBuc0NvbnRyb2xTaXplLCBjb25zdCBMZW5ndAogICAgIHJl
dHVybiByZXN1bHQ7CiB9CiAKLXN0YXRpYyBMZW5ndGhTaXplIHNpemVGcm9tRm9udChjb25zdCBG
b250Q2FzY2FkZSYgZm9udCwgY29uc3QgTGVuZ3RoU2l6ZSYgem9vbWVkU2l6ZSwgZmxvYXQgem9v
bUZhY3RvciwgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCAzPiYgc2l6ZXMpCitzdGF0aWMgTGVu
Z3RoU2l6ZSBzaXplRnJvbUZvbnQoY29uc3QgRm9udENhc2NhZGUmIGZvbnQsIGNvbnN0IExlbmd0
aFNpemUmIHpvb21lZFNpemUsIGZsb2F0IHpvb21GYWN0b3IsIGNvbnN0IHN0ZDo6YXJyYXk8SW50
U2l6ZSwgND4mIHNpemVzKQogewogICAgIHJldHVybiBzaXplRnJvbU5TQ29udHJvbFNpemUoY29u
dHJvbFNpemVGb3JGb250KGZvbnQpLCB6b29tZWRTaXplLCB6b29tRmFjdG9yLCBzaXplcyk7CiB9
CiAKLXN0YXRpYyBDb250cm9sU2l6ZSBjb250cm9sU2l6ZUZyb21QaXhlbFNpemUoY29uc3Qgc3Rk
OjphcnJheTxJbnRTaXplLCAzPiYgc2l6ZXMsIGNvbnN0IEludFNpemUmIG1pblpvb21lZFNpemUs
IGZsb2F0IHpvb21GYWN0b3IpCitzdGF0aWMgQ29udHJvbFNpemUgY29udHJvbFNpemVGcm9tUGl4
ZWxTaXplKGNvbnN0IHN0ZDo6YXJyYXk8SW50U2l6ZSwgND4mIHNpemVzLCBjb25zdCBJbnRTaXpl
JiBtaW5ab29tZWRTaXplLCBmbG9hdCB6b29tRmFjdG9yKQogeworI2lmIEhBVkUoTEFSR0VfQ09O
VFJPTF9TSVpFKQorICAgIGlmIChUaGVtZU1hYzo6c3VwcG9ydHNMYXJnZUZvcm1Db250cm9scygp
CisgICAgICAgICYmIG1pblpvb21lZFNpemUud2lkdGgoKSA+PSBzdGF0aWNfY2FzdDxpbnQ+KHNp
emVzW05TQ29udHJvbFNpemVMYXJnZV0ud2lkdGgoKSAqIHpvb21GYWN0b3IpCisgICAgICAgICYm
IG1pblpvb21lZFNpemUuaGVpZ2h0KCkgPj0gc3RhdGljX2Nhc3Q8aW50PihzaXplc1tOU0NvbnRy
b2xTaXplTGFyZ2VdLmhlaWdodCgpICogem9vbUZhY3RvcikpCisgICAgICAgIHJldHVybiBOU0Nv
bnRyb2xTaXplTGFyZ2U7CisjZW5kaWYKICAgICBpZiAobWluWm9vbWVkU2l6ZS53aWR0aCgpID49
IHN0YXRpY19jYXN0PGludD4oc2l6ZXNbTlNDb250cm9sU2l6ZVJlZ3VsYXJdLndpZHRoKCkgKiB6
b29tRmFjdG9yKQogICAgICAgICAmJiBtaW5ab29tZWRTaXplLmhlaWdodCgpID49IHN0YXRpY19j
YXN0PGludD4oc2l6ZXNbTlNDb250cm9sU2l6ZVJlZ3VsYXJdLmhlaWdodCgpICogem9vbUZhY3Rv
cikpCiAgICAgICAgIHJldHVybiBOU0NvbnRyb2xTaXplUmVndWxhcjsKQEAgLTE3Myw3ICsxODgs
NyBAQCBzdGF0aWMgQ29udHJvbFNpemUgY29udHJvbFNpemVGcm9tUGl4ZWxTaXplKGNvbnN0IHN0
ZDo6YXJyYXk8SW50U2l6ZSwgMz4mIHNpemVzLAogICAgIHJldHVybiBOU0NvbnRyb2xTaXplTWlu
aTsKIH0KIAotc3RhdGljIHZvaWQgc2V0Q29udHJvbFNpemUoTlNDZWxsKiBjZWxsLCBjb25zdCBz
dGQ6OmFycmF5PEludFNpemUsIDM+JiBzaXplcywgY29uc3QgSW50U2l6ZSYgbWluWm9vbWVkU2l6
ZSwgZmxvYXQgem9vbUZhY3RvcikKK3N0YXRpYyB2b2lkIHNldENvbnRyb2xTaXplKE5TQ2VsbCog
Y2VsbCwgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCA0PiYgc2l6ZXMsIGNvbnN0IEludFNpemUm
IG1pblpvb21lZFNpemUsIGZsb2F0IHpvb21GYWN0b3IpCiB7CiAgICAgQ29udHJvbFNpemUgc2l6
ZSA9IGNvbnRyb2xTaXplRnJvbVBpeGVsU2l6ZShzaXplcywgbWluWm9vbWVkU2l6ZSwgem9vbUZh
Y3Rvcik7CiAgICAgaWYgKHNpemUgIT0gW2NlbGwgY29udHJvbFNpemVdKSAvLyBPbmx5IHVwZGF0
ZSBpZiB3ZSBoYXZlIHRvLCBzaW5jZSBBcHBLaXQgZG9lcyB3b3JrIGV2ZW4gaWYgdGhlIHNpemUg
aXMgdGhlIHNhbWUuCkBAIC0yNTgsMjAgKzI3MywyMSBAQCBzdGF0aWMgRmxvYXRSZWN0IGluZmxh
dGVSZWN0KGNvbnN0IEZsb2F0UmVjdCYgem9vbWVkUmVjdCwgY29uc3QgSW50U2l6ZSYgem9vbWVk
UwogCiAvLyBDaGVja2JveGVzIGFuZCByYWRpbyBidXR0b25zCiAKLXN0YXRpYyBjb25zdCBzdGQ6
OmFycmF5PEludFNpemUsIDM+JiBjaGVja2JveFNpemVzKCkKK3N0YXRpYyBjb25zdCBzdGQ6OmFy
cmF5PEludFNpemUsIDQ+JiBjaGVja2JveFNpemVzKCkKIHsKLSAgICBzdGF0aWMgY29uc3Qgc3Rk
OjphcnJheTxJbnRTaXplLCAzPiBzaXplcyA9IHsgeyBJbnRTaXplKDE0LCAxNCksIEludFNpemUo
MTIsIDEyKSwgSW50U2l6ZSgxMCwgMTApIH0gfTsKKyAgICBzdGF0aWMgY29uc3Qgc3RkOjphcnJh
eTxJbnRTaXplLCA0PiBzaXplcyA9IHsgeyBJbnRTaXplKDE0LCAxNCksIEludFNpemUoMTIsIDEy
KSwgSW50U2l6ZSgxMCwgMTApLCBJbnRTaXplKDE2LCAxNikgfSB9OwogICAgIHJldHVybiBzaXpl
czsKIH0KIAogc3RhdGljIGNvbnN0IGludCogY2hlY2tib3hNYXJnaW5zKE5TQ29udHJvbFNpemUg
Y29udHJvbFNpemUpCiB7Ci0gICAgc3RhdGljIGNvbnN0IGludCBtYXJnaW5zWzNdWzRdID0KKyAg
ICBzdGF0aWMgY29uc3QgaW50IG1hcmdpbnNbNF1bNF0gPQogICAgIHsKICAgICAgICAgLy8gdG9w
IHJpZ2h0IGJvdHRvbSBsZWZ0CiAgICAgICAgIHsgMiwgMiwgMiwgMiB9LAogICAgICAgICB7IDIs
IDEsIDIsIDEgfSwKICAgICAgICAgeyAwLCAwLCAxLCAwIH0sCisgICAgICAgIHsgMiwgMiwgMiwg
MiB9LAogICAgIH07CiAgICAgcmV0dXJuIG1hcmdpbnNbY29udHJvbFNpemVdOwogfQpAQCAtMjg4
LDIwICszMDQsMzEgQEAgc3RhdGljIExlbmd0aFNpemUgY2hlY2tib3hTaXplKGNvbnN0IEZvbnRD
YXNjYWRlJiBmb250LCBjb25zdCBMZW5ndGhTaXplJiB6b29tZWQKIAogLy8gUmFkaW8gQnV0dG9u
cwogCi1zdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCAzPiYgcmFkaW9TaXplcygpCitz
dGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCA0PiYgcmFkaW9TaXplcygpCiB7Ci0gICAg
c3RhdGljIGNvbnN0IHN0ZDo6YXJyYXk8SW50U2l6ZSwgMz4gc2l6ZXMgPSB7IHsgSW50U2l6ZSgx
NiwgMTYpLCBJbnRTaXplKDEyLCAxMiksIEludFNpemUoMTAsIDEwKSB9IH07CisgICAgc3RhdGlj
IHN0ZDo6YXJyYXk8SW50U2l6ZSwgND4gc2l6ZXM7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2Vf
dCBvbmNlVG9rZW47CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZVRva2VuLCBeeworI2lmIEhBVkUo
TEFSR0VfQ09OVFJPTF9TSVpFKQorICAgICAgICBpZiAoVGhlbWVNYWM6OnN1cHBvcnRzTGFyZ2VG
b3JtQ29udHJvbHMoKSkgeworICAgICAgICAgICAgc2l6ZXMgPSB7IHsgSW50U2l6ZSgxNCwgMTQp
LCBJbnRTaXplKDEyLCAxMiksIEludFNpemUoMTAsIDEwKSwgSW50U2l6ZSgxNiwgMTYpIH0gfTsK
KyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorI2VuZGlmCisgICAgICAgIHNpemVzID0g
eyB7IEludFNpemUoMTYsIDE2KSwgSW50U2l6ZSgxMiwgMTIpLCBJbnRTaXplKDEwLCAxMCksIElu
dFNpemUoMCwgMCkgfSB9OworICAgIH0pOwogICAgIHJldHVybiBzaXplczsKIH0KIAogc3RhdGlj
IGNvbnN0IGludCogcmFkaW9NYXJnaW5zKE5TQ29udHJvbFNpemUgY29udHJvbFNpemUpCiB7Ci0g
ICAgc3RhdGljIGNvbnN0IGludCBtYXJnaW5zWzNdWzRdID0KKyAgICBzdGF0aWMgY29uc3QgaW50
IG1hcmdpbnNbNF1bNF0gPQogICAgIHsKICAgICAgICAgLy8gdG9wIHJpZ2h0IGJvdHRvbSBsZWZ0
CiAgICAgICAgIHsgMSwgMCwgMSwgMiB9LAogICAgICAgICB7IDEsIDEsIDIsIDEgfSwKICAgICAg
ICAgeyAwLCAwLCAxLCAxIH0sCisgICAgICAgIHsgMSwgMCwgMSwgMiB9LAogICAgIH07CiAgICAg
cmV0dXJuIG1hcmdpbnNbY29udHJvbFNpemVdOwogfQpAQCAtNDY2LDE5ICs0OTMsMjMgQEAgc3Rh
dGljIHZvaWQgcGFpbnRUb2dnbGVCdXR0b24oQ29udHJvbFBhcnQgYnV0dG9uVHlwZSwgQ29udHJv
bFN0YXRlcyYgY29udHJvbFN0YXQKIC8vIEJ1dHRvbnMKIAogLy8gQnV0dG9ucyByZWFsbHkgb25s
eSBjb25zdHJhaW4gaGVpZ2h0LiBUaGV5IHJlc3BlY3Qgd2lkdGguCi1zdGF0aWMgY29uc3Qgc3Rk
OjphcnJheTxJbnRTaXplLCAzPiYgYnV0dG9uU2l6ZXMoKQorc3RhdGljIGNvbnN0IHN0ZDo6YXJy
YXk8SW50U2l6ZSwgND4mIGJ1dHRvblNpemVzKCkKIHsKLSAgICBzdGF0aWMgY29uc3Qgc3RkOjph
cnJheTxJbnRTaXplLCAzPiBzaXplcyA9IHsgeyBJbnRTaXplKDAsIDIxKSwgSW50U2l6ZSgwLCAx
OCksIEludFNpemUoMCwgMTUpIH0gfTsKKyAgICBzdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRT
aXplLCA0PiBzaXplcyA9IHsgeyBJbnRTaXplKDAsIDIxKSwgSW50U2l6ZSgwLCAxOCksIEludFNp
emUoMCwgMTUpLCBJbnRTaXplKDAsIDI4KSB9IH07CiAgICAgcmV0dXJuIHNpemVzOwogfQogCiBz
dGF0aWMgY29uc3QgaW50KiBidXR0b25NYXJnaW5zKE5TQ29udHJvbFNpemUgY29udHJvbFNpemUp
CiB7Ci0gICAgc3RhdGljIGNvbnN0IGludCBtYXJnaW5zWzNdWzRdID0KKyAgICAvLyBGSVhNRTog
VGhlc2UgdmFsdWVzIG1heSBuZWVkIHRvIGJlIHJlZXZhbHVhdGVkLiBUaGV5IGFwcGVhciB0byBo
YXZlIGJlZW4gb3JpZ2luYWxseSBjaG9zZW4KKyAgICAvLyB0byByZWZsZWN0IHRoZSBzaXplIG9m
IHNoYWRvd3MgYXJvdW5kIG5hdGl2ZSBmb3JtIGNvbnRyb2xzIG9uIG1hY09TLCBidXQgYXMgb2Yg
bWFjT1MgMTAuMTUsCisgICAgLy8gdGhlc2UgbWFyZ2lucyBleHRlbmQgd2VsbCBwYXN0IHRoZSBi
b3VuZGFyaWVzIG9mIGEgbmF0aXZlIGJ1dHRvbiBjZWxsJ3Mgc2hhZG93cy4KKyAgICBzdGF0aWMg
Y29uc3QgaW50IG1hcmdpbnNbNF1bNF0gPQogICAgIHsKICAgICAgICAgeyA0LCA2LCA3LCA2IH0s
CiAgICAgICAgIHsgNCwgNSwgNiwgNSB9LAogICAgICAgICB7IDAsIDEsIDEsIDEgfSwKKyAgICAg
ICAgeyA0LCA2LCA3LCA2IH0sCiAgICAgfTsKICAgICByZXR1cm4gbWFyZ2luc1tjb250cm9sU2l6
ZV07CiB9CkBAIC00OTgsNyArNTI5LDcgQEAgc3RhdGljIE5TQnV0dG9uQ2VsbCAqbGVha0J1dHRv
bkNlbGwoQnV0dG9uQ2VsbFR5cGUgdHlwZSkKIHN0YXRpYyB2b2lkIHNldFVwQnV0dG9uQ2VsbChO
U0J1dHRvbkNlbGwgKmNlbGwsIENvbnRyb2xQYXJ0IHBhcnQsIGNvbnN0IENvbnRyb2xTdGF0ZXMm
IHN0YXRlcywgY29uc3QgSW50U2l6ZSYgem9vbWVkU2l6ZSwgZmxvYXQgem9vbUZhY3RvcikKIHsK
ICAgICAvLyBTZXQgdGhlIGNvbnRyb2wgc2l6ZSBiYXNlZCBvZmYgdGhlIHJlY3RhbmdsZSB3ZSdy
ZSBwYWludGluZyBpbnRvLgotICAgIGNvbnN0IHN0ZDo6YXJyYXk8SW50U2l6ZSwgMz4mIHNpemVz
ID0gYnV0dG9uU2l6ZXMoKTsKKyAgICBjb25zdCBzdGQ6OmFycmF5PEludFNpemUsIDQ+JiBzaXpl
cyA9IGJ1dHRvblNpemVzKCk7CiAgICAgc3dpdGNoIChwYXJ0KSB7CiAgICAgY2FzZSBTcXVhcmVC
dXR0b25QYXJ0OgogICAgICAgICBbY2VsbCBzZXRCZXplbFN0eWxlOk5TQmV6ZWxTdHlsZVNoYWRv
d2xlc3NTcXVhcmVdOwpAQCAtNTA5LDcgKzU0MCwxMiBAQCBzdGF0aWMgdm9pZCBzZXRVcEJ1dHRv
bkNlbGwoTlNCdXR0b25DZWxsICpjZWxsLCBDb250cm9sUGFydCBwYXJ0LCBjb25zdCBDb250cm9s
UwogICAgICAgICBicmVhazsKICNlbmRpZgogICAgIGRlZmF1bHQ6Ci0gICAgICAgIE5TQmV6ZWxT
dHlsZSBzdHlsZSA9ICh6b29tZWRTaXplLmhlaWdodCgpID4gYnV0dG9uU2l6ZXMoKVtOU0NvbnRy
b2xTaXplUmVndWxhcl0uaGVpZ2h0KCkgKiB6b29tRmFjdG9yKSA/IE5TQmV6ZWxTdHlsZVNoYWRv
d2xlc3NTcXVhcmUgOiBOU0JlemVsU3R5bGVSb3VuZGVkOworI2lmIEhBVkUoTEFSR0VfQ09OVFJP
TF9TSVpFKQorICAgICAgICBhdXRvIGxhcmdlc3RDb250cm9sU2l6ZSA9IFRoZW1lTWFjOjpzdXBw
b3J0c0xhcmdlRm9ybUNvbnRyb2xzKCkgPyBOU0NvbnRyb2xTaXplTGFyZ2UgOiBOU0NvbnRyb2xT
aXplUmVndWxhcjsKKyNlbHNlCisgICAgICAgIGF1dG8gbGFyZ2VzdENvbnRyb2xTaXplID0gTlND
b250cm9sU2l6ZVJlZ3VsYXI7CisjZW5kaWYKKyAgICAgICAgTlNCZXplbFN0eWxlIHN0eWxlID0g
KHpvb21lZFNpemUuaGVpZ2h0KCkgPiBidXR0b25TaXplcygpW2xhcmdlc3RDb250cm9sU2l6ZV0u
aGVpZ2h0KCkgKiB6b29tRmFjdG9yKSA/IE5TQmV6ZWxTdHlsZVNoYWRvd2xlc3NTcXVhcmUgOiBO
U0JlemVsU3R5bGVSb3VuZGVkOwogICAgICAgICBbY2VsbCBzZXRCZXplbFN0eWxlOnN0eWxlXTsK
ICAgICAgICAgYnJlYWs7CiAgICAgfQpAQCAtNTkzLDkgKzYyOSw5IEBAIHN0YXRpYyB2b2lkIHBh
aW50QnV0dG9uKENvbnRyb2xQYXJ0IHBhcnQsIENvbnRyb2xTdGF0ZXMmIGNvbnRyb2xTdGF0ZXMs
IEdyYXBoaWNzCiAKIC8vIFN0ZXBwZXIKIAotc3RhdGljIGNvbnN0IHN0ZDo6YXJyYXk8SW50U2l6
ZSwgMz4mIHN0ZXBwZXJTaXplcygpCitzdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCA0
PiYgc3RlcHBlclNpemVzKCkKIHsKLSAgICBzdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXpl
LCAzPiBzaXplcyA9IHsgeyBJbnRTaXplKDE5LCAyNyksIEludFNpemUoMTUsIDIyKSwgSW50U2l6
ZSgxMywgMTUpIH0gfTsKKyAgICBzdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCA0PiBz
aXplcyA9IHsgeyBJbnRTaXplKDE5LCAyNyksIEludFNpemUoMTUsIDIyKSwgSW50U2l6ZSgxMywg
MTUpLCBJbnRTaXplKDE5LCAyNykgfSB9OwogICAgIHJldHVybiBzaXplczsKIH0KIApAQCAtNjA0
LDYgKzY0MCwxMCBAQCBzdGF0aWMgY29uc3Qgc3RkOjphcnJheTxJbnRTaXplLCAzPiYgc3RlcHBl
clNpemVzKCkKIHN0YXRpYyBOU0NvbnRyb2xTaXplIHN0ZXBwZXJDb250cm9sU2l6ZUZvckZvbnQo
Y29uc3QgRm9udENhc2NhZGUmIGZvbnQpCiB7CiAgICAgaW50IGZvbnRTaXplID0gZm9udC5waXhl
bFNpemUoKTsKKyNpZiBIQVZFKExBUkdFX0NPTlRST0xfU0laRSkKKyAgICBpZiAoZm9udFNpemUg
Pj0gMjMgJiYgVGhlbWVNYWM6OnN1cHBvcnRzTGFyZ2VGb3JtQ29udHJvbHMoKSkKKyAgICAgICAg
cmV0dXJuIE5TQ29udHJvbFNpemVMYXJnZTsKKyNlbmRpZgogICAgIGlmIChmb250U2l6ZSA+PSAx
OCkKICAgICAgICAgcmV0dXJuIE5TQ29udHJvbFNpemVSZWd1bGFyOwogICAgIGlmIChmb250U2l6
ZSA+PSAxMykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVt
ZU1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZU1hYy5tbQppbmRl
eCBiMzJlMzk0Yjc0ZDcyNTQyNjdlMmIzOTNjNTA3ZDM2YjUwZjc5NDllLi5lNzBmMTY3ZmIwZTMz
OGQyOTI5YzQ2M2ZlNjY4ODExZGM5OTM3OWQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyVGhlbWVNYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lTWFjLm1tCkBAIC0xMDMwLDYgKzEwMzAsMTAgQEAgYm9vbCBSZW5kZXJUaGVt
ZU1hYzo6Y29udHJvbFN1cHBvcnRzVGludHMoY29uc3QgUmVuZGVyT2JqZWN0JiBvKSBjb25zdAog
TlNDb250cm9sU2l6ZSBSZW5kZXJUaGVtZU1hYzo6Y29udHJvbFNpemVGb3JGb250KGNvbnN0IFJl
bmRlclN0eWxlJiBzdHlsZSkgY29uc3QKIHsKICAgICBpbnQgZm9udFNpemUgPSBzdHlsZS5jb21w
dXRlZEZvbnRQaXhlbFNpemUoKTsKKyNpZiBIQVZFKExBUkdFX0NPTlRST0xfU0laRSkKKyAgICBp
ZiAoZm9udFNpemUgPj0gMjEgJiYgVGhlbWVNYWM6OnN1cHBvcnRzTGFyZ2VGb3JtQ29udHJvbHMo
KSkKKyAgICAgICAgcmV0dXJuIE5TQ29udHJvbFNpemVMYXJnZTsKKyNlbmRpZgogICAgIGlmIChm
b250U2l6ZSA+PSAxNikKICAgICAgICAgcmV0dXJuIE5TQ29udHJvbFNpemVSZWd1bGFyOwogICAg
IGlmIChmb250U2l6ZSA+PSAxMSkKQEAgLTEwMzksNiArMTA0MywxMyBAQCBOU0NvbnRyb2xTaXpl
IFJlbmRlclRoZW1lTWFjOjpjb250cm9sU2l6ZUZvckZvbnQoY29uc3QgUmVuZGVyU3R5bGUmIHN0
eWxlKSBjb25zdAogCiBOU0NvbnRyb2xTaXplIFJlbmRlclRoZW1lTWFjOjpjb250cm9sU2l6ZUZv
ckNlbGwoTlNDZWxsKiwgY29uc3QgSW50U2l6ZSogc2l6ZXMsIGNvbnN0IEludFNpemUmIG1pblNp
emUsIGZsb2F0IHpvb21MZXZlbCkgY29uc3QKIHsKKyNpZiBIQVZFKExBUkdFX0NPTlRST0xfU0la
RSkKKyAgICBpZiAoVGhlbWVNYWM6OnN1cHBvcnRzTGFyZ2VGb3JtQ29udHJvbHMoKQorICAgICAg
ICAmJiBtaW5TaXplLndpZHRoKCkgPj0gc3RhdGljX2Nhc3Q8aW50PihzaXplc1tOU0NvbnRyb2xT
aXplTGFyZ2VdLndpZHRoKCkgKiB6b29tTGV2ZWwpCisgICAgICAgICYmIG1pblNpemUuaGVpZ2h0
KCkgPj0gc3RhdGljX2Nhc3Q8aW50PihzaXplc1tOU0NvbnRyb2xTaXplTGFyZ2VdLmhlaWdodCgp
ICogem9vbUxldmVsKSkKKyAgICAgICAgcmV0dXJuIE5TQ29udHJvbFNpemVMYXJnZTsKKyNlbmRp
ZgorCiAgICAgaWYgKG1pblNpemUud2lkdGgoKSA+PSBzdGF0aWNfY2FzdDxpbnQ+KHNpemVzW05T
Q29udHJvbFNpemVSZWd1bGFyXS53aWR0aCgpICogem9vbUxldmVsKQogICAgICAgICAmJiBtaW5T
aXplLmhlaWdodCgpID49IHN0YXRpY19jYXN0PGludD4oc2l6ZXNbTlNDb250cm9sU2l6ZVJlZ3Vs
YXJdLmhlaWdodCgpICogem9vbUxldmVsKSkKICAgICAgICAgcmV0dXJuIE5TQ29udHJvbFNpemVS
ZWd1bGFyOwpAQCAtMTEwNSw2ICsxMTE2LDEwIEBAIHZvaWQgUmVuZGVyVGhlbWVNYWM6OnNldEZv
bnRGcm9tQ29udHJvbFNpemUoUmVuZGVyU3R5bGUmIHN0eWxlLCBOU0NvbnRyb2xTaXplIGNvCiBO
U0NvbnRyb2xTaXplIFJlbmRlclRoZW1lTWFjOjpjb250cm9sU2l6ZUZvclN5c3RlbUZvbnQoY29u
c3QgUmVuZGVyU3R5bGUmIHN0eWxlKSBjb25zdAogewogICAgIGludCBmb250U2l6ZSA9IHN0eWxl
LmNvbXB1dGVkRm9udFBpeGVsU2l6ZSgpOworI2lmIEhBVkUoTEFSR0VfQ09OVFJPTF9TSVpFKQor
ICAgIGlmIChmb250U2l6ZSA+PSBbTlNGb250IHN5c3RlbUZvbnRTaXplRm9yQ29udHJvbFNpemU6
TlNDb250cm9sU2l6ZUxhcmdlXSAmJiBUaGVtZU1hYzo6c3VwcG9ydHNMYXJnZUZvcm1Db250cm9s
cygpKQorICAgICAgICByZXR1cm4gTlNDb250cm9sU2l6ZUxhcmdlOworI2VuZGlmCiAgICAgaWYg
KGZvbnRTaXplID49IFtOU0ZvbnQgc3lzdGVtRm9udFNpemVGb3JDb250cm9sU2l6ZTpOU0NvbnRy
b2xTaXplUmVndWxhcl0pCiAgICAgICAgIHJldHVybiBOU0NvbnRyb2xTaXplUmVndWxhcjsKICAg
ICBpZiAoZm9udFNpemUgPj0gW05TRm9udCBzeXN0ZW1Gb250U2l6ZUZvckNvbnRyb2xTaXplOk5T
Q29udHJvbFNpemVTbWFsbF0pCkBAIC0xMjE4LDM0ICsxMjMzLDM3IEBAIHZvaWQgUmVuZGVyVGhl
bWVNYWM6OmFkanVzdFRleHRBcmVhU3R5bGUoUmVuZGVyU3R5bGUmLCBjb25zdCBFbGVtZW50Kikg
Y29uc3QKIAogY29uc3QgaW50KiBSZW5kZXJUaGVtZU1hYzo6cG9wdXBCdXR0b25NYXJnaW5zKCkg
Y29uc3QKIHsKLSAgICBzdGF0aWMgY29uc3QgaW50IG1hcmdpbnNbM11bNF0gPQorICAgIHN0YXRp
YyBjb25zdCBpbnQgbWFyZ2luc1s0XVs0XSA9CiAgICAgewogICAgICAgICB7IDAsIDMsIDEsIDMg
fSwKICAgICAgICAgeyAwLCAzLCAyLCAzIH0sCi0gICAgICAgIHsgMCwgMSwgMCwgMSB9CisgICAg
ICAgIHsgMCwgMSwgMCwgMSB9LAorICAgICAgICB7IDAsIDMsIDEsIDMgfSwKICAgICB9OwogICAg
IHJldHVybiBtYXJnaW5zW1twb3B1cEJ1dHRvbigpIGNvbnRyb2xTaXplXV07CiB9CiAKIGNvbnN0
IEludFNpemUqIFJlbmRlclRoZW1lTWFjOjpwb3B1cEJ1dHRvblNpemVzKCkgY29uc3QKIHsKLSAg
ICBzdGF0aWMgY29uc3QgSW50U2l6ZSBzaXplc1szXSA9IHsgSW50U2l6ZSgwLCAyMSksIEludFNp
emUoMCwgMTgpLCBJbnRTaXplKDAsIDE1KSB9OworICAgIHN0YXRpYyBjb25zdCBJbnRTaXplIHNp
emVzWzRdID0geyBJbnRTaXplKDAsIDIxKSwgSW50U2l6ZSgwLCAxOCksIEludFNpemUoMCwgMTUp
LCBJbnRTaXplKDAsIDI0KSB9OwogICAgIHJldHVybiBzaXplczsKIH0KIAogY29uc3QgaW50KiBS
ZW5kZXJUaGVtZU1hYzo6cG9wdXBCdXR0b25QYWRkaW5nKE5TQ29udHJvbFNpemUgc2l6ZSwgYm9v
bCBpc1JUTCkgY29uc3QKIHsKLSAgICBzdGF0aWMgY29uc3QgaW50IHBhZGRpbmdMVFJbM11bNF0g
PQorICAgIHN0YXRpYyBjb25zdCBpbnQgcGFkZGluZ0xUUls0XVs0XSA9CiAgICAgewogICAgICAg
ICB7IDIsIDI2LCAzLCA4IH0sCiAgICAgICAgIHsgMiwgMjMsIDMsIDggfSwKLSAgICAgICAgeyAy
LCAyMiwgMywgMTAgfQorICAgICAgICB7IDIsIDIyLCAzLCAxMCB9LAorICAgICAgICB7IDIsIDI2
LCAzLCA4IH0sCiAgICAgfTsKLSAgICBzdGF0aWMgY29uc3QgaW50IHBhZGRpbmdSVExbM11bNF0g
PQorICAgIHN0YXRpYyBjb25zdCBpbnQgcGFkZGluZ1JUTFs0XVs0XSA9CiAgICAgewogICAgICAg
ICB7IDIsIDgsIDMsIDI2IH0sCiAgICAgICAgIHsgMiwgOCwgMywgMjMgfSwKLSAgICAgICAgeyAy
LCA4LCAzLCAyMiB9CisgICAgICAgIHsgMiwgOCwgMywgMjIgfSwKKyAgICAgICAgeyAyLCA4LCAz
LCAyNiB9LAogICAgIH07CiAgICAgcmV0dXJuIGlzUlRMID8gcGFkZGluZ1JUTFtzaXplXSA6IHBh
ZGRpbmdMVFJbc2l6ZV07CiB9CkBAIC0xMzg4LDE3ICsxNDA2LDE4IEBAIE5TTGV2ZWxJbmRpY2F0
b3JDZWxsKiBSZW5kZXJUaGVtZU1hYzo6bGV2ZWxJbmRpY2F0b3JGb3IoY29uc3QgUmVuZGVyTWV0
ZXImIHJlbmRlCiAKIGNvbnN0IEludFNpemUqIFJlbmRlclRoZW1lTWFjOjpwcm9ncmVzc0JhclNp
emVzKCkgY29uc3QKIHsKLSAgICBzdGF0aWMgY29uc3QgSW50U2l6ZSBzaXplc1szXSA9IHsgSW50
U2l6ZSgwLCAyMCksIEludFNpemUoMCwgMTIpLCBJbnRTaXplKDAsIDEyKSB9OworICAgIHN0YXRp
YyBjb25zdCBJbnRTaXplIHNpemVzWzRdID0geyBJbnRTaXplKDAsIDIwKSwgSW50U2l6ZSgwLCAx
MiksIEludFNpemUoMCwgMTIpLCBJbnRTaXplKDAsIDIwKSB9OwogICAgIHJldHVybiBzaXplczsK
IH0KIAogY29uc3QgaW50KiBSZW5kZXJUaGVtZU1hYzo6cHJvZ3Jlc3NCYXJNYXJnaW5zKE5TQ29u
dHJvbFNpemUgY29udHJvbFNpemUpIGNvbnN0CiB7Ci0gICAgc3RhdGljIGNvbnN0IGludCBtYXJn
aW5zWzNdWzRdID0KKyAgICBzdGF0aWMgY29uc3QgaW50IG1hcmdpbnNbNF1bNF0gPQogICAgIHsK
ICAgICAgICAgeyAwLCAwLCAxLCAwIH0sCiAgICAgICAgIHsgMCwgMCwgMSwgMCB9LAogICAgICAg
ICB7IDAsIDAsIDEsIDAgfSwKKyAgICAgICAgeyAwLCAwLCAxLCAwIH0sCiAgICAgfTsKICAgICBy
ZXR1cm4gbWFyZ2luc1tjb250cm9sU2l6ZV07CiB9CkBAIC0xNDU1LDcgKzE0NzQsMTMgQEAgYm9v
bCBSZW5kZXJUaGVtZU1hYzo6cGFpbnRQcm9ncmVzc0Jhcihjb25zdCBSZW5kZXJPYmplY3QmIHJl
bmRlck9iamVjdCwgY29uc3QgUGEKICAgICBjb25zdCBhdXRvJiByZW5kZXJQcm9ncmVzcyA9IGRv
d25jYXN0PFJlbmRlclByb2dyZXNzPihyZW5kZXJPYmplY3QpOwogICAgIEhJVGhlbWVUcmFja0Ry
YXdJbmZvIHRyYWNrSW5mbzsKICAgICB0cmFja0luZm8udmVyc2lvbiA9IDA7Ci0gICAgaWYgKGNv
bnRyb2xTaXplID09IE5TQ29udHJvbFNpemVSZWd1bGFyKQorCisgICAgYm9vbCBzaG91bGRVc2VM
YXJnZVByb2dyZXNzQmFySWZQb3NzaWJsZSA9IGNvbnRyb2xTaXplID09IE5TQ29udHJvbFNpemVS
ZWd1bGFyOworI2lmIEhBVkUoTEFSR0VfQ09OVFJPTF9TSVpFKQorICAgIGlmIChUaGVtZU1hYzo6
c3VwcG9ydHNMYXJnZUZvcm1Db250cm9scygpKQorICAgICAgICBzaG91bGRVc2VMYXJnZVByb2dy
ZXNzQmFySWZQb3NzaWJsZSB8PSBjb250cm9sU2l6ZSA9PSBOU0NvbnRyb2xTaXplTGFyZ2U7Cisj
ZW5kaWYKKyAgICBpZiAoc2hvdWxkVXNlTGFyZ2VQcm9ncmVzc0JhcklmUG9zc2libGUpCiAgICAg
ICAgIHRyYWNrSW5mby5raW5kID0gcmVuZGVyUHJvZ3Jlc3MucG9zaXRpb24oKSA8IDAgPyBrVGhl
bWVMYXJnZUluZGV0ZXJtaW5hdGVCYXIgOiBrVGhlbWVMYXJnZVByb2dyZXNzQmFyOwogICAgIGVs
c2UKICAgICAgICAgdHJhY2tJbmZvLmtpbmQgPSByZW5kZXJQcm9ncmVzcy5wb3NpdGlvbigpIDwg
MCA/IGtUaGVtZU1lZGl1bUluZGV0ZXJtaW5hdGVCYXIgOiBrVGhlbWVNZWRpdW1Qcm9ncmVzc0Jh
cjsKQEAgLTE2ODEsNyArMTcwNiw3IEBAIGJvb2wgUmVuZGVyVGhlbWVNYWM6OnBhaW50TWVudUxp
c3RCdXR0b25EZWNvcmF0aW9ucyhjb25zdCBSZW5kZXJCb3gmIHJlbmRlcmVyLCBjCiAKIHN0YXRp
YyBjb25zdCBJbnRTaXplKiBtZW51TGlzdEJ1dHRvblNpemVzKCkKIHsKLSAgICBzdGF0aWMgY29u
c3QgSW50U2l6ZSBzaXplc1szXSA9IHsgSW50U2l6ZSgwLCAyMSksIEludFNpemUoMCwgMTgpLCBJ
bnRTaXplKDAsIDE1KSB9OworICAgIHN0YXRpYyBjb25zdCBJbnRTaXplIHNpemVzWzRdID0geyBJ
bnRTaXplKDAsIDIxKSwgSW50U2l6ZSgwLCAxOCksIEludFNpemUoMCwgMTUpLCBJbnRTaXplKDAs
IDI0KSB9OwogICAgIHJldHVybiBzaXplczsKIH0KIApAQCAtMTc1Myw2ICsxNzc4LDEwIEBAIFBv
cHVwTWVudVN0eWxlOjpQb3B1cE1lbnVTaXplIFJlbmRlclRoZW1lTWFjOjpwb3B1cE1lbnVTaXpl
KGNvbnN0IFJlbmRlclN0eWxlJiBzCiAgICAgICAgIHJldHVybiBQb3B1cE1lbnVTdHlsZTo6UG9w
dXBNZW51U2l6ZVNtYWxsOwogICAgIGNhc2UgTlNDb250cm9sU2l6ZU1pbmk6CiAgICAgICAgIHJl
dHVybiBQb3B1cE1lbnVTdHlsZTo6UG9wdXBNZW51U2l6ZU1pbmk7CisjaWYgSEFWRShMQVJHRV9D
T05UUk9MX1NJWkUpCisgICAgY2FzZSBOU0NvbnRyb2xTaXplTGFyZ2U6CisgICAgICAgIHJldHVy
biBUaGVtZU1hYzo6c3VwcG9ydHNMYXJnZUZvcm1Db250cm9scygpID8gUG9wdXBNZW51U3R5bGU6
OlBvcHVwTWVudVNpemVMYXJnZSA6IFBvcHVwTWVudVN0eWxlOjpQb3B1cE1lbnVTaXplTm9ybWFs
OworI2VuZGlmCiAgICAgZGVmYXVsdDoKICAgICAgICAgcmV0dXJuIFBvcHVwTWVudVN0eWxlOjpQ
b3B1cE1lbnVTaXplTm9ybWFsOwogICAgIH0KQEAgLTE3OTgsNyArMTgyNyw3IEBAIHZvaWQgUmVu
ZGVyVGhlbWVNYWM6OnBhaW50Q2VsbEFuZFNldEZvY3VzZWRFbGVtZW50TmVlZHNSZXBhaW50SWZO
ZWNlc3NhcnkoTlNDZWxsCiAKIGNvbnN0IEludFNpemUqIFJlbmRlclRoZW1lTWFjOjptZW51TGlz
dFNpemVzKCkgY29uc3QKIHsKLSAgICBzdGF0aWMgY29uc3QgSW50U2l6ZSBzaXplc1szXSA9IHsg
SW50U2l6ZSg5LCAwKSwgSW50U2l6ZSg1LCAwKSwgSW50U2l6ZSgwLCAwKSB9OworICAgIHN0YXRp
YyBjb25zdCBJbnRTaXplIHNpemVzWzRdID0geyBJbnRTaXplKDksIDApLCBJbnRTaXplKDUsIDAp
LCBJbnRTaXplKDAsIDApLCBJbnRTaXplKDEzLCAwKSB9OwogICAgIHJldHVybiBzaXplczsKIH0K
IApAQCAtMTk4MSw3ICsyMDEwLDcgQEAgdm9pZCBSZW5kZXJUaGVtZU1hYzo6c2V0U2VhcmNoQ2Vs
bFN0YXRlKGNvbnN0IFJlbmRlck9iamVjdCYgbywgY29uc3QgSW50UmVjdCYpCiAKIGNvbnN0IElu
dFNpemUqIFJlbmRlclRoZW1lTWFjOjpzZWFyY2hGaWVsZFNpemVzKCkgY29uc3QKIHsKLSAgICBz
dGF0aWMgY29uc3QgSW50U2l6ZSBzaXplc1szXSA9IHsgSW50U2l6ZSgwLCAyMiksIEludFNpemUo
MCwgMTkpLCBJbnRTaXplKDAsIDE3KSB9OworICAgIHN0YXRpYyBjb25zdCBJbnRTaXplIHNpemVz
WzRdID0geyBJbnRTaXplKDAsIDIyKSwgSW50U2l6ZSgwLCAxOSksIEludFNpemUoMCwgMTcpLCBJ
bnRTaXplKDAsIDIyKSB9OwogICAgIHJldHVybiBzaXplczsKIH0KIApAQCAtMjA4Miw3ICsyMTEx
LDcgQEAgYm9vbCBSZW5kZXJUaGVtZU1hYzo6cGFpbnRTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbihj
b25zdCBSZW5kZXJCb3gmIGJveCwgY29uc3QgUGEKIAogY29uc3QgSW50U2l6ZSogUmVuZGVyVGhl
bWVNYWM6OmNhbmNlbEJ1dHRvblNpemVzKCkgY29uc3QKIHsKLSAgICBzdGF0aWMgY29uc3QgSW50
U2l6ZSBzaXplc1szXSA9IHsgSW50U2l6ZSgyMiwgMjIpLCBJbnRTaXplKDE5LCAxOSksIEludFNp
emUoMTUsIDE1KSB9OworICAgIHN0YXRpYyBjb25zdCBJbnRTaXplIHNpemVzWzRdID0geyBJbnRT
aXplKDIyLCAyMiksIEludFNpemUoMTksIDE5KSwgSW50U2l6ZSgxNSwgMTUpLCBJbnRTaXplKDIy
LCAyMikgfTsKICAgICByZXR1cm4gc2l6ZXM7CiB9CiAKQEAgLTIwOTcsNyArMjEyNiw3IEBAIHZv
aWQgUmVuZGVyVGhlbWVNYWM6OmFkanVzdFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uU3R5bGUoUmVu
ZGVyU3R5bGUmIHN0eWxlLCBjb25zCiBjb25zdCBpbnQgcmVzdWx0c0Fycm93V2lkdGggPSA1Owog
Y29uc3QgSW50U2l6ZSogUmVuZGVyVGhlbWVNYWM6OnJlc3VsdHNCdXR0b25TaXplcygpIGNvbnN0
CiB7Ci0gICAgc3RhdGljIGNvbnN0IEludFNpemUgc2l6ZXNbM10gPSB7IEludFNpemUoMTksIDIy
KSwgSW50U2l6ZSgxNywgMTkpLCBJbnRTaXplKDE3LCAxNSkgfTsKKyAgICBzdGF0aWMgY29uc3Qg
SW50U2l6ZSBzaXplc1s0XSA9IHsgSW50U2l6ZSgxOSwgMjIpLCBJbnRTaXplKDE3LCAxOSksIElu
dFNpemUoMTcsIDE1KSwgSW50U2l6ZSgxOSwgMjIpIH07CiAgICAgcmV0dXJuIHNpemVzOwogfQog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViUG9wdXBNZW51UHJv
eHlNYWMubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvV2ViUG9wdXBNZW51UHJveHlN
YWMubW0KaW5kZXggMDNiMzk4MDYxNjg0NjdhN2I3MDkzMmVjYjk0MTg5MmYzMTNhYTNmZC4uNjUx
MjUyNWEwNjlhMDdkZmM2MTdmNWYyYzY3NTMwOThlZDU5MjMwZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvbWFjL1dlYlBvcHVwTWVudVByb3h5TWFjLm1tCisrKyBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9XZWJQb3B1cE1lbnVQcm94eU1hYy5tbQpAQCAtMzQsNiAr
MzQsNyBAQAogI2ltcG9ydCAiUGxhdGZvcm1Qb3B1cE1lbnVEYXRhLmgiCiAjaW1wb3J0ICJTdHJp
bmdVdGlsaXRpZXMuaCIKICNpbXBvcnQgIldlYlBvcHVwSXRlbS5oIgorI2ltcG9ydCA8cGFsL3Nw
aS9tYWMvTlNDZWxsU1BJLmg+CiAjaW1wb3J0IDxwYWwvc3lzdGVtL21hYy9Qb3B1cE1lbnUuaD4K
ICNpbXBvcnQgPHd0Zi9CbG9ja09iakNFeGNlcHRpb25zLmg+CiAjaW1wb3J0IDx3dGYvUHJvY2Vz
c1ByaXZpbGVnZS5oPgpAQCAtMTYxLDYgKzE2MiwxMSBAQCB2b2lkIFdlYlBvcHVwTWVudVByb3h5
TWFjOjpzaG93UG9wdXBNZW51KGNvbnN0IEludFJlY3QmIHJlY3QsIFRleHREaXJlY3Rpb24gdGV4
dAogICAgIGNhc2UgV2ViQ29yZTo6UG9wdXBNZW51U3R5bGU6OlBvcHVwTWVudVNpemVNaW5pOgog
ICAgICAgICBjb250cm9sU2l6ZSA9IE5TQ29udHJvbFNpemVNaW5pOwogICAgICAgICBicmVhazsK
KyNpZiBIQVZFKExBUkdFX0NPTlRST0xfU0laRSkKKyAgICBjYXNlIFBvcHVwTWVudVN0eWxlOjpQ
b3B1cE1lbnVTaXplTGFyZ2U6CisgICAgICAgIGNvbnRyb2xTaXplID0gTlNDb250cm9sU2l6ZUxh
cmdlOworICAgICAgICBicmVhazsKKyNlbmRpZgogICAgIH0KIAogICAgIFJlZjxXZWJQb3B1cE1l
bnVQcm94eU1hYz4gcHJvdGVjdCgqdGhpcyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9Qb3B1cE1lbnVNYWMubW0gYi9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9Qb3B1cE1lbnVNYWMubW0KaW5kZXggNDI2ODc0MjAxZGRm
MTM4ZTliOGI0NzEwZmMwZGU0ZDZhOGIwYjBiMi4uNjJiNzQ4YmM0NGUyODIwYzdjYzEyZDdlNjM1
NThmMjBjZmZmNWU5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29y
ZVN1cHBvcnQvUG9wdXBNZW51TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dl
YkNvcmVTdXBwb3J0L1BvcHVwTWVudU1hYy5tbQpAQCAtMzMsNiArMzMsNyBAQAogI2ltcG9ydCA8
V2ViQ29yZS9GcmFtZVZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvUGFnZS5oPgogI2ltcG9ydCA8
V2ViQ29yZS9Qb3B1cE1lbnVDbGllbnQuaD4KKyNpbXBvcnQgPHBhbC9zcGkvbWFjL05TQ2VsbFNQ
SS5oPgogI2ltcG9ydCA8cGFsL3N5c3RlbS9tYWMvUG9wdXBNZW51Lmg+CiAjaW1wb3J0IDx3dGYv
QmxvY2tPYmpDRXhjZXB0aW9ucy5oPgogCkBAIC0yMDcsNiArMjA4LDExIEBAIHZvaWQgUG9wdXBN
ZW51TWFjOjpzaG93KGNvbnN0IEludFJlY3QmIHIsIEZyYW1lVmlldyogdiwgaW50IHNlbGVjdGVk
SW5kZXgpCiAgICAgY2FzZSBQb3B1cE1lbnVTdHlsZTo6UG9wdXBNZW51U2l6ZU1pbmk6CiAgICAg
ICAgIGNvbnRyb2xTaXplID0gTlNDb250cm9sU2l6ZU1pbmk7CiAgICAgICAgIGJyZWFrOworI2lm
IEhBVkUoTEFSR0VfQ09OVFJPTF9TSVpFKQorICAgIGNhc2UgUG9wdXBNZW51U3R5bGU6OlBvcHVw
TWVudVNpemVMYXJnZToKKyAgICAgICAgY29udHJvbFNpemUgPSBOU0NvbnRyb2xTaXplTGFyZ2U7
CisgICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgfQogCiAgICAgUEFMOjpwb3BVcE1lbnUobWVu
dSwgbG9jYXRpb24sIHJvdW5kZihOU1dpZHRoKHIpKSwgZHVtbXlWaWV3LmdldCgpLCBzZWxlY3Rl
ZEluZGV4LCB0b05TRm9udChmb250KSwgY29udHJvbFNpemUsICFtX2NsaWVudC0+bWVudVN0eWxl
KCkuaGFzRGVmYXVsdEFwcGVhcmFuY2UoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>