<?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>202890</bug_id>
          
          <creation_ts>2019-10-12 20:01:53 -0700</creation_ts>
          <short_desc>Convert LineBoxContain to use an OptionSet&lt;&gt;</short_desc>
          <delta_ts>2019-10-15 15:03:55 -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="Simon Fraser (smfr)">simon.fraser</reporter>
          <assigned_to name="Simon Fraser (smfr)">simon.fraser</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>lingcherd_ho</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1579474</commentid>
    <comment_count>0</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-10-12 20:01:53 -0700</bug_when>
    <thetext>Convert LineBoxContain to use an OptionSet&lt;&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579475</commentid>
    <comment_count>1</comment_count>
      <attachid>380841</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2019-10-12 20:02:50 -0700</bug_when>
    <thetext>Created attachment 380841
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579492</commentid>
    <comment_count>2</comment_count>
      <attachid>380841</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-13 09:03:02 -0700</bug_when>
    <thetext>Comment on attachment 380841
Patch

Clearing flags on attachment: 380841

Committed r251058: &lt;https://trac.webkit.org/changeset/251058&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1579493</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-10-13 09:03:04 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1580292</commentid>
    <comment_count>4</comment_count>
    <who name="Ling Ho">lingcherd_ho</who>
    <bug_when>2019-10-15 15:03:55 -0700</bug_when>
    <thetext>&lt;rdar://problem/56230764&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>380841</attachid>
            <date>2019-10-12 20:02:50 -0700</date>
            <delta_ts>2019-10-13 09:03:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-202890-20191012200248.patch</filename>
            <type>text/plain</type>
            <size>23904</size>
            <attacher name="Simon Fraser (smfr)">simon.fraser</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUxMDUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2Y1YjMxNmM5MGQyYzkw
