<?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>12096</bug_id>
          
          <creation_ts>2007-01-03 08:03:35 -0800</creation_ts>
          <short_desc>SVGImage and PDFDocumentImage need support for drawTiled</short_desc>
          <delta_ts>2007-01-17 04:36:08 -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>SVG</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>SVGHitList</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>37312</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-01-03 08:03:35 -0800</bug_when>
    <thetext>SVGImage and PDFDocumentImage need support for drawTiled

Both SVGImage and PDFDocumentImage currently have empty drawTiled implementations.  In order to draw correctly as background images (or border images), these will both need drawTiled implementations.

Perhaps it will be possible to push some of BitmapImage::drawTiled logic down into Image and re-use it for SVGImage and PDFDocumentImage

This is important for having compelling SVG support in the next version of WebKit.  Most authors will likely use SVG through &lt;img&gt; or CSS background images.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34506</commentid>
    <comment_count>1</comment_count>
      <attachid>12502</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-01-17 03:45:47 -0800</bug_when>
    <thetext>Created attachment 12502
simple support

This support does not handle dynamic images or SVGs with dynamic sizing.  I think the pattern drawing system still needs some additional re-factoring for really good support.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34510</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2007-01-17 04:34:54 -0800</bug_when>
    <thetext>Fixed.

Now we just need size negotiation for really cool svg-as-image support:
http://bugs.webkit.org/show_bug.cgi?id=12095</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>34511</commentid>
    <comment_count>3</comment_count>
      <attachid>12502</attachid>
    <who name="">mitz</who>
    <bug_when>2007-01-17 04:36:08 -0800</bug_when>
    <thetext>Comment on attachment 12502
simple support

r=me with changes we discussed on IRC</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>12502</attachid>
            <date>2007-01-17 03:45:47 -0800</date>
            <delta_ts>2007-01-17 04:36:08 -0800</delta_ts>
            <desc>simple support</desc>
            <filename>images.patch</filename>
            <type>text/plain</type>
            <size>28078</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">SW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE4OTAzKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMDEtMTcgIEVyaWMgU2VpZGVsICA8ZXJp
