<?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>127200</bug_id>
          
          <creation_ts>2014-01-17 15:40:07 -0800</creation_ts>
          <short_desc>[CSS Shapes] Preserve box-shape order when serializing shape values</short_desc>
          <delta_ts>2014-01-21 14:19:34 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>124173</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Bear Travis">betravis</reporter>
          <assigned_to name="Bear Travis">betravis</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>969292</commentid>
    <comment_count>0</comment_count>
    <who name="Bear Travis">betravis</who>
    <bug_when>2014-01-17 15:40:07 -0800</bug_when>
    <thetext>The shape-outside value &apos;content-box circle()&apos; should serialize as &apos;content-box circle()&apos; rather than &apos;circle() content-box&apos;.

This is only true for non-computed styles, as the computed style places the box after the shape.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>969303</commentid>
    <comment_count>1</comment_count>
      <attachid>221505</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2014-01-17 16:05:20 -0800</bug_when>
    <thetext>Created attachment 221505
Initial Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>969987</commentid>
    <comment_count>2</comment_count>
      <attachid>221688</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2014-01-20 13:40:27 -0800</bug_when>
    <thetext>Created attachment 221688
Factoring code common to shapes and clipping</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970203</commentid>
    <comment_count>3</comment_count>
      <attachid>221688</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-01-21 01:54:07 -0800</bug_when>
    <thetext>Comment on attachment 221688
Factoring code common to shapes and clipping

View in context: https://bugs.webkit.org/attachment.cgi?id=221688&amp;action=review

Patch looks great! Just some smaller snippets.

&gt; Source/WebCore/css/CSSParser.cpp:5862
&gt; +PassRefPtr&lt;CSSValue&gt; CSSParser::parseBasicShapeAndOrBox(bool allowBoundingBox)

Could you make that a static function or inline function please? Could you replace the boolean with a CSSPropertyID and check the id instead? That makes understanding the code easier.

&gt; Source/WebCore/css/CSSParser.h:182
&gt; +    PassRefPtr&lt;CSSValue&gt; parseBasicShapeAndOrBox(bool allowBoundingBox);

See comment above</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970398</commentid>
    <comment_count>4</comment_count>
      <attachid>221780</attachid>
    <who name="Bear Travis">betravis</who>
    <bug_when>2014-01-21 13:11:05 -0800</bug_when>
    <thetext>Created attachment 221780
Swapping boolean for CSSPropertyID</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970407</commentid>
    <comment_count>5</comment_count>
      <attachid>221780</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-01-21 13:38:18 -0800</bug_when>
    <thetext>Comment on attachment 221780
Swapping boolean for CSSPropertyID

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970419</commentid>
    <comment_count>6</comment_count>
      <attachid>221780</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 14:19:31 -0800</bug_when>
    <thetext>Comment on attachment 221780
Swapping boolean for CSSPropertyID

Clearing flags on attachment: 221780

Committed r162475: &lt;http://trac.webkit.org/changeset/162475&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>970420</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-01-21 14:19:34 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221505</attachid>
            <date>2014-01-17 16:05:20 -0800</date>
            <delta_ts>2014-01-20 13:40:24 -0800</delta_ts>
            <desc>Initial Patch</desc>
            <filename>bug-127200-20140117160514.patch</filename>
            <type>text/plain</type>
            <size>21946</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyMjI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU2MzUwN2M5ZWJkNGYz