ZjgzNDM0ODIwYTEyNDk4Y2MyOTg1ZmVhNi4uNzYyOTk3NWIzNzBhYmE1ZmE0YzMyMWVhYmE3MDll
ZWY5M2I2NjQyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDE5LTEwLTEyICBTaW1v
biBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgorCisgICAgICAgIENvbnZlcnQgTGlu
ZUJveENvbnRhaW4gdG8gdXNlIGFuIE9wdGlvblNldDw+CisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMDI4OTAKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgT3B0aW9uU2V0PExpbmVCb3hDb250YWluPi4K
KworICAgICAgICAqIGNzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Y3JlYXRlTGluZUJveENvbnRhaW5WYWx1ZSk6CisgICAgICAgICogY3NzL0NT
U0xpbmVCb3hDb250YWluVmFsdWUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTTGluZUJveENv
bnRhaW5WYWx1ZTo6Q1NTTGluZUJveENvbnRhaW5WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NMaW5lQm94Q29udGFpblZhbHVlOjpjdXN0b21DU1NUZXh0IGNvbnN0KToKKyAgICAgICAgKiBj
c3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oOgorICAgICAgICAqIGNzcy9TdHlsZUJ1aWxkZXJD
b252ZXJ0ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxlQnVpbGRlckNvbnZlcnRlcjo6Y29u
dmVydExpbmVCb3hDb250YWluKToKKyAgICAgICAgKiBjc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFy
c2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNvbnN1bWVMaW5lQm94Q29udGFpbik6CisgICAg
ICAgICogcmVuZGVyaW5nL1JlbmRlckJsb2NrLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRl
ckJsb2NrOjptaW5MaW5lSGVpZ2h0Rm9yUmVwbGFjZWRSZW5kZXJlciBjb25zdCk6CisgICAgICAg
ICogcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwOgorICAgICAgICAoV2ViQ29yZTo6Um9vdElu
bGluZUJveDo6YXNjZW50QW5kRGVzY2VudEZvckJveCBjb25zdCk6CisgICAgICAgIChXZWJDb3Jl
OjpSb290SW5saW5lQm94OjppbmNsdWRlTGVhZGluZ0ZvckJveCBjb25zdCk6CisgICAgICAgIChX
ZWJDb3JlOjpSb290SW5saW5lQm94OjppbmNsdWRlRm9udEZvckJveCBjb25zdCk6CisgICAgICAg
IChXZWJDb3JlOjpSb290SW5saW5lQm94OjppbmNsdWRlR2x5cGhzRm9yQm94IGNvbnN0KToKKyAg
ICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OmluY2x1ZGVJbml0aWFsTGV0dGVyRm9yQm94
IGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OmluY2x1ZGVNYXJnaW5G
b3JCb3ggY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6Um9vdElubGluZUJveDo6Zml0c1RvR2x5
cGhzIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJvb3RJbmxpbmVCb3g6OmluY2x1ZGVzUm9v
dExpbmVCb3hGb250T3JMZWFkaW5nIGNvbnN0KToKKyAgICAgICAgKiByZW5kZXJpbmcvU2ltcGxl
TGluZUxheW91dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaW1wbGVMaW5lTGF5b3V0OjpjYW5V
c2VGb3JGb250QW5kVGV4dCk6CisgICAgICAgIChXZWJDb3JlOjpTaW1wbGVMaW5lTGF5b3V0Ojpj
YW5Vc2VGb3JTdHlsZSk6CisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmg6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTdHlsZTo6bGluZUJveENvbnRhaW4gY29uc3QpOgor
ICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU3R5bGU6OnNldExpbmVCb3hDb250YWluKToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlclN0eWxlOjppbml0aWFsTGluZUJveENvbnRhaW4pOgorICAgICAg
ICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlN0eWxlUmFyZUluaGVyaXRlZERhdGE6OlN0eWxlUmFyZUluaGVyaXRlZERhdGEp
OgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmg6Cisg
ICAgICAgICogcmVuZGVyaW5nL3VwZGF0aW5nL1JlbmRlclRyZWVCdWlsZGVyRmlyc3RMZXR0ZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6c3R5bGVGb3JGaXJzdExldHRlcik6CisKIDIwMTktMTAt
MTIgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgSW1w
bGVtZW50IFRleHRTdHJlYW0tYmFzZWQgZHVtcGluZyBmb3IgYWxsIHRoZSBSZW5kZXJTdHlsZSBh
bmQgU1ZHUmVuZGVyU3R5bGUgZW51bSBjbGFzc2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwCmluZGV4IGIyYzJiNDE1ZDYyNmYzM2My
NzJjODVjZWM1OTNkYmU3ZDU4N2FmNjIuLmMzMDlkNDhiMjkyNTg2OGQwMDIxYTdjMWVjMjE0NmU3
OGY0NTNlZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxl
RGVjbGFyYXRpb24uY3BwCkBAIC0xNjkzLDcgKzE2OTMsNyBAQCBzdGF0aWMgUmVmPENTU1ZhbHVl
TGlzdD4gdGltaW5nRnVuY3Rpb25WYWx1ZShjb25zdCBBbmltYXRpb25MaXN0KiBhbmltYXRpb25M
aXN0KQogICAgIHJldHVybiBsaXN0OwogfQogCi1zdGF0aWMgUmVmPENTU1ZhbHVlPiBjcmVhdGVM
aW5lQm94Q29udGFpblZhbHVlKHVuc2lnbmVkIGxpbmVCb3hDb250YWluKQorc3RhdGljIFJlZjxD
U1NWYWx1ZT4gY3JlYXRlTGluZUJveENvbnRhaW5WYWx1ZShPcHRpb25TZXQ8TGluZUJveENvbnRh
aW4+IGxpbmVCb3hDb250YWluKQogewogICAgIGlmICghbGluZUJveENvbnRhaW4pCiAgICAgICAg
IHJldHVybiBDU1NWYWx1ZVBvb2w6OnNpbmdsZXRvbigpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShD
U1NWYWx1ZU5vbmUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hD
b250YWluVmFsdWUuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFs
dWUuY3BwCmluZGV4IDE5ZmRmOGI5Nzg4ZjIwODdmZGRjMDg4Njc1NDVhYzEzOTM4Mjc1ODIuLjcx
NDVkNjNjYzNlYTY5NWY2YjFjMjA2OWMyNjAzYjdmMTc0NTlhNDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFpblZhbHVlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5jcHAKQEAgLTMwLDcgKzMwLDcgQEAKIAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCi1DU1NMaW5lQm94Q29udGFpblZhbHVlOjpDU1NMaW5lQm94
Q29udGFpblZhbHVlKHVuc2lnbmVkIHZhbHVlKQorQ1NTTGluZUJveENvbnRhaW5WYWx1ZTo6Q1NT
TGluZUJveENvbnRhaW5WYWx1ZShPcHRpb25TZXQ8TGluZUJveENvbnRhaW4+IHZhbHVlKQogICAg
IDogQ1NTVmFsdWUoTGluZUJveENvbnRhaW5DbGFzcykKICAgICAsIG1fdmFsdWUodmFsdWUpCiB7
CkBAIC00MCwzNCArNDAsMzUgQEAgU3RyaW5nIENTU0xpbmVCb3hDb250YWluVmFsdWU6OmN1c3Rv
bUNTU1RleHQoKSBjb25zdAogewogICAgIFN0cmluZ0J1aWxkZXIgdGV4dDsKIAotICAgIGlmICht
X3ZhbHVlICYgTGluZUJveENvbnRhaW5CbG9jaykKKyAgICBpZiAobV92YWx1ZS5jb250YWlucyhM
aW5lQm94Q29udGFpbjo6QmxvY2spKQogICAgICAgICB0ZXh0LmFwcGVuZExpdGVyYWwoImJsb2Nr
Iik7Ci0gICAgaWYgKG1fdmFsdWUgJiBMaW5lQm94Q29udGFpbklubGluZSkgeworCisgICAgaWYg
KG1fdmFsdWUuY29udGFpbnMoTGluZUJveENvbnRhaW46OklubGluZSkpIHsKICAgICAgICAgaWYg
KCF0ZXh0LmlzRW1wdHkoKSkKICAgICAgICAgICAgIHRleHQuYXBwZW5kKCcgJyk7CiAgICAgICAg
IHRleHQuYXBwZW5kTGl0ZXJhbCgiaW5saW5lIik7CiAgICAgfQotICAgIGlmIChtX3ZhbHVlICYg
TGluZUJveENvbnRhaW5Gb250KSB7CisgICAgaWYgKG1fdmFsdWUuY29udGFpbnMoTGluZUJveENv
bnRhaW46OkZvbnQpKSB7CiAgICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpCiAgICAgICAgICAg
ICB0ZXh0LmFwcGVuZCgnICcpOwogICAgICAgICB0ZXh0LmFwcGVuZExpdGVyYWwoImZvbnQiKTsK
ICAgICB9Ci0gICAgaWYgKG1fdmFsdWUgJiBMaW5lQm94Q29udGFpbkdseXBocykgeworICAgIGlm
IChtX3ZhbHVlLmNvbnRhaW5zKExpbmVCb3hDb250YWluOjpHbHlwaHMpKSB7CiAgICAgICAgIGlm
ICghdGV4dC5pc0VtcHR5KCkpCiAgICAgICAgICAgICB0ZXh0LmFwcGVuZCgnICcpOwogICAgICAg
ICB0ZXh0LmFwcGVuZExpdGVyYWwoImdseXBocyIpOwogICAgIH0KLSAgICBpZiAobV92YWx1ZSAm
IExpbmVCb3hDb250YWluUmVwbGFjZWQpIHsKKyAgICBpZiAobV92YWx1ZS5jb250YWlucyhMaW5l
Qm94Q29udGFpbjo6UmVwbGFjZWQpKSB7CiAgICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpCiAg
ICAgICAgICAgICB0ZXh0LmFwcGVuZCgnICcpOwogICAgICAgICB0ZXh0LmFwcGVuZExpdGVyYWwo
InJlcGxhY2VkIik7CiAgICAgfQotICAgIGlmIChtX3ZhbHVlICYgTGluZUJveENvbnRhaW5Jbmxp
bmVCb3gpIHsKKyAgICBpZiAobV92YWx1ZS5jb250YWlucyhMaW5lQm94Q29udGFpbjo6SW5saW5l
Qm94KSkgewogICAgICAgICBpZiAoIXRleHQuaXNFbXB0eSgpKQogICAgICAgICAgICAgdGV4dC5h
cHBlbmQoJyAnKTsKICAgICAgICAgdGV4dC5hcHBlbmRMaXRlcmFsKCJpbmxpbmUtYm94Iik7CiAg
ICAgfQotICAgIGlmIChtX3ZhbHVlICYgTGluZUJveENvbnRhaW5Jbml0aWFsTGV0dGVyKSB7Cisg
ICAgaWYgKG1fdmFsdWUuY29udGFpbnMoTGluZUJveENvbnRhaW46OkluaXRpYWxMZXR0ZXIpKSB7
CiAgICAgICAgIGlmICghdGV4dC5pc0VtcHR5KCkpCiAgICAgICAgICAgICB0ZXh0LmFwcGVuZCgn
ICcpOwogICAgICAgICB0ZXh0LmFwcGVuZExpdGVyYWwoImluaXRpYWwtbGV0dGVyIik7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTGluZUJveENvbnRhaW5WYWx1ZS5oIGIvU291
cmNlL1dlYkNvcmUvY3NzL0NTU0xpbmVCb3hDb250YWluVmFsdWUuaAppbmRleCBjZTVmODA4MTdi
NDA1NmIxMDQyZjM5M2Q5N2FjNWVhNjVhYzEyNzFhLi5lYmU2OWI1Yjk3ODAyNWQ4NTg4MzUyNDUz
YjgzOWFkZGEzYWQ5OGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTTGluZUJv
eENvbnRhaW5WYWx1ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NMaW5lQm94Q29udGFp
blZhbHVlLmgKQEAgLTI2LDQwICsyNiwzOSBAQAogI3ByYWdtYSBvbmNlCiAKICNpbmNsdWRlICJD
U1NWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9PcHRpb25TZXQuaD4KICNpbmNsdWRlIDx3dGYvUmVm
Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ1NTUHJpbWl0aXZlVmFsdWU7CiAK
LWVudW0gTGluZUJveENvbnRhaW5GbGFncyB7Ci0gICAgTGluZUJveENvbnRhaW5Ob25lID0gMHgw
LAotICAgIExpbmVCb3hDb250YWluQmxvY2sgPSAweDEsCi0gICAgTGluZUJveENvbnRhaW5Jbmxp
bmUgPSAweDIsCi0gICAgTGluZUJveENvbnRhaW5Gb250ID0gMHg0LAotICAgIExpbmVCb3hDb250
YWluR2x5cGhzID0gMHg4LAotICAgIExpbmVCb3hDb250YWluUmVwbGFjZWQgPSAweDEwLAotICAg
IExpbmVCb3hDb250YWluSW5saW5lQm94ID0gMHgyMCwKLSAgICBMaW5lQm94Q29udGFpbkluaXRp
YWxMZXR0ZXIgPSAweDQwCitlbnVtIGNsYXNzIExpbmVCb3hDb250YWluIHsKKyAgICBCbG9jayAg
ICAgICAgICAgPSAxIDw8IDAsCisgICAgSW5saW5lICAgICAgICAgID0gMSA8PCAxLAorICAgIEZv
bnQgICAgICAgICAgICA9IDEgPDwgMiwKKyAgICBHbHlwaHMgICAgICAgICAgPSAxIDw8IDMsCisg
ICAgUmVwbGFjZWQgICAgICAgID0gMSA8PCA0LAorICAgIElubGluZUJveCAgICAgICA9IDEgPDwg
NSwKKyAgICBJbml0aWFsTGV0dGVyICAgPSAxIDw8IDYsCiB9OwotdHlwZWRlZiB1bnNpZ25lZCBM
aW5lQm94Q29udGFpbjsKIAogLy8gVXNlZCBmb3IgdGV4dC1DU1NMaW5lQm94Q29udGFpbiBhbmQg
Ym94LUNTU0xpbmVCb3hDb250YWluCiBjbGFzcyBDU1NMaW5lQm94Q29udGFpblZhbHVlIGZpbmFs
IDogcHVibGljIENTU1ZhbHVlIHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPENTU0xpbmVCb3hD
b250YWluVmFsdWU+IGNyZWF0ZShMaW5lQm94Q29udGFpbiB2YWx1ZSkKKyAgICBzdGF0aWMgUmVm
PENTU0xpbmVCb3hDb250YWluVmFsdWU+IGNyZWF0ZShPcHRpb25TZXQ8TGluZUJveENvbnRhaW4+
IHZhbHVlKQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgQ1NTTGluZUJveENv
bnRhaW5WYWx1ZSh2YWx1ZSkpOwogICAgIH0KIAogICAgIFN0cmluZyBjdXN0b21DU1NUZXh0KCkg
Y29uc3Q7CiAgICAgYm9vbCBlcXVhbHMoY29uc3QgQ1NTTGluZUJveENvbnRhaW5WYWx1ZSYgb3Ro
ZXIpIGNvbnN0IHsgcmV0dXJuIG1fdmFsdWUgPT0gb3RoZXIubV92YWx1ZTsgfQotICAgIExpbmVC
b3hDb250YWluIHZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV92YWx1ZTsgfQorICAgIE9wdGlvblNl
dDxMaW5lQm94Q29udGFpbj4gdmFsdWUoKSBjb25zdCB7IHJldHVybiBtX3ZhbHVlOyB9CiAKIHBy
aXZhdGU6Ci0gICAgZXhwbGljaXQgQ1NTTGluZUJveENvbnRhaW5WYWx1ZShMaW5lQm94Q29udGFp
bik7CisgICAgZXhwbGljaXQgQ1NTTGluZUJveENvbnRhaW5WYWx1ZShPcHRpb25TZXQ8TGluZUJv
eENvbnRhaW4+KTsKIAotICAgIExpbmVCb3hDb250YWluIG1fdmFsdWU7CisgICAgT3B0aW9uU2V0
PExpbmVCb3hDb250YWluPiBtX3ZhbHVlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oIGIv
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCmluZGV4IGMwNzNhMTBk
Njg3ZWE0NDdkZjMwNTk5NWI0ZWZlZGVlNmExNjNjNTQuLmZkNDRhOWJkNTgzNzU0MGEzZDc4MzFm
ZDY3ZDlhMDBjYmQ5MjA4YzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJ1
aWxkZXJDb252ZXJ0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVCdWlsZGVyQ29u
dmVydGVyLmgKQEAgLTEwMCw3ICsxMDAsNyBAQCBwdWJsaWM6CiAgICAgc3RhdGljIFJlZlB0cjxT
dHlsZVJlZmxlY3Rpb24+IGNvbnZlcnRSZWZsZWN0aW9uKFN0eWxlUmVzb2x2ZXImLCBjb25zdCBD
U1NWYWx1ZSYpOwogICAgIHN0YXRpYyBJbnRTaXplIGNvbnZlcnRJbml0aWFsTGV0dGVyKFN0eWxl
UmVzb2x2ZXImLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBmbG9hdCBjb252ZXJ0VGV4
dFN0cm9rZVdpZHRoKFN0eWxlUmVzb2x2ZXImLCBjb25zdCBDU1NWYWx1ZSYpOwotICAgIHN0YXRp
YyBMaW5lQm94Q29udGFpbiBjb252ZXJ0TGluZUJveENvbnRhaW4oU3R5bGVSZXNvbHZlciYsIGNv
bnN0IENTU1ZhbHVlJik7CisgICAgc3RhdGljIE9wdGlvblNldDxMaW5lQm94Q29udGFpbj4gY29u
dmVydExpbmVCb3hDb250YWluKFN0eWxlUmVzb2x2ZXImLCBjb25zdCBDU1NWYWx1ZSYpOwogICAg
IHN0YXRpYyBPcHRpb25TZXQ8VGV4dERlY29yYXRpb25Ta2lwPiBjb252ZXJ0VGV4dERlY29yYXRp
b25Ta2lwKFN0eWxlUmVzb2x2ZXImLCBjb25zdCBDU1NWYWx1ZSYpOwogICAgIHN0YXRpYyBSZWZQ
dHI8U2hhcGVWYWx1ZT4gY29udmVydFNoYXBlVmFsdWUoU3R5bGVSZXNvbHZlciYsIENTU1ZhbHVl
Jik7CiAjaWYgRU5BQkxFKENTU19TQ1JPTExfU05BUCkKQEAgLTgwNSwxMSArODA1LDExIEBAIGlu
bGluZSBmbG9hdCBTdHlsZUJ1aWxkZXJDb252ZXJ0ZXI6OmNvbnZlcnRUZXh0U3Ryb2tlV2lkdGgo
U3R5bGVSZXNvbHZlciYgc3R5bGVSCiAgICAgcmV0dXJuIHdpZHRoOwogfQogCi1pbmxpbmUgTGlu
ZUJveENvbnRhaW4gU3R5bGVCdWlsZGVyQ29udmVydGVyOjpjb252ZXJ0TGluZUJveENvbnRhaW4o
U3R5bGVSZXNvbHZlciYsIGNvbnN0IENTU1ZhbHVlJiB2YWx1ZSkKK2lubGluZSBPcHRpb25TZXQ8
TGluZUJveENvbnRhaW4+IFN0eWxlQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydExpbmVCb3hDb250
YWluKFN0eWxlUmVzb2x2ZXImLCBjb25zdCBDU1NWYWx1ZSYgdmFsdWUpCiB7CiAgICAgaWYgKGlz
PENTU1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkpIHsKICAgICAgICAgQVNTRVJUKGRvd25jYXN0PENT
U1ByaW1pdGl2ZVZhbHVlPih2YWx1ZSkudmFsdWVJRCgpID09IENTU1ZhbHVlTm9uZSk7Ci0gICAg
ICAgIHJldHVybiBMaW5lQm94Q29udGFpbk5vbmU7CisgICAgICAgIHJldHVybiB7IH07CiAgICAg
fQogCiAgICAgcmV0dXJuIGRvd25jYXN0PENTU0xpbmVCb3hDb250YWluVmFsdWU+KHZhbHVlKS52
YWx1ZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL3BhcnNlci9DU1NQcm9wZXJ0
eVBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2Vy
LmNwcAppbmRleCBmZmNiMmE2ZjJkZWJjMzBhMDkxMjFkZWIxODc5ZDA3NzExMDZlYjk3Li44Y2E0
YTU2ZTQyY2Y3YzhjMTBmZjU2ZGQ0YmY1ZTBhY2QxMWZjN2VhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvcGFyc2VyL0NTU1Byb3BlcnR5UGFyc2VyLmNwcApAQCAtMzQ5MSwzOCArMzQ5MSwz
OCBAQCBzdGF0aWMgUmVmUHRyPENTU1ZhbHVlPiBjb25zdW1lTGluZUJveENvbnRhaW4oQ1NTUGFy
c2VyVG9rZW5SYW5nZSYgcmFuZ2UpCiAgICAgaWYgKHJhbmdlLnBlZWsoKS5pZCgpID09IENTU1Zh
bHVlTm9uZSkKICAgICAgICAgcmV0dXJuIGNvbnN1bWVJZGVudChyYW5nZSk7CiAKLSAgICBMaW5l
Qm94Q29udGFpbiBsaW5lQm94Q29udGFpbiA9IExpbmVCb3hDb250YWluTm9uZTsKKyAgICBPcHRp
b25TZXQ8TGluZUJveENvbnRhaW4+IGxpbmVCb3hDb250YWluOwogICAgIAogICAgIHdoaWxlIChy
YW5nZS5wZWVrKCkudHlwZSgpID09IElkZW50VG9rZW4pIHsKICAgICAgICAgYXV0byBpZCA9IHJh
bmdlLnBlZWsoKS5pZCgpOwogICAgICAgICBpZiAoaWQgPT0gQ1NTVmFsdWVCbG9jaykgewotICAg
ICAgICAgICAgaWYgKGxpbmVCb3hDb250YWluICYgTGluZUJveENvbnRhaW5CbG9jaykKKyAgICAg
ICAgICAgIGlmIChsaW5lQm94Q29udGFpbi5jb250YWlucyhMaW5lQm94Q29udGFpbjo6QmxvY2sp
KQogICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAgICAgbGluZUJveENv
bnRhaW4gfD0gTGluZUJveENvbnRhaW5CbG9jazsKKyAgICAgICAgICAgIGxpbmVCb3hDb250YWlu
LmFkZChMaW5lQm94Q29udGFpbjo6QmxvY2spOwogICAgICAgICB9IGVsc2UgaWYgKGlkID09IENT
U1ZhbHVlSW5saW5lKSB7Ci0gICAgICAgICAgICBpZiAobGluZUJveENvbnRhaW4gJiBMaW5lQm94
Q29udGFpbklubGluZSkKKyAgICAgICAgICAgIGlmIChsaW5lQm94Q29udGFpbi5jb250YWlucyhM
aW5lQm94Q29udGFpbjo6SW5saW5lKSkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsK
LSAgICAgICAgICAgIGxpbmVCb3hDb250YWluIHw9IExpbmVCb3hDb250YWluSW5saW5lOworICAg
ICAgICAgICAgbGluZUJveENvbnRhaW4uYWRkKExpbmVCb3hDb250YWluOjpJbmxpbmUpOwogICAg
ICAgICB9IGVsc2UgaWYgKGlkID09IENTU1ZhbHVlRm9udCkgewotICAgICAgICAgICAgaWYgKGxp
bmVCb3hDb250YWluICYgTGluZUJveENvbnRhaW5Gb250KQorICAgICAgICAgICAgaWYgKGxpbmVC
b3hDb250YWluLmNvbnRhaW5zKExpbmVCb3hDb250YWluOjpGb250KSkKICAgICAgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgIGxpbmVCb3hDb250YWluIHw9IExpbmVCb3hD
b250YWluRm9udDsKKyAgICAgICAgICAgIGxpbmVCb3hDb250YWluLmFkZChMaW5lQm94Q29udGFp
bjo6Rm9udCk7CiAgICAgICAgIH0gZWxzZSBpZiAoaWQgPT0gQ1NTVmFsdWVHbHlwaHMpIHsKLSAg
ICAgICAgICAgIGlmIChsaW5lQm94Q29udGFpbiAmIExpbmVCb3hDb250YWluR2x5cGhzKQorICAg
ICAgICAgICAgaWYgKGxpbmVCb3hDb250YWluLmNvbnRhaW5zKExpbmVCb3hDb250YWluOjpHbHlw
aHMpKQogICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAgICAgbGluZUJv
eENvbnRhaW4gfD0gTGluZUJveENvbnRhaW5HbHlwaHM7CisgICAgICAgICAgICBsaW5lQm94Q29u
dGFpbi5hZGQoTGluZUJveENvbnRhaW46OkdseXBocyk7CiAgICAgICAgIH0gZWxzZSBpZiAoaWQg
PT0gQ1NTVmFsdWVSZXBsYWNlZCkgewotICAgICAgICAgICAgaWYgKGxpbmVCb3hDb250YWluICYg
TGluZUJveENvbnRhaW5SZXBsYWNlZCkKKyAgICAgICAgICAgIGlmIChsaW5lQm94Q29udGFpbi5j
b250YWlucyhMaW5lQm94Q29udGFpbjo6UmVwbGFjZWQpKQogICAgICAgICAgICAgICAgIHJldHVy
biBudWxscHRyOwotICAgICAgICAgICAgbGluZUJveENvbnRhaW4gfD0gTGluZUJveENvbnRhaW5S
ZXBsYWNlZDsKKyAgICAgICAgICAgIGxpbmVCb3hDb250YWluLmFkZChMaW5lQm94Q29udGFpbjo6
UmVwbGFjZWQpOwogICAgICAgICB9IGVsc2UgaWYgKGlkID09IENTU1ZhbHVlSW5saW5lQm94KSB7
Ci0gICAgICAgICAgICBpZiAobGluZUJveENvbnRhaW4gJiBMaW5lQm94Q29udGFpbklubGluZUJv
eCkKKyAgICAgICAgICAgIGlmIChsaW5lQm94Q29udGFpbi5jb250YWlucyhMaW5lQm94Q29udGFp
bjo6SW5saW5lQm94KSkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAg
ICAgIGxpbmVCb3hDb250YWluIHw9IExpbmVCb3hDb250YWluSW5saW5lQm94OworICAgICAgICAg
ICAgbGluZUJveENvbnRhaW4uYWRkKExpbmVCb3hDb250YWluOjpJbmxpbmVCb3gpOwogICAgICAg
ICB9IGVsc2UgaWYgKGlkID09IENTU1ZhbHVlSW5pdGlhbExldHRlcikgewotICAgICAgICAgICAg
aWYgKGxpbmVCb3hDb250YWluICYgTGluZUJveENvbnRhaW5Jbml0aWFsTGV0dGVyKQorICAgICAg
ICAgICAgaWYgKGxpbmVCb3hDb250YWluLmNvbnRhaW5zKExpbmVCb3hDb250YWluOjpJbml0aWFs
TGV0dGVyKSkKICAgICAgICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgICAgIGxp
bmVCb3hDb250YWluIHw9IExpbmVCb3hDb250YWluSW5pdGlhbExldHRlcjsKKyAgICAgICAgICAg
IGxpbmVCb3hDb250YWluLmFkZChMaW5lQm94Q29udGFpbjo6SW5pdGlhbExldHRlcik7CiAgICAg
ICAgIH0gZWxzZQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgICAgIHJhbmdlLmNv
bnN1bWVJbmNsdWRpbmdXaGl0ZXNwYWNlKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9y
ZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRl
ckJsb2NrLmNwcAppbmRleCAxZGMzMDRjM2FkOGVmOWYxZjU3ZDFkOTcxMzkzMmJhZTBlOTU2OTg3
Li4zNGU3ODliZmMzNGQ2Zjg5MzBiM2JmNDI5OTEyMDU4NDEwMTZmYThhIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQmxvY2suY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9SZW5kZXJCbG9jay5jcHAKQEAgLTI1MTIsNyArMjUxMiw3IEBAIExheW91
dFVuaXQgUmVuZGVyQmxvY2s6Om1pbkxpbmVIZWlnaHRGb3JSZXBsYWNlZFJlbmRlcmVyKGJvb2wg
aXNGaXJzdExpbmUsIExheW91CiAgICAgICAgIHJldHVybiByZXBsYWNlZEhlaWdodDsKIAogICAg
IGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSA9IGlzRmlyc3RMaW5lID8gZmlyc3RMaW5lU3R5bGUo
KSA6IHRoaXMtPnN0eWxlKCk7Ci0gICAgaWYgKCEoc3R5bGUubGluZUJveENvbnRhaW4oKSAmIExp
bmVCb3hDb250YWluQmxvY2spKQorICAgIGlmICghKHN0eWxlLmxpbmVCb3hDb250YWluKCkuY29u
dGFpbnMoTGluZUJveENvbnRhaW46OkJsb2NrKSkpCiAgICAgICAgIHJldHVybiAwOwogCiAgICAg
cmV0dXJuIHN0ZDo6bWF4PExheW91dFVuaXQ+KHJlcGxhY2VkSGVpZ2h0LCBsaW5lSGVpZ2h0KGlz
Rmlyc3RMaW5lLCBpc0hvcml6b250YWxXcml0aW5nTW9kZSgpID8gSG9yaXpvbnRhbExpbmUgOiBW
ZXJ0aWNhbExpbmUsIFBvc2l0aW9uT2ZJbnRlcmlvckxpbmVCb3hlcykpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1Jvb3RJbmxpbmVCb3guY3BwCmluZGV4IDgxOTQzMDkzMTVmNjc5YWVmOTY0
MWI4ZmEzMjlhM2E3ZjBmMGQ5ZDAuLjNjZjdlNjgwOWQwMGMxOTgzYWFiZWIwNjA5MzA1OTJlMjc4
NDNmZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9Sb290SW5saW5lQm94
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUm9vdElubGluZUJveC5jcHAKQEAg
LTg4Miw3ICs4ODIsNyBAQCB2b2lkIFJvb3RJbmxpbmVCb3g6OmFzY2VudEFuZERlc2NlbnRGb3JC
b3goSW5saW5lQm94JiBib3gsIEdseXBoT3ZlcmZsb3dBbmRGYWxsYgogICAgIC8vIFJlcGxhY2Vk
IGJveGVzIHdpbGwgcmV0dXJuIDAgZm9yIHRoZSBsaW5lLWhlaWdodCBpZiBsaW5lLWJveC1jb250
YWluIHNheXMgdGhleSBhcmUKICAgICAvLyBub3QgdG8gYmUgaW5jbHVkZWQuCiAgICAgaWYgKGJv
eC5yZW5kZXJlcigpLmlzUmVwbGFjZWQoKSkgewotICAgICAgICBpZiAobGluZVN0eWxlKCkubGlu
ZUJveENvbnRhaW4oKSAmIExpbmVCb3hDb250YWluUmVwbGFjZWQpIHsKKyAgICAgICAgaWYgKGxp
bmVTdHlsZSgpLmxpbmVCb3hDb250YWluKCkuY29udGFpbnMoTGluZUJveENvbnRhaW46OlJlcGxh
Y2VkKSkgewogICAgICAgICAgICAgYXNjZW50ID0gYm94LmJhc2VsaW5lUG9zaXRpb24oYmFzZWxp
bmVUeXBlKCkpOwogICAgICAgICAgICAgZGVzY2VudCA9IGJveC5saW5lSGVpZ2h0KCkgLSBhc2Nl
bnQ7CiAgICAgICAgICAgICAKQEAgLTEwNjgsOCArMTA2OCw4IEBAIGJvb2wgUm9vdElubGluZUJv
eDo6aW5jbHVkZUxlYWRpbmdGb3JCb3goSW5saW5lQm94JiBib3gpIGNvbnN0CiAgICAgaWYgKGJv
eC5yZW5kZXJlcigpLmlzUmVwbGFjZWQoKSB8fCAoYm94LnJlbmRlcmVyKCkuaXNUZXh0T3JMaW5l
QnJlYWsoKSAmJiAhYm94LmJlaGF2ZXNMaWtlVGV4dCgpKSkKICAgICAgICAgcmV0dXJuIGZhbHNl
OwogCi0gICAgTGluZUJveENvbnRhaW4gbGluZUJveENvbnRhaW4gPSByZW5kZXJlcigpLnN0eWxl
KCkubGluZUJveENvbnRhaW4oKTsKLSAgICByZXR1cm4gKGxpbmVCb3hDb250YWluICYgTGluZUJv
eENvbnRhaW5JbmxpbmUpIHx8ICgmYm94ID09IHRoaXMgJiYgKGxpbmVCb3hDb250YWluICYgTGlu
ZUJveENvbnRhaW5CbG9jaykpOworICAgIGF1dG8gbGluZUJveENvbnRhaW4gPSByZW5kZXJlcigp
LnN0eWxlKCkubGluZUJveENvbnRhaW4oKTsKKyAgICByZXR1cm4gbGluZUJveENvbnRhaW4uY29u
dGFpbnMoTGluZUJveENvbnRhaW46OklubGluZSkgfHwgKCZib3ggPT0gdGhpcyAmJiBsaW5lQm94
Q29udGFpbi5jb250YWlucyhMaW5lQm94Q29udGFpbjo6QmxvY2spKTsKIH0KIAogYm9vbCBSb290
SW5saW5lQm94OjppbmNsdWRlRm9udEZvckJveChJbmxpbmVCb3gmIGJveCkgY29uc3QKQEAgLTEw
ODAsOCArMTA4MCw3IEBAIGJvb2wgUm9vdElubGluZUJveDo6aW5jbHVkZUZvbnRGb3JCb3goSW5s
aW5lQm94JiBib3gpIGNvbnN0CiAgICAgaWYgKCFib3guYmVoYXZlc0xpa2VUZXh0KCkgJiYgaXM8
SW5saW5lRmxvd0JveD4oYm94KSAmJiAhZG93bmNhc3Q8SW5saW5lRmxvd0JveD4oYm94KS5oYXNU
ZXh0Q2hpbGRyZW4oKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgTGluZUJveENvbnRh
aW4gbGluZUJveENvbnRhaW4gPSByZW5kZXJlcigpLnN0eWxlKCkubGluZUJveENvbnRhaW4oKTsK
LSAgICByZXR1cm4gKGxpbmVCb3hDb250YWluICYgTGluZUJveENvbnRhaW5Gb250KTsKKyAgICBy
ZXR1cm4gcmVuZGVyZXIoKS5zdHlsZSgpLmxpbmVCb3hDb250YWluKCkuY29udGFpbnMoTGluZUJv
eENvbnRhaW46OkZvbnQpOwogfQogCiBib29sIFJvb3RJbmxpbmVCb3g6OmluY2x1ZGVHbHlwaHNG
b3JCb3goSW5saW5lQm94JiBib3gpIGNvbnN0CkBAIC0xMDkyLDggKzEwOTEsNyBAQCBib29sIFJv
b3RJbmxpbmVCb3g6OmluY2x1ZGVHbHlwaHNGb3JCb3goSW5saW5lQm94JiBib3gpIGNvbnN0CiAg
ICAgaWYgKCFib3guYmVoYXZlc0xpa2VUZXh0KCkgJiYgaXM8SW5saW5lRmxvd0JveD4oYm94KSAm
JiAhZG93bmNhc3Q8SW5saW5lRmxvd0JveD4oYm94KS5oYXNUZXh0Q2hpbGRyZW4oKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwogCi0gICAgTGluZUJveENvbnRhaW4gbGluZUJveENvbnRhaW4gPSBy
ZW5kZXJlcigpLnN0eWxlKCkubGluZUJveENvbnRhaW4oKTsKLSAgICByZXR1cm4gKGxpbmVCb3hD
b250YWluICYgTGluZUJveENvbnRhaW5HbHlwaHMpOworICAgIHJldHVybiByZW5kZXJlcigpLnN0
eWxlKCkubGluZUJveENvbnRhaW4oKS5jb250YWlucyhMaW5lQm94Q29udGFpbjo6R2x5cGhzKTsK
IH0KIAogYm9vbCBSb290SW5saW5lQm94OjppbmNsdWRlSW5pdGlhbExldHRlckZvckJveChJbmxp
bmVCb3gmIGJveCkgY29uc3QKQEAgLTExMDQsOCArMTEwMiw3IEBAIGJvb2wgUm9vdElubGluZUJv
eDo6aW5jbHVkZUluaXRpYWxMZXR0ZXJGb3JCb3goSW5saW5lQm94JiBib3gpIGNvbnN0CiAgICAg
aWYgKCFib3guYmVoYXZlc0xpa2VUZXh0KCkgJiYgaXM8SW5saW5lRmxvd0JveD4oYm94KSAmJiAh
ZG93bmNhc3Q8SW5saW5lRmxvd0JveD4oYm94KS5oYXNUZXh0Q2hpbGRyZW4oKSkKICAgICAgICAg
cmV0dXJuIGZhbHNlOwogCi0gICAgTGluZUJveENvbnRhaW4gbGluZUJveENvbnRhaW4gPSByZW5k
ZXJlcigpLnN0eWxlKCkubGluZUJveENvbnRhaW4oKTsKLSAgICByZXR1cm4gKGxpbmVCb3hDb250
YWluICYgTGluZUJveENvbnRhaW5Jbml0aWFsTGV0dGVyKTsKKyAgICByZXR1cm4gcmVuZGVyZXIo
KS5zdHlsZSgpLmxpbmVCb3hDb250YWluKCkuY29udGFpbnMoTGluZUJveENvbnRhaW46OkluaXRp
YWxMZXR0ZXIpOwogfQogCiBib29sIFJvb3RJbmxpbmVCb3g6OmluY2x1ZGVNYXJnaW5Gb3JCb3go
SW5saW5lQm94JiBib3gpIGNvbnN0CkBAIC0xMTEzLDIxICsxMTEwLDE3IEBAIGJvb2wgUm9vdElu
bGluZUJveDo6aW5jbHVkZU1hcmdpbkZvckJveChJbmxpbmVCb3gmIGJveCkgY29uc3QKICAgICBp
ZiAoYm94LnJlbmRlcmVyKCkuaXNSZXBsYWNlZCgpIHx8IChib3gucmVuZGVyZXIoKS5pc1RleHRP
ckxpbmVCcmVhaygpICYmICFib3guYmVoYXZlc0xpa2VUZXh0KCkpKQogICAgICAgICByZXR1cm4g
ZmFsc2U7CiAKLSAgICBMaW5lQm94Q29udGFpbiBsaW5lQm94Q29udGFpbiA9IHJlbmRlcmVyKCku
c3R5bGUoKS5saW5lQm94Q29udGFpbigpOwotICAgIHJldHVybiBsaW5lQm94Q29udGFpbiAmIExp
bmVCb3hDb250YWluSW5saW5lQm94OworICAgIHJldHVybiByZW5kZXJlcigpLnN0eWxlKCkubGlu
ZUJveENvbnRhaW4oKS5jb250YWlucyhMaW5lQm94Q29udGFpbjo6SW5saW5lQm94KTsKIH0KIAot
CiBib29sIFJvb3RJbmxpbmVCb3g6OmZpdHNUb0dseXBocygpIGNvbnN0CiB7Ci0gICAgTGluZUJv
eENvbnRhaW4gbGluZUJveENvbnRhaW4gPSByZW5kZXJlcigpLnN0eWxlKCkubGluZUJveENvbnRh
aW4oKTsKLSAgICByZXR1cm4gKChsaW5lQm94Q29udGFpbiAmIExpbmVCb3hDb250YWluR2x5cGhz
KSB8fCAobGluZUJveENvbnRhaW4gJiBMaW5lQm94Q29udGFpbkluaXRpYWxMZXR0ZXIpKTsKKyAg
ICByZXR1cm4gcmVuZGVyZXIoKS5zdHlsZSgpLmxpbmVCb3hDb250YWluKCkuY29udGFpbnNBbnko
eyBMaW5lQm94Q29udGFpbjo6R2x5cGhzLCBMaW5lQm94Q29udGFpbjo6SW5pdGlhbExldHRlciB9
KTsKIH0KIAogYm9vbCBSb290SW5saW5lQm94OjppbmNsdWRlc1Jvb3RMaW5lQm94Rm9udE9yTGVh
ZGluZygpIGNvbnN0CiB7Ci0gICAgTGluZUJveENvbnRhaW4gbGluZUJveENvbnRhaW4gPSByZW5k
ZXJlcigpLnN0eWxlKCkubGluZUJveENvbnRhaW4oKTsKLSAgICByZXR1cm4gKGxpbmVCb3hDb250
YWluICYgTGluZUJveENvbnRhaW5CbG9jaykgfHwgKGxpbmVCb3hDb250YWluICYgTGluZUJveENv
bnRhaW5JbmxpbmUpIHx8IChsaW5lQm94Q29udGFpbiAmIExpbmVCb3hDb250YWluRm9udCk7Cisg
ICAgcmV0dXJuIHJlbmRlcmVyKCkuc3R5bGUoKS5saW5lQm94Q29udGFpbigpLmNvbnRhaW5zQW55
KHsgTGluZUJveENvbnRhaW46OkJsb2NrLCBMaW5lQm94Q29udGFpbjo6SW5saW5lLCBMaW5lQm94
Q29udGFpbjo6Rm9udCB9KTsKIH0KIAogTm9kZSogUm9vdElubGluZUJveDo6Z2V0TG9naWNhbFN0
YXJ0Qm94V2l0aE5vZGUoSW5saW5lQm94KiYgc3RhcnRCb3gpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvU2ltcGxlTGluZUxheW91dC5jcHAKaW5kZXggYTUzZTM1ZDNmNDkwMWY4
MjFjMTRlODE0ZGI5ODA2NWVhOWZhNzgyOC4uMGNkNGUxZTc3YTUzM2M2ZmU5MDM5MTcyOTBmYWVh
ZWY3NmM3MDFlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1NpbXBsZUxp
bmVMYXlvdXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9TaW1wbGVMaW5lTGF5
b3V0LmNwcApAQCAtMTYyLDcgKzE2Miw3IEBAIHN0YXRpYyBBdm9pZGFuY2VSZWFzb25GbGFncyBj
YW5Vc2VGb3JGb250QW5kVGV4dChjb25zdCBSZW5kZXJCbG9ja0Zsb3cmIGZsb3csIEluCiAgICAg
aWYgKGZvbnRDYXNjYWRlLnByaW1hcnlGb250KCkuaXNJbnRlcnN0aXRpYWwoKSkKICAgICAgICAg
U0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SXNNaXNzaW5nUHJpbWFyeUZvbnQs
IHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICBPcHRpb25hbDxmbG9hdD4gbGluZUhlaWdo
dENvbnN0cmFpbnQ7Ci0gICAgaWYgKHN0eWxlLmxpbmVCb3hDb250YWluKCkgJiBMaW5lQm94Q29u
dGFpbkdseXBocykKKyAgICBpZiAoc3R5bGUubGluZUJveENvbnRhaW4oKS5jb250YWlucyhMaW5l
Qm94Q29udGFpbjo6R2x5cGhzKSkKICAgICAgICAgbGluZUhlaWdodENvbnN0cmFpbnQgPSBsaW5l
SGVpZ2h0RnJvbUZsb3coZmxvdykudG9GbG9hdCgpOwogICAgIGJvb2wgZmxvd0lzSnVzdGlmaWVk
ID0gc3R5bGUudGV4dEFsaWduKCkgPT0gVGV4dEFsaWduTW9kZTo6SnVzdGlmeTsKICAgICBmb3Ig
KGNvbnN0IGF1dG8mIHRleHRSZW5kZXJlciA6IGNoaWxkcmVuT2ZUeXBlPFJlbmRlclRleHQ+KGZs
b3cpKSB7CkBAIC0yMDgsNyArMjA4LDcgQEAgc3RhdGljIEF2b2lkYW5jZVJlYXNvbkZsYWdzIGNh
blVzZUZvclN0eWxlKGNvbnN0IFJlbmRlclN0eWxlJiBzdHlsZSwgSW5jbHVkZVJlYXMKICAgICAg
ICAgU0VUX1JFQVNPTl9BTkRfUkVUVVJOX0lGX05FRURFRChGbG93SGFzT3ZlcmZsb3dOb3RWaXNp
YmxlLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7CiAgICAgaWYgKCFzdHlsZS5pc0xlZnRUb1Jp
Z2h0RGlyZWN0aW9uKCkpCiAgICAgICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQo
Rmxvd0lzTm90TFRSLCByZWFzb25zLCBpbmNsdWRlUmVhc29ucyk7Ci0gICAgaWYgKCEoc3R5bGUu
bGluZUJveENvbnRhaW4oKSAmIExpbmVCb3hDb250YWluQmxvY2spKQorICAgIGlmICghKHN0eWxl
LmxpbmVCb3hDb250YWluKCkuY29udGFpbnMoTGluZUJveENvbnRhaW46OkJsb2NrKSkpCiAgICAg
ICAgIFNFVF9SRUFTT05fQU5EX1JFVFVSTl9JRl9ORUVERUQoRmxvd0hhc0xpbmVCb3hDb250YWlu
UHJvcGVydHksIHJlYXNvbnMsIGluY2x1ZGVSZWFzb25zKTsKICAgICBpZiAoc3R5bGUud3JpdGlu
Z01vZGUoKSAhPSBUb3BUb0JvdHRvbVdyaXRpbmdNb2RlKQogICAgICAgICBTRVRfUkVBU09OX0FO
RF9SRVRVUk5fSUZfTkVFREVEKEZsb3dJc05vdFRvcFRvQm90dG9tLCByZWFzb25zLCBpbmNsdWRl
UmVhc29ucyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvUmVu
ZGVyU3R5bGUuaCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5o
CmluZGV4IGNiZjI1MzYzYWM1YmZmZDg0NDU4YTlhNWE1Y2Y2ZWZmNzU1YWY5ODUuLmM5MTVmZGIx
ZDEzMTE1OGU2OGQ5MmU1OWM1MjA1MzRiYjA1YTE1ZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5oCkBAIC02OTMsOCArNjkzLDggQEAgcHVibGljOgog
ICAgIGNvbnN0IExlbmd0aCYgcGVyc3BlY3RpdmVPcmlnaW5ZKCkgY29uc3QgeyByZXR1cm4gbV9y
YXJlTm9uSW5oZXJpdGVkRGF0YS0+cGVyc3BlY3RpdmVPcmlnaW5ZOyB9CiAgICAgY29uc3QgTGVu
Z3RoU2l6ZSYgcGFnZVNpemUoKSBjb25zdCB7IHJldHVybiBtX3JhcmVOb25Jbmhlcml0ZWREYXRh
LT5wYWdlU2l6ZTsgfQogICAgIFBhZ2VTaXplVHlwZSBwYWdlU2l6ZVR5cGUoKSBjb25zdCB7IHJl
dHVybiBzdGF0aWNfY2FzdDxQYWdlU2l6ZVR5cGU+KG1fcmFyZU5vbkluaGVyaXRlZERhdGEtPnBh
Z2VTaXplVHlwZSk7IH0KLSAgICAKLSAgICBMaW5lQm94Q29udGFpbiBsaW5lQm94Q29udGFpbigp
IGNvbnN0IHsgcmV0dXJuIG1fcmFyZUluaGVyaXRlZERhdGEtPmxpbmVCb3hDb250YWluOyB9CisK
KyAgICBPcHRpb25TZXQ8TGluZUJveENvbnRhaW4+IGxpbmVCb3hDb250YWluKCkgY29uc3QgeyBy
ZXR1cm4gT3B0aW9uU2V0PExpbmVCb3hDb250YWluPjo6ZnJvbVJhdyhtX3JhcmVJbmhlcml0ZWRE
YXRhLT5saW5lQm94Q29udGFpbik7IH0KICAgICBjb25zdCBMaW5lQ2xhbXBWYWx1ZSYgbGluZUNs
YW1wKCkgY29uc3QgeyByZXR1cm4gbV9yYXJlTm9uSW5oZXJpdGVkRGF0YS0+bGluZUNsYW1wOyB9
CiAgICAgY29uc3QgSW50U2l6ZSYgaW5pdGlhbExldHRlcigpIGNvbnN0IHsgcmV0dXJuIG1fcmFy
ZU5vbkluaGVyaXRlZERhdGEtPmluaXRpYWxMZXR0ZXI7IH0KICAgICBpbnQgaW5pdGlhbExldHRl
ckRyb3AoKSBjb25zdCB7IHJldHVybiBpbml0aWFsTGV0dGVyKCkud2lkdGgoKTsgfQpAQCAtMTIx
Miw3ICsxMjEyLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0UGFnZVNpemVUeXBlKFBhZ2VTaXpl
VHlwZSB0KSB7IFNFVF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgcGFnZVNpemVUeXBlLCB0
KTsgfQogICAgIHZvaWQgcmVzZXRQYWdlU2l6ZVR5cGUoKSB7IFNFVF9WQVIobV9yYXJlTm9uSW5o
ZXJpdGVkRGF0YSwgcGFnZVNpemVUeXBlLCBQQUdFX1NJWkVfQVVUTyk7IH0KIAotICAgIHZvaWQg
c2V0TGluZUJveENvbnRhaW4oTGluZUJveENvbnRhaW4gYykgeyBTRVRfVkFSKG1fcmFyZUluaGVy
aXRlZERhdGEsIGxpbmVCb3hDb250YWluLCBjKTsgfQorICAgIHZvaWQgc2V0TGluZUJveENvbnRh
aW4oT3B0aW9uU2V0PExpbmVCb3hDb250YWluPiBjKSB7IFNFVF9WQVIobV9yYXJlSW5oZXJpdGVk
RGF0YSwgbGluZUJveENvbnRhaW4sIGMudG9SYXcoKSk7IH0KICAgICB2b2lkIHNldExpbmVDbGFt
cChMaW5lQ2xhbXBWYWx1ZSBjKSB7IFNFVF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgbGlu
ZUNsYW1wLCBjKTsgfQogICAgIAogICAgIHZvaWQgc2V0SW5pdGlhbExldHRlcihjb25zdCBJbnRT
aXplJiBzaXplKSB7IFNFVF9WQVIobV9yYXJlTm9uSW5oZXJpdGVkRGF0YSwgaW5pdGlhbExldHRl
ciwgc2l6ZSk7IH0KQEAgLTE1ODIsNyArMTU4Miw3IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29u
c3QgQXRvbVN0cmluZyYgaW5pdGlhbFRleHRFbXBoYXNpc0N1c3RvbU1hcmsoKSB7IHJldHVybiBu
dWxsQXRvbSgpOyB9CiAgICAgc3RhdGljIE9wdGlvblNldDxUZXh0RW1waGFzaXNQb3NpdGlvbj4g
aW5pdGlhbFRleHRFbXBoYXNpc1Bvc2l0aW9uKCkgeyByZXR1cm4geyBUZXh0RW1waGFzaXNQb3Np
dGlvbjo6T3ZlciwgVGV4dEVtcGhhc2lzUG9zaXRpb246OlJpZ2h0IH07IH0KICAgICBzdGF0aWMg
UnVieVBvc2l0aW9uIGluaXRpYWxSdWJ5UG9zaXRpb24oKSB7IHJldHVybiBSdWJ5UG9zaXRpb246
OkJlZm9yZTsgfQotICAgIHN0YXRpYyBMaW5lQm94Q29udGFpbiBpbml0aWFsTGluZUJveENvbnRh
aW4oKSB7IHJldHVybiBMaW5lQm94Q29udGFpbkJsb2NrIHwgTGluZUJveENvbnRhaW5JbmxpbmUg
fCBMaW5lQm94Q29udGFpblJlcGxhY2VkOyB9CisgICAgc3RhdGljIE9wdGlvblNldDxMaW5lQm94
Q29udGFpbj4gaW5pdGlhbExpbmVCb3hDb250YWluKCkgeyByZXR1cm4geyBMaW5lQm94Q29udGFp
bjo6QmxvY2ssIExpbmVCb3hDb250YWluOjpJbmxpbmUsIExpbmVCb3hDb250YWluOjpSZXBsYWNl
ZCB9OyB9CiAgICAgc3RhdGljIEltYWdlT3JpZW50YXRpb24gaW5pdGlhbEltYWdlT3JpZW50YXRp
b24oKSB7IHJldHVybiBJbWFnZU9yaWVudGF0aW9uOjpOb25lOyB9CiAgICAgc3RhdGljIEltYWdl
UmVuZGVyaW5nIGluaXRpYWxJbWFnZVJlbmRlcmluZygpIHsgcmV0dXJuIEltYWdlUmVuZGVyaW5n
OjpBdXRvOyB9CiAgICAgc3RhdGljIEltYWdlUmVzb2x1dGlvblNvdXJjZSBpbml0aWFsSW1hZ2VS
ZXNvbHV0aW9uU291cmNlKCkgeyByZXR1cm4gSW1hZ2VSZXNvbHV0aW9uU291cmNlOjpTcGVjaWZp
ZWQ7IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVJbmhlcml0ZWREYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHls
ZVJhcmVJbmhlcml0ZWREYXRhLmNwcAppbmRleCA5NmRiYmEwMDdlNmE2NGE3ZDY5N2EyOWEyMWQ2
MjFhZDQ0NzU0YjZkLi4xN2ExMTc4N2U2YTA4MmVkMTZiY2UxZWZhMWM3MzNhNDg0ZmQ2N2UwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVSYXJlSW5oZXJp
dGVkRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUmFy
ZUluaGVyaXRlZERhdGEuY3BwCkBAIC0xMDIsNyArMTAyLDcgQEAgU3R5bGVSYXJlSW5oZXJpdGVk
RGF0YTo6U3R5bGVSYXJlSW5oZXJpdGVkRGF0YSgpCiAgICAgLCB0ZXh0SW5kZW50TGluZShSZW5k
ZXJTdHlsZTo6aW5pdGlhbFRleHRJbmRlbnRMaW5lKCkpCiAgICAgLCB0ZXh0SW5kZW50VHlwZShS
ZW5kZXJTdHlsZTo6aW5pdGlhbFRleHRJbmRlbnRUeXBlKCkpCiAjZW5kaWYKLSAgICAsIGxpbmVC
b3hDb250YWluKFJlbmRlclN0eWxlOjppbml0aWFsTGluZUJveENvbnRhaW4oKSkKKyAgICAsIGxp
bmVCb3hDb250YWluKHN0YXRpY19jYXN0PHVuc2lnbmVkPihSZW5kZXJTdHlsZTo6aW5pdGlhbExp
bmVCb3hDb250YWluKCkudG9SYXcoKSkpCiAjaWYgRU5BQkxFKENTU19JTUFHRV9PUklFTlRBVElP
TikKICAgICAsIGltYWdlT3JpZW50YXRpb24oUmVuZGVyU3R5bGU6OmluaXRpYWxJbWFnZU9yaWVu
dGF0aW9uKCkpCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TdHlsZVJhcmVJbmhlcml0ZWREYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
c3R5bGUvU3R5bGVSYXJlSW5oZXJpdGVkRGF0YS5oCmluZGV4IDNkZGJiZDAxMDkzODNjZWU2YjBk
YTRhZGFmMjM3NmViMWZiM2FlN2MuLmNkODdjMzdhOTg5MmE1MjY3ODVhMWFlZDZjMjc3ZTk2NDM1
ZjE4OTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZVJh
cmVJbmhlcml0ZWREYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0
eWxlUmFyZUluaGVyaXRlZERhdGEuaApAQCAtMTE4LDcgKzExOCw3IEBAIHB1YmxpYzoKICAgICB1
bnNpZ25lZCB0ZXh0SW5kZW50TGluZSA6IDE7IC8vIFRleHRJbmRlbnRMaW5lCiAgICAgdW5zaWdu
ZWQgdGV4dEluZGVudFR5cGUgOiAxOyAvLyBUZXh0SW5kZW50VHlwZQogI2VuZGlmCi0gICAgdW5z
aWduZWQgbGluZUJveENvbnRhaW46IDc7IC8vIExpbmVCb3hDb250YWluCisgICAgdW5zaWduZWQg
bGluZUJveENvbnRhaW46IDc7IC8vIE9wdGlvblNldDxMaW5lQm94Q29udGFpbj4KICAgICAvLyBD
U1MgSW1hZ2UgVmFsdWVzIExldmVsIDMKICNpZiBFTkFCTEUoQ1NTX0lNQUdFX09SSUVOVEFUSU9O
KQogICAgIHVuc2lnbmVkIGltYWdlT3JpZW50YXRpb24gOiA0OyAvLyBJbWFnZU9yaWVudGF0aW9u
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRpbmcvUmVuZGVyVHJl
ZUJ1aWxkZXJGaXJzdExldHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvdXBkYXRp
bmcvUmVuZGVyVHJlZUJ1aWxkZXJGaXJzdExldHRlci5jcHAKaW5kZXggYWY1NDJkN2I0ODBiYjEx
MmJhNGM1ZjYzNjlkNWRlYWZhMjE0NmVkZC4uY2I4OGI3ODU2ZmEyMDMyYzg1YTFjMDY5MjYxOTA0
MTg3YjJmNmNjNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3VwZGF0aW5n
L1JlbmRlclRyZWVCdWlsZGVyRmlyc3RMZXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy91cGRhdGluZy9SZW5kZXJUcmVlQnVpbGRlckZpcnN0TGV0dGVyLmNwcApAQCAtNTYs
NyArNTYsNyBAQCBzdGF0aWMgUmVuZGVyU3R5bGUgc3R5bGVGb3JGaXJzdExldHRlcihjb25zdCBS
ZW5kZXJCbG9jayYgZmlyc3RMZXR0ZXJCbG9jaywgY29ucwogICAgICAgICAvLyBGb3IgYW4gTi1s
aW5lIGZpcnN0LWxldHRlciBhbmQgZm9yIGFscGhhYmV0aWMgYmFzZWxpbmVzLCB0aGUgY2FwLWhl
aWdodCBvZiB0aGUgZmlyc3QgbGV0dGVyIG5lZWRzIHRvIGVxdWFsIChOLTEpKmxpbmUtaGVpZ2h0
IG9mIHBhcmFncmFwaCBsaW5lcyArIGNhcC1oZWlnaHQgb2YgdGhlIHBhcmFncmFwaAogICAgICAg
ICAvLyBNYXRoZW1hdGljYWxseSB3ZSBjYW4ndCByZWx5IG9uIGZvbnQtc2l6ZSwgc2luY2UgZm9u
dCgpLmhlaWdodCgpIGRvZXNuJ3QgbmVjZXNzYXJpbHkgbWF0Y2guIEZvciByZWxpYWJpbGl0eSwg
dGhlIGJlc3QgYXBwcm9hY2ggaXMgc2ltcGx5IHRvCiAgICAgICAgIC8vIGNvbXBhcmUgdGhlIGZp
bmFsIG1lYXN1cmVkIGNhcC1oZWlnaHRzIG9mIHRoZSB0d28gZm9udHMgaW4gb3JkZXIgdG8gZ2V0
IHRvIHRoZSBjbG9zZXN0IHBvc3NpYmxlIHZhbHVlLgotICAgICAgICBmaXJzdExldHRlclN0eWxl
LnNldExpbmVCb3hDb250YWluKExpbmVCb3hDb250YWluSW5pdGlhbExldHRlcik7CisgICAgICAg
IGZpcnN0TGV0dGVyU3R5bGUuc2V0TGluZUJveENvbnRhaW4oeyBMaW5lQm94Q29udGFpbjo6SW5p
dGlhbExldHRlciB9KTsKICAgICAgICAgaW50IGxpbmVIZWlnaHQgPSBwYXJhZ3JhcGgtPnN0eWxl
KCkuY29tcHV0ZWRMaW5lSGVpZ2h0KCk7CiAKICAgICAgICAgLy8gU2V0IHRoZSBmb250IHRvIGJl
IG9uZSBsaW5lIHRvbyBiaWcgYW5kIHRoZW4gcmF0Y2hldCBiYWNrIHRvIGdldCB0byBhIHByZWNp
c2UgZml0LiBXZSBjYW4ndCBqdXN0IHNldCB0aGUgZGVzaXJlZCBmb250IHNpemUgYmFzZWQgb2Zm
IGZvbnQgaGVpZ2h0IG1ldHJpY3MK
</data>

          </attachment>
      

    </bug>

</bugzilla>