Y0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorICAg
ICAgICAKKyAgICAgICAgU1ZHcyBkb24ndCB3b3JrIGFzIGJhY2tncm91bmQgaW1hZ2VzLgorICAg
ICAgICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjA5NgorCisgICAg
ICAgICogZmFzdC9pbWFnZXMvc3ZnLWFzLWJhY2tncm91bmQtZXhwZWN0ZWQuY2hlY2tzdW06Cisg
ICAgICAgICogZmFzdC9pbWFnZXMvc3ZnLWFzLWJhY2tncm91bmQtZXhwZWN0ZWQucG5nOgorICAg
ICAgICAqIGZhc3QvaW1hZ2VzL3N2Zy1hcy10aWxlZC1iYWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNr
c3VtOgorICAgICAgICAqIGZhc3QvaW1hZ2VzL3N2Zy1hcy10aWxlZC1iYWNrZ3JvdW5kLWV4cGVj
dGVkLnBuZzoKKwogMjAwNy0wMS0xNiAgSnVzdGluIEdhcmNpYSAgPGp1c3Rpbi5nYXJjaWFAYXBw
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IGhhcnJpc29uCkluZGV4OiBMYXlvdXRUZXN0
cy9mYXN0L2ltYWdlcy9zdmctYXMtYmFja2dyb3VuZC1leHBlY3RlZC5jaGVja3N1bQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9zdmctYXMtYmFja2dyb3VuZC1leHBlY3Rl
ZC5jaGVja3N1bQkocmV2aXNpb24gMTg4NzgpCisrKyBMYXlvdXRUZXN0cy9mYXN0L2ltYWdlcy9z
dmctYXMtYmFja2dyb3VuZC1leHBlY3RlZC5jaGVja3N1bQkod29ya2luZyBjb3B5KQpAQCAtMSAr
MSBAQAotYmU5MmQ3OWZhYmFjM2FhMzZiYTc5NzJhYmJmMTgxNWEKXCBObyBuZXdsaW5lIGF0IGVu
ZCBvZiBmaWxlCisxNjMxMDU4ODQ2N2NmYzIwZDU1MTYzNWFiYzU5Yjc4NApcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKSW5kZXg6IExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3N2Zy1hcy10aWxl
ZC1iYWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNrc3VtCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2Zhc3QvaW1hZ2VzL3N2Zy1hcy10aWxlZC1iYWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNrc3VtCShy
ZXZpc2lvbiAxODg3OCkKKysrIExheW91dFRlc3RzL2Zhc3QvaW1hZ2VzL3N2Zy1hcy10aWxlZC1i
YWNrZ3JvdW5kLWV4cGVjdGVkLmNoZWNrc3VtCSh3b3JraW5nIGNvcHkpCkBAIC0xICsxIEBACi1i
ZTkyZDc5ZmFiYWMzYWEzNmJhNzk3MmFiYmYxODE1YQpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp
bGUKKzE2MzEwNTg4NDY3Y2ZjMjBkNTUxNjM1YWJjNTliNzg0ClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgZmlsZQpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9D
aGFuZ2VMb2cJKHJldmlzaW9uIDE4OTAzKQorKysgV2ViQ29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcg
Y29weSkKQEAgLTEsMyArMSwzNCBAQAorMjAwNy0wMS0xNyAgRXJpYyBTZWlkZWwgIDxlcmljQHdl
YmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisgICAgICAg
IAorICAgICAgICBTVkdzIGRvIG5vdCB3b3JrIGFzIGJhY2tncm91bmQgaW1hZ2VzOgorICAgICAg
ICBodHRwOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjA5NgorCisgICAgICAg
IFRlc3RzIHVwZGF0ZWQ6CisgICAgICAgIC0gZmFzdC9pbWFnZXMvc3ZnLWFzLWJhY2tncm91bmQu
c3ZnOiBub3cgcGFzc2VzCisgICAgICAgIC0gZmFzdC9pbWFnZXMvc3ZnLWFzLXRpbGVkLWJhY2tn
cm91bmQuc3ZnOiBub3cgcGFzc2VzCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9CaXRt
YXBJbWFnZS5oOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwSW1hZ2U6Om5hdGl2ZUltYWdlRm9y
Q3VycmVudEZyYW1lKToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcEltYWdlOjptYXlGaWxsV2l0
aFNvbGlkQ29sb3IpOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwSW1hZ2U6OnNvbGlkQ29sb3Ip
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0ltYWdlLmg6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZTo6bWF5RmlsbFdpdGhTb2xpZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdl
Ojpzb2xpZENvbG9yKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlOjpuYXRpdmVJbWFnZUZvckN1
cnJlbnRGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZTo6c3RhcnRBbmltYXRpb24pOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NnL0ltYWdlQ0cuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2U6OmRyYXdQYXR0ZXJuQ2FsbGJhY2spOgorICAgICAgICAoV2ViQ29yZTo6SW1h
Z2U6OmRyYXdQYXR0ZXJuQ29tYmluZWQpOgorICAgICAgICAoV2ViQ29yZTo6Y2FjdWxhdGVQYXR0
ZXJuU2NhbGUpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2U6OmRyYXdUaWxlZCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2cvUERGRG9jdW1lbnRJbWFnZS5jcHA6CisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvY2cvUERGRG9jdW1lbnRJbWFnZS5oOgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL3N2Zy9TVkdJbWFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdJbWFn
ZTo6bmF0aXZlSW1hZ2VGb3JDdXJyZW50RnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL3N2Zy9TVkdJbWFnZS5oOgorCiAyMDA3LTAxLTE3ICBSb2IgQnVpcyAgPGJ1aXNAa2RlLm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL0JpdG1hcEltYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9CaXRtYXBJbWFnZS5oCShyZXZpc2lvbiAxODg3OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvQml0bWFwSW1hZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMTE1LDEyICsxMTUsMTAg
QEAgcHVibGljOgogICAgIHZpcnR1YWwgYm9vbCBnZXRIQklUTUFQKEhCSVRNQVApOwogI2VuZGlm
CiAKLSAgICBOYXRpdmVJbWFnZVB0ciBuYXRpdmVJbWFnZUZvckN1cnJlbnRGcmFtZSgpIHsgcmV0
dXJuIGZyYW1lQXRJbmRleChjdXJyZW50RnJhbWUoKSk7IH0KKyAgICB2aXJ0dWFsIE5hdGl2ZUlt
YWdlUHRyIG5hdGl2ZUltYWdlRm9yQ3VycmVudEZyYW1lKCkgeyByZXR1cm4gZnJhbWVBdEluZGV4
KGN1cnJlbnRGcmFtZSgpKTsgfQogCiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBkcmF3KEdy
YXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgY29uc3QgRmxvYXRSZWN0
JiBzcmNSZWN0LCBDb21wb3NpdGVPcGVyYXRvcik7Ci0gICAgdmlydHVhbCB2b2lkIGRyYXdUaWxl
ZChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0
UG9pbnQmIHNyY1BvaW50LCBjb25zdCBGbG9hdFNpemUmIHRpbGVTaXplLCBDb21wb3NpdGVPcGVy
YXRvcik7Ci0gICAgdmlydHVhbCB2b2lkIGRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBjb25z
dCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgVGlsZVJ1bGUg
aFJ1bGUsIFRpbGVSdWxlIHZSdWxlLCBDb21wb3NpdGVPcGVyYXRvcik7IAogICAgIAogICAgIHNp
emVfdCBjdXJyZW50RnJhbWUoKSBjb25zdCB7IHJldHVybiBtX2N1cnJlbnRGcmFtZTsgfQogICAg
IHNpemVfdCBmcmFtZUNvdW50KCk7CkBAIC0xMzksNyArMTM3LDcgQEAgcHJpdmF0ZToKIAogICAg
IC8vIEFuaW1hdGlvbi4KICAgICBib29sIHNob3VsZEFuaW1hdGUoKTsKLSAgICB2b2lkIHN0YXJ0
QW5pbWF0aW9uKCk7CisgICAgdmlydHVhbCB2b2lkIHN0YXJ0QW5pbWF0aW9uKCk7CiAgICAgdm9p
ZCBhZHZhbmNlQW5pbWF0aW9uKFRpbWVyPEJpdG1hcEltYWdlPiopOwogICAgIAogICAgIC8vIEhh
bmRsZSBwbGF0Zm9ybS1zcGVjaWZpYyBkYXRhCkBAIC0xNDksOCArMTQ3LDggQEAgcHJpdmF0ZToK
ICAgICAvLyBDaGVja3MgdG8gc2VlIGlmIHRoZSBpbWFnZSBpcyBhIDF4MSBzb2xpZCBjb2xvci4g
IFdlIG9wdGltaXplIHRoZXNlIGltYWdlcyBhbmQganVzdCBkbyBhIGZpbGwgcmVjdCBpbnN0ZWFk
LgogICAgIHZvaWQgY2hlY2tGb3JTb2xpZENvbG9yKCk7CiAgICAgCi0gICAgYm9vbCBtYXlGaWxs
V2l0aFNvbGlkQ29sb3IoKSBjb25zdCB7IHJldHVybiBtX2lzU29saWRDb2xvciAmJiBtX2N1cnJl
bnRGcmFtZSA9PSAwOyB9Ci0gICAgQ29sb3Igc29saWRDb2xvcigpIGNvbnN0IHsgcmV0dXJuIG1f
c29saWRDb2xvcjsgfQorICAgIHZpcnR1YWwgYm9vbCBtYXlGaWxsV2l0aFNvbGlkQ29sb3IoKSBj
b25zdCB7IHJldHVybiBtX2lzU29saWRDb2xvciAmJiBtX2N1cnJlbnRGcmFtZSA9PSAwOyB9Cisg
ICAgdmlydHVhbCBDb2xvciBzb2xpZENvbG9yKCkgY29uc3QgeyByZXR1cm4gbV9zb2xpZENvbG9y
OyB9CiAgICAgCiAgICAgSW1hZ2VTb3VyY2UgbV9zb3VyY2U7CiAgICAgbXV0YWJsZSBJbnRTaXpl
IG1fc2l6ZTsgLy8gVGhlIHNpemUgdG8gdXNlIGZvciB0aGUgb3ZlcmFsbCBpbWFnZSAod2lsbCBq
dXN0IGJlIHRoZSBzaXplIG9mIHRoZSBmaXJzdCBpbWFnZSkuCkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL0ltYWdlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9JbWFnZS5oCShyZXZpc2lvbiAxODg4NCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvSW1hZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMzksMTIgKzM5LDE3IEBAIGNsYXNzIE5TSW1h
Z2U7CiAjZW5kaWYKICNlbmRpZgogCisjaWYgUExBVEZPUk0oQ0cpCitzdHJ1Y3QgQ0dDb250ZXh0
OworI2VuZGlmCisKICNpZiBQTEFURk9STShXSU4pCiB0eXBlZGVmIHN0cnVjdCBIQklUTUFQX18g
KkhCSVRNQVA7CiAjZW5kaWYKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBBZmZpbmVU
cmFuc2Zvcm07CiBjbGFzcyBGbG9hdFBvaW50OwogY2xhc3MgRmxvYXRSZWN0OwogY2xhc3MgRmxv
YXRTaXplOwpAQCAtMTA0LDggKzEwOSwyMSBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgdmly
dHVhbCB2b2lkIGRyYXcoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0
LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIENvbXBvc2l0ZU9wZXJhdG9yKSA9IDA7Ci0gICAg
dmlydHVhbCB2b2lkIGRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3Qm
IGRzdFJlY3QsIGNvbnN0IEZsb2F0UG9pbnQmIHNyY1BvaW50LCBjb25zdCBGbG9hdFNpemUmIHRp
bGVTaXplLCBDb21wb3NpdGVPcGVyYXRvcikgPSAwOwotICAgIHZpcnR1YWwgdm9pZCBkcmF3VGls
ZWQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBGbG9h
dFJlY3QmIHNyY1JlY3QsIFRpbGVSdWxlIGhSdWxlLCBUaWxlUnVsZSB2UnVsZSwgQ29tcG9zaXRl
T3BlcmF0b3IpID0gMDsKKyAgICB2b2lkIGRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBjb25z
dCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UG9pbnQmIHNyY1BvaW50LCBjb25zdCBG
bG9hdFNpemUmIHRpbGVTaXplLCBDb21wb3NpdGVPcGVyYXRvcik7CisgICAgdm9pZCBkcmF3VGls
ZWQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBGbG9h
dFJlY3QmIHNyY1JlY3QsIFRpbGVSdWxlIGhSdWxlLCBUaWxlUnVsZSB2UnVsZSwgQ29tcG9zaXRl
T3BlcmF0b3IpOworICAgIAorICAgIC8vIFN1cHBvcnRpbmcgdGlsZWQgZHJhd2luZworICAgIHZp
cnR1YWwgYm9vbCBtYXlGaWxsV2l0aFNvbGlkQ29sb3IoKSBjb25zdCB7IHJldHVybiBmYWxzZTsg
fQorICAgIHZpcnR1YWwgQ29sb3Igc29saWRDb2xvcigpIGNvbnN0IHsgcmV0dXJuIENvbG9yKCk7
IH0KKyAgICAKKyAgICB2aXJ0dWFsIE5hdGl2ZUltYWdlUHRyIG5hdGl2ZUltYWdlRm9yQ3VycmVu
dEZyYW1lKCkgeyByZXR1cm4gMDsgfQorICAgIAorICAgIHZpcnR1YWwgdm9pZCBzdGFydEFuaW1h
dGlvbigpIHsgfQorICAgIAorI2lmIFBMQVRGT1JNKENHKQorICAgIHZvaWQgZHJhd1BhdHRlcm5D
b21iaW5lZChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmLCBjb25zdCBBZmZpbmVU
cmFuc2Zvcm0mLCBjb25zdCBGbG9hdFBvaW50JiwgQ29tcG9zaXRlT3BlcmF0b3IsIGNvbnN0IEZs
b2F0UmVjdCYpOworICAgIHN0YXRpYyB2b2lkIGRyYXdQYXR0ZXJuQ2FsbGJhY2sodm9pZCogaW5m
bywgQ0dDb250ZXh0Kik7CisjZW5kaWYKICAgICAKICAgICBWZWN0b3I8Y2hhcj4gbV9kYXRhOyAv
LyBUaGUgZW5jb2RlZCByYXcgZGF0YSBmb3IgdGhlIGltYWdlLiAKICAgICBJbWFnZUFuaW1hdGlv
bk9ic2VydmVyKiBtX2FuaW1hdGlvbk9ic2VydmVyOwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jZy9JbWFnZUNHLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NnL0ltYWdlQ0cuY3BwCShyZXZpc2lvbiAxODg4NCkKKysrIFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2cvSW1hZ2VDRy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcg
QEAKIAogI2lmIFBMQVRGT1JNKENHKQogCisjaW5jbHVkZSAiQWZmaW5lVHJhbnNmb3JtLmgiCiAj
aW5jbHVkZSAiRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSAiR3JhcGhpY3NDb250ZXh0LmgiCiAjaW5j
bHVkZSAiUERGRG9jdW1lbnRJbWFnZS5oIgpAQCAtMTczLDIxICsxNzQsMjUgQEAgdm9pZCBCaXRt
YXBJbWFnZTo6ZHJhdyhHcmFwaGljc0NvbnRleHQqIAogCiB9CiAKLXN0YXRpYyB2b2lkIGRyYXdQ
YXR0ZXJuKHZvaWQqIGluZm8sIENHQ29udGV4dFJlZiBjb250ZXh0KQordm9pZCBJbWFnZTo6ZHJh
d1BhdHRlcm5DYWxsYmFjayh2b2lkKiBpbmZvLCBDR0NvbnRleHRSZWYgY29udGV4dCkKIHsKLSAg
ICBCaXRtYXBJbWFnZSogZGF0YSA9IChCaXRtYXBJbWFnZSopaW5mbzsKKyAgICBJbWFnZSogZGF0
YSA9IChJbWFnZSopaW5mbzsKICAgICBDR0ltYWdlUmVmIGltYWdlID0gZGF0YS0+bmF0aXZlSW1h
Z2VGb3JDdXJyZW50RnJhbWUoKTsKICAgICBmbG9hdCB3ID0gQ0dJbWFnZUdldFdpZHRoKGltYWdl
KTsKICAgICBmbG9hdCBoID0gQ0dJbWFnZUdldEhlaWdodChpbWFnZSk7Ci0gICAgQ0dDb250ZXh0
RHJhd0ltYWdlKGNvbnRleHQsIEdyYXBoaWNzQ29udGV4dChjb250ZXh0KS5yb3VuZFRvRGV2aWNl
UGl4ZWxzKEZsb2F0UmVjdAotICAgICAgICAoMCwgZGF0YS0+c2l6ZSgpLmhlaWdodCgpIC0gaCwg
dywgaCkpLCBpbWFnZSk7ICAgIAorICAgIENHQ29udGV4dERyYXdJbWFnZShjb250ZXh0LCBHcmFw
aGljc0NvbnRleHQoY29udGV4dCkucm91bmRUb0RldmljZVBpeGVscyhGbG9hdFJlY3QoMCwgZGF0
YS0+c2l6ZSgpLmhlaWdodCgpIC0gaCwgdywgaCkpLCBpbWFnZSk7CiB9CiAKLXN0YXRpYyBjb25z
dCBDR1BhdHRlcm5DYWxsYmFja3MgcGF0dGVybkNhbGxiYWNrcyA9IHsgMCwgZHJhd1BhdHRlcm4s
IE5VTEwgfTsKLQotCi1zdGF0aWMgaW5saW5lIHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDb250
ZXh0KiBjdHh0LCBDR1BhdHRlcm5SZWYgcGF0dGVybiwgQ0dQb2ludCBwaGFzZSwgQ29tcG9zaXRl
T3BlcmF0b3Igb3AsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpCit2b2lkIEltYWdlOjpkcmF3
UGF0dGVybkNvbWJpbmVkKEdyYXBoaWNzQ29udGV4dCogY3R4dCwgY29uc3QgRmxvYXRSZWN0JiB0
aWxlUmVjdCwgY29uc3QgQWZmaW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBGbG9hdFBvaW50JiBwaGFzZSwgQ29tcG9z
aXRlT3BlcmF0b3Igb3AsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QpCiB7CisgICAgc3RhdGlj
IGNvbnN0IENHUGF0dGVybkNhbGxiYWNrcyBwYXR0ZXJuQ2FsbGJhY2tzID0geyAwLCBkcmF3UGF0
dGVybkNhbGxiYWNrLCBOVUxMIH07CisgICAgQ0dQYXR0ZXJuUmVmIHBhdHRlcm4gPSBDR1BhdHRl
cm5DcmVhdGUodGhpcywgdGlsZVJlY3QsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgQ0dBZmZpbmVUcmFuc2Zvcm0ocGF0dGVyblRyYW5zZm9ybSksIHRpbGVSZWN0
LndpZHRoKCksIHRpbGVSZWN0LmhlaWdodCgpLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBrQ0dQYXR0ZXJuVGlsaW5nQ29uc3RhbnRTcGFjaW5nLCB0cnVlLCAm
cGF0dGVybkNhbGxiYWNrcyk7CisgICAgaWYgKCFwYXR0ZXJuKQorICAgICAgICByZXR1cm47Cisg
ICAgCiAgICAgQ0dDb250ZXh0UmVmIGNvbnRleHQgPSBjdHh0LT5wbGF0Zm9ybUNvbnRleHQoKTsK
ICAgICBjdHh0LT5zYXZlKCk7CiAgICAgCkBAIC0yMDYsMTIgKzIxMSwyOSBAQCBzdGF0aWMgaW5s
aW5lIHZvaWQgZHJhd1BhdHRlcm4oR3JhcGhpY3NDCiAgICAgQ0dDb250ZXh0RmlsbFJlY3QoY29u
dGV4dCwgZGVzdFJlY3QpOwogICAgIAogICAgIGN0eHQtPnJlc3RvcmUoKTsKKyAgICBDR1BhdHRl
cm5SZWxlYXNlKHBhdHRlcm4pOworfQorCitzdGF0aWMgaW5saW5lIEZsb2F0U2l6ZSBjYWN1bGF0
ZVBhdHRlcm5TY2FsZShjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYg
c3JjUmVjdCwgSW1hZ2U6OlRpbGVSdWxlIGhSdWxlLCBJbWFnZTo6VGlsZVJ1bGUgdlJ1bGUpCit7
CisgICAgZmxvYXQgc2NhbGVYID0gMS4wZiwgc2NhbGVZID0gMS4wZjsKKyAgICAKKyAgICBpZiAo
aFJ1bGUgPT0gSW1hZ2U6OlN0cmV0Y2hUaWxlKQorICAgICAgICBzY2FsZVggPSBkc3RSZWN0Lndp
ZHRoKCkgLyBzcmNSZWN0LndpZHRoKCk7CisgICAgaWYgKHZSdWxlID09IEltYWdlOjpTdHJldGNo
VGlsZSkKKyAgICAgICAgc2NhbGVZID0gZHN0UmVjdC5oZWlnaHQoKSAvIHNyY1JlY3QuaGVpZ2h0
KCk7CisgICAgCisgICAgaWYgKGhSdWxlID09IEltYWdlOjpSZXBlYXRUaWxlKQorICAgICAgICBz
Y2FsZVggPSBzY2FsZVk7CisgICAgaWYgKHZSdWxlID09IEltYWdlOjpSZXBlYXRUaWxlKQorICAg
ICAgICBzY2FsZVkgPSBzY2FsZVg7CisgICAgCisgICAgcmV0dXJuIEZsb2F0U2l6ZShzY2FsZVgs
IHNjYWxlWSk7CiB9CiAKLXZvaWQgQml0bWFwSW1hZ2U6OmRyYXdUaWxlZChHcmFwaGljc0NvbnRl
eHQqIGN0eHQsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsb2F0UG9pbnQmIHNy
Y1BvaW50LCBjb25zdCBGbG9hdFNpemUmIHNjYWxlZFRpbGVTaXplLCBDb21wb3NpdGVPcGVyYXRv
ciBvcCkKK3ZvaWQgSW1hZ2U6OmRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqIGN0eHQsIGNvbnN0
IEZsb2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsb2F0UG9pbnQmIHNyY1BvaW50LCBjb25zdCBG
bG9hdFNpemUmIHNjYWxlZFRpbGVTaXplLCBDb21wb3NpdGVPcGVyYXRvciBvcCkKIHsgICAgCi0g
ICAgQ0dJbWFnZVJlZiBpbWFnZSA9IGZyYW1lQXRJbmRleChtX2N1cnJlbnRGcmFtZSk7Ci0gICAg
aWYgKCFpbWFnZSkKKyAgICBpZiAoIW5hdGl2ZUltYWdlRm9yQ3VycmVudEZyYW1lKCkpCiAgICAg
ICAgIHJldHVybjsKICAgICAKICAgICBpZiAobWF5RmlsbFdpdGhTb2xpZENvbG9yKCkpIHsKQEAg
LTIyMiw3ICsyNDQsNyBAQCB2b2lkIEJpdG1hcEltYWdlOjpkcmF3VGlsZWQoR3JhcGhpY3NDb250
CiAgICAgRmxvYXRTaXplIGludHJpbnNpY1RpbGVTaXplID0gc2l6ZSgpOwogICAgIEZsb2F0U2l6
ZSBzY2FsZShzY2FsZWRUaWxlU2l6ZS53aWR0aCgpIC8gaW50cmluc2ljVGlsZVNpemUud2lkdGgo
KSwKICAgICAgICAgICAgICAgICAgICAgc2NhbGVkVGlsZVNpemUuaGVpZ2h0KCkgLyBpbnRyaW5z
aWNUaWxlU2l6ZS5oZWlnaHQoKSk7Ci0gICAgQ0dBZmZpbmVUcmFuc2Zvcm0gcGF0dGVyblRyYW5z
Zm9ybSA9IENHQWZmaW5lVHJhbnNmb3JtTWFrZVNjYWxlKHNjYWxlLndpZHRoKCksIHNjYWxlLmhl
aWdodCgpKTsKKyAgICBBZmZpbmVUcmFuc2Zvcm0gcGF0dGVyblRyYW5zZm9ybSA9IEFmZmluZVRy
YW5zZm9ybSgpLnNjYWxlKHNjYWxlLndpZHRoKCksIHNjYWxlLmhlaWdodCgpKTsKIAogICAgIEZs
b2F0UmVjdCBvbmVUaWxlUmVjdDsKICAgICBvbmVUaWxlUmVjdC5zZXRYKGRlc3RSZWN0LngoKSAr
IGZtb2RmKGZtb2RmKC1zcmNQb2ludC54KCksIHNjYWxlZFRpbGVTaXplLndpZHRoKCkpIC0gc2Nh
bGVkVGlsZVNpemUud2lkdGgoKSwgc2NhbGVkVGlsZVNpemUud2lkdGgoKSkpOwpAQCAtMjQwLDQw
ICsyNjIsMTYgQEAgdm9pZCBCaXRtYXBJbWFnZTo6ZHJhd1RpbGVkKEdyYXBoaWNzQ29udAogICAg
ICAgICByZXR1cm47CiAgICAgfQogCi0gICAgQ0dQYXR0ZXJuUmVmIHBhdHRlcm4gPSBDR1BhdHRl
cm5DcmVhdGUodGhpcywgQ0dSZWN0TWFrZSgwLCAwLCBpbnRyaW5zaWNUaWxlU2l6ZS53aWR0aCgp
LCBpbnRyaW5zaWNUaWxlU2l6ZS5oZWlnaHQoKSksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgcGF0dGVyblRyYW5zZm9ybSwgaW50cmluc2ljVGlsZVNpemUud2lk
dGgoKSwgaW50cmluc2ljVGlsZVNpemUuaGVpZ2h0KCksIAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGtDR1BhdHRlcm5UaWxpbmdDb25zdGFudFNwYWNpbmcsIHRy
dWUsICZwYXR0ZXJuQ2FsbGJhY2tzKTsKLSAgICAKLSAgICBpZiAocGF0dGVybikgewotICAgICAg
ICBkcmF3UGF0dGVybihjdHh0LCBwYXR0ZXJuLCBvbmVUaWxlUmVjdC5sb2NhdGlvbigpLCBvcCwg
ZGVzdFJlY3QpOwotICAgICAgICBDR1BhdHRlcm5SZWxlYXNlKHBhdHRlcm4pOwotICAgIH0KKyAg
ICBGbG9hdFJlY3QgdGlsZVJlY3QoRmxvYXRQb2ludCgpLCBpbnRyaW5zaWNUaWxlU2l6ZSk7ICAg
IAorICAgIGRyYXdQYXR0ZXJuQ29tYmluZWQoY3R4dCwgdGlsZVJlY3QsIHBhdHRlcm5UcmFuc2Zv
cm0sIG9uZVRpbGVSZWN0LmxvY2F0aW9uKCksIG9wLCBkZXN0UmVjdCk7CiAgICAgCiAgICAgc3Rh
cnRBbmltYXRpb24oKTsKIH0KIAotc3RhdGljIGlubGluZSBGbG9hdFNpemUgY2FjdWxhdGVQYXR0
ZXJuU2NhbGUoY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1Jl
Y3QsIEltYWdlOjpUaWxlUnVsZSBoUnVsZSwgSW1hZ2U6OlRpbGVSdWxlIHZSdWxlKQotewotICAg
IGZsb2F0IHNjYWxlWCA9IDEuMGYsIHNjYWxlWSA9IDEuMGY7Ci0gICAgCi0gICAgaWYgKGhSdWxl
ID09IEltYWdlOjpTdHJldGNoVGlsZSkKLSAgICAgICAgc2NhbGVYID0gZHN0UmVjdC53aWR0aCgp
IC8gc3JjUmVjdC53aWR0aCgpOwotICAgIGlmICh2UnVsZSA9PSBJbWFnZTo6U3RyZXRjaFRpbGUp
Ci0gICAgICAgIHNjYWxlWSA9IGRzdFJlY3QuaGVpZ2h0KCkgLyBzcmNSZWN0LmhlaWdodCgpOwot
ICAgIAotICAgIGlmIChoUnVsZSA9PSBJbWFnZTo6UmVwZWF0VGlsZSkKLSAgICAgICAgc2NhbGVY
ID0gc2NhbGVZOwotICAgIGlmICh2UnVsZSA9PSBJbWFnZTo6UmVwZWF0VGlsZSkKLSAgICAgICAg
c2NhbGVZID0gc2NhbGVYOwotICAgIAotICAgIHJldHVybiBGbG9hdFNpemUoc2NhbGVYLCBzY2Fs
ZVkpOwotfQotCiAvLyBGSVhNRTogTWVyZ2Ugd2l0aCB0aGUgb3RoZXIgZHJhd1RpbGVkIGV2ZW50
dWFsbHksIHNpbmNlIHdlIG5lZWQgYSBjb21iaW5hdGlvbiBvZiBib3RoIGZvciBzb21lIHRoaW5n
cy4KLXZvaWQgQml0bWFwSW1hZ2U6OmRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqIGN0eHQsIGNv
bnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBUaWxlUnVs
ZSBoUnVsZSwgVGlsZVJ1bGUgdlJ1bGUsIENvbXBvc2l0ZU9wZXJhdG9yIG9wKQordm9pZCBJbWFn
ZTo6ZHJhd1RpbGVkKEdyYXBoaWNzQ29udGV4dCogY3R4dCwgY29uc3QgRmxvYXRSZWN0JiBkc3RS
ZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIFRpbGVSdWxlIGhSdWxlLCBUaWxlUnVsZSB2
UnVsZSwgQ29tcG9zaXRlT3BlcmF0b3Igb3ApCiB7ICAgIAotICAgIENHSW1hZ2VSZWYgaW1hZ2Ug
PSBmcmFtZUF0SW5kZXgobV9jdXJyZW50RnJhbWUpOwotICAgIGlmICghaW1hZ2UpCisgICAgaWYg
KCFuYXRpdmVJbWFnZUZvckN1cnJlbnRGcmFtZSgpKQogICAgICAgICByZXR1cm47CiAKICAgICBp
ZiAobWF5RmlsbFdpdGhTb2xpZENvbG9yKCkpIHsKQEAgLTI4MSwyNSArMjc5LDIwIEBAIHZvaWQg
Qml0bWFwSW1hZ2U6OmRyYXdUaWxlZChHcmFwaGljc0NvbnQKICAgICAgICAgcmV0dXJuOwogICAg
IH0KICAgICAKLSAgICAvLyBPcHRpbWl6YXRpb246IENhY2hlIHRoZSBDR1BhdHRlcm5SZWYKICAg
ICBGbG9hdFNpemUgc2NhbGUgPSBjYWN1bGF0ZVBhdHRlcm5TY2FsZShkc3RSZWN0LCBzcmNSZWN0
LCBoUnVsZSwgdlJ1bGUpOwotICAgIENHUGF0dGVyblJlZiBwYXR0ZXJuID0gQ0dQYXR0ZXJuQ3Jl
YXRlKHRoaXMsIHNyY1JlY3QsIENHQWZmaW5lVHJhbnNmb3JtTWFrZVNjYWxlKHNjYWxlLndpZHRo
KCksIHNjYWxlLmhlaWdodCgpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcmNSZWN0LndpZHRoKCksIHNyY1JlY3QuaGVpZ2h0KCksCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga0NHUGF0dGVyblRpbGluZ0NvbnN0YW50U3Bh
Y2luZywgdHJ1ZSwgJnBhdHRlcm5DYWxsYmFja3MpOwotICAgIGlmIChwYXR0ZXJuKSB7ICAgIAot
ICAgICAgICAvLyBXZSB3YW50IHRvIGNvbnN0cnVjdCB0aGUgcGhhc2Ugc3VjaCB0aGF0IHRoZSBw
YXR0ZXJuIGlzIGNlbnRlcmVkICh3aGVuIHN0cmV0Y2ggaXMgbm90Ci0gICAgICAgIC8vIHNldCBm
b3IgYSBwYXJ0aWN1bGFyIHJ1bGUpLgotICAgICAgICBmbG9hdCBoUGhhc2UgPSBzY2FsZS53aWR0
aCgpICogc3JjUmVjdC54KCk7Ci0gICAgICAgIGZsb2F0IHZQaGFzZSA9IHNjYWxlLmhlaWdodCgp
ICogKHNyY1JlY3QuaGVpZ2h0KCkgLSBzcmNSZWN0LnkoKSk7Ci0gICAgICAgIGlmIChoUnVsZSA9
PSBJbWFnZTo6UmVwZWF0VGlsZSkKLSAgICAgICAgICAgIGhQaGFzZSAtPSBmbW9kZihkc3RSZWN0
LndpZHRoKCksIHNjYWxlLndpZHRoKCkgKiBzcmNSZWN0LndpZHRoKCkpIC8gMi4wZjsKLSAgICAg
ICAgaWYgKHZSdWxlID09IEltYWdlOjpSZXBlYXRUaWxlKQotICAgICAgICAgICAgdlBoYXNlIC09
IGZtb2RmKGRzdFJlY3QuaGVpZ2h0KCksIHNjYWxlLmhlaWdodCgpICogc3JjUmVjdC5oZWlnaHQo
KSkgLyAyLjBmOwotICAgICAgICAKLSAgICAgICAgQ0dQb2ludCBwYXR0ZXJuUGhhc2UgPSBDR1Bv
aW50TWFrZShkc3RSZWN0LngoKSAtIGhQaGFzZSwgZHN0UmVjdC55KCkgLSB2UGhhc2UpOwotICAg
ICAgICBkcmF3UGF0dGVybihjdHh0LCBwYXR0ZXJuLCBwYXR0ZXJuUGhhc2UsIG9wLCBkc3RSZWN0
KTsKLSAgICAgICAgQ0dQYXR0ZXJuUmVsZWFzZShwYXR0ZXJuKTsKLSAgICB9CisgICAgQWZmaW5l
VHJhbnNmb3JtIHBhdHRlcm5UcmFuc2Zvcm0gPSBBZmZpbmVUcmFuc2Zvcm0oKS5zY2FsZShzY2Fs
ZS53aWR0aCgpLCBzY2FsZS5oZWlnaHQoKSk7CisKKyAgICAvLyBXZSB3YW50IHRvIGNvbnN0cnVj
dCB0aGUgcGhhc2Ugc3VjaCB0aGF0IHRoZSBwYXR0ZXJuIGlzIGNlbnRlcmVkICh3aGVuIHN0cmV0
Y2ggaXMgbm90CisgICAgLy8gc2V0IGZvciBhIHBhcnRpY3VsYXIgcnVsZSkuCisgICAgZmxvYXQg
aFBoYXNlID0gc2NhbGUud2lkdGgoKSAqIHNyY1JlY3QueCgpOworICAgIGZsb2F0IHZQaGFzZSA9
IHNjYWxlLmhlaWdodCgpICogKHNyY1JlY3QuaGVpZ2h0KCkgLSBzcmNSZWN0LnkoKSk7CisgICAg
aWYgKGhSdWxlID09IEltYWdlOjpSZXBlYXRUaWxlKQorICAgICAgICBoUGhhc2UgLT0gZm1vZGYo
ZHN0UmVjdC53aWR0aCgpLCBzY2FsZS53aWR0aCgpICogc3JjUmVjdC53aWR0aCgpKSAvIDIuMGY7
CisgICAgaWYgKHZSdWxlID09IEltYWdlOjpSZXBlYXRUaWxlKQorICAgICAgICB2UGhhc2UgLT0g
Zm1vZGYoZHN0UmVjdC5oZWlnaHQoKSwgc2NhbGUuaGVpZ2h0KCkgKiBzcmNSZWN0LmhlaWdodCgp
KSAvIDIuMGY7CisgICAgRmxvYXRQb2ludCBwYXR0ZXJuUGhhc2UoZHN0UmVjdC54KCkgLSBoUGhh
c2UsIGRzdFJlY3QueSgpIC0gdlBoYXNlKTsKKyAgICAKKyAgICBkcmF3UGF0dGVybkNvbWJpbmVk
KGN0eHQsIHNyY1JlY3QsIHBhdHRlcm5UcmFuc2Zvcm0sIHBhdHRlcm5QaGFzZSwgb3AsIGRzdFJl
Y3QpOwogCiAgICAgc3RhcnRBbmltYXRpb24oKTsKIH0KSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2cvUERGRG9jdW1lbnRJbWFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jZy9QREZEb2N1bWVudEltYWdlLmNwcAkocmV2aXNpb24gMTg4Nzgp
CisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1BERkRvY3VtZW50SW1hZ2UuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xNTMsMTYgKzE1Myw2IEBAIHZvaWQgUERGRG9jdW1lbnRJbWFnZTo6
ZHJhdyhHcmFwaGljc0NvbnQKICAgICBjb250ZXh0LT5yZXN0b3JlKCk7CiB9CiAKLXZvaWQgUERG
RG9jdW1lbnRJbWFnZTo6ZHJhd1RpbGVkKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVj
dCYgZHN0UmVjdCwgY29uc3QgRmxvYXRQb2ludCYgc3JjUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYg
dGlsZVNpemUsIENvbXBvc2l0ZU9wZXJhdG9yKQotewotICAgIC8vIEZJWE1FOiBpbXBsZW1lbnQg
dG8gc3VwcG9ydCBiYWNrZ3JvdW5kIGltYWdlcwotfQotCi12b2lkIFBERkRvY3VtZW50SW1hZ2U6
OmRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNv
bnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgVGlsZVJ1bGUgaFJ1bGUsIFRpbGVSdWxlIHZSdWxlLCBD
b21wb3NpdGVPcGVyYXRvcikKLXsKLSAgICAvLyBGSVhNRTogaW1wbGVtZW50IHRvIHN1cHBvcnQg
YmFja2dyb3VuZCBpbWFnZXMKLX0KLQogfQogCiAjZW5kaWYgLy8gUExBVEZPUk0oQ0cpCkluZGV4
OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1BERkRvY3VtZW50SW1hZ2UuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1BERkRvY3VtZW50SW1hZ2UuaAko
cmV2aXNpb24gMTg4NzgpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NnL1BERkRvY3Vt
ZW50SW1hZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsOCArNDcsNiBAQCBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKICAgICBwcml2YXRlOgogICAgICAgICB2aXJ0dWFsIHZvaWQgZHJhdyhHcmFwaGlj
c0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3Jj
UmVjdCwgQ29tcG9zaXRlT3BlcmF0b3IpOwotICAgICAgICB2aXJ0dWFsIHZvaWQgZHJhd1RpbGVk
KEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgY29uc3QgRmxvYXRQ
b2ludCYgc3JjUG9pbnQsIGNvbnN0IEZsb2F0U2l6ZSYgdGlsZVNpemUsIENvbXBvc2l0ZU9wZXJh
dG9yKTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBj
b25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgVGlsZVJ1
bGUgaFJ1bGUsIFRpbGVSdWxlIHZSdWxlLCBDb21wb3NpdGVPcGVyYXRvcik7CiAgICAgICAgIAog
ICAgICAgICB2b2lkIHNldEN1cnJlbnRQYWdlKGludCk7CiAgICAgICAgIGludCBwYWdlQ291bnQo
KSBjb25zdDsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL1NWR0ltYWdlLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9TVkdJbWFnZS5j
cHAJKHJldmlzaW9uIDE4ODc4KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9zdmcvU1ZH
SW1hZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDIsMTQgKzEwMiwxNiBAQCB2b2lkIFNWR0lt
YWdlOjpkcmF3KEdyYXBoaWNzQ29udGV4dCogY29uCiAgICAgY29udGV4dC0+cmVzdG9yZSgpOwog
fQogCi12b2lkIFNWR0ltYWdlOjpkcmF3VGlsZWQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxv
YXRSZWN0JiBkc3RSZWN0LCBjb25zdCBGbG9hdFBvaW50JiBzcmNQb2ludCwgY29uc3QgRmxvYXRT
aXplJiB0aWxlU2l6ZSwgQ29tcG9zaXRlT3BlcmF0b3IpCitOYXRpdmVJbWFnZVB0ciBTVkdJbWFn
ZTo6bmF0aXZlSW1hZ2VGb3JDdXJyZW50RnJhbWUoKQogewotICAgIC8vIEZJWE1FOiBpbXBsZW1l
bnQgdG8gc3VwcG9ydCBiYWNrZ3JvdW5kIGltYWdlcwotfQotCi12b2lkIFNWR0ltYWdlOjpkcmF3
VGlsZWQoR3JhcGhpY3NDb250ZXh0KiwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBjb25zdCBG
bG9hdFJlY3QmIHNyY1JlY3QsIFRpbGVSdWxlIGhSdWxlLCBUaWxlUnVsZSB2UnVsZSwgQ29tcG9z
aXRlT3BlcmF0b3IpCi17Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudCB0byBzdXBwb3J0IGJhY2tn
cm91bmQgaW1hZ2VzCisgICAgLy8gRklYTUU6IEluIG9yZGVyIHRvIHN1cHBvcnQgZHluYW1pYyBT
VkdzIHdlIG5lZWQgdG8gaGF2ZSBhIHdheSB0byBpbnZhbGlkYXRlIHRoaXMKKyAgICAvLyBmcmFt
ZSBjYWNoZSwgb3IgYmV0dGVyIHlldCwgbm90IHVzZSBhIGNhY2hlIGZvciB0aWxlZCBkcmF3aW5n
IGF0IGFsbCwgaW5zdGVhZAorICAgIC8vIGhhdmluZyBhIHRpbGVkIGRyYXdpbmcgY2FsbGJhY2sg
KGhvcGVmdWxseSBub24tdmlydHVhbCkuCisgICAgaWYgKCFtX2ZyYW1lQ2FjaGUpIHsKKyAgICAg
ICAgbV9mcmFtZUNhY2hlLnNldChJbWFnZUJ1ZmZlcjo6Y3JlYXRlKHNpemUoKSwgZmFsc2UpLnJl
bGVhc2UoKSk7CisgICAgICAgIEltYWdlQnVmZmVyOjpyZW5kZXJTdWJ0cmVlVG9JbWFnZShtX2Zy
YW1lQ2FjaGUuZ2V0KCksIG1fZnJhbWUtPnJlbmRlcmVyKCkpOworICAgIH0KKyAgICByZXR1cm4g
bV9mcmFtZUNhY2hlLT5jZ0ltYWdlKCk7CiB9CiAKIGJvb2wgU1ZHSW1hZ2U6OnNldERhdGEoYm9v
bCBhbGxEYXRhUmVjZWl2ZWQpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3N2Zy9T
VkdJbWFnZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvc3ZnL1NW
R0ltYWdlLmgJKHJldmlzaW9uIDE4ODc4KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9z
dmcvU1ZHSW1hZ2UuaAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogI2lmZGVmIFNW
R19TVVBQT1JUCiAKICNpbmNsdWRlICJJbWFnZS5oIgorI2luY2x1ZGUgIkltYWdlQnVmZmVyLmgi
CiAjaW5jbHVkZSAiSW50U2l6ZS5oIgogI2luY2x1ZGUgPHd0Zi9Pd25QdHIuaD4KIApAQCAtNTIs
MTQgKzUzLDE1IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgCiBwcml2YXRlOgogICAg
ICAgICB2aXJ0dWFsIHZvaWQgZHJhdyhHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3Qm
IGZyb21SZWN0LCBjb25zdCBGbG9hdFJlY3QmIHRvUmVjdCwgQ29tcG9zaXRlT3BlcmF0b3IpOwot
ICAgICAgICB2aXJ0dWFsIHZvaWQgZHJhd1RpbGVkKEdyYXBoaWNzQ29udGV4dCosIGNvbnN0IEZs
b2F0UmVjdCYgZHN0UmVjdCwgY29uc3QgRmxvYXRQb2ludCYgc3JjUG9pbnQsIGNvbnN0IEZsb2F0
U2l6ZSYgdGlsZVNpemUsIENvbXBvc2l0ZU9wZXJhdG9yKTsKLSAgICAgICAgdmlydHVhbCB2b2lk
IGRyYXdUaWxlZChHcmFwaGljc0NvbnRleHQqLCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGNv
bnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgVGlsZVJ1bGUgaFJ1bGUsIFRpbGVSdWxlIHZSdWxlLCBD
b21wb3NpdGVPcGVyYXRvcik7CisgICAgICAgIAorICAgICAgICB2aXJ0dWFsIE5hdGl2ZUltYWdl
UHRyIG5hdGl2ZUltYWdlRm9yQ3VycmVudEZyYW1lKCk7CiAgICAgICAgIAogICAgICAgICBTVkdE
b2N1bWVudCogbV9kb2N1bWVudDsKICAgICAgICAgT3duUHRyPFBhZ2U+IG1fcGFnZTsKICAgICAg
ICAgUmVmUHRyPEZyYW1lPiBtX2ZyYW1lOwogICAgICAgICBSZWZQdHI8RnJhbWVWaWV3PiBtX2Zy
YW1lVmlldzsKICAgICAgICAgSW50U2l6ZSBtX21pblNpemU7CisgICAgICAgIE93blB0cjxJbWFn
ZUJ1ZmZlcj4gbV9mcmFtZUNhY2hlOwogICAgIH07CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL2Zh
c3QvaW1hZ2VzL3N2Zy1hcy1iYWNrZ3JvdW5kLWV4cGVjdGVkLnBuZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5v
dCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0g
YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgppVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBeUFBQUFK
WUNBWUFBQUNhZG9Kd0FBQU1lVWxFUVZSNG5PM1p3UTJBUUF3RXNZUEdvZlBRCnhSd0N1NEtWOGhy
bFdQZWF4V3ZNNVJ3QUFIelh1WHNBQUFEd0h3SUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUEKQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRQpBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBCkFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVB
QURJQ0JBQUFDQWoKUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVB
QURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFQUFESQpDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVB
QURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBCk1nSUVB
QURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFB
RElDQkFBQUNBalFBQUEKZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFB
RElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQQpBQ0FqUUFBQWdJd0FBUUFBTWdJRUFB
RElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFCkFB
RElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQnp6TXpzSGdFQUFQeUREd2dBQUpB
UklBQUFRRWFBQUFBQUdRRUMKQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpB
UklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQQpBQUFBR1FFQ0FBQmtCQWdBQUpB
UklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
CklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmsKQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQQpHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBClFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0EKQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQwpBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBCkFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVIKSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCawpCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBCkdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUEKUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQQpBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDCkFBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUEKQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUgpJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrCkJBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUEKR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQQpR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBCkFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUMKQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QQpBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSCklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmsKQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQQpHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBClFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0EKQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQwpBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBCkFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVIKSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCawpCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBCkdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUEKUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQQpBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDCkFBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUEKQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUgpJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrCkJBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUEK
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFH
UUVDQUFCa0JBZ0FBSkFSSUFBQQpRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFH
UUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBCkFKQVJJQUFBUUVhQUFBQUFH
UUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdR
RUMKQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdR
RUNBQUJrQkFnQUFKQVJJQUFBUUVhQQpBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdR
RUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSCklBQUFRRWFBQUFBQUdR
RUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FF
Q0FBQmsKQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBbVFk
aWxReW5ZTXV6Z0FBQUFBQkpSVTVFcmtKZwpnZz09CgpJbmRleDogTGF5b3V0VGVzdHMvZmFzdC9p
bWFnZXMvc3ZnLWFzLXRpbGVkLWJhY2tncm91bmQtZXhwZWN0ZWQucG5nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ2Fu
bm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1lLXR5cGUg
PSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCmlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUF5QUFB
QUpZQ0FZQUFBQ2Fkb0p3QUFBTWVVbEVRVlI0bk8zWndRMkFRQXdFc1lQR29mUFEKeFJ3Q3U0S1Y4
aHJsV1BlYXhXdk01UndBQUh6WHVYc0FBQUR3SHdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1n
SUVBQURJQ0JBQQpBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1n
SUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFCkFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1n
SUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0EKQVFBQU1n
SUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJ
RUFBRElDQkFBQUNBagpRQUFBZ0l3QUFRQUFNZ0lFQUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJ
RUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJCkNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJ
RUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUEKTWdJ
RUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQQpnSXdBQVFBQU1nSUVBQURJQ0JBQUFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBCkFDQWpRQUFBZ0l3QUFRQUFNZ0lF
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNBalFBQUFnSXdBQVFBQU1nSUUK
QUFESUNCQUFBQ0FqUUFBQWdJd0FBUUFBTWdJRUFBRElDQkFBQUNCenpNenNIZ0VBQVB5RER3Z0FB
SkFSSUFBQVFFYUFBQUFBR1FFQwpBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FB
SkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBCkFBQUFHUUVDQUFCa0JBZ0FB
SkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFK
QVIKSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFK
QVJJQUFBUUVhQUFBQUFHUUVDQUFCawpCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFK
QVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBCkdRRUNBQUJrQkFnQUFK
QVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpB
UklBQUEKUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpB
UklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQQpBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpB
UklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDCkFBQmtCQWdBQUpB
UklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUEKQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUgpJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrCkJBZ0FBSkFS
SUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUEKR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQQpRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBCkFKQVJJ
QUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUMKQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQQpBQUFBR1FFQ0FBQmtCQWdBQUpBUklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSCklB
QUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmsKQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQQpHUUVDQUFCa0JBZ0FBSkFSSUFB
QVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
ClFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0EKQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQwpBQUJrQkFnQUFKQVJJQUFB
UUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBCkFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVIKSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCawpCQWdBQUpBUklBQUFR
RWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBCkdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUEKUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQQpBSkFSSUFBQVFF
YUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDCkFBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUEKQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUgpJQUFBUUVh
QUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrCkJBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUEKR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQQpRRWFB
QUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBCkFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUMKQUFCa0JBZ0FBSkFSSUFBQVFFYUFB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQQpB
QUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSCklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmsKQkFnQUFKQVJJQUFBUUVhQUFB
QUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QQpHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBClFFYUFBQUFBR1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0EKQUpBUklBQUFRRWFBQUFB
QUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQwpBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBCkFBQUFHUUVDQUFCa0JBZ0FBSkFSSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVIKSUFBQVFFYUFBQUFB
R1FFQ0FBQmtCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFH
UUVDQUFCawpCQWdBQUpBUklBQUFRRWFBQUFBQUdRRUNBQUJrQkFnQUFKQVJJQUFBUUVhQUFBQUFt
UWRpbFF5bllNdXpnQUFBQUFCSlJVNUVya0pnCmdnPT0KCg==
</data>
<flag name="review"
          id="4728"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>