ZTI4NTdhNmEwODBmOTg4NzFiYmRjYjYwNC4uOTgzMjU2NTA2ZjI2MTIxZTJjMGU2ZjZhMjAzOTJi
MDg4NGRmNDQ2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDE0LTAxLTE3ICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gUHJl
c2VydmUgYm94LXNoYXBlIG9yZGVyIHdoZW4gc2VyaWFsaXppbmcgc2hhcGUgdmFsdWVzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjcyMDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRoZSBw
YXJzZWQgc2hhcGUtYm94IHBhaXIgdG8gYSBDU1NWYWx1ZUxpc3QgcmF0aGVyIHRoYW4gZGlyZWN0
bHkKKyAgICAgICAgYWRkaW5nIHRoZSBib3ggdmFsdWUgdG8gQmFzaWNTaGFwZS4gVGhlIENTU1Zh
bHVlTGlzdCBwcmVzZXJ2ZXMgdGhlCisgICAgICAgIHNoYXBlLWJveCBvcmRlcmluZywgYW5kIGNs
ZWFucyB1cCBhIGxpdHRsZSBiaXQgb2YgdGhlIGNvZGUgc2hhcmVkIGJldHdlZW4KKyAgICAgICAg
Y2xpcCBhbmQgc2hhcGUgdmFsdWVzLgorCisgICAgICAgIE1vZGlmeWluZyBleGlzdGluZyBwYXJz
aW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZh
bHVlKTogR2VuZXJhdGUgYSBDU1NWYWx1ZUxpc3Qgd2hlbgorICAgICAgICB5b3UgaGF2ZSBib3Ro
IGEgc2hhcGUgYW5kIGEgYm94LgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZVNoYXBlUHJvcGVydHkpOiBQYXJzZSBzaGFwZS1i
b3ggcGFpcnMgYXMgYSBDU1NWYWx1ZUxpc3QuCisgICAgICAgICogY3NzL0RlcHJlY2F0ZWRTdHls
ZUJ1aWxkZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QXBwbHlQcm9wZXJ0eVNoYXBlOjphcHBs
eVZhbHVlKTogVXNlIHRoZSBDU1NWYWx1ZUxpc3QgZm9yIHNoYXBlLWJveCBwYWlycy4KKyAgICAg
ICAgKiBjc3MvQ1NTVmFsdWVMaXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZUxpc3Q6
Oml0ZW1XaXRob3V0Qm91bmRzQ2hlY2spOiBBZGQgYSBjb25zdCB2ZXJzaW9uLgorICAgICAgICAq
IHBhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OmJsZW5kRnVuYyk6IFNwZWNpZnkgYSBib3ggd2hlbiBibGVuZGluZy4KKyAgICAgICAgKiBy
ZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oOgorICAgICAgICAoV2ViQ29yZTo6U2hhcGVWYWx1
ZTo6Y3JlYXRlU2hhcGVWYWx1ZSk6IEFkZCBhIGJveCBwYXJhbWV0ZXIuCisgICAgICAgIChXZWJD
b3JlOjpTaGFwZVZhbHVlOjpTaGFwZVZhbHVlKTogRGl0dG8uCisKIDIwMTQtMDEtMTcgIEFuZGVy
cyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgYW5vdGhl
ciB1bnVzZWQgRnJhbWVMb2FkZXJDbGllbnQgY2FsbGJhY2sKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggNWYzZjJlZmQ2OWZm
ZjFmNjBiZjY1ODdkODk0NjBmNWIwMGE2NjU1YS4uNWQ4OGQ1OTQ4Y2Q5OTUzZmY2ZDFjMzJkNmNl
NDZjNmMyOWJlNWQzYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVk
U3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTI5NDgsOSArMjk0OCwxNSBAQCBQYXNzUmVmUHRyPENT
U1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5
SUQgcHJvcGVydAogICAgICAgICAgICAgICAgIGlmIChzdHlsZS0+c2hhcGVJbnNpZGUoKS0+aW1h
Z2UoKSkKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0eWxlLT5zaGFwZUluc2lkZSgpLT5p
bWFnZSgpLT5jc3NWYWx1ZSgpOwogICAgICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2wo
KS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKKyAgICAgICAgICAgIH0gZWxz
ZSB7CisgICAgICAgICAgICAgICAgQVNTRVJUKHN0eWxlLT5zaGFwZUluc2lkZSgpLT50eXBlKCkg
PT0gU2hhcGVWYWx1ZTo6U2hhcGUpOworCisgICAgICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVl
TGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICAg
ICAgICAgICAgICBsaXN0LT5hcHBlbmQodmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLmdldCgpLCBz
dHlsZS0+c2hhcGVJbnNpZGUoKS0+c2hhcGUoKSkpOworICAgICAgICAgICAgICAgIGlmIChzdHls
ZS0+c2hhcGVJbnNpZGUoKS0+bGF5b3V0Qm94KCkgIT0gQm94TWlzc2luZykKKyAgICAgICAgICAg
ICAgICAgICAgbGlzdC0+YXBwZW5kKGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZVZhbHVlKHN0eWxlLT5z
aGFwZUluc2lkZSgpLT5sYXlvdXRCb3goKSkpOworICAgICAgICAgICAgICAgIHJldHVybiBsaXN0
LnJlbGVhc2UoKTsKICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIEFTU0VSVChzdHlsZS0+c2hh
cGVJbnNpZGUoKS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OlNoYXBlKTsKLSAgICAgICAgICAgIHJl
dHVybiB2YWx1ZUZvckJhc2ljU2hhcGUoc3R5bGUuZ2V0KCksIHN0eWxlLT5zaGFwZUluc2lkZSgp
LT5zaGFwZSgpKTsKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdFNoYXBlT3V0c2lkZToK
ICAgICAgICAgICAgIGlmICghc3R5bGUtPnNoYXBlT3V0c2lkZSgpKQogICAgICAgICAgICAgICAg
IHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25l
KTsKQEAgLTI5NjAsOSArMjk2NiwxNSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0
eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydAogICAgICAg
ICAgICAgICAgIGlmIChzdHlsZS0+c2hhcGVPdXRzaWRlKCktPmltYWdlKCkpCiAgICAgICAgICAg
ICAgICAgICAgIHJldHVybiBzdHlsZS0+c2hhcGVPdXRzaWRlKCktPmltYWdlKCktPmNzc1ZhbHVl
KCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZp
ZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOworICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAg
ICAgICBBU1NFUlQoc3R5bGUtPnNoYXBlT3V0c2lkZSgpLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6
U2hhcGUpOworCisgICAgICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENT
U1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICAgICAgICAgICAgICBsaXN0
LT5hcHBlbmQodmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLmdldCgpLCBzdHlsZS0+c2hhcGVPdXRz
aWRlKCktPnNoYXBlKCkpKTsKKyAgICAgICAgICAgICAgICBpZiAoc3R5bGUtPnNoYXBlT3V0c2lk
ZSgpLT5sYXlvdXRCb3goKSAhPSBCb3hNaXNzaW5nKQorICAgICAgICAgICAgICAgICAgICBsaXN0
LT5hcHBlbmQoY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoc3R5bGUtPnNoYXBlT3V0c2lkZSgp
LT5sYXlvdXRCb3goKSkpOworICAgICAgICAgICAgICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsK
ICAgICAgICAgICAgIH0KLSAgICAgICAgICAgIEFTU0VSVChzdHlsZS0+c2hhcGVPdXRzaWRlKCkt
PnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpTaGFwZSk7Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVG
b3JCYXNpY1NoYXBlKHN0eWxlLmdldCgpLCBzdHlsZS0+c2hhcGVPdXRzaWRlKCktPnNoYXBlKCkp
OwogI2VuZGlmCiAjaWYgRU5BQkxFKENTU19GSUxURVJTKQogICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0RmlsdGVyOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCAwY2NiYmEzOTgw
OWIxZjAwYWM4NDg4NDQ0OTlmMzdkOTNkOWE3YmYzLi4yMzUzMjIzMmQxZmRhNTBkNDJjM2YyOTNi
YmRkNTUxNjk4OWY0MTM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtNTg4MSwzMyAr
NTg4MSwzMiBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlU2hhcGVQcm9w
ZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BJZCkKICAgICAgICAgcmV0dXJuIGltYWdlVmFsdWUucmVs
ZWFzZSgpOwogICAgIH0KIAotICAgIGlmICh2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6
RnVuY3Rpb24pIHsKLSAgICAgICAgc2hhcGVWYWx1ZSA9IHBhcnNlQmFzaWNTaGFwZSgpOwotICAg
IH0gZWxzZSBpZiAoaXNCb3hWYWx1ZSh2YWx1ZUlkKSkgewotICAgICAgICBrZXl3b3JkVmFsdWUg
PSBwYXJzZVZhbGlkUHJpbWl0aXZlKHZhbHVlSWQsIHZhbHVlKTsKLSAgICAgICAgbV92YWx1ZUxp
c3QtPm5leHQoKTsKLSAgICB9IGVsc2UKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICB2
YWx1ZSA9IG1fdmFsdWVMaXN0LT5jdXJyZW50KCk7Ci0KLSAgICBpZiAodmFsdWUpIHsKKyAgICBi
b29sIHNoYXBlRm91bmQgPSBmYWxzZTsKKyAgICBib29sIGJveEZvdW5kID0gZmFsc2U7CisgICAg
UmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBh
cmF0ZWQoKTsKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgMjsgKytpKSB7CisgICAgICAg
IGlmICghdmFsdWUpCisgICAgICAgICAgICBicmVhazsKICAgICAgICAgdmFsdWVJZCA9IHZhbHVl
LT5pZDsKLSAgICAgICAgaWYgKGtleXdvcmRWYWx1ZSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQYXJz
ZXJWYWx1ZTo6RnVuY3Rpb24pIHsKLSAgICAgICAgICAgIHNoYXBlVmFsdWUgPSBwYXJzZUJhc2lj
U2hhcGUoKTsKLSAgICAgICAgfSBlbHNlIGlmIChzaGFwZVZhbHVlICYmIGlzQm94VmFsdWUodmFs
dWVJZCkpIHsKLSAgICAgICAgICAgIGtleXdvcmRWYWx1ZSA9IHBhcnNlVmFsaWRQcmltaXRpdmUo
dmFsdWVJZCwgdmFsdWUpOworICAgICAgICBpZiAodmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFs
dWU6OkZ1bmN0aW9uICYmICFzaGFwZUZvdW5kKSB7CisgICAgICAgICAgICAvLyBwYXJzZUJhc2lj
U2hhcGUgYWxyZWFkeSBhc2tzIGZvciB0aGUgbmV4dCB2YWx1ZSBsaXN0IGl0ZW0uCisgICAgICAg
ICAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHNoYXBlVmFsdWUgPSBwYXJzZUJhc2ljU2hh
cGUoKTsKKyAgICAgICAgICAgIGlmICghc2hhcGVWYWx1ZSkKKyAgICAgICAgICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKyAgICAgICAgICAgIGxpc3QtPmFwcGVuZChzaGFwZVZhbHVlLnJlbGVhc2Uo
KSk7CisgICAgICAgICAgICBzaGFwZUZvdW5kID0gdHJ1ZTsKKyAgICAgICAgfSBlbHNlIGlmIChp
c0JveFZhbHVlKHZhbHVlSWQpICYmICFib3hGb3VuZCkgeworICAgICAgICAgICAgbGlzdC0+YXBw
ZW5kKHBhcnNlVmFsaWRQcmltaXRpdmUodmFsdWVJZCwgdmFsdWUpKTsKKyAgICAgICAgICAgIGJv
eEZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgIG1fdmFsdWVMaXN0LT5uZXh0KCk7CiAgICAgICAg
IH0gZWxzZQogICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHZhbHVlID0gbV92
YWx1ZUxpc3QtPmN1cnJlbnQoKTsKICAgICB9CiAKLSAgICBBU1NFUlQoIXNoYXBlVmFsdWUgfHwg
c2hhcGVWYWx1ZS0+aXNTaGFwZSgpKTsKLQotICAgIGlmIChzaGFwZVZhbHVlICYmIGtleXdvcmRW
YWx1ZSkKLSAgICAgICAgc2hhcGVWYWx1ZS0+Z2V0U2hhcGVWYWx1ZSgpLT5zZXRMYXlvdXRCb3go
a2V5d29yZFZhbHVlLnJlbGVhc2UoKSk7Ci0KLSAgICByZXR1cm4gc2hhcGVWYWx1ZSA/IHNoYXBl
VmFsdWUucmVsZWFzZSgpIDoga2V5d29yZFZhbHVlLnJlbGVhc2UoKTsKKyAgICBpZiAodmFsdWUp
CisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsKIH0K
ICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmgKaW5kZXggOTRlMjYwMzY5Y2M2Yzg4
N2Y3ZGY2OWM1MTk3NDcxYWI1OWI4M2RjMC4uZmE4MmE5YWQwZDA2YWU4YjE2YjRhOGFhNzA3NTM0
NTI5YmNmOTA0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaApAQCAtNTIsNiArNTIsNyBA
QCBwdWJsaWM6CiAgICAgQ1NTVmFsdWUqIGl0ZW0oc2l6ZV90IGluZGV4KSB7IHJldHVybiBpbmRl
eCA8IG1fdmFsdWVzLnNpemUoKSA/IG1fdmFsdWVzW2luZGV4XS5nZXQoKSA6IDA7IH0KICAgICBj
b25zdCBDU1NWYWx1ZSogaXRlbShzaXplX3QgaW5kZXgpIGNvbnN0IHsgcmV0dXJuIGluZGV4IDwg
bV92YWx1ZXMuc2l6ZSgpID8gbV92YWx1ZXNbaW5kZXhdLmdldCgpIDogMDsgfQogICAgIENTU1Zh
bHVlKiBpdGVtV2l0aG91dEJvdW5kc0NoZWNrKHNpemVfdCBpbmRleCkgeyByZXR1cm4gbV92YWx1
ZXNbaW5kZXhdLmdldCgpOyB9CisgICAgY29uc3QgQ1NTVmFsdWUqIGl0ZW1XaXRob3V0Qm91bmRz
Q2hlY2soc2l6ZV90IGluZGV4KSBjb25zdCB7IEFTU0VSVChpbmRleCA8IG1fdmFsdWVzLnNpemUo
KSk7IHJldHVybiBtX3ZhbHVlc1tpbmRleF0uZ2V0KCk7IH0KIAogICAgIHZvaWQgYXBwZW5kKFBh
c3NSZWZQdHI8Q1NTVmFsdWU+IHZhbHVlKSB7IG1fdmFsdWVzLmFwcGVuZCh2YWx1ZSk7IH0KICAg
ICB2b2lkIHByZXBlbmQoUGFzc1JlZlB0cjxDU1NWYWx1ZT4gdmFsdWUpIHsgbV92YWx1ZXMuaW5z
ZXJ0KDAsIHZhbHVlKTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0
ZWRTdHlsZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1
aWxkZXIuY3BwCmluZGV4IDZhOGEzNTU2MzBlMTUxYTRkMGIzYjFkNjBiNTQ2Mjk0NjVhODYwMTUu
LjMxZjIzODdlMjUwMWMwMzgxNDliZDlmZGI1YzkyYjliMmU5ZmE0YjAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAKQEAgLTIxODIsMjMgKzIxODIs
MzYgQEAgcHVibGljOgogICAgICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZh
bHVlID0gdG9DU1NQcmltaXRpdmVWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICBpZiAocHJpbWl0
aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUF1dG8pCiAgICAgICAgICAgICAgICAg
c2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgMCk7Ci0gICAgICAgICAgICBlbHNlIGlm
IChwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQ29udGVudEJveAotICAg
ICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVC
b3JkZXJCb3gKLSAgICAgICAgICAgICAgICB8fCBwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgp
ID09IENTU1ZhbHVlUGFkZGluZ0JveAotICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVl
LT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVNYXJnaW5Cb3gpCi0gICAgICAgICAgICAgICAgc2V0
VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1ZTo6Y3JlYXRlTGF5b3V0Qm94
VmFsdWUoTGF5b3V0Qm94KCpwcmltaXRpdmVWYWx1ZSkpKTsKICAgICAgICAgICAgIGVsc2UgaWYg
KHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVPdXRzaWRlU2hhcGUpCiAg
ICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1
ZTo6Y3JlYXRlT3V0c2lkZVZhbHVlKCkpOwotICAgICAgICAgICAgZWxzZSBpZiAocHJpbWl0aXZl
VmFsdWUtPmlzU2hhcGUoKSkgewotICAgICAgICAgICAgICAgIFJlZlB0cjxTaGFwZVZhbHVlPiBz
aGFwZSA9IFNoYXBlVmFsdWU6OmNyZWF0ZVNoYXBlVmFsdWUoYmFzaWNTaGFwZUZvclZhbHVlKHN0
eWxlUmVzb2x2ZXItPnN0eWxlKCksIHN0eWxlUmVzb2x2ZXItPnJvb3RFbGVtZW50U3R5bGUoKSwg
cHJpbWl0aXZlVmFsdWUtPmdldFNoYXBlVmFsdWUoKSkpOwotICAgICAgICAgICAgICAgIHNldFZh
bHVlKHN0eWxlUmVzb2x2ZXItPnN0eWxlKCksIHNoYXBlLnJlbGVhc2UoKSk7Ci0gICAgICAgICAg
ICB9CiAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUtPmlzSW1hZ2VWYWx1ZSgpIHx8IHZhbHVlLT5p
c0ltYWdlU2V0VmFsdWUoKSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNoYXBl
ID0gU2hhcGVWYWx1ZTo6Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUltYWdl
KHByb3BlcnR5LCB2YWx1ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+
c3R5bGUoKSwgc2hhcGUucmVsZWFzZSgpKTsKLSAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYg
KHZhbHVlLT5pc1ZhbHVlTGlzdCgpKSB7CisgICAgICAgICAgICBSZWZQdHI8QmFzaWNTaGFwZT4g
c2hhcGU7CisgICAgICAgICAgICBMYXlvdXRCb3ggbGF5b3V0Qm94ID0gQm94TWlzc2luZzsKKyAg
ICAgICAgICAgIENTU1ZhbHVlTGlzdCogdmFsdWVMaXN0ID0gdG9DU1NWYWx1ZUxpc3QodmFsdWUp
OworICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHZhbHVlTGlzdC0+bGVuZ3Ro
KCk7ICsraSkgeworICAgICAgICAgICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVW
YWx1ZSA9IHRvQ1NTUHJpbWl0aXZlVmFsdWUodmFsdWVMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0No
ZWNrKGkpKTsKKyAgICAgICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmlzU2hhcGUoKSkK
KyAgICAgICAgICAgICAgICAgICAgc2hhcGUgPSBiYXNpY1NoYXBlRm9yVmFsdWUoc3R5bGVSZXNv
bHZlci0+c3R5bGUoKSwgc3R5bGVSZXNvbHZlci0+cm9vdEVsZW1lbnRTdHlsZSgpLCBwcmltaXRp
dmVWYWx1ZS0+Z2V0U2hhcGVWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChwcmlt
aXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQ29udGVudEJveAorICAgICAgICAg
ICAgICAgICAgICB8fCBwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQm9y
ZGVyQm94CisgICAgICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlE
KCkgPT0gQ1NTVmFsdWVQYWRkaW5nQm94CisgICAgICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2
ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVNYXJnaW5Cb3gpCisgICAgICAgICAgICAg
ICAgICAgIGxheW91dEJveCA9IExheW91dEJveCgqcHJpbWl0aXZlVmFsdWUpOworICAgICAgICAg
ICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBpZiAoc2hhcGUpCisgICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVS
ZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1ZTo6Y3JlYXRlU2hhcGVWYWx1ZShzaGFwZS5yZWxl
YXNlKCksIGxheW91dEJveCkpOworICAgICAgICAgICAgZWxzZSBpZiAobGF5b3V0Qm94ICE9IEJv
eE1pc3NpbmcpCisgICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUo
KSwgU2hhcGVWYWx1ZTo6Y3JlYXRlTGF5b3V0Qm94VmFsdWUobGF5b3V0Qm94KSk7CiAKKyAgICAg
ICAgfQogICAgIH0KKwogICAgIHN0YXRpYyBQcm9wZXJ0eUhhbmRsZXIgY3JlYXRlSGFuZGxlcigp
CiAgICAgewogICAgICAgICBQcm9wZXJ0eUhhbmRsZXIgaGFuZGxlciA9IEFwcGx5UHJvcGVydHlE
ZWZhdWx0QmFzZTxTaGFwZVZhbHVlKiwgZ2V0dGVyRnVuY3Rpb24sIFBhc3NSZWZQdHI8U2hhcGVW
YWx1ZT4sIHNldHRlckZ1bmN0aW9uLCBTaGFwZVZhbHVlKiwgaW5pdGlhbEZ1bmN0aW9uPjo6Y3Jl
YXRlSGFuZGxlcigpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
Q1NTUHJvcGVydHlBbmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24v
Q1NTUHJvcGVydHlBbmltYXRpb24uY3BwCmluZGV4IDcyYzc4ZmVkNGVlOTRhZjUxMDVmZmM0OTI3
ODVmZDNlODIzOTIyMDkuLmEzOThhN2E1ZGQzNGI4NWRjYzExNTE3Yjk4M2JkNzgyNDM1MTZkZjYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5p
bWF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0
eUFuaW1hdGlvbi5jcHAKQEAgLTE1MywxMyArMTUzLDE2IEBAIHN0YXRpYyBpbmxpbmUgUGFzc1Jl
ZlB0cjxTaGFwZVZhbHVlPiBibGVuZEZ1bmMoY29uc3QgQW5pbWF0aW9uQmFzZSosIFNoYXBlVmFs
dWUqCiAgICAgaWYgKGZyb20tPnR5cGUoKSAhPSBTaGFwZVZhbHVlOjpTaGFwZSB8fCB0by0+dHlw
ZSgpICE9IFNoYXBlVmFsdWU6OlNoYXBlKQogICAgICAgICByZXR1cm4gdG87CiAKKyAgICBpZiAo
ZnJvbS0+bGF5b3V0Qm94KCkgIT0gdG8tPmxheW91dEJveCgpKQorICAgICAgICByZXR1cm4gdG87
CisKICAgICBjb25zdCBCYXNpY1NoYXBlKiBmcm9tU2hhcGUgPSBmcm9tLT5zaGFwZSgpOwogICAg
IGNvbnN0IEJhc2ljU2hhcGUqIHRvU2hhcGUgPSB0by0+c2hhcGUoKTsKIAogICAgIGlmICghZnJv
bVNoYXBlLT5jYW5CbGVuZCh0b1NoYXBlKSkKICAgICAgICAgcmV0dXJuIHRvOwogCi0gICAgcmV0
dXJuIFNoYXBlVmFsdWU6OmNyZWF0ZVNoYXBlVmFsdWUodG9TaGFwZS0+YmxlbmQoZnJvbVNoYXBl
LCBwcm9ncmVzcykpOworICAgIHJldHVybiBTaGFwZVZhbHVlOjpjcmVhdGVTaGFwZVZhbHVlKHRv
U2hhcGUtPmJsZW5kKGZyb21TaGFwZSwgcHJvZ3Jlc3MpLCB0by0+bGF5b3V0Qm94KCkpOwogfQog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFw
ZVZhbHVlLmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCmlu
ZGV4IDBjYzIyYzQxMTRlOTg1OTE0ODI5YzNhYzllYTJmNGQ1MmQxMmU3OTQuLjUzYzExYTdlODI3
ODk1MGM4ZGYwNDVkMDE4MGJhYmM0OTMzMzY5N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N0eWxlL1NoYXBlVmFsdWUuaApAQCAtNDgsOSArNDgsOSBAQCBwdWJsaWM6CiAgICAgICAg
IEltYWdlCiAgICAgfTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+IGNyZWF0
ZVNoYXBlVmFsdWUoUGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZSkKKyAgICBzdGF0aWMgUGFz
c1JlZlB0cjxTaGFwZVZhbHVlPiBjcmVhdGVTaGFwZVZhbHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFw
ZT4gc2hhcGUsIExheW91dEJveCBsYXlvdXRCb3gpCiAgICAgewotICAgICAgICByZXR1cm4gYWRv
cHRSZWYobmV3IFNoYXBlVmFsdWUoc2hhcGUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5l
dyBTaGFwZVZhbHVlKHNoYXBlLCBsYXlvdXRCb3gpKTsKICAgICB9CiAKICAgICBzdGF0aWMgUGFz
c1JlZlB0cjxTaGFwZVZhbHVlPiBjcmVhdGVMYXlvdXRCb3hWYWx1ZShMYXlvdXRCb3ggbGF5b3V0
Qm94KQpAQCAtODQsMTAgKzg0LDEwIEBAIHB1YmxpYzoKICAgICBib29sIG9wZXJhdG9yPT0oY29u
c3QgU2hhcGVWYWx1ZSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBvdGhlci50eXBl
KCk7IH0KIAogcHJpdmF0ZToKLSAgICBTaGFwZVZhbHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4g
c2hhcGUpCisgICAgU2hhcGVWYWx1ZShQYXNzUmVmUHRyPEJhc2ljU2hhcGU+IHNoYXBlLCBMYXlv
dXRCb3ggbGF5b3V0Qm94KQogICAgICAgICA6IG1fdHlwZShTaGFwZSkKICAgICAgICAgLCBtX3No
YXBlKHNoYXBlKQotICAgICAgICAsIG1fbGF5b3V0Qm94KG1fc2hhcGUtPmxheW91dEJveCgpKQor
ICAgICAgICAsIG1fbGF5b3V0Qm94KGxheW91dEJveCkKICAgICB7CiAgICAgfQogICAgIFNoYXBl
VmFsdWUoU2hhcGVWYWx1ZVR5cGUgdHlwZSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5n
ZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA3ZjI1ZThhY2MyMzUxMzcyNThlNzc5
ZTY0ODEzNmUwYzdjZWQ2Mjg0Li45ZmZhNWQ3MjBmNmVjNmFhYTRkMjUxNDg3NjkzMzJkZWVkMzNj
MjI2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMTQtMDEtMTcgIEJlYXIgVHJhdmlzICA8YmV0
cmF2aXNAYWRvYmUuY29tPgorCisgICAgICAgIFtDU1MgU2hhcGVzXSBQcmVzZXJ2ZSBib3gtc2hh
cGUgb3JkZXIgd2hlbiBzZXJpYWxpemluZyBzaGFwZSB2YWx1ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNzIwMAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vZGlmeSB0aGUgZXhwZWN0YXRpb25zIGZv
ciBib3ggc2hhcGUgcGFpcnMsIHByZXNlcnZpbmcgdGhlIG9yZGVyIG9mCisgICAgICAgIHRoZSBh
cmd1bWVudHMgaW4gbm9uLWNvbXB1dGVkIHZhbHVlcy4gQ29tcHV0ZWQgdmFsdWVzIGFyZSBzdGls
bCBhCisgICAgICAgIHNoYXBlIGZvbGxvd2VkIGJ5IGEgYm94LgorCisgICAgICAgICogZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLWluc2lkZS1leHBlY3RlZC50eHQ6CisgICAgICAg
ICogZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0
OgorICAgICAgICAqIGZhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgor
CiAyMDE0LTAxLTE3ICBCZW0gSm9uZXMtQmV5ICA8YmpvbmVzYmVAYWRvYmUuY29tPgogCiAgICAg
ICAgIFtDU1MgU2hhcGVzXSBTdGFja2VkIGZsb2F0cyB3aXRoIHNoYXBlLW91dHNpZGUgc2hvdWxk
IGFsbG93IGlubGluZSBjb250ZW50IHRvIGludGVyYWN0IHdpdGggdGhlIG5vbi1vdXRlcm1vc3Qg
ZmxvYXQKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2lu
Zy1zaGFwZS1pbnNpZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFy
c2luZy9wYXJzaW5nLXNoYXBlLWluc2lkZS1leHBlY3RlZC50eHQKaW5kZXggZWNiZWI0YmI5MGJi
NjFjNjY4MjRjNWYwZWJlYTM3MzJlMWJjY2I2ZS4uMzhhNmJlODI2ZDBkN2ZmMDQ1MTI4YWJkZDZh
YjQ2YWIwODRiZjgwMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2lu
Zy9wYXJzaW5nLXNoYXBlLWluc2lkZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLWluc2lkZS1leHBlY3RlZC50eHQKQEAgLTEw
NywxMyArMTA3LDEzIEBAIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAi
cG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwCiBQQVNTIGdldENvbXB1dGVk
U3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAicG9seWdvbihub256ZXJvLCAwcHgg
MHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IikgaXMgInBvbHlnb24obm9uemVy
bywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCIKIFBBU1MgZ2V0Q1NT
VGV4dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAx
MHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IikgaXMgInBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKIFBBU1MgZ2V0Q29tcHV0ZWRT
dHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAw
cHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giKSBpcyAicG9seWdvbihub256ZXJv
LCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgotUEFTUyBnZXRDU1NU
ZXh0KCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJjb250ZW50LWJveCBwb2x5Z29uKG5vbnplcm8s
IDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVudC1ib3giCitQQVNTIGdldENTU1RleHQo
Ii13ZWJraXQtc2hhcGUtaW5zaWRlIiwgImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAiY29udGVudC1ib3ggcG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHls
ZVZhbHVlKCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJjb250ZW50LWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywg
MHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVudC1ib3giCi1QQVNTIGdldENTU1Rl
eHQoIi13ZWJraXQtc2hhcGUtaW5zaWRlIiwgInBhZGRpbmctYm94IHBvbHlnb24obm9uemVybywg
MHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHgg
MHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRkaW5nLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgi
LXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHgg
MHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxl
VmFsdWUoIi13ZWJraXQtc2hhcGUtaW5zaWRlIiwgInBhZGRpbmctYm94IHBvbHlnb24obm9uemVy
bywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRkaW5nLWJveCIKLVBBU1MgZ2V0Q1NTVGV4
dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBw
eCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBw
eCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdl
YmtpdC1zaGFwZS1pbnNpZGUiLCAiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVl
KCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgotUEFTUyBnZXRDU1NUZXh0KCItd2Vi
a2l0LXNoYXBlLWluc2lkZSIsICJtYXJnaW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgorUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNo
YXBlLWluc2lkZSIsICJtYXJnaW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiKSBpcyAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJr
aXQtc2hhcGUtaW5zaWRlIiwgIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAx
MHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHgg
MTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giCiBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hh
cGUtaW5zaWRlIiwgIm91dHNpZGUtc2hhcGUiKSBpcyAib3V0c2lkZS1zaGFwZSIKIFBBU1MgZ2V0
Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJvdXRzaWRlLXNoYXBl
IikgaXMgIm91dHNpZGUtc2hhcGUiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBl
cy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQK
aW5kZXggNjRmZWYxYmE5YTg0ZTE3ZGZkNWJkNTBiZTE3MWIxNjhjZDlkYmJkOC4uYzg5NTYwZDRk
NDAwODZiZWMzOWI5MTg3YjBiNzMzMjVmODE2NmJhNCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRl
LWV4cGVjdGVkLnR4dApAQCAtMTA3LDEzICsxMDcsMTMgQEAgUEFTUyBnZXRDU1NUZXh0KCItd2Vi
a2l0LXNoYXBlLW91dHNpZGUiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgs
IDEKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAi
cG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94
IikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9y
ZGVyLWJveCIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIpIGlz
ICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1i
b3giCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJv
eCIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1h
cmdpbi1ib3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJjb250
ZW50LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikg
aXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVu
dC1ib3giCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJjb250ZW50
LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMg
ImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBw
eCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
ImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBw
eCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBj
b250ZW50LWJveCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInBh
ZGRpbmctYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCki
KSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRk
aW5nLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInBhZGRp
bmctYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBp
cyAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHgg
MHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUi
LCAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHgg
MHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IHBhZGRpbmctYm94IgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAi
Ym9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9y
ZGVyLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImJvcmRl
ci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlz
ICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBw
eCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
ImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGJv
cmRlci1ib3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJtYXJn
aW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBp
cyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4t
Ym94IgorUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJv
eCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgIm1h
cmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIK
IFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFy
Z2luLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikg
aXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2lu
LWJveCIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNp
ZGUiLCAidXJsKCdpbWFnZScpIikpIGlzICJ1cmwoaW1hZ2UpIgogUEFTUyByZW1vdmVCYXNlVVJM
KGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVybCgnaW1h
Z2UnKSIpKSBpcyAidXJsKGltYWdlKSIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFw
ZXMvcGFyc2luZy9wYXJzaW5nLXRlc3QtdXRpbHMuanMKaW5kZXggZDk0NTM1ZDgzYTMyNDE0OTVi
YWRkNGU1YjUwODY0YjYzNjIyMWMxOC4uZDIzZmFkMmE4NjQ2MDFiNmQ1YTVjZDliNmNlNWUwNTEy
NzYyYjM3MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJz
aW5nLXRlc3QtdXRpbHMuanMKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2luZy9w
YXJzaW5nLXRlc3QtdXRpbHMuanMKQEAgLTY3LDEwICs2NywxMCBAQCB2YXIgdmFsaWRTaGFwZVZh
bHVlcyA9IFsKICAgICAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHgg
MHB4KSBib3JkZXItYm94IiwKICAgICAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IiwKIAotICAgIFsiY29udGVudC1ib3ggcG9seWdvbihu
b256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8s
IDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRlbnQtYm94Il0sCi0gICAgWyJwYWRk
aW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwg
InBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgcGFkZGluZy1i
b3giXSwKLSAgICBbImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIGJvcmRlci1ib3giXSwKLSAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giXQorICAgIFsiY29udGVudC1ib3ggcG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJjb250ZW50LWJv
eCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgInBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVudC1ib3giXSwK
KyAgICBbInBhZGRpbmctYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAx
MHB4IDBweCkiLCAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIHBhZGRpbmctYm94Il0sCisgICAgWyJib3JkZXItYm94IHBvbHlnb24obm9uemVybywg
MHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgInBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCJdLAorICAgIFsibWFyZ2luLWJv
eCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgIm1hcmdp
bi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJw
b2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3gi
XQogXTsKIAogLy8gSW52YWxpZCB2YWx1ZXMgZm9yIGJvdGggc2hhcGUtaW5zaWRlIGFuZCBzaGFw
ZS1vdXRzaWRlLiBXaGVuIGFuIGludmFsaWQgc2hhcGUgdmFsdWUgaXMgc3BlY2lmaWVkLCB0aGUg
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221688</attachid>
            <date>2014-01-20 13:40:27 -0800</date>
            <delta_ts>2014-01-21 13:11:02 -0800</delta_ts>
            <desc>Factoring code common to shapes and clipping</desc>
            <filename>bug-127200-20140120134026.patch</filename>
            <type>text/plain</type>
            <size>26429</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyMzY2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjdjNjNlYjIyYWIzOGQx
ZmIxNDQ2YTU1MzQwMTI5ZDhjYzNmNzVlYi4uOThlYWRjZWU1MTYxYTg4NDY1YmQwYTk2YjIzMmE0
ZDFiYjEwNzg1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE0LTAxLTIwICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gUHJl
c2VydmUgYm94LXNoYXBlIG9yZGVyIHdoZW4gc2VyaWFsaXppbmcgc2hhcGUgdmFsdWVzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjcyMDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRoZSBw
YXJzZWQgc2hhcGUtYm94IHBhaXIgdG8gYSBDU1NWYWx1ZUxpc3QgcmF0aGVyIHRoYW4gZGlyZWN0
bHkKKyAgICAgICAgYWRkaW5nIHRoZSBib3ggdmFsdWUgdG8gQmFzaWNTaGFwZS4gVGhlIENTU1Zh
bHVlTGlzdCBwcmVzZXJ2ZXMgdGhlCisgICAgICAgIHNoYXBlLWJveCBvcmRlcmluZywgYW5kIGNs
ZWFucyB1cCBhIGxpdHRsZSBiaXQgb2YgdGhlIGNvZGUgc2hhcmVkIGJldHdlZW4KKyAgICAgICAg
Y2xpcCBhbmQgc2hhcGUgdmFsdWVzLgorCisgICAgICAgIE1vZGlmeWluZyBleGlzdGluZyBwYXJz
aW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpzaGFwZVByb3BlcnR5VmFsdWUpOiBGYWN0b3Igb3V0IGNv
ZGUgY29tbW9uIHRvIGdlbmVyYXRpbmcgc2hhcGUKKyAgICAgICAgdmFsdWVzLgorICAgICAgICAo
V2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZSk6IEdlbmVyYXRl
IGEgQ1NTVmFsdWVMaXN0IHdoZW4KKyAgICAgICAgeW91IGhhdmUgYm90aCBhIHNoYXBlIGFuZCBh
IGJveC4KKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNT
U1BhcnNlcjo6cGFyc2VCYXNpY1NoYXBlQW5kT3JCb3gpOiBGYWN0b3Igb3V0IGNvZGUgY29tbW9u
IHRvIGNsaXAKKyAgICAgICAgcGF0aHMgYW5kIHNoYXBlIHByb3BlcnRpZXMgdGhhdCBwYXJzZXMg
dGhlIFtiYXNpYy1zaGFwZSB8fCBib3hdIHN5bnRheCBmcm9tCisgICAgICAgIHRoZSBDU1MgU2hh
cGVzIHNwZWMuCisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlU2hhcGVQcm9wZXJ0
eSk6IFBhcnNlIHNoYXBlLWJveCBwYWlycyBhcyBhIENTU1ZhbHVlTGlzdC4KKyAgICAgICAgKiBj
c3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBseVBy
b3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOiBVc2UgdGhlIENTU1ZhbHVlTGlzdCBmb3Igc2hhcGUt
Ym94IHBhaXJzLgorICAgICAgICAqIGNzcy9DU1NWYWx1ZUxpc3QuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlTGlzdDo6aXRlbVdpdGhvdXRCb3VuZHNDaGVjayk6IEFkZCBhIGNvbnN0IHZl
cnNpb24uCisgICAgICAgICogcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6YmxlbmRGdW5jKTogU3BlY2lmeSBhIGJveCB3aGVuIGJsZW5k
aW5nLgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6CisgICAgICAgIChX
ZWJDb3JlOjpTaGFwZVZhbHVlOjpjcmVhdGVTaGFwZVZhbHVlKTogQWRkIGEgYm94IHBhcmFtZXRl
ci4KKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OlNoYXBlVmFsdWUpOiBEaXR0by4KKwog
MjAxNC0wMS0yMCAgTW9ydGVuIFN0ZW5zaG9ybmUgIDxtc3RlbnNob0BvcGVyYS5jb20+CiAKICAg
ICAgICAgUmVnaW9uIGJhc2VkIG11bHRpY29sOiBzdXBwb3J0IGV4cGxpY2l0IGNvbHVtbiBicmVh
a3MKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFy
YXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlv
bi5jcHAKaW5kZXggNWYzZjJlZmQ2OWZmZjFmNjBiZjY1ODdkODk0NjBmNWIwMGE2NjU1YS4uY2Yx
NmRiMzUyNjg2MzgyZjJmZDg1YzEyNDJkMmE2ODg1MjQ5ZDZjZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTE3NjMsNiAr
MTc2MywzMSBAQCBzdGF0aWMgaW5saW5lIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNvbXB1dGVS
ZW5kZXJTdHlsZUZvclByb3BlcnR5KE5vZGUqIHN0eWxlZAogICAgIHJldHVybiBzdHlsZWROb2Rl
LT5jb21wdXRlZFN0eWxlKHN0eWxlZE5vZGUtPmlzUHNldWRvRWxlbWVudCgpID8gTk9QU0VVRE8g
OiBwc2V1ZG9FbGVtZW50U3BlY2lmaWVyKTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQor
c3RhdGljIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHNoYXBlUHJvcGVydHlWYWx1ZShjb25zdCBSZW5k
ZXJTdHlsZSogc3R5bGUsIGNvbnN0IFNoYXBlVmFsdWUqIHNoYXBlVmFsdWUpCit7CisgICAgaWYg
KCFzaGFwZVZhbHVlKQorICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRp
ZmllclZhbHVlKENTU1ZhbHVlTm9uZSk7CisKKyAgICBpZiAoc2hhcGVWYWx1ZS0+dHlwZSgpID09
IFNoYXBlVmFsdWU6Ok91dHNpZGUpCisgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVh
dGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVPdXRzaWRlU2hhcGUpOworCisgICAgaWYgKHNoYXBl
VmFsdWUtPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpCb3gpCisgICAgICAgIHJldHVybiBjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShzaGFwZVZhbHVlLT5sYXlvdXRCb3goKSk7CisKKyAgICBpZiAo
c2hhcGVWYWx1ZS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OkltYWdlKQorICAgICAgICByZXR1cm4g
c2hhcGVWYWx1ZS0+aW1hZ2UoKSA/IHNoYXBlVmFsdWUtPmltYWdlKCktPmNzc1ZhbHVlKCkgOiBj
c3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKKworICAg
IEFTU0VSVChzaGFwZVZhbHVlLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6U2hhcGUpOworCisgICAg
UmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBh
cmF0ZWQoKTsKKyAgICBsaXN0LT5hcHBlbmQodmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLCBzaGFw
ZVZhbHVlLT5zaGFwZSgpKSk7CisgICAgaWYgKHNoYXBlVmFsdWUtPmxheW91dEJveCgpICE9IEJv
eE1pc3NpbmcpCisgICAgICAgIGxpc3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1
ZShzaGFwZVZhbHVlLT5sYXlvdXRCb3goKSkpOworICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsK
K30KKyNlbmRpZgorCiBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9y
Ojpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCwgRVVwZGF0ZUxheW91dCB1
cGRhdGVMYXlvdXQpIGNvbnN0CiB7CiAgICAgTm9kZSogc3R5bGVkTm9kZSA9IHRoaXMtPnN0eWxl
ZE5vZGUoKTsKQEAgLTI5MzgsMzEgKzI5NjMsOSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21w
dXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydAog
ICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0U2hhcGVJbWFnZVRocmVzaG9sZDoKICAgICAg
ICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+c2hhcGVJbWFn
ZVRocmVzaG9sZCgpLCBDU1NQcmltaXRpdmVWYWx1ZTo6Q1NTX05VTUJFUik7CiAgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlXZWJraXRTaGFwZUluc2lkZToKLSAgICAgICAgICAgIGlmICghc3R5bGUt
PnNoYXBlSW5zaWRlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNy
ZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAgICAgICAgaWYgKHN0eWxl
LT5zaGFwZUluc2lkZSgpLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6Qm94KQotICAgICAgICAgICAg
ICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+c2hhcGVJbnNpZGUo
KS0+bGF5b3V0Qm94KCkpOwotICAgICAgICAgICAgaWYgKHN0eWxlLT5zaGFwZUluc2lkZSgpLT50
eXBlKCkgPT0gU2hhcGVWYWx1ZTo6T3V0c2lkZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gY3Nz
VmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlT3V0c2lkZVNoYXBlKTsK
LSAgICAgICAgICAgIGlmIChzdHlsZS0+c2hhcGVJbnNpZGUoKS0+dHlwZSgpID09IFNoYXBlVmFs
dWU6OkltYWdlKSB7Ci0gICAgICAgICAgICAgICAgaWYgKHN0eWxlLT5zaGFwZUluc2lkZSgpLT5p
bWFnZSgpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3R5bGUtPnNoYXBlSW5zaWRlKCkt
PmltYWdlKCktPmNzc1ZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9v
bCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAgICAgICAgfQot
ICAgICAgICAgICAgQVNTRVJUKHN0eWxlLT5zaGFwZUluc2lkZSgpLT50eXBlKCkgPT0gU2hhcGVW
YWx1ZTo6U2hhcGUpOwotICAgICAgICAgICAgcmV0dXJuIHZhbHVlRm9yQmFzaWNTaGFwZShzdHls
ZS5nZXQoKSwgc3R5bGUtPnNoYXBlSW5zaWRlKCktPnNoYXBlKCkpOworICAgICAgICAgICAgcmV0
dXJuIHNoYXBlUHJvcGVydHlWYWx1ZShzdHlsZS5nZXQoKSwgc3R5bGUtPnNoYXBlSW5zaWRlKCkp
OwogICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0U2hhcGVPdXRzaWRlOgotICAgICAgICAg
ICAgaWYgKCFzdHlsZS0+c2hhcGVPdXRzaWRlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAg
ICAgICAgaWYgKHN0eWxlLT5zaGFwZU91dHNpZGUoKS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OkJv
eCkKLSAgICAgICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoc3R5
bGUtPnNoYXBlT3V0c2lkZSgpLT5sYXlvdXRCb3goKSk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUt
PnNoYXBlT3V0c2lkZSgpLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6SW1hZ2UpIHsKLSAgICAgICAg
ICAgICAgICBpZiAoc3R5bGUtPnNoYXBlT3V0c2lkZSgpLT5pbWFnZSgpKQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gc3R5bGUtPnNoYXBlT3V0c2lkZSgpLT5pbWFnZSgpLT5jc3NWYWx1ZSgp
OwotICAgICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVy
VmFsdWUoQ1NTVmFsdWVOb25lKTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIEFTU0VSVChz
dHlsZS0+c2hhcGVPdXRzaWRlKCktPnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpTaGFwZSk7Ci0gICAg
ICAgICAgICByZXR1cm4gdmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLmdldCgpLCBzdHlsZS0+c2hh
cGVPdXRzaWRlKCktPnNoYXBlKCkpOworICAgICAgICAgICAgcmV0dXJuIHNoYXBlUHJvcGVydHlW
YWx1ZShzdHlsZS5nZXQoKSwgc3R5bGUtPnNoYXBlT3V0c2lkZSgpKTsKICNlbmRpZgogI2lmIEVO
QUJMRShDU1NfRklMVEVSUykKICAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZpbHRlcjoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggMGEzZmEwZTBkMzBmNTYxNzdjNGU5ZjUzYjU2
MGZiMGFkZDBkZjYxNy4uZWRlNGNkOGYxNGJhYzdlOTVmMGE0NGRiNDFiZWYxZDRmYTBhMjI0ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTU4NDMsNyArNTg0Myw3IEBAIFBhc3NSZWZQ
dHI8Q1NTQmFzaWNTaGFwZT4gQ1NTUGFyc2VyOjpwYXJzZUJhc2ljU2hhcGVQb2x5Z29uKENTU1Bh
cnNlclZhbHVlTGlzdCoKICAgICByZXR1cm4gc2hhcGU7CiB9CiAKLXN0YXRpYyBib29sIGlzQm94
VmFsdWUoQ1NTVmFsdWVJRCB2YWx1ZUlkKQorc3RhdGljIGJvb2wgaXNCb3hWYWx1ZShDU1NWYWx1
ZUlEIHZhbHVlSWQsIGJvb2wgYWxsb3dCb3VuZGluZ0JveCkKIHsKICAgICBzd2l0Y2ggKHZhbHVl
SWQpIHsKICAgICBjYXNlIENTU1ZhbHVlQ29udGVudEJveDoKQEAgLTU4NTEsMTIgKzU4NTEsNDgg
QEAgc3RhdGljIGJvb2wgaXNCb3hWYWx1ZShDU1NWYWx1ZUlEIHZhbHVlSWQpCiAgICAgY2FzZSBD
U1NWYWx1ZUJvcmRlckJveDoKICAgICBjYXNlIENTU1ZhbHVlTWFyZ2luQm94OgogICAgICAgICBy
ZXR1cm4gdHJ1ZTsKKyAgICBjYXNlIENTU1ZhbHVlQm91bmRpbmdCb3g6CisgICAgICAgIHJldHVy
biBhbGxvd0JvdW5kaW5nQm94OwogICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgIH0KIAogICAgIHJl
dHVybiBmYWxzZTsKIH0KIAorUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUJh
c2ljU2hhcGVBbmRPckJveChib29sIGFsbG93Qm91bmRpbmdCb3gpCit7CisgICAgQ1NTUGFyc2Vy
VmFsdWUqIHZhbHVlID0gbV92YWx1ZUxpc3QtPmN1cnJlbnQoKTsKKworICAgIGJvb2wgc2hhcGVG
b3VuZCA9IGZhbHNlOworICAgIGJvb2wgYm94Rm91bmQgPSBmYWxzZTsKKyAgICBDU1NWYWx1ZUlE
IHZhbHVlSWQ7CisKKyAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBsaXN0ID0gQ1NTVmFsdWVMaXN0
OjpjcmVhdGVTcGFjZVNlcGFyYXRlZCgpOworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCAy
OyArK2kpIHsKKyAgICAgICAgaWYgKCF2YWx1ZSkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB2YWx1ZUlkID0gdmFsdWUtPmlkOworICAgICAgICBpZiAodmFsdWUtPnVuaXQgPT0gQ1NTUGFy
c2VyVmFsdWU6OkZ1bmN0aW9uICYmICFzaGFwZUZvdW5kKSB7CisgICAgICAgICAgICAvLyBwYXJz
ZUJhc2ljU2hhcGUgYWxyZWFkeSBhc2tzIGZvciB0aGUgbmV4dCB2YWx1ZSBsaXN0IGl0ZW0uCisg
ICAgICAgICAgICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHNoYXBlVmFsdWUgPSBwYXJzZUJh
c2ljU2hhcGUoKTsKKyAgICAgICAgICAgIGlmICghc2hhcGVWYWx1ZSkKKyAgICAgICAgICAgICAg
ICByZXR1cm4gbnVsbHB0cjsKKyAgICAgICAgICAgIGxpc3QtPmFwcGVuZChzaGFwZVZhbHVlLnJl
bGVhc2UoKSk7CisgICAgICAgICAgICBzaGFwZUZvdW5kID0gdHJ1ZTsKKyAgICAgICAgfSBlbHNl
IGlmIChpc0JveFZhbHVlKHZhbHVlSWQsIGFsbG93Qm91bmRpbmdCb3gpICYmICFib3hGb3VuZCkg
eworICAgICAgICAgICAgbGlzdC0+YXBwZW5kKHBhcnNlVmFsaWRQcmltaXRpdmUodmFsdWVJZCwg
dmFsdWUpKTsKKyAgICAgICAgICAgIGJveEZvdW5kID0gdHJ1ZTsKKyAgICAgICAgICAgIG1fdmFs
dWVMaXN0LT5uZXh0KCk7CisgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgcmV0dXJuIG51bGxw
dHI7CisgICAgICAgIHZhbHVlID0gbV92YWx1ZUxpc3QtPmN1cnJlbnQoKTsKKyAgICB9CisKKyAg
ICBpZiAobV92YWx1ZUxpc3QtPmN1cnJlbnQoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7Cisg
ICAgcmV0dXJuIGxpc3QucmVsZWFzZSgpOworfQorCiAjaWYgRU5BQkxFKENTU19TSEFQRVMpCiBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlU2hhcGVQcm9wZXJ0eShDU1NQcm9w
ZXJ0eUlEIHByb3BJZCkKIHsKQEAgLTU4ODEsMzMgKzU5MTcsNyBAQCBQYXNzUmVmUHRyPENTU1Zh
bHVlPiBDU1NQYXJzZXI6OnBhcnNlU2hhcGVQcm9wZXJ0eShDU1NQcm9wZXJ0eUlEIHByb3BJZCkK
ICAgICAgICAgcmV0dXJuIGltYWdlVmFsdWUucmVsZWFzZSgpOwogICAgIH0KIAotICAgIGlmICh2
YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24pIHsKLSAgICAgICAgc2hhcGVW
YWx1ZSA9IHBhcnNlQmFzaWNTaGFwZSgpOwotICAgIH0gZWxzZSBpZiAoaXNCb3hWYWx1ZSh2YWx1
ZUlkKSkgewotICAgICAgICBrZXl3b3JkVmFsdWUgPSBwYXJzZVZhbGlkUHJpbWl0aXZlKHZhbHVl
SWQsIHZhbHVlKTsKLSAgICAgICAgbV92YWx1ZUxpc3QtPm5leHQoKTsKLSAgICB9IGVsc2UKLSAg
ICAgICAgcmV0dXJuIG51bGxwdHI7Ci0KLSAgICB2YWx1ZSA9IG1fdmFsdWVMaXN0LT5jdXJyZW50
KCk7Ci0KLSAgICBpZiAodmFsdWUpIHsKLSAgICAgICAgdmFsdWVJZCA9IHZhbHVlLT5pZDsKLSAg
ICAgICAgaWYgKGtleXdvcmRWYWx1ZSAmJiB2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6
RnVuY3Rpb24pIHsKLSAgICAgICAgICAgIHNoYXBlVmFsdWUgPSBwYXJzZUJhc2ljU2hhcGUoKTsK
LSAgICAgICAgfSBlbHNlIGlmIChzaGFwZVZhbHVlICYmIGlzQm94VmFsdWUodmFsdWVJZCkpIHsK
LSAgICAgICAgICAgIGtleXdvcmRWYWx1ZSA9IHBhcnNlVmFsaWRQcmltaXRpdmUodmFsdWVJZCwg
dmFsdWUpOwotICAgICAgICAgICAgbV92YWx1ZUxpc3QtPm5leHQoKTsKLSAgICAgICAgfSBlbHNl
Ci0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICB9Ci0KLSAgICBBU1NFUlQoIXNoYXBl
VmFsdWUgfHwgc2hhcGVWYWx1ZS0+aXNTaGFwZSgpKTsKLQotICAgIGlmIChzaGFwZVZhbHVlICYm
IGtleXdvcmRWYWx1ZSkKLSAgICAgICAgc2hhcGVWYWx1ZS0+Z2V0U2hhcGVWYWx1ZSgpLT5zZXRM
YXlvdXRCb3goa2V5d29yZFZhbHVlLnJlbGVhc2UoKSk7Ci0KLSAgICByZXR1cm4gc2hhcGVWYWx1
ZSA/IHNoYXBlVmFsdWUucmVsZWFzZSgpIDoga2V5d29yZFZhbHVlLnJlbGVhc2UoKTsKKyAgICBy
ZXR1cm4gcGFyc2VCYXNpY1NoYXBlQW5kT3JCb3goZmFsc2UpOwogfQogI2VuZGlmCiAKQEAgLTU5
MjcsMzEgKzU5MzcsNyBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDU1NQYXJzZXI6OnBhcnNlQ2xp
cFBhdGgoKQogICAgIH0KICNlbmRpZgogCi0gICAgYm9vbCBzaGFwZUZvdW5kID0gZmFsc2U7Ci0g
ICAgYm9vbCBib3hGb3VuZCA9IGZhbHNlOwotICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IGxpc3Qg
PSBDU1NWYWx1ZUxpc3Q6OmNyZWF0ZVNwYWNlU2VwYXJhdGVkKCk7Ci0gICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IDI7ICsraSkgewotICAgICAgICBpZiAoIXZhbHVlKQotICAgICAgICAgICAg
YnJlYWs7Ci0gICAgICAgIHZhbHVlSWQgPSB2YWx1ZS0+aWQ7Ci0gICAgICAgIGlmICh2YWx1ZS0+
dW5pdCA9PSBDU1NQYXJzZXJWYWx1ZTo6RnVuY3Rpb24gJiYgIXNoYXBlRm91bmQpIHsKLSAgICAg
ICAgICAgIC8vIHBhcnNlQmFzaWNTaGFwZSBhbHJlYWR5IGFza3MgZm9yIHRoZSBuZXh0IHZhbHVl
IGxpc3QgaXRlbS4KLSAgICAgICAgICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gc2hhcGVW
YWx1ZSA9IHBhcnNlQmFzaWNTaGFwZSgpOwotICAgICAgICAgICAgaWYgKCFzaGFwZVZhbHVlKQot
ICAgICAgICAgICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICAgICAgbGlzdC0+YXBwZW5k
KHNoYXBlVmFsdWUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIHNoYXBlRm91bmQgPSB0cnVlOwot
ICAgICAgICB9IGVsc2UgaWYgKChpc0JveFZhbHVlKHZhbHVlSWQpIHx8IHZhbHVlSWQgPT0gQ1NT
VmFsdWVCb3VuZGluZ0JveCkgJiYgIWJveEZvdW5kKSB7Ci0gICAgICAgICAgICBsaXN0LT5hcHBl
bmQocGFyc2VWYWxpZFByaW1pdGl2ZSh2YWx1ZUlkLCB2YWx1ZSkpOwotICAgICAgICAgICAgYm94
Rm91bmQgPSB0cnVlOwotICAgICAgICAgICAgbV92YWx1ZUxpc3QtPm5leHQoKTsKLSAgICAgICAg
fSBlbHNlCi0gICAgICAgICAgICByZXR1cm4gbnVsbHB0cjsKLSAgICAgICAgdmFsdWUgPSBtX3Zh
bHVlTGlzdC0+Y3VycmVudCgpOwotICAgIH0KLSAgICBpZiAodmFsdWUpCi0gICAgICAgIHJldHVy
biBudWxscHRyOwotICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsKKyAgICByZXR1cm4gcGFyc2VC
YXNpY1NoYXBlQW5kT3JCb3godHJ1ZSk7CiB9CiAKIC8vIEZJWE1FIFRoaXMgZnVuY3Rpb24gaXMg
dGVtcG9yYXJ5IHRvIGFsbG93IGZvciBhbiBvcmRlcmx5IHRyYW5zaXRpb24gYmV0d2VlbgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oIGIvU291cmNlL1dlYkNvcmUv
Y3NzL0NTU1BhcnNlci5oCmluZGV4IGNmMGU1N2EwZTA4NjIwZjc3NDcwNDY4OWRiYTg3OTBiOGJl
NDBiNDQuLmI4NzZkMGFlOTFjMzY0MzIwMmU4ZDllMWJiNGI2NmQwZTU3ZmI4ZTEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTUGFyc2VyLmgKQEAgLTE3OSw2ICsxNzksNyBAQCBwdWJsaWM6CiAgICAgUGFzc1JlZlB0
cjxDU1NWYWx1ZT4gcGFyc2VTaGFwZVByb3BlcnR5KENTU1Byb3BlcnR5SUQpOwogI2VuZGlmCiAK
KyAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBwYXJzZUJhc2ljU2hhcGVBbmRPckJveChib29sIGFs
bG93Qm91bmRpbmdCb3gpOwogICAgIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHBhcnNl
QmFzaWNTaGFwZSgpOwogICAgIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IHBhcnNlU2hh
cGVSYWRpdXMoQ1NTUGFyc2VyVmFsdWUqKTsKICAgICBQYXNzUmVmUHRyPENTU0Jhc2ljU2hhcGU+
IHBhcnNlQmFzaWNTaGFwZVJlY3RhbmdsZShDU1NQYXJzZXJWYWx1ZUxpc3QqKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaCBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NWYWx1ZUxpc3QuaAppbmRleCA5NGUyNjAzNjljYzZjODg3ZjdkZjY5YzUxOTc0NzFhYjU5
YjgzZGMwLi5mYTgyYTlhZDBkMDZhZThiMTZiNGE4YWE3MDc1MzQ1MjliY2Y5MDQwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1ZhbHVlTGlzdC5oCkBAIC01Miw2ICs1Miw3IEBAIHB1YmxpYzoKICAgICBDU1NW
YWx1ZSogaXRlbShzaXplX3QgaW5kZXgpIHsgcmV0dXJuIGluZGV4IDwgbV92YWx1ZXMuc2l6ZSgp
ID8gbV92YWx1ZXNbaW5kZXhdLmdldCgpIDogMDsgfQogICAgIGNvbnN0IENTU1ZhbHVlKiBpdGVt
KHNpemVfdCBpbmRleCkgY29uc3QgeyByZXR1cm4gaW5kZXggPCBtX3ZhbHVlcy5zaXplKCkgPyBt
X3ZhbHVlc1tpbmRleF0uZ2V0KCkgOiAwOyB9CiAgICAgQ1NTVmFsdWUqIGl0ZW1XaXRob3V0Qm91
bmRzQ2hlY2soc2l6ZV90IGluZGV4KSB7IHJldHVybiBtX3ZhbHVlc1tpbmRleF0uZ2V0KCk7IH0K
KyAgICBjb25zdCBDU1NWYWx1ZSogaXRlbVdpdGhvdXRCb3VuZHNDaGVjayhzaXplX3QgaW5kZXgp
IGNvbnN0IHsgQVNTRVJUKGluZGV4IDwgbV92YWx1ZXMuc2l6ZSgpKTsgcmV0dXJuIG1fdmFsdWVz
W2luZGV4XS5nZXQoKTsgfQogCiAgICAgdm9pZCBhcHBlbmQoUGFzc1JlZlB0cjxDU1NWYWx1ZT4g
dmFsdWUpIHsgbV92YWx1ZXMuYXBwZW5kKHZhbHVlKTsgfQogICAgIHZvaWQgcHJlcGVuZChQYXNz
UmVmUHRyPENTU1ZhbHVlPiB2YWx1ZSkgeyBtX3ZhbHVlcy5pbnNlcnQoMCwgdmFsdWUpOyB9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAKaW5kZXggNmE4
YTM1NTYzMGUxNTFhNGQwYjNiMWQ2MGI1NDYyOTQ2NWE4NjAxNS4uMzFmMjM4N2UyNTAxYzAzODE0
OWJkOWZkYjVjOTJiOWIyZTlmYTRiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0Rl
cHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9EZXByZWNh
dGVkU3R5bGVCdWlsZGVyLmNwcApAQCAtMjE4MiwyMyArMjE4MiwzNiBAQCBwdWJsaWM6CiAgICAg
ICAgICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUgPSB0b0NTU1ByaW1pdGl2
ZVZhbHVlKHZhbHVlKTsKICAgICAgICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJ
RCgpID09IENTU1ZhbHVlQXV0bykKICAgICAgICAgICAgICAgICBzZXRWYWx1ZShzdHlsZVJlc29s
dmVyLT5zdHlsZSgpLCAwKTsKLSAgICAgICAgICAgIGVsc2UgaWYgKHByaW1pdGl2ZVZhbHVlLT5n
ZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVDb250ZW50Qm94Ci0gICAgICAgICAgICAgICAgfHwgcHJp
bWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUJvcmRlckJveAotICAgICAgICAg
ICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVQYWRkaW5n
Qm94Ci0gICAgICAgICAgICAgICAgfHwgcHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9PSBD
U1NWYWx1ZU1hcmdpbkJveCkKLSAgICAgICAgICAgICAgICBzZXRWYWx1ZShzdHlsZVJlc29sdmVy
LT5zdHlsZSgpLCBTaGFwZVZhbHVlOjpjcmVhdGVMYXlvdXRCb3hWYWx1ZShMYXlvdXRCb3goKnBy
aW1pdGl2ZVZhbHVlKSkpOwogICAgICAgICAgICAgZWxzZSBpZiAocHJpbWl0aXZlVmFsdWUtPmdl
dFZhbHVlSUQoKSA9PSBDU1NWYWx1ZU91dHNpZGVTaGFwZSkKICAgICAgICAgICAgICAgICBzZXRW
YWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZSgpLCBTaGFwZVZhbHVlOjpjcmVhdGVPdXRzaWRlVmFs
dWUoKSk7Ci0gICAgICAgICAgICBlbHNlIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNTaGFwZSgpKSB7
Ci0gICAgICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNoYXBlID0gU2hhcGVWYWx1ZTo6
Y3JlYXRlU2hhcGVWYWx1ZShiYXNpY1NoYXBlRm9yVmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUo
KSwgc3R5bGVSZXNvbHZlci0+cm9vdEVsZW1lbnRTdHlsZSgpLCBwcmltaXRpdmVWYWx1ZS0+Z2V0
U2hhcGVWYWx1ZSgpKSk7Ci0gICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+
c3R5bGUoKSwgc2hhcGUucmVsZWFzZSgpKTsKLSAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNl
IGlmICh2YWx1ZS0+aXNJbWFnZVZhbHVlKCkgfHwgdmFsdWUtPmlzSW1hZ2VTZXRWYWx1ZSgpKSB7
CiAgICAgICAgICAgICBSZWZQdHI8U2hhcGVWYWx1ZT4gc2hhcGUgPSBTaGFwZVZhbHVlOjpjcmVh
dGVJbWFnZVZhbHVlKHN0eWxlUmVzb2x2ZXItPnN0eWxlSW1hZ2UocHJvcGVydHksIHZhbHVlKSk7
CiAgICAgICAgICAgICBzZXRWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZSgpLCBzaGFwZS5yZWxl
YXNlKCkpOwotICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAodmFsdWUtPmlzVmFsdWVMaXN0
KCkpIHsKKyAgICAgICAgICAgIFJlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZTsKKyAgICAgICAgICAg
IExheW91dEJveCBsYXlvdXRCb3ggPSBCb3hNaXNzaW5nOworICAgICAgICAgICAgQ1NTVmFsdWVM
aXN0KiB2YWx1ZUxpc3QgPSB0b0NTU1ZhbHVlTGlzdCh2YWx1ZSk7CisgICAgICAgICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgdmFsdWVMaXN0LT5sZW5ndGgoKTsgKytpKSB7CisgICAgICAg
ICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQcmltaXRp
dmVWYWx1ZSh2YWx1ZUxpc3QtPml0ZW1XaXRob3V0Qm91bmRzQ2hlY2soaSkpOworICAgICAgICAg
ICAgICAgIGlmIChwcmltaXRpdmVWYWx1ZS0+aXNTaGFwZSgpKQorICAgICAgICAgICAgICAgICAg
ICBzaGFwZSA9IGJhc2ljU2hhcGVGb3JWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZSgpLCBzdHls
ZVJlc29sdmVyLT5yb290RWxlbWVudFN0eWxlKCksIHByaW1pdGl2ZVZhbHVlLT5nZXRTaGFwZVZh
bHVlKCkpOworICAgICAgICAgICAgICAgIGVsc2UgaWYgKHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1
ZUlEKCkgPT0gQ1NTVmFsdWVDb250ZW50Qm94CisgICAgICAgICAgICAgICAgICAgIHx8IHByaW1p
dGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVCb3JkZXJCb3gKKyAgICAgICAgICAg
ICAgICAgICAgfHwgcHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQoKSA9PSBDU1NWYWx1ZVBhZGRp
bmdCb3gKKyAgICAgICAgICAgICAgICAgICAgfHwgcHJpbWl0aXZlVmFsdWUtPmdldFZhbHVlSUQo
KSA9PSBDU1NWYWx1ZU1hcmdpbkJveCkKKyAgICAgICAgICAgICAgICAgICAgbGF5b3V0Qm94ID0g
TGF5b3V0Qm94KCpwcmltaXRpdmVWYWx1ZSk7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAg
ICAgICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGlmIChz
aGFwZSkKKyAgICAgICAgICAgICAgICBzZXRWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZSgpLCBT
aGFwZVZhbHVlOjpjcmVhdGVTaGFwZVZhbHVlKHNoYXBlLnJlbGVhc2UoKSwgbGF5b3V0Qm94KSk7
CisgICAgICAgICAgICBlbHNlIGlmIChsYXlvdXRCb3ggIT0gQm94TWlzc2luZykKKyAgICAgICAg
ICAgICAgICBzZXRWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZSgpLCBTaGFwZVZhbHVlOjpjcmVh
dGVMYXlvdXRCb3hWYWx1ZShsYXlvdXRCb3gpKTsKIAorICAgICAgICB9CiAgICAgfQorCiAgICAg
c3RhdGljIFByb3BlcnR5SGFuZGxlciBjcmVhdGVIYW5kbGVyKCkKICAgICB7CiAgICAgICAgIFBy
b3BlcnR5SGFuZGxlciBoYW5kbGVyID0gQXBwbHlQcm9wZXJ0eURlZmF1bHRCYXNlPFNoYXBlVmFs
dWUqLCBnZXR0ZXJGdW5jdGlvbiwgUGFzc1JlZlB0cjxTaGFwZVZhbHVlPiwgc2V0dGVyRnVuY3Rp
b24sIFNoYXBlVmFsdWUqLCBpbml0aWFsRnVuY3Rpb24+OjpjcmVhdGVIYW5kbGVyKCk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlv
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlv
bi5jcHAKaW5kZXggNzJjNzhmZWQ0ZWU5NGFmNTEwNWZmYzQ5Mjc4NWZkM2U4MjM5MjIwOS4uYTM5
OGE3YTVkZDM0Yjg1ZGNjMTE1MTdiOTgzYmQ3ODI0MzUxNmRmNiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcApAQCAt
MTUzLDEzICsxNTMsMTYgQEAgc3RhdGljIGlubGluZSBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+IGJs
ZW5kRnVuYyhjb25zdCBBbmltYXRpb25CYXNlKiwgU2hhcGVWYWx1ZSoKICAgICBpZiAoZnJvbS0+
dHlwZSgpICE9IFNoYXBlVmFsdWU6OlNoYXBlIHx8IHRvLT50eXBlKCkgIT0gU2hhcGVWYWx1ZTo6
U2hhcGUpCiAgICAgICAgIHJldHVybiB0bzsKIAorICAgIGlmIChmcm9tLT5sYXlvdXRCb3goKSAh
PSB0by0+bGF5b3V0Qm94KCkpCisgICAgICAgIHJldHVybiB0bzsKKwogICAgIGNvbnN0IEJhc2lj
U2hhcGUqIGZyb21TaGFwZSA9IGZyb20tPnNoYXBlKCk7CiAgICAgY29uc3QgQmFzaWNTaGFwZSog
dG9TaGFwZSA9IHRvLT5zaGFwZSgpOwogCiAgICAgaWYgKCFmcm9tU2hhcGUtPmNhbkJsZW5kKHRv
U2hhcGUpKQogICAgICAgICByZXR1cm4gdG87CiAKLSAgICByZXR1cm4gU2hhcGVWYWx1ZTo6Y3Jl
YXRlU2hhcGVWYWx1ZSh0b1NoYXBlLT5ibGVuZChmcm9tU2hhcGUsIHByb2dyZXNzKSk7CisgICAg
cmV0dXJuIFNoYXBlVmFsdWU6OmNyZWF0ZVNoYXBlVmFsdWUodG9TaGFwZS0+YmxlbmQoZnJvbVNo
YXBlLCBwcm9ncmVzcyksIHRvLT5sYXlvdXRCb3goKSk7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYXBlVmFsdWUuaCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmgKaW5kZXggMGNjMjJjNDExNGU5ODU5
MTQ4MjljM2FjOWVhMmY0ZDUyZDEyZTc5NC4uNTNjMTFhN2U4Mjc4OTUwYzhkZjA0NWQwMTgwYmFi
YzQ5MzMzNjk3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1No
YXBlVmFsdWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1
ZS5oCkBAIC00OCw5ICs0OCw5IEBAIHB1YmxpYzoKICAgICAgICAgSW1hZ2UKICAgICB9OwogCi0g
ICAgc3RhdGljIFBhc3NSZWZQdHI8U2hhcGVWYWx1ZT4gY3JlYXRlU2hhcGVWYWx1ZShQYXNzUmVm
UHRyPEJhc2ljU2hhcGU+IHNoYXBlKQorICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+
IGNyZWF0ZVNoYXBlVmFsdWUoUGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZSwgTGF5b3V0Qm94
IGxheW91dEJveCkKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgU2hhcGVWYWx1
ZShzaGFwZSkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFNoYXBlVmFsdWUoc2hhcGUs
IGxheW91dEJveCkpOwogICAgIH0KIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+
IGNyZWF0ZUxheW91dEJveFZhbHVlKExheW91dEJveCBsYXlvdXRCb3gpCkBAIC04NCwxMCArODQs
MTAgQEAgcHVibGljOgogICAgIGJvb2wgb3BlcmF0b3I9PShjb25zdCBTaGFwZVZhbHVlJiBvdGhl
cikgY29uc3QgeyByZXR1cm4gdHlwZSgpID09IG90aGVyLnR5cGUoKTsgfQogCiBwcml2YXRlOgot
ICAgIFNoYXBlVmFsdWUoUGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZSkKKyAgICBTaGFwZVZh
bHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4gc2hhcGUsIExheW91dEJveCBsYXlvdXRCb3gpCiAg
ICAgICAgIDogbV90eXBlKFNoYXBlKQogICAgICAgICAsIG1fc2hhcGUoc2hhcGUpCi0gICAgICAg
ICwgbV9sYXlvdXRCb3gobV9zaGFwZS0+bGF5b3V0Qm94KCkpCisgICAgICAgICwgbV9sYXlvdXRC
b3gobGF5b3V0Qm94KQogICAgIHsKICAgICB9CiAgICAgU2hhcGVWYWx1ZShTaGFwZVZhbHVlVHlw
ZSB0eXBlKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IDgwMDE5NWZkYjdjN2Y0MGJjYWYxMzIxM2U1ODQwYzQxMzUyZjQ4YjYu
LmEzZTliYWIzZTljYjkzNzhhOTRhMThmODBkYTBjZjk2YzNkNjE0ZmIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxOCBAQAorMjAxNC0wMS0yMCAgQmVhciBUcmF2aXMgIDxiZXRyYXZpc0BhZG9iZS5jb20+CisK
KyAgICAgICAgW0NTUyBTaGFwZXNdIFByZXNlcnZlIGJveC1zaGFwZSBvcmRlciB3aGVuIHNlcmlh
bGl6aW5nIHNoYXBlIHZhbHVlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTI3MjAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgTW9kaWZ5IHRoZSBleHBlY3RhdGlvbnMgZm9yIGJveCBzaGFwZSBwYWlycywg
cHJlc2VydmluZyB0aGUgb3JkZXIgb2YKKyAgICAgICAgdGhlIGFyZ3VtZW50cyBpbiBub24tY29t
cHV0ZWQgdmFsdWVzLiBDb21wdXRlZCB2YWx1ZXMgYXJlIHN0aWxsIGEKKyAgICAgICAgc2hhcGUg
Zm9sbG93ZWQgYnkgYSBib3guCisKKyAgICAgICAgKiBmYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNp
bmctc2hhcGUtaW5zaWRlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L3NoYXBlcy9wYXJz
aW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9z
aGFwZXMvcGFyc2luZy9wYXJzaW5nLXRlc3QtdXRpbHMuanM6CisKIDIwMTQtMDEtMjAgIE1vcnRl
biBTdGVuc2hvcm5lICA8bXN0ZW5zaG9Ab3BlcmEuY29tPgogCiAgICAgICAgIFJlZ2lvbiBiYXNl
ZCBtdWx0aWNvbDogc3VwcG9ydCBleHBsaWNpdCBjb2x1bW4gYnJlYWtzCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtaW5zaWRlLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1p
bnNpZGUtZXhwZWN0ZWQudHh0CmluZGV4IGVjYmViNGJiOTBiYjYxYzY2ODI0YzVmMGViZWEzNzMy
ZTFiY2NiNmUuLjM4YTZiZTgyNmQwZDdmZjA0NTEyOGFiZGQ2YWI0NmFiMDg0YmY4MDAgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1pbnNp
ZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFy
c2luZy1zaGFwZS1pbnNpZGUtZXhwZWN0ZWQudHh0CkBAIC0xMDcsMTMgKzEwNywxMyBAQCBQQVNT
IGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtaW5zaWRlIiwgInBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMAogUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQt
c2hhcGUtaW5zaWRlIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4
IDBweCkgYm9yZGVyLWJveCIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBw
eCwgMTBweCAwcHgpIGJvcmRlci1ib3giCiBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUt
aW5zaWRlIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkg
bWFyZ2luLWJveCIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIG1hcmdpbi1ib3giCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1z
aGFwZS1pbnNpZGUiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHgg
MHB4KSBtYXJnaW4tYm94IikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4
LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1p
bnNpZGUiLCAiY29udGVudC1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIGNvbnRlbnQtYm94IgorUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLWluc2lk
ZSIsICJjb250ZW50LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIikgaXMgImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFw
ZS1pbnNpZGUiLCAiY29udGVudC1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwg
MTBweCAwcHgpIGNvbnRlbnQtYm94IgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLWlu
c2lkZSIsICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwg
MTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4
IDBweCkgcGFkZGluZy1ib3giCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtaW5zaWRl
IiwgInBhZGRpbmctYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4
IDBweCkiKSBpcyAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBl
LWluc2lkZSIsICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBw
eCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAx
MHB4IDBweCkgcGFkZGluZy1ib3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtaW5z
aWRlIiwgImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEw
cHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAw
cHgpIGJvcmRlci1ib3giCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtaW5zaWRlIiwg
ImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSIpIGlzICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAx
MHB4IDBweCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1pbnNp
ZGUiLCAiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBw
eCkgYm9yZGVyLWJveCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAi
bWFyZ2luLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgp
IikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFy
Z2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAibWFyZ2lu
LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMg
Im1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSIKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJt
YXJnaW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCki
KSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJn
aW4tYm94IgogUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJvdXRzaWRl
LXNoYXBlIikgaXMgIm91dHNpZGUtc2hhcGUiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgi
LXdlYmtpdC1zaGFwZS1pbnNpZGUiLCAib3V0c2lkZS1zaGFwZSIpIGlzICJvdXRzaWRlLXNoYXBl
IgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNo
YXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2lu
Zy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0CmluZGV4IDY0ZmVmMWJhOWE4NGUx
N2RmZDViZDUwYmUxNzFiMTY4Y2Q5ZGJiZDguLmM4OTU2MGQ0ZDQwMDg2YmVjMzliOTE4N2IwYjcz
MzI1ZjgxNjZiYTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcv
cGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQKQEAgLTEw
NywxMyArMTA3LDEzIEBAIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwg
InBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxCiBQQVNTIGdldENvbXB1dGVk
U3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInBvbHlnb24obm9uemVybywgMHB4
IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCIpIGlzICJwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGJvcmRlci1ib3giCiBQQVNTIGdldENT
U1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giKSBpcyAicG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgogUEFTUyBnZXRDb21wdXRl
ZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBw
eCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giKSBpcyAicG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgotUEFTUyBnZXRD
U1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAiY29udGVudC1ib3ggcG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8s
IDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRlbnQtYm94IgorUEFTUyBnZXRDU1NU
ZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAiY29udGVudC1ib3ggcG9seWdvbihub256ZXJv
LCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJjb250ZW50LWJveCBwb2x5Z29u
KG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRl
ZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJjb250ZW50LWJveCBwb2x5Z29u
KG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9u
emVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVudC1ib3giCi1QQVNTIGdl
dENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwYWRkaW5nLWJveCBwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVy
bywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgcGFkZGluZy1ib3giCitQQVNTIGdldENT
U1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBhZGRpbmctYm94IHBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiCiBQQVNTIGdldENvbXB1
dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInBhZGRpbmctYm94IHBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihu
b256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRkaW5nLWJveCIKLVBBU1Mg
Z2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImJvcmRlci1ib3ggcG9seWdvbihu
b256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGJvcmRlci1ib3giCitQQVNTIGdldENT
U1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVy
bywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAiYm9yZGVyLWJveCBwb2x5Z29u
KG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRl
ZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXItYm94IHBvbHlnb24o
bm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgotUEFTUyBnZXRD
U1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywg
MHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKK1BBU1MgZ2V0Q1NTVGV4
dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJtYXJnaW4tYm94IHBvbHlnb24obm9u
emVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiCiBQQVNTIGdldENvbXB1dGVkU3R5
bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgIm1hcmdpbi1ib3ggcG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8s
IDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giCiBQQVNTIHJlbW92ZUJh
c2VVUkwoZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgInVybCgnaW1hZ2UnKSIp
KSBpcyAidXJsKGltYWdlKSIKIFBBU1MgcmVtb3ZlQmFzZVVSTChnZXRDb21wdXRlZFN0eWxlVmFs
dWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJ1cmwoJ2ltYWdlJykiKSkgaXMgInVybChpbWFn
ZSkiCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmct
dGVzdC11dGlscy5qcyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10
ZXN0LXV0aWxzLmpzCmluZGV4IGQ5NDUzNWQ4M2EzMjQxNDk1YmFkZDRlNWI1MDg2NGI2MzYyMjFj
MTguLmQyM2ZhZDJhODY0NjAxYjZkNWE1Y2Q5YjZjZTVlMDUxMjc2MmIzNzMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzCisr
KyBiL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpz
CkBAIC02NywxMCArNjcsMTAgQEAgdmFyIHZhbGlkU2hhcGVWYWx1ZXMgPSBbCiAgICAgInBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCIsCiAg
ICAgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2lu
LWJveCIsCiAKLSAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSBjb250ZW50LWJveCJdLAotICAgIFsicGFkZGluZy1ib3ggcG9seWdvbihub256
ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBw
eCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIHBhZGRpbmctYm94Il0sCi0gICAgWyJib3JkZXIt
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94Il0s
Ci0gICAgWyJtYXJnaW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAx
MHB4IDBweCkiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4
KSBtYXJnaW4tYm94Il0KKyAgICBbImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBw
eCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAiY29udGVudC1ib3ggcG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRlbnQtYm94Il0sCisgICAgWyJwYWRkaW5nLWJveCBw
b2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgInBhZGRpbmct
Ym94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRkaW5nLWJveCJd
LAorICAgIFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwg
MTBweCAwcHgpIiwgImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIGJvcmRlci1ib3giXSwKKyAgICBbIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAw
cHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIsICJtYXJnaW4tYm94IHBvbHlnb24obm9uemVy
bywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbihub256ZXJvLCAwcHgg
MHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94Il0KIF07CiAKIC8vIEludmFsaWQg
dmFsdWVzIGZvciBib3RoIHNoYXBlLWluc2lkZSBhbmQgc2hhcGUtb3V0c2lkZS4gV2hlbiBhbiBp
bnZhbGlkIHNoYXBlIHZhbHVlIGlzIHNwZWNpZmllZCwgdGhlIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>221780</attachid>
            <date>2014-01-21 13:11:05 -0800</date>
            <delta_ts>2014-01-21 14:19:31 -0800</delta_ts>
            <desc>Swapping boolean for CSSPropertyID</desc>
            <filename>bug-127200-20140121131104.patch</filename>
            <type>text/plain</type>
            <size>26439</size>
            <attacher name="Bear Travis">betravis</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYyNDY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjBhYWJkMzI2NDUyODA2
YjU1Y2Q2MmRmMmFjOTI3NDcwYmY1OTVhNS4uMGU4ZTA1MWZhN2Y5ZDA1OTQyMTc0NjE5MWVlZmNl
YmFiMzk4MjJmZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE0LTAxLTIxICBCZWFy
IFRyYXZpcyAgPGJldHJhdmlzQGFkb2JlLmNvbT4KKworICAgICAgICBbQ1NTIFNoYXBlc10gUHJl
c2VydmUgYm94LXNoYXBlIG9yZGVyIHdoZW4gc2VyaWFsaXppbmcgc2hhcGUgdmFsdWVzCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjcyMDAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb252ZXJ0IHRoZSBw
YXJzZWQgc2hhcGUtYm94IHBhaXIgdG8gYSBDU1NWYWx1ZUxpc3QgcmF0aGVyIHRoYW4gZGlyZWN0
bHkKKyAgICAgICAgYWRkaW5nIHRoZSBib3ggdmFsdWUgdG8gQmFzaWNTaGFwZS4gVGhlIENTU1Zh
bHVlTGlzdCBwcmVzZXJ2ZXMgdGhlCisgICAgICAgIHNoYXBlLWJveCBvcmRlcmluZywgYW5kIGNs
ZWFucyB1cCBhIGxpdHRsZSBiaXQgb2YgdGhlIGNvZGUgc2hhcmVkIGJldHdlZW4KKyAgICAgICAg
Y2xpcCBhbmQgc2hhcGUgdmFsdWVzLgorCisgICAgICAgIE1vZGlmeWluZyBleGlzdGluZyBwYXJz
aW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpzaGFwZVByb3BlcnR5VmFsdWUpOiBGYWN0b3Igb3V0IGNv
ZGUgY29tbW9uIHRvIGdlbmVyYXRpbmcgc2hhcGUKKyAgICAgICAgdmFsdWVzLgorICAgICAgICAo
V2ViQ29yZTo6Q29tcHV0ZWRTdHlsZUV4dHJhY3Rvcjo6cHJvcGVydHlWYWx1ZSk6IEdlbmVyYXRl
IGEgQ1NTVmFsdWVMaXN0IHdoZW4KKyAgICAgICAgeW91IGhhdmUgYm90aCBhIHNoYXBlIGFuZCBh
IGJveC4KKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNT
U1BhcnNlcjo6cGFyc2VCYXNpY1NoYXBlQW5kT3JCb3gpOiBGYWN0b3Igb3V0IGNvZGUgY29tbW9u
IHRvIGNsaXAKKyAgICAgICAgcGF0aHMgYW5kIHNoYXBlIHByb3BlcnRpZXMgdGhhdCBwYXJzZXMg
dGhlIFtiYXNpYy1zaGFwZSB8fCBib3hdIHN5bnRheCBmcm9tCisgICAgICAgIHRoZSBDU1MgU2hh
cGVzIHNwZWMuCisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlU2hhcGVQcm9wZXJ0
eSk6IFBhcnNlIHNoYXBlLWJveCBwYWlycyBhcyBhIENTU1ZhbHVlTGlzdC4KKyAgICAgICAgKiBj
c3MvRGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBcHBseVBy
b3BlcnR5U2hhcGU6OmFwcGx5VmFsdWUpOiBVc2UgdGhlIENTU1ZhbHVlTGlzdCBmb3Igc2hhcGUt
Ym94IHBhaXJzLgorICAgICAgICAqIGNzcy9DU1NWYWx1ZUxpc3QuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlTGlzdDo6aXRlbVdpdGhvdXRCb3VuZHNDaGVjayk6IEFkZCBhIGNvbnN0IHZl
cnNpb24uCisgICAgICAgICogcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlBbmltYXRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6YmxlbmRGdW5jKTogU3BlY2lmeSBhIGJveCB3aGVuIGJsZW5k
aW5nLgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmg6CisgICAgICAgIChX
ZWJDb3JlOjpTaGFwZVZhbHVlOjpjcmVhdGVTaGFwZVZhbHVlKTogQWRkIGEgYm94IHBhcmFtZXRl
ci4KKyAgICAgICAgKFdlYkNvcmU6OlNoYXBlVmFsdWU6OlNoYXBlVmFsdWUpOiBEaXR0by4KKwog
MjAxNC0wMS0yMSAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE2MjQ1Mi4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uY3BwIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKaW5kZXggNWYzZjJlZmQ2
OWZmZjFmNjBiZjY1ODdkODk0NjBmNWIwMGE2NjU1YS4uY2YxNmRiMzUyNjg2MzgyZjJmZDg1YzEy
NDJkMmE2ODg1MjQ5ZDZjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU0NvbXB1
dGVkU3R5bGVEZWNsYXJhdGlvbi5jcHAKQEAgLTE3NjMsNiArMTc2MywzMSBAQCBzdGF0aWMgaW5s
aW5lIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNvbXB1dGVSZW5kZXJTdHlsZUZvclByb3BlcnR5
KE5vZGUqIHN0eWxlZAogICAgIHJldHVybiBzdHlsZWROb2RlLT5jb21wdXRlZFN0eWxlKHN0eWxl
ZE5vZGUtPmlzUHNldWRvRWxlbWVudCgpID8gTk9QU0VVRE8gOiBwc2V1ZG9FbGVtZW50U3BlY2lm
aWVyKTsKIH0KIAorI2lmIEVOQUJMRShDU1NfU0hBUEVTKQorc3RhdGljIFBhc3NSZWZQdHI8Q1NT
VmFsdWU+IHNoYXBlUHJvcGVydHlWYWx1ZShjb25zdCBSZW5kZXJTdHlsZSogc3R5bGUsIGNvbnN0
IFNoYXBlVmFsdWUqIHNoYXBlVmFsdWUpCit7CisgICAgaWYgKCFzaGFwZVZhbHVlKQorICAgICAg
ICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9u
ZSk7CisKKyAgICBpZiAoc2hhcGVWYWx1ZS0+dHlwZSgpID09IFNoYXBlVmFsdWU6Ok91dHNpZGUp
CisgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NT
VmFsdWVPdXRzaWRlU2hhcGUpOworCisgICAgaWYgKHNoYXBlVmFsdWUtPnR5cGUoKSA9PSBTaGFw
ZVZhbHVlOjpCb3gpCisgICAgICAgIHJldHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShz
aGFwZVZhbHVlLT5sYXlvdXRCb3goKSk7CisKKyAgICBpZiAoc2hhcGVWYWx1ZS0+dHlwZSgpID09
IFNoYXBlVmFsdWU6OkltYWdlKQorICAgICAgICByZXR1cm4gc2hhcGVWYWx1ZS0+aW1hZ2UoKSA/
IHNoYXBlVmFsdWUtPmltYWdlKCktPmNzc1ZhbHVlKCkgOiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJ
ZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsKKworICAgIEFTU0VSVChzaGFwZVZhbHVlLT50
eXBlKCkgPT0gU2hhcGVWYWx1ZTo6U2hhcGUpOworCisgICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4g
bGlzdCA9IENTU1ZhbHVlTGlzdDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKKyAgICBsaXN0LT5h
cHBlbmQodmFsdWVGb3JCYXNpY1NoYXBlKHN0eWxlLCBzaGFwZVZhbHVlLT5zaGFwZSgpKSk7Cisg
ICAgaWYgKHNoYXBlVmFsdWUtPmxheW91dEJveCgpICE9IEJveE1pc3NpbmcpCisgICAgICAgIGxp
c3QtPmFwcGVuZChjc3NWYWx1ZVBvb2woKS5jcmVhdGVWYWx1ZShzaGFwZVZhbHVlLT5sYXlvdXRC
b3goKSkpOworICAgIHJldHVybiBsaXN0LnJlbGVhc2UoKTsKK30KKyNlbmRpZgorCiBQYXNzUmVm
UHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpwcm9wZXJ0eVZhbHVlKENTU1By
b3BlcnR5SUQgcHJvcGVydHlJRCwgRVVwZGF0ZUxheW91dCB1cGRhdGVMYXlvdXQpIGNvbnN0CiB7
CiAgICAgTm9kZSogc3R5bGVkTm9kZSA9IHRoaXMtPnN0eWxlZE5vZGUoKTsKQEAgLTI5MzgsMzEg
KzI5NjMsOSBAQCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBDb21wdXRlZFN0eWxlRXh0cmFjdG9yOjpw
cm9wZXJ0eVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydAogICAgICAgICBjYXNlIENTU1Byb3Bl
cnR5V2Via2l0U2hhcGVJbWFnZVRocmVzaG9sZDoKICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1
ZVBvb2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+c2hhcGVJbWFnZVRocmVzaG9sZCgpLCBDU1NQcmlt
aXRpdmVWYWx1ZTo6Q1NTX05VTUJFUik7CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRT
aGFwZUluc2lkZToKLSAgICAgICAgICAgIGlmICghc3R5bGUtPnNoYXBlSW5zaWRlKCkpCi0gICAg
ICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJWYWx1ZShD
U1NWYWx1ZU5vbmUpOwotICAgICAgICAgICAgaWYgKHN0eWxlLT5zaGFwZUluc2lkZSgpLT50eXBl
KCkgPT0gU2hhcGVWYWx1ZTo6Qm94KQotICAgICAgICAgICAgICAgIHJldHVybiBjc3NWYWx1ZVBv
b2woKS5jcmVhdGVWYWx1ZShzdHlsZS0+c2hhcGVJbnNpZGUoKS0+bGF5b3V0Qm94KCkpOwotICAg
ICAgICAgICAgaWYgKHN0eWxlLT5zaGFwZUluc2lkZSgpLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6
T3V0c2lkZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlSWRl
bnRpZmllclZhbHVlKENTU1ZhbHVlT3V0c2lkZVNoYXBlKTsKLSAgICAgICAgICAgIGlmIChzdHls
ZS0+c2hhcGVJbnNpZGUoKS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OkltYWdlKSB7Ci0gICAgICAg
ICAgICAgICAgaWYgKHN0eWxlLT5zaGFwZUluc2lkZSgpLT5pbWFnZSgpKQotICAgICAgICAgICAg
ICAgICAgICByZXR1cm4gc3R5bGUtPnNoYXBlSW5zaWRlKCktPmltYWdlKCktPmNzc1ZhbHVlKCk7
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlkZW50aWZpZXJW
YWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAgICAgICAgfQotICAgICAgICAgICAgQVNTRVJUKHN0
eWxlLT5zaGFwZUluc2lkZSgpLT50eXBlKCkgPT0gU2hhcGVWYWx1ZTo6U2hhcGUpOwotICAgICAg
ICAgICAgcmV0dXJuIHZhbHVlRm9yQmFzaWNTaGFwZShzdHlsZS5nZXQoKSwgc3R5bGUtPnNoYXBl
SW5zaWRlKCktPnNoYXBlKCkpOworICAgICAgICAgICAgcmV0dXJuIHNoYXBlUHJvcGVydHlWYWx1
ZShzdHlsZS5nZXQoKSwgc3R5bGUtPnNoYXBlSW5zaWRlKCkpOwogICAgICAgICBjYXNlIENTU1By
b3BlcnR5V2Via2l0U2hhcGVPdXRzaWRlOgotICAgICAgICAgICAgaWYgKCFzdHlsZS0+c2hhcGVP
dXRzaWRlKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUlk
ZW50aWZpZXJWYWx1ZShDU1NWYWx1ZU5vbmUpOwotICAgICAgICAgICAgaWYgKHN0eWxlLT5zaGFw
ZU91dHNpZGUoKS0+dHlwZSgpID09IFNoYXBlVmFsdWU6OkJveCkKLSAgICAgICAgICAgICAgICBy
ZXR1cm4gY3NzVmFsdWVQb29sKCkuY3JlYXRlVmFsdWUoc3R5bGUtPnNoYXBlT3V0c2lkZSgpLT5s
YXlvdXRCb3goKSk7Ci0gICAgICAgICAgICBpZiAoc3R5bGUtPnNoYXBlT3V0c2lkZSgpLT50eXBl
KCkgPT0gU2hhcGVWYWx1ZTo6SW1hZ2UpIHsKLSAgICAgICAgICAgICAgICBpZiAoc3R5bGUtPnNo
YXBlT3V0c2lkZSgpLT5pbWFnZSgpKQotICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3R5bGUt
PnNoYXBlT3V0c2lkZSgpLT5pbWFnZSgpLT5jc3NWYWx1ZSgpOwotICAgICAgICAgICAgICAgIHJl
dHVybiBjc3NWYWx1ZVBvb2woKS5jcmVhdGVJZGVudGlmaWVyVmFsdWUoQ1NTVmFsdWVOb25lKTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIEFTU0VSVChzdHlsZS0+c2hhcGVPdXRzaWRlKCkt
PnR5cGUoKSA9PSBTaGFwZVZhbHVlOjpTaGFwZSk7Ci0gICAgICAgICAgICByZXR1cm4gdmFsdWVG
b3JCYXNpY1NoYXBlKHN0eWxlLmdldCgpLCBzdHlsZS0+c2hhcGVPdXRzaWRlKCktPnNoYXBlKCkp
OworICAgICAgICAgICAgcmV0dXJuIHNoYXBlUHJvcGVydHlWYWx1ZShzdHlsZS5nZXQoKSwgc3R5
bGUtPnNoYXBlT3V0c2lkZSgpKTsKICNlbmRpZgogI2lmIEVOQUJMRShDU1NfRklMVEVSUykKICAg
ICAgICAgY2FzZSBDU1NQcm9wZXJ0eVdlYmtpdEZpbHRlcjoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAKaW5kZXggMGEzZmEwZTBkMzBmNTYxNzdjNGU5ZjUzYjU2MGZiMGFkZDBkZjYxNy4uNWMxYzA1
NDRjM2FiZTA4ZDVkNzJmMTk5MTVmOWZlYjQwYWFmZTg4MyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNl
ci5jcHAKQEAgLTU4NDMsNyArNTg0Myw3IEBAIFBhc3NSZWZQdHI8Q1NTQmFzaWNTaGFwZT4gQ1NT
UGFyc2VyOjpwYXJzZUJhc2ljU2hhcGVQb2x5Z29uKENTU1BhcnNlclZhbHVlTGlzdCoKICAgICBy
ZXR1cm4gc2hhcGU7CiB9CiAKLXN0YXRpYyBib29sIGlzQm94VmFsdWUoQ1NTVmFsdWVJRCB2YWx1
ZUlkKQorc3RhdGljIGJvb2wgaXNCb3hWYWx1ZShDU1NWYWx1ZUlEIHZhbHVlSWQsIENTU1Byb3Bl
cnR5SUQgcHJvcElkKQogewogICAgIHN3aXRjaCAodmFsdWVJZCkgewogICAgIGNhc2UgQ1NTVmFs
dWVDb250ZW50Qm94OgpAQCAtNTg1MSwxMiArNTg1MSw0OCBAQCBzdGF0aWMgYm9vbCBpc0JveFZh
bHVlKENTU1ZhbHVlSUQgdmFsdWVJZCkKICAgICBjYXNlIENTU1ZhbHVlQm9yZGVyQm94OgogICAg
IGNhc2UgQ1NTVmFsdWVNYXJnaW5Cb3g6CiAgICAgICAgIHJldHVybiB0cnVlOworICAgIGNhc2Ug
Q1NTVmFsdWVCb3VuZGluZ0JveDoKKyAgICAgICAgcmV0dXJuIHByb3BJZCA9PSBDU1NQcm9wZXJ0
eVdlYmtpdENsaXBQYXRoOwogICAgIGRlZmF1bHQ6IGJyZWFrOwogICAgIH0KIAogICAgIHJldHVy
biBmYWxzZTsKIH0KIAorUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZUJhc2lj
U2hhcGVBbmRPckJveChDU1NQcm9wZXJ0eUlEIHByb3BJZCkKK3sKKyAgICBDU1NQYXJzZXJWYWx1
ZSogdmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOworCisgICAgYm9vbCBzaGFwZUZvdW5k
ID0gZmFsc2U7CisgICAgYm9vbCBib3hGb3VuZCA9IGZhbHNlOworICAgIENTU1ZhbHVlSUQgdmFs
dWVJZDsKKworICAgIFJlZlB0cjxDU1NWYWx1ZUxpc3Q+IGxpc3QgPSBDU1NWYWx1ZUxpc3Q6OmNy
ZWF0ZVNwYWNlU2VwYXJhdGVkKCk7CisgICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IDI7ICsr
aSkgeworICAgICAgICBpZiAoIXZhbHVlKQorICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIHZh
bHVlSWQgPSB2YWx1ZS0+aWQ7CisgICAgICAgIGlmICh2YWx1ZS0+dW5pdCA9PSBDU1NQYXJzZXJW
YWx1ZTo6RnVuY3Rpb24gJiYgIXNoYXBlRm91bmQpIHsKKyAgICAgICAgICAgIC8vIHBhcnNlQmFz
aWNTaGFwZSBhbHJlYWR5IGFza3MgZm9yIHRoZSBuZXh0IHZhbHVlIGxpc3QgaXRlbS4KKyAgICAg
ICAgICAgIFJlZlB0cjxDU1NQcmltaXRpdmVWYWx1ZT4gc2hhcGVWYWx1ZSA9IHBhcnNlQmFzaWNT
aGFwZSgpOworICAgICAgICAgICAgaWYgKCFzaGFwZVZhbHVlKQorICAgICAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgICAgICAgICAgbGlzdC0+YXBwZW5kKHNoYXBlVmFsdWUucmVsZWFz
ZSgpKTsKKyAgICAgICAgICAgIHNoYXBlRm91bmQgPSB0cnVlOworICAgICAgICB9IGVsc2UgaWYg
KGlzQm94VmFsdWUodmFsdWVJZCwgcHJvcElkKSAmJiAhYm94Rm91bmQpIHsKKyAgICAgICAgICAg
IGxpc3QtPmFwcGVuZChwYXJzZVZhbGlkUHJpbWl0aXZlKHZhbHVlSWQsIHZhbHVlKSk7CisgICAg
ICAgICAgICBib3hGb3VuZCA9IHRydWU7CisgICAgICAgICAgICBtX3ZhbHVlTGlzdC0+bmV4dCgp
OworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB2
YWx1ZSA9IG1fdmFsdWVMaXN0LT5jdXJyZW50KCk7CisgICAgfQorCisgICAgaWYgKG1fdmFsdWVM
aXN0LT5jdXJyZW50KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworICAgIHJldHVybiBsaXN0
LnJlbGVhc2UoKTsKK30KKwogI2lmIEVOQUJMRShDU1NfU0hBUEVTKQogUGFzc1JlZlB0cjxDU1NW
YWx1ZT4gQ1NTUGFyc2VyOjpwYXJzZVNoYXBlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBwcm9wSWQp
CiB7CkBAIC01ODgxLDMzICs1OTE3LDcgQEAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2Vy
OjpwYXJzZVNoYXBlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCBwcm9wSWQpCiAgICAgICAgIHJldHVy
biBpbWFnZVZhbHVlLnJlbGVhc2UoKTsKICAgICB9CiAKLSAgICBpZiAodmFsdWUtPnVuaXQgPT0g
Q1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uKSB7Ci0gICAgICAgIHNoYXBlVmFsdWUgPSBwYXJzZUJh
c2ljU2hhcGUoKTsKLSAgICB9IGVsc2UgaWYgKGlzQm94VmFsdWUodmFsdWVJZCkpIHsKLSAgICAg
ICAga2V5d29yZFZhbHVlID0gcGFyc2VWYWxpZFByaW1pdGl2ZSh2YWx1ZUlkLCB2YWx1ZSk7Ci0g
ICAgICAgIG1fdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgfSBlbHNlCi0gICAgICAgIHJldHVybiBu
dWxscHRyOwotCi0gICAgdmFsdWUgPSBtX3ZhbHVlTGlzdC0+Y3VycmVudCgpOwotCi0gICAgaWYg
KHZhbHVlKSB7Ci0gICAgICAgIHZhbHVlSWQgPSB2YWx1ZS0+aWQ7Ci0gICAgICAgIGlmIChrZXl3
b3JkVmFsdWUgJiYgdmFsdWUtPnVuaXQgPT0gQ1NTUGFyc2VyVmFsdWU6OkZ1bmN0aW9uKSB7Ci0g
ICAgICAgICAgICBzaGFwZVZhbHVlID0gcGFyc2VCYXNpY1NoYXBlKCk7Ci0gICAgICAgIH0gZWxz
ZSBpZiAoc2hhcGVWYWx1ZSAmJiBpc0JveFZhbHVlKHZhbHVlSWQpKSB7Ci0gICAgICAgICAgICBr
ZXl3b3JkVmFsdWUgPSBwYXJzZVZhbGlkUHJpbWl0aXZlKHZhbHVlSWQsIHZhbHVlKTsKLSAgICAg
ICAgICAgIG1fdmFsdWVMaXN0LT5uZXh0KCk7Ci0gICAgICAgIH0gZWxzZQotICAgICAgICAgICAg
cmV0dXJuIG51bGxwdHI7Ci0gICAgfQotCi0gICAgQVNTRVJUKCFzaGFwZVZhbHVlIHx8IHNoYXBl
VmFsdWUtPmlzU2hhcGUoKSk7Ci0KLSAgICBpZiAoc2hhcGVWYWx1ZSAmJiBrZXl3b3JkVmFsdWUp
Ci0gICAgICAgIHNoYXBlVmFsdWUtPmdldFNoYXBlVmFsdWUoKS0+c2V0TGF5b3V0Qm94KGtleXdv
cmRWYWx1ZS5yZWxlYXNlKCkpOwotCi0gICAgcmV0dXJuIHNoYXBlVmFsdWUgPyBzaGFwZVZhbHVl
LnJlbGVhc2UoKSA6IGtleXdvcmRWYWx1ZS5yZWxlYXNlKCk7CisgICAgcmV0dXJuIHBhcnNlQmFz
aWNTaGFwZUFuZE9yQm94KHByb3BJZCk7CiB9CiAjZW5kaWYKIApAQCAtNTkyNywzMSArNTkzNyw3
IEBAIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IENTU1BhcnNlcjo6cGFyc2VDbGlwUGF0aCgpCiAgICAg
fQogI2VuZGlmCiAKLSAgICBib29sIHNoYXBlRm91bmQgPSBmYWxzZTsKLSAgICBib29sIGJveEZv
dW5kID0gZmFsc2U7Ci0gICAgUmVmUHRyPENTU1ZhbHVlTGlzdD4gbGlzdCA9IENTU1ZhbHVlTGlz
dDo6Y3JlYXRlU3BhY2VTZXBhcmF0ZWQoKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwg
MjsgKytpKSB7Ci0gICAgICAgIGlmICghdmFsdWUpCi0gICAgICAgICAgICBicmVhazsKLSAgICAg
ICAgdmFsdWVJZCA9IHZhbHVlLT5pZDsKLSAgICAgICAgaWYgKHZhbHVlLT51bml0ID09IENTU1Bh
cnNlclZhbHVlOjpGdW5jdGlvbiAmJiAhc2hhcGVGb3VuZCkgewotICAgICAgICAgICAgLy8gcGFy
c2VCYXNpY1NoYXBlIGFscmVhZHkgYXNrcyBmb3IgdGhlIG5leHQgdmFsdWUgbGlzdCBpdGVtLgot
ICAgICAgICAgICAgUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBzaGFwZVZhbHVlID0gcGFyc2VC
YXNpY1NoYXBlKCk7Ci0gICAgICAgICAgICBpZiAoIXNoYXBlVmFsdWUpCi0gICAgICAgICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7Ci0gICAgICAgICAgICBsaXN0LT5hcHBlbmQoc2hhcGVWYWx1ZS5y
ZWxlYXNlKCkpOwotICAgICAgICAgICAgc2hhcGVGb3VuZCA9IHRydWU7Ci0gICAgICAgIH0gZWxz
ZSBpZiAoKGlzQm94VmFsdWUodmFsdWVJZCkgfHwgdmFsdWVJZCA9PSBDU1NWYWx1ZUJvdW5kaW5n
Qm94KSAmJiAhYm94Rm91bmQpIHsKLSAgICAgICAgICAgIGxpc3QtPmFwcGVuZChwYXJzZVZhbGlk
UHJpbWl0aXZlKHZhbHVlSWQsIHZhbHVlKSk7Ci0gICAgICAgICAgICBib3hGb3VuZCA9IHRydWU7
Ci0gICAgICAgICAgICBtX3ZhbHVlTGlzdC0+bmV4dCgpOwotICAgICAgICB9IGVsc2UKLSAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOwotICAgICAgICB2YWx1ZSA9IG1fdmFsdWVMaXN0LT5jdXJy
ZW50KCk7Ci0gICAgfQotICAgIGlmICh2YWx1ZSkKLSAgICAgICAgcmV0dXJuIG51bGxwdHI7Ci0g
ICAgcmV0dXJuIGxpc3QucmVsZWFzZSgpOworICAgIHJldHVybiBwYXJzZUJhc2ljU2hhcGVBbmRP
ckJveChDU1NQcm9wZXJ0eVdlYmtpdENsaXBQYXRoKTsKIH0KIAogLy8gRklYTUUgVGhpcyBmdW5j
dGlvbiBpcyB0ZW1wb3JhcnkgdG8gYWxsb3cgZm9yIGFuIG9yZGVybHkgdHJhbnNpdGlvbiBiZXR3
ZWVuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKaW5kZXggY2YwZTU3YTBlMDg2MjBmNzc0NzA0Njg5ZGJh
ODc5MGI4YmU0MGI0NC4uNDdiMDVlNmUyMTlkNmVkYWJiOTFiY2ZkMDIwYjJlNDAwYTFiMjg2NiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaApAQCAtMTc5LDYgKzE3OSw3IEBAIHB1YmxpYzoKICAgICBQ
YXNzUmVmUHRyPENTU1ZhbHVlPiBwYXJzZVNoYXBlUHJvcGVydHkoQ1NTUHJvcGVydHlJRCk7CiAj
ZW5kaWYKIAorICAgIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHBhcnNlQmFzaWNTaGFwZUFuZE9yQm94
KENTU1Byb3BlcnR5SUQgcHJvcElkKTsKICAgICBQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVl
PiBwYXJzZUJhc2ljU2hhcGUoKTsKICAgICBQYXNzUmVmUHRyPENTU1ByaW1pdGl2ZVZhbHVlPiBw
YXJzZVNoYXBlUmFkaXVzKENTU1BhcnNlclZhbHVlKik7CiAgICAgUGFzc1JlZlB0cjxDU1NCYXNp
Y1NoYXBlPiBwYXJzZUJhc2ljU2hhcGVSZWN0YW5nbGUoQ1NTUGFyc2VyVmFsdWVMaXN0Kik7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVMaXN0LmggYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVMaXN0LmgKaW5kZXggOTRlMjYwMzY5Y2M2Yzg4N2Y3ZGY2OWM1MTk3
NDcxYWI1OWI4M2RjMC4uZmE4MmE5YWQwZDA2YWU4YjE2YjRhOGFhNzA3NTM0NTI5YmNmOTA0MCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlTGlzdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZUxpc3QuaApAQCAtNTIsNiArNTIsNyBAQCBwdWJsaWM6CiAg
ICAgQ1NTVmFsdWUqIGl0ZW0oc2l6ZV90IGluZGV4KSB7IHJldHVybiBpbmRleCA8IG1fdmFsdWVz
LnNpemUoKSA/IG1fdmFsdWVzW2luZGV4XS5nZXQoKSA6IDA7IH0KICAgICBjb25zdCBDU1NWYWx1
ZSogaXRlbShzaXplX3QgaW5kZXgpIGNvbnN0IHsgcmV0dXJuIGluZGV4IDwgbV92YWx1ZXMuc2l6
ZSgpID8gbV92YWx1ZXNbaW5kZXhdLmdldCgpIDogMDsgfQogICAgIENTU1ZhbHVlKiBpdGVtV2l0
aG91dEJvdW5kc0NoZWNrKHNpemVfdCBpbmRleCkgeyByZXR1cm4gbV92YWx1ZXNbaW5kZXhdLmdl
dCgpOyB9CisgICAgY29uc3QgQ1NTVmFsdWUqIGl0ZW1XaXRob3V0Qm91bmRzQ2hlY2soc2l6ZV90
IGluZGV4KSBjb25zdCB7IEFTU0VSVChpbmRleCA8IG1fdmFsdWVzLnNpemUoKSk7IHJldHVybiBt
X3ZhbHVlc1tpbmRleF0uZ2V0KCk7IH0KIAogICAgIHZvaWQgYXBwZW5kKFBhc3NSZWZQdHI8Q1NT
VmFsdWU+IHZhbHVlKSB7IG1fdmFsdWVzLmFwcGVuZCh2YWx1ZSk7IH0KICAgICB2b2lkIHByZXBl
bmQoUGFzc1JlZlB0cjxDU1NWYWx1ZT4gdmFsdWUpIHsgbV92YWx1ZXMuaW5zZXJ0KDAsIHZhbHVl
KTsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxk
ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL0RlcHJlY2F0ZWRTdHlsZUJ1aWxkZXIuY3BwCmlu
ZGV4IDZhOGEzNTU2MzBlMTUxYTRkMGIzYjFkNjBiNTQ2Mjk0NjVhODYwMTUuLjMxZjIzODdlMjUw
MWMwMzgxNDliZDlmZGI1YzkyYjliMmU5ZmE0YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9EZXByZWNhdGVkU3R5bGVCdWlsZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
RGVwcmVjYXRlZFN0eWxlQnVpbGRlci5jcHAKQEAgLTIxODIsMjMgKzIxODIsMzYgQEAgcHVibGlj
OgogICAgICAgICAgICAgQ1NTUHJpbWl0aXZlVmFsdWUqIHByaW1pdGl2ZVZhbHVlID0gdG9DU1NQ
cmltaXRpdmVWYWx1ZSh2YWx1ZSk7CiAgICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmdl
dFZhbHVlSUQoKSA9PSBDU1NWYWx1ZUF1dG8pCiAgICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5
bGVSZXNvbHZlci0+c3R5bGUoKSwgMCk7Ci0gICAgICAgICAgICBlbHNlIGlmIChwcmltaXRpdmVW
YWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQ29udGVudEJveAotICAgICAgICAgICAgICAg
IHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVCb3JkZXJCb3gKLSAg
ICAgICAgICAgICAgICB8fCBwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVl
UGFkZGluZ0JveAotICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlE
KCkgPT0gQ1NTVmFsdWVNYXJnaW5Cb3gpCi0gICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVS
ZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1ZTo6Y3JlYXRlTGF5b3V0Qm94VmFsdWUoTGF5b3V0
Qm94KCpwcmltaXRpdmVWYWx1ZSkpKTsKICAgICAgICAgICAgIGVsc2UgaWYgKHByaW1pdGl2ZVZh
bHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFsdWVPdXRzaWRlU2hhcGUpCiAgICAgICAgICAgICAg
ICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1ZTo6Y3JlYXRlT3V0
c2lkZVZhbHVlKCkpOwotICAgICAgICAgICAgZWxzZSBpZiAocHJpbWl0aXZlVmFsdWUtPmlzU2hh
cGUoKSkgewotICAgICAgICAgICAgICAgIFJlZlB0cjxTaGFwZVZhbHVlPiBzaGFwZSA9IFNoYXBl
VmFsdWU6OmNyZWF0ZVNoYXBlVmFsdWUoYmFzaWNTaGFwZUZvclZhbHVlKHN0eWxlUmVzb2x2ZXIt
PnN0eWxlKCksIHN0eWxlUmVzb2x2ZXItPnJvb3RFbGVtZW50U3R5bGUoKSwgcHJpbWl0aXZlVmFs
dWUtPmdldFNoYXBlVmFsdWUoKSkpOwotICAgICAgICAgICAgICAgIHNldFZhbHVlKHN0eWxlUmVz
b2x2ZXItPnN0eWxlKCksIHNoYXBlLnJlbGVhc2UoKSk7Ci0gICAgICAgICAgICB9CiAgICAgICAg
IH0gZWxzZSBpZiAodmFsdWUtPmlzSW1hZ2VWYWx1ZSgpIHx8IHZhbHVlLT5pc0ltYWdlU2V0VmFs
dWUoKSkgewogICAgICAgICAgICAgUmVmUHRyPFNoYXBlVmFsdWU+IHNoYXBlID0gU2hhcGVWYWx1
ZTo6Y3JlYXRlSW1hZ2VWYWx1ZShzdHlsZVJlc29sdmVyLT5zdHlsZUltYWdlKHByb3BlcnR5LCB2
YWx1ZSkpOwogICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgc2hh
cGUucmVsZWFzZSgpKTsKLSAgICAgICAgfQorICAgICAgICB9IGVsc2UgaWYgKHZhbHVlLT5pc1Zh
bHVlTGlzdCgpKSB7CisgICAgICAgICAgICBSZWZQdHI8QmFzaWNTaGFwZT4gc2hhcGU7CisgICAg
ICAgICAgICBMYXlvdXRCb3ggbGF5b3V0Qm94ID0gQm94TWlzc2luZzsKKyAgICAgICAgICAgIENT
U1ZhbHVlTGlzdCogdmFsdWVMaXN0ID0gdG9DU1NWYWx1ZUxpc3QodmFsdWUpOworICAgICAgICAg
ICAgZm9yICh1bnNpZ25lZCBpID0gMDsgaSA8IHZhbHVlTGlzdC0+bGVuZ3RoKCk7ICsraSkgewor
ICAgICAgICAgICAgICAgIENTU1ByaW1pdGl2ZVZhbHVlKiBwcmltaXRpdmVWYWx1ZSA9IHRvQ1NT
UHJpbWl0aXZlVmFsdWUodmFsdWVMaXN0LT5pdGVtV2l0aG91dEJvdW5kc0NoZWNrKGkpKTsKKyAg
ICAgICAgICAgICAgICBpZiAocHJpbWl0aXZlVmFsdWUtPmlzU2hhcGUoKSkKKyAgICAgICAgICAg
ICAgICAgICAgc2hhcGUgPSBiYXNpY1NoYXBlRm9yVmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUo
KSwgc3R5bGVSZXNvbHZlci0+cm9vdEVsZW1lbnRTdHlsZSgpLCBwcmltaXRpdmVWYWx1ZS0+Z2V0
U2hhcGVWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICBlbHNlIGlmIChwcmltaXRpdmVWYWx1ZS0+
Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQ29udGVudEJveAorICAgICAgICAgICAgICAgICAgICB8
fCBwcmltaXRpdmVWYWx1ZS0+Z2V0VmFsdWVJRCgpID09IENTU1ZhbHVlQm9yZGVyQm94CisgICAg
ICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRWYWx1ZUlEKCkgPT0gQ1NTVmFs
dWVQYWRkaW5nQm94CisgICAgICAgICAgICAgICAgICAgIHx8IHByaW1pdGl2ZVZhbHVlLT5nZXRW
YWx1ZUlEKCkgPT0gQ1NTVmFsdWVNYXJnaW5Cb3gpCisgICAgICAgICAgICAgICAgICAgIGxheW91
dEJveCA9IExheW91dEJveCgqcHJpbWl0aXZlVmFsdWUpOworICAgICAgICAgICAgICAgIGVsc2UK
KyAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorCisgICAgICAgICAg
ICBpZiAoc2hhcGUpCisgICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5
bGUoKSwgU2hhcGVWYWx1ZTo6Y3JlYXRlU2hhcGVWYWx1ZShzaGFwZS5yZWxlYXNlKCksIGxheW91
dEJveCkpOworICAgICAgICAgICAgZWxzZSBpZiAobGF5b3V0Qm94ICE9IEJveE1pc3NpbmcpCisg
ICAgICAgICAgICAgICAgc2V0VmFsdWUoc3R5bGVSZXNvbHZlci0+c3R5bGUoKSwgU2hhcGVWYWx1
ZTo6Y3JlYXRlTGF5b3V0Qm94VmFsdWUobGF5b3V0Qm94KSk7CiAKKyAgICAgICAgfQogICAgIH0K
KwogICAgIHN0YXRpYyBQcm9wZXJ0eUhhbmRsZXIgY3JlYXRlSGFuZGxlcigpCiAgICAgewogICAg
ICAgICBQcm9wZXJ0eUhhbmRsZXIgaGFuZGxlciA9IEFwcGx5UHJvcGVydHlEZWZhdWx0QmFzZTxT
aGFwZVZhbHVlKiwgZ2V0dGVyRnVuY3Rpb24sIFBhc3NSZWZQdHI8U2hhcGVWYWx1ZT4sIHNldHRl
ckZ1bmN0aW9uLCBTaGFwZVZhbHVlKiwgaW5pdGlhbEZ1bmN0aW9uPjo6Y3JlYXRlSGFuZGxlcigp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlB
bmltYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQ1NTUHJvcGVydHlB
bmltYXRpb24uY3BwCmluZGV4IDcyYzc4ZmVkNGVlOTRhZjUxMDVmZmM0OTI3ODVmZDNlODIzOTIy
MDkuLmEzOThhN2E1ZGQzNGI4NWRjYzExNTE3Yjk4M2JkNzgyNDM1MTZkZjYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0NTU1Byb3BlcnR5QW5pbWF0aW9uLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9DU1NQcm9wZXJ0eUFuaW1hdGlvbi5j
cHAKQEAgLTE1MywxMyArMTUzLDE2IEBAIHN0YXRpYyBpbmxpbmUgUGFzc1JlZlB0cjxTaGFwZVZh
bHVlPiBibGVuZEZ1bmMoY29uc3QgQW5pbWF0aW9uQmFzZSosIFNoYXBlVmFsdWUqCiAgICAgaWYg
KGZyb20tPnR5cGUoKSAhPSBTaGFwZVZhbHVlOjpTaGFwZSB8fCB0by0+dHlwZSgpICE9IFNoYXBl
VmFsdWU6OlNoYXBlKQogICAgICAgICByZXR1cm4gdG87CiAKKyAgICBpZiAoZnJvbS0+bGF5b3V0
Qm94KCkgIT0gdG8tPmxheW91dEJveCgpKQorICAgICAgICByZXR1cm4gdG87CisKICAgICBjb25z
dCBCYXNpY1NoYXBlKiBmcm9tU2hhcGUgPSBmcm9tLT5zaGFwZSgpOwogICAgIGNvbnN0IEJhc2lj
U2hhcGUqIHRvU2hhcGUgPSB0by0+c2hhcGUoKTsKIAogICAgIGlmICghZnJvbVNoYXBlLT5jYW5C
bGVuZCh0b1NoYXBlKSkKICAgICAgICAgcmV0dXJuIHRvOwogCi0gICAgcmV0dXJuIFNoYXBlVmFs
dWU6OmNyZWF0ZVNoYXBlVmFsdWUodG9TaGFwZS0+YmxlbmQoZnJvbVNoYXBlLCBwcm9ncmVzcykp
OworICAgIHJldHVybiBTaGFwZVZhbHVlOjpjcmVhdGVTaGFwZVZhbHVlKHRvU2hhcGUtPmJsZW5k
KGZyb21TaGFwZSwgcHJvZ3Jlc3MpLCB0by0+bGF5b3V0Qm94KCkpOwogfQogI2VuZGlmCiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFwZVZhbHVlLmggYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhcGVWYWx1ZS5oCmluZGV4IDBjYzIyYzQx
MTRlOTg1OTE0ODI5YzNhYzllYTJmNGQ1MmQxMmU3OTQuLjUzYzExYTdlODI3ODk1MGM4ZGYwNDVk
MDE4MGJhYmM0OTMzMzY5N2UgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9z
dHlsZS9TaGFwZVZhbHVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1No
YXBlVmFsdWUuaApAQCAtNDgsOSArNDgsOSBAQCBwdWJsaWM6CiAgICAgICAgIEltYWdlCiAgICAg
fTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFNoYXBlVmFsdWU+IGNyZWF0ZVNoYXBlVmFsdWUo
UGFzc1JlZlB0cjxCYXNpY1NoYXBlPiBzaGFwZSkKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFw
ZVZhbHVlPiBjcmVhdGVTaGFwZVZhbHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4gc2hhcGUsIExh
eW91dEJveCBsYXlvdXRCb3gpCiAgICAgewotICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFNo
YXBlVmFsdWUoc2hhcGUpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBTaGFwZVZhbHVl
KHNoYXBlLCBsYXlvdXRCb3gpKTsKICAgICB9CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxTaGFw
ZVZhbHVlPiBjcmVhdGVMYXlvdXRCb3hWYWx1ZShMYXlvdXRCb3ggbGF5b3V0Qm94KQpAQCAtODQs
MTAgKzg0LDEwIEBAIHB1YmxpYzoKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgU2hhcGVWYWx1
ZSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIHR5cGUoKSA9PSBvdGhlci50eXBlKCk7IH0KIAogcHJp
dmF0ZToKLSAgICBTaGFwZVZhbHVlKFBhc3NSZWZQdHI8QmFzaWNTaGFwZT4gc2hhcGUpCisgICAg
U2hhcGVWYWx1ZShQYXNzUmVmUHRyPEJhc2ljU2hhcGU+IHNoYXBlLCBMYXlvdXRCb3ggbGF5b3V0
Qm94KQogICAgICAgICA6IG1fdHlwZShTaGFwZSkKICAgICAgICAgLCBtX3NoYXBlKHNoYXBlKQot
ICAgICAgICAsIG1fbGF5b3V0Qm94KG1fc2hhcGUtPmxheW91dEJveCgpKQorICAgICAgICAsIG1f
bGF5b3V0Qm94KGxheW91dEJveCkKICAgICB7CiAgICAgfQogICAgIFNoYXBlVmFsdWUoU2hhcGVW
YWx1ZVR5cGUgdHlwZSkKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjMTQzZDNjMzA3NDA3YzcyYWE3MzNlZjA3OGQ4ZDdjODE1
OWNiMzFjLi41NGZkZmY4OWQzNjYwZjYyNGRlZGUyNDJkYTBlN2JmMWEyMzNjNTU3IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTggQEAKKzIwMTQtMDEtMjEgIEJlYXIgVHJhdmlzICA8YmV0cmF2aXNAYWRvYmUu
Y29tPgorCisgICAgICAgIFtDU1MgU2hhcGVzXSBQcmVzZXJ2ZSBib3gtc2hhcGUgb3JkZXIgd2hl
biBzZXJpYWxpemluZyBzaGFwZSB2YWx1ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyNzIwMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIE1vZGlmeSB0aGUgZXhwZWN0YXRpb25zIGZvciBib3ggc2hhcGUg
cGFpcnMsIHByZXNlcnZpbmcgdGhlIG9yZGVyIG9mCisgICAgICAgIHRoZSBhcmd1bWVudHMgaW4g
bm9uLWNvbXB1dGVkIHZhbHVlcy4gQ29tcHV0ZWQgdmFsdWVzIGFyZSBzdGlsbCBhCisgICAgICAg
IHNoYXBlIGZvbGxvd2VkIGJ5IGEgYm94LgorCisgICAgICAgICogZmFzdC9zaGFwZXMvcGFyc2lu
Zy9wYXJzaW5nLXNoYXBlLWluc2lkZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9zaGFw
ZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGZhc3Qvc2hhcGVzL3BhcnNpbmcvcGFyc2luZy10ZXN0LXV0aWxzLmpzOgorCiAyMDE0LTAxLTIx
ICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAgICAgQVg6IE1h
YzogRXhwb3NlIHRoZSB2aXNpYmxlIHRleHQgb2YgYSBwYXNzd29yZCBmaWVsZCB0byBBWApkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLWlu
c2lkZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNp
bmctc2hhcGUtaW5zaWRlLWV4cGVjdGVkLnR4dAppbmRleCBlY2JlYjRiYjkwYmI2MWM2NjgyNGM1
ZjBlYmVhMzczMmUxYmNjYjZlLi4zOGE2YmU4MjZkMGQ3ZmYwNDUxMjhhYmRkNmFiNDZhYjA4NGJm
ODAwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmct
c2hhcGUtaW5zaWRlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9w
YXJzaW5nL3BhcnNpbmctc2hhcGUtaW5zaWRlLWV4cGVjdGVkLnR4dApAQCAtMTA3LDEzICsxMDcs
MTMgQEAgUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTAKIFBBU1MgZ2V0Q29tcHV0ZWRTdHlsZVZhbHVl
KCItd2Via2l0LXNoYXBlLWluc2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHgg
MTBweCwgMTBweCAwcHgpIGJvcmRlci1ib3giKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94IgogUEFTUyBnZXRDU1NUZXh0KCItd2Vi
a2l0LXNoYXBlLWluc2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwg
MTBweCAwcHgpIG1hcmdpbi1ib3giKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgogUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUo
Ii13ZWJraXQtc2hhcGUtaW5zaWRlIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAx
MHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgs
IDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJr
aXQtc2hhcGUtaW5zaWRlIiwgImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSBjb250ZW50LWJveCIKK1BBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1z
aGFwZS1pbnNpZGUiLCAiY29udGVudC1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIpIGlzICJjb250ZW50LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAw
cHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13
ZWJraXQtc2hhcGUtaW5zaWRlIiwgImNvbnRlbnQtYm94IHBvbHlnb24obm9uemVybywgMHB4IDBw
eCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAx
MHB4IDEwcHgsIDEwcHggMHB4KSBjb250ZW50LWJveCIKLVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtp
dC1zaGFwZS1pbnNpZGUiLCAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAx
MHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHgg
MTBweCwgMTBweCAwcHgpIHBhZGRpbmctYm94IgorUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNo
YXBlLWluc2lkZSIsICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHgg
MTBweCwgMTBweCAwcHgpIikgaXMgInBhZGRpbmctYm94IHBvbHlnb24obm9uemVybywgMHB4IDBw
eCwgMTBweCAxMHB4LCAxMHB4IDBweCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdl
YmtpdC1zaGFwZS1pbnNpZGUiLCAicGFkZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4
LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIHBhZGRpbmctYm94IgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0
LXNoYXBlLWluc2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBw
eCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEw
cHgsIDEwcHggMHB4KSBib3JkZXItYm94IgorUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBl
LWluc2lkZSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4
LCAxMHB4IDBweCkiKSBpcyAiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQt
c2hhcGUtaW5zaWRlIiwgImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBw
eCwgMTBweCAwcHgpIGJvcmRlci1ib3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUt
aW5zaWRlIiwgIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgs
IDEwcHggMHB4KSIpIGlzICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBw
eCAwcHgpIG1hcmdpbi1ib3giCitQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtaW5zaWRl
IiwgIm1hcmdpbi1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHgg
MHB4KSIpIGlzICJtYXJnaW4tYm94IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4
LCAxMHB4IDBweCkiCiBQQVNTIGdldENvbXB1dGVkU3R5bGVWYWx1ZSgiLXdlYmtpdC1zaGFwZS1p
bnNpZGUiLCAibWFyZ2luLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwg
MTBweCAwcHgpIikgaXMgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4
IDBweCkgbWFyZ2luLWJveCIKIFBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1pbnNpZGUi
LCAib3V0c2lkZS1zaGFwZSIpIGlzICJvdXRzaWRlLXNoYXBlIgogUEFTUyBnZXRDb21wdXRlZFN0
eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtaW5zaWRlIiwgIm91dHNpZGUtc2hhcGUiKSBpcyAib3V0
c2lkZS1zaGFwZSIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3Qvc2hhcGVzL3BhcnNpbmcv
cGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3Qvc2hh
cGVzL3BhcnNpbmcvcGFyc2luZy1zaGFwZS1vdXRzaWRlLWV4cGVjdGVkLnR4dAppbmRleCA2NGZl
ZjFiYTlhODRlMTdkZmQ1YmQ1MGJlMTcxYjE2OGNkOWRiYmQ4Li5jODk1NjBkNGQ0MDA4NmJlYzM5
YjkxODdiMGI3MzMyNWY4MTY2YmE0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBl
cy9wYXJzaW5nL3BhcnNpbmctc2hhcGUtb3V0c2lkZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2luZy9wYXJzaW5nLXNoYXBlLW91dHNpZGUtZXhwZWN0ZWQu
dHh0CkBAIC0xMDcsMTMgKzEwNywxMyBAQCBQQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUt
b3V0c2lkZSIsICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMQogUEFTUyBn
ZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwb2x5Z29uKG5v
bnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGJvcmRlci1ib3giKSBpcyAicG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94Igog
UEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAicG9seWdvbihub256ZXJv
LCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IikgaXMgInBvbHlnb24o
bm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIKIFBBU1Mg
Z2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAicG9seWdvbihu
b256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IikgaXMgInBv
bHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCIK
LVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImNvbnRlbnQtYm94IHBv
bHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdv
bihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBjb250ZW50LWJveCIKK1BB
U1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgImNvbnRlbnQtYm94IHBvbHln
b24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAiY29udGVudC1i
b3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1Mg
Z2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAiY29udGVudC1i
b3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJw
b2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGNvbnRlbnQtYm94
IgotUEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAicGFkZGluZy1ib3gg
cG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5
Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIHBhZGRpbmctYm94Igor
UEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAicGFkZGluZy1ib3ggcG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwYWRkaW5n
LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFT
UyBnZXRDb21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJwYWRkaW5n
LWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMg
InBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgcGFkZGluZy1i
b3giCi1QQVNTIGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJib3JkZXItYm94
IHBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94Igor
UEFTUyBnZXRDU1NUZXh0KCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAiYm9yZGVyLWJveCBwb2x5
Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgImJvcmRlci1i
b3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIKIFBBU1Mg
Z2V0Q29tcHV0ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAiYm9yZGVyLWJv
eCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIikgaXMgInBv
bHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9yZGVyLWJveCIK
LVBBU1MgZ2V0Q1NTVGV4dCgiLXdlYmtpdC1zaGFwZS1vdXRzaWRlIiwgIm1hcmdpbi1ib3ggcG9s
eWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIpIGlzICJwb2x5Z29u
KG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIG1hcmdpbi1ib3giCitQQVNT
IGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJtYXJnaW4tYm94IHBvbHlnb24o
bm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAibWFyZ2luLWJveCBw
b2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIgogUEFTUyBnZXRD
b21wdXRlZFN0eWxlVmFsdWUoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJtYXJnaW4tYm94IHBv
bHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiKSBpcyAicG9seWdv
bihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBtYXJnaW4tYm94IgogUEFT
UyByZW1vdmVCYXNlVVJMKGdldENTU1RleHQoIi13ZWJraXQtc2hhcGUtb3V0c2lkZSIsICJ1cmwo
J2ltYWdlJykiKSkgaXMgInVybChpbWFnZSkiCiBQQVNTIHJlbW92ZUJhc2VVUkwoZ2V0Q29tcHV0
ZWRTdHlsZVZhbHVlKCItd2Via2l0LXNoYXBlLW91dHNpZGUiLCAidXJsKCdpbWFnZScpIikpIGlz
ICJ1cmwoaW1hZ2UpIgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9zaGFwZXMvcGFyc2lu
Zy9wYXJzaW5nLXRlc3QtdXRpbHMuanMgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5n
L3BhcnNpbmctdGVzdC11dGlscy5qcwppbmRleCBkOTQ1MzVkODNhMzI0MTQ5NWJhZGQ0ZTViNTA4
NjRiNjM2MjIxYzE4Li5kMjNmYWQyYTg2NDYwMWI2ZDVhNWNkOWI2Y2U1ZTA1MTI3NjJiMzczIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVzdC11
dGlscy5qcworKysgYi9MYXlvdXRUZXN0cy9mYXN0L3NoYXBlcy9wYXJzaW5nL3BhcnNpbmctdGVz
dC11dGlscy5qcwpAQCAtNjcsMTAgKzY3LDEwIEBAIHZhciB2YWxpZFNoYXBlVmFsdWVzID0gWwog
ICAgICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIGJvcmRl
ci1ib3giLAogICAgICJwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAw
cHgpIG1hcmdpbi1ib3giLAogCi0gICAgWyJjb250ZW50LWJveCBwb2x5Z29uKG5vbnplcm8sIDBw
eCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwg
MTBweCAxMHB4LCAxMHB4IDBweCkgY29udGVudC1ib3giXSwKLSAgICBbInBhZGRpbmctYm94IHBv
bHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbihu
b256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBwYWRkaW5nLWJveCJdLAotICAg
IFsiYm9yZGVyLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAw
cHgpIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgYm9y
ZGVyLWJveCJdLAotICAgIFsibWFyZ2luLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEw
cHggMTBweCwgMTBweCAwcHgpIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4
LCAxMHB4IDBweCkgbWFyZ2luLWJveCJdCisgICAgWyJjb250ZW50LWJveCBwb2x5Z29uKG5vbnpl
cm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgImNvbnRlbnQtYm94IHBvbHlnb24o
bm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbihub256ZXJv
LCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSBjb250ZW50LWJveCJdLAorICAgIFsicGFk
ZGluZy1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4IDEwcHgsIDEwcHggMHB4KSIs
ICJwYWRkaW5nLWJveCBwb2x5Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAw
cHgpIiwgInBvbHlnb24obm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgcGFk
ZGluZy1ib3giXSwKKyAgICBbImJvcmRlci1ib3ggcG9seWdvbihub256ZXJvLCAwcHggMHB4LCAx
MHB4IDEwcHgsIDEwcHggMHB4KSIsICJib3JkZXItYm94IHBvbHlnb24obm9uemVybywgMHB4IDBw
eCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAicG9seWdvbihub256ZXJvLCAwcHggMHB4LCAxMHB4
IDEwcHgsIDEwcHggMHB4KSBib3JkZXItYm94Il0sCisgICAgWyJtYXJnaW4tYm94IHBvbHlnb24o
bm9uemVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkiLCAibWFyZ2luLWJveCBwb2x5
Z29uKG5vbnplcm8sIDBweCAwcHgsIDEwcHggMTBweCwgMTBweCAwcHgpIiwgInBvbHlnb24obm9u
emVybywgMHB4IDBweCwgMTBweCAxMHB4LCAxMHB4IDBweCkgbWFyZ2luLWJveCJdCiBdOwogCiAv
LyBJbnZhbGlkIHZhbHVlcyBmb3IgYm90aCBzaGFwZS1pbnNpZGUgYW5kIHNoYXBlLW91dHNpZGUu
IFdoZW4gYW4gaW52YWxpZCBzaGFwZSB2YWx1ZSBpcyBzcGVjaWZpZWQsIHRoZSAK
</data>

          </attachment>
      

    </bug>

</bugzilla>