<?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>55900</bug_id>
          
          <creation_ts>2011-03-07 13:38:57 -0800</creation_ts>
          <short_desc>[chromium] Explicitly copy compositing properties from LayerChromium to CCLayerImpl</short_desc>
          <delta_ts>2011-03-08 19:22:42 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="James Robinson">jamesr</reporter>
          <assigned_to name="James Robinson">jamesr</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>enne</cc>
    
    <cc>kbr</cc>
    
    <cc>nduca</cc>
    
    <cc>vangelis</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>363548</commentid>
    <comment_count>0</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-07 13:38:57 -0800</bug_when>
    <thetext>[chromium] Explicitly copy compositing properties from LayerChromium to CCLayerImpl</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363550</commentid>
    <comment_count>1</comment_count>
      <attachid>84976</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-07 13:40:19 -0800</bug_when>
    <thetext>Created attachment 84976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363552</commentid>
    <comment_count>2</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-07 13:42:06 -0800</bug_when>
    <thetext>Not super pretty by itself but another step towards decoupling the main thread tree from the CCLayerImpl one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363592</commentid>
    <comment_count>3</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-07 14:39:55 -0800</bug_when>
    <thetext>Happy to r+ this if Vangelis will do the unofficial review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>363840</commentid>
    <comment_count>4</comment_count>
      <attachid>84976</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2011-03-07 23:09:19 -0800</bug_when>
    <thetext>Comment on attachment 84976
Patch

Looks good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364216</commentid>
    <comment_count>5</comment_count>
      <attachid>84976</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2011-03-08 16:13:19 -0800</bug_when>
    <thetext>Comment on attachment 84976
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364278</commentid>
    <comment_count>6</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-08 18:26:10 -0800</bug_when>
    <thetext>Committed r80614: &lt;http://trac.webkit.org/changeset/80614&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>364289</commentid>
    <comment_count>7</comment_count>
      <attachid>84976</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2011-03-08 19:22:42 -0800</bug_when>
    <thetext>Comment on attachment 84976
Patch

clearing flags, patch landed</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84976</attachid>
            <date>2011-03-07 13:40:19 -0800</date>
            <delta_ts>2011-03-08 19:22:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55900-20110307134018.patch</filename>
            <type>text/plain</type>
            <size>24258</size>
            <attacher name="James Robinson">jamesr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODA0ODUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3OWQ5NGE5NGE1YTg3ZDc4
NGNmNDYzZjIxNDRhNWExODkxYWMzOTZmLi43YjFkMzI0MWRiMTYyZmNlMTg1MjdkNDk4OTk5OWZl
OGI4YTFiYzIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAKKzIwMTEtMDMtMDcgIEphbWVz
IFJvYmluc29uICA8amFtZXNyQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbY2hyb21pdW1dIEV4cGxpY2l0bHkgY29weSBjb21w
b3NpdGluZyBwcm9wZXJ0aWVzIGZyb20gTGF5ZXJDaHJvbWl1bSB0byBDQ0xheWVySW1wbAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTU5MDAKKworICAg
ICAgICBUaGlzIGFkZHMgYW4gZXhwbGljaXQgc3RlcCB0byBzeW5jaHJvbml6ZSBwcm9wZXJ0aWVz
IGZyb20KKyAgICAgICAgTGF5ZXJDaHJvbWl1bXMgdG8gdGhlaXIgY29ycmVzcG9uZGluZyBDQ0xh
eWVySW1wbHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNo
cm9taXVtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkxheWVyQ2hyb21pdW06OnNldEJvdW5kcyk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5oOgor
ICAgICAgICAoV2ViQ29yZTo6TGF5ZXJDaHJvbWl1bTo6Ym91bmRzKToKKyAgICAgICAgKFdlYkNv
cmU6OkxheWVyQ2hyb21pdW06OmRvdWJsZVNpZGVkKToKKyAgICAgICAgKFdlYkNvcmU6OkxheWVy
Q2hyb21pdW06OnNldERvdWJsZVNpZGVkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwOgorICAgICAgICAoV2ViQ29yZTo6TGF5
ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVQcm9wZXJ0aWVzQW5kUmVuZGVyU3VyZmFjZXMpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJJbXBsLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJJbXBsOjpDQ0xheWVySW1wbCk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVySW1wbDo6dXBkYXRlRnJvbUxheWVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkNDTGF5ZXJJbXBsOjpkZXNjZW5kYW50c0RyYXdzQ29udGVudCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllckltcGwuaDoKKyAgICAgICAgKFdlYkNvcmU6
OkNDTGF5ZXJJbXBsOjphbmNob3JQb2ludCk6CisgICAgICAgIChXZWJDb3JlOjpDQ0xheWVySW1w
bDo6YW5jaG9yUG9pbnRaKToKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJJbXBsOjptYXNrc1Rv
Qm91bmRzKToKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJJbXBsOjpvcGFjaXR5KToKKyAgICAg
ICAgKFdlYkNvcmU6OkNDTGF5ZXJJbXBsOjpwb3NpdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpD
Q0xheWVySW1wbDo6cHJlc2VydmVzM0QpOgorICAgICAgICAoV2ViQ29yZTo6Q0NMYXllckltcGw6
OnN1YmxheWVyVHJhbnNmb3JtKToKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJJbXBsOjp0cmFu
c2Zvcm0pOgorCiAyMDExLTAzLTA3ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNw
cAppbmRleCA5NWI3Mzg2YmZmOWE0ZjQ2ZGU4NjI4NzIyZjY1OTRjZWQ2NmNlYWQ0Li44ZTMwZjg2
MjkzYjIzZmIwODAzZjRjNDMwNjk4MmI3ZDk3MTFlODkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmNw
cApAQCAtMTg4LDcgKzE4OCw3IEBAIHZvaWQgTGF5ZXJDaHJvbWl1bTo6c2V0Qm91bmRzKGNvbnN0
IEludFNpemUmIHNpemUpCiAKICAgICBib29sIGZpcnN0UmVzaXplID0gIWJvdW5kcygpLndpZHRo
KCkgJiYgIWJvdW5kcygpLmhlaWdodCgpICYmIHNpemUud2lkdGgoKSAmJiBzaXplLmhlaWdodCgp
OwogCi0gICAgbV9jY0xheWVySW1wbC0+c2V0Qm91bmRzKHNpemUpOworICAgIG1fYm91bmRzID0g
c2l6ZTsKIAogICAgIGlmIChmaXJzdFJlc2l6ZSkKICAgICAgICAgc2V0TmVlZHNEaXNwbGF5KEZs
b2F0UmVjdCgwLCAwLCBib3VuZHMoKS53aWR0aCgpLCBib3VuZHMoKS5oZWlnaHQoKSkpOwpAQCAt
MzE2LDMxICszMTYsNiBAQCB2b2lkIExheWVyQ2hyb21pdW06OmRyYXdUZXh0dXJlZFF1YWQoR3Jh
cGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIGNvbnN0IFRyYW5zZm9ybQogICAgIEdMQyhjb250ZXh0
LCBjb250ZXh0LT5kcmF3RWxlbWVudHMoR3JhcGhpY3NDb250ZXh0M0Q6OlRSSUFOR0xFUywgNiwg
R3JhcGhpY3NDb250ZXh0M0Q6OlVOU0lHTkVEX1NIT1JULCAwKSk7CiB9CiAKLQotCi0vLyBSZXR1
cm5zIHRydWUgaWYgYW55IG9mIHRoZSBsYXllcidzIGRlc2NlbmRhbnRzIGhhcyBkcmF3YWJsZSBj
b250ZW50LgotYm9vbCBMYXllckNocm9taXVtOjpkZXNjZW5kYW50c0RyYXdDb250ZW50KCkKLXsK
LSAgICBjb25zdCBWZWN0b3I8UmVmUHRyPExheWVyQ2hyb21pdW0+ID4mIHN1YmxheWVycyA9IGdl
dFN1YmxheWVycygpOwotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgc3VibGF5ZXJzLnNpemUo
KTsgKytpKQotICAgICAgICBpZiAoc3VibGF5ZXJzW2ldLT5kZXNjZW5kYW50c0RyYXdDb250ZW50
UmVjdXJzaXZlKCkpCi0gICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICByZXR1cm4gZmFsc2U7
Ci19Ci0KLS8vIFJldHVybnMgdHJ1ZSBpZiBlaXRoZXIgdGhpcyBsYXllciBvciBvbmUgb2YgaXRz
IGRlc2NlbmRhbnRzIGhhcyBkcmF3YWJsZSBjb250ZW50LgotYm9vbCBMYXllckNocm9taXVtOjpk
ZXNjZW5kYW50c0RyYXdDb250ZW50UmVjdXJzaXZlKCkKLXsKLSAgICBpZiAoZHJhd3NDb250ZW50
KCkpCi0gICAgICAgIHJldHVybiB0cnVlOwotCi0gICAgY29uc3QgVmVjdG9yPFJlZlB0cjxMYXll
ckNocm9taXVtPiA+JiBzdWJsYXllcnMgPSBnZXRTdWJsYXllcnMoKTsKLSAgICBmb3IgKHNpemVf
dCBpID0gMDsgaSA8IHN1YmxheWVycy5zaXplKCk7ICsraSkKLSAgICAgICAgaWYgKHN1YmxheWVy
c1tpXS0+ZGVzY2VuZGFudHNEcmF3Q29udGVudFJlY3Vyc2l2ZSgpKQotICAgICAgICAgICAgcmV0
dXJuIHRydWU7Ci0gICAgcmV0dXJuIGZhbHNlOwotfQotCiBTdHJpbmcgTGF5ZXJDaHJvbWl1bTo6
bGF5ZXJUcmVlQXNUZXh0KCkgY29uc3QKIHsKICAgICBUZXh0U3RyZWFtIHRzOwpAQCAtNDE1LDE2
ICszOTAsNiBAQCBMYXllclJlbmRlcmVyQ2hyb21pdW0qIExheWVyQ2hyb21pdW06OmxheWVyUmVu
ZGVyZXIoKSBjb25zdAogICAgIHJldHVybiBtX2NjTGF5ZXJJbXBsLT5sYXllclJlbmRlcmVyKCk7
CiB9CiAKLXZvaWQgTGF5ZXJDaHJvbWl1bTo6c2V0RG91YmxlU2lkZWQoYm9vbCBkb3VibGVTaWRl
ZCkKLXsKLSAgICBtX2NjTGF5ZXJJbXBsLT5zZXREb3VibGVTaWRlZChkb3VibGVTaWRlZCk7Ci0g
ICAgc2V0TmVlZHNDb21taXQoKTsKLX0KLQotY29uc3QgSW50U2l6ZSYgTGF5ZXJDaHJvbWl1bTo6
Ym91bmRzKCkgY29uc3QKLXsKLSAgICByZXR1cm4gbV9jY0xheWVySW1wbC0+Ym91bmRzKCk7Ci19
CiAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAvLyBF
bmQgY2FsbHMgdGhhdCBmb3J3YXJkIHRvIHRoZSBDQ0xheWVySW1wbC4KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1bS5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJDaHJvbWl1
bS5oCmluZGV4IDI5YTIxNjUyOTc3OTkwZGQ1YWZkNzUzMTJiNmMxZmFiMDU1YjJjNTMuLmU5ZDll
MWZiZDA0NDEzYzRhNjA0YjcwYTJlMDdlODgwYTBmMmRmZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyQ2hyb21pdW0uaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllckNocm9taXVtLmgK
QEAgLTg5LDYgKzg5LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2V0QmFja2dyb3VuZENvbG9yKGNv
bnN0IENvbG9yJiBjb2xvcikgeyBtX2JhY2tncm91bmRDb2xvciA9IGNvbG9yOyBzZXROZWVkc0Nv
bW1pdCgpOyB9CiAgICAgQ29sb3IgYmFja2dyb3VuZENvbG9yKCkgY29uc3QgeyByZXR1cm4gbV9i
YWNrZ3JvdW5kQ29sb3I7IH0KIAorICAgIHZvaWQgc2V0Qm91bmRzKGNvbnN0IEludFNpemUmKTsK
KyAgICBjb25zdCBJbnRTaXplJiBib3VuZHMoKSBjb25zdCB7IHJldHVybiBtX2JvdW5kczsgfQor
CiAgICAgdm9pZCBzZXRDbGVhcnNDb250ZXh0KGJvb2wgY2xlYXJzKSB7IG1fY2xlYXJzQ29udGV4
dCA9IGNsZWFyczsgc2V0TmVlZHNDb21taXQoKTsgfQogICAgIGJvb2wgY2xlYXJzQ29udGV4dCgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xlYXJzQ29udGV4dDsgfQogCkBAIC0xMzMsNiArMTM2LDkgQEAg
cHVibGljOgogICAgIHZvaWQgc2V0VHJhbnNmb3JtKGNvbnN0IFRyYW5zZm9ybWF0aW9uTWF0cml4
JiB0cmFuc2Zvcm0pIHsgbV90cmFuc2Zvcm0gPSB0cmFuc2Zvcm07IHNldE5lZWRzQ29tbWl0KCk7
IH0KICAgICBjb25zdCBUcmFuc2Zvcm1hdGlvbk1hdHJpeCYgdHJhbnNmb3JtKCkgY29uc3QgeyBy
ZXR1cm4gbV90cmFuc2Zvcm07IH0KIAorICAgIGJvb2wgZG91YmxlU2lkZWQoKSBjb25zdCB7IHJl
dHVybiBtX2RvdWJsZVNpZGVkOyB9CisgICAgdm9pZCBzZXREb3VibGVTaWRlZChib29sIGRvdWJs
ZVNpZGVkKSB7IG1fZG91YmxlU2lkZWQgPSBkb3VibGVTaWRlZDsgc2V0TmVlZHNDb21taXQoKTsg
fQorCiAgICAgLy8gRklYTUU6IFRoaXMgc2V0dGluZyBpcyBjdXJyZW50bHkgaWdub3JlZC4KICAg
ICB2b2lkIHNldEdlb21ldHJ5RmxpcHBlZChib29sIGZsaXBwZWQpIHsgbV9nZW9tZXRyeUZsaXBw
ZWQgPSBmbGlwcGVkOyBzZXROZWVkc0NvbW1pdCgpOyB9CiAgICAgYm9vbCBnZW9tZXRyeUZsaXBw
ZWQoKSBjb25zdCB7IHJldHVybiBtX2dlb21ldHJ5RmxpcHBlZDsgfQpAQCAtMTQzLDkgKzE0OSw2
IEBAIHB1YmxpYzoKICAgICAvLyBpbiB0aGUgTGF5ZXJSZW5kZXJlckNocm9taXVtLgogICAgIHZp
cnR1YWwgdm9pZCBzZXRMYXllclJlbmRlcmVyKExheWVyUmVuZGVyZXJDaHJvbWl1bSopOwogCi0g
ICAgLy8gUmV0dXJucyB0cnVlIGlmIGFueSBvZiB0aGUgbGF5ZXIncyBkZXNjZW5kYW50cyBoYXMg
Y29udGVudCB0byBkcmF3LgotICAgIGJvb2wgZGVzY2VuZGFudHNEcmF3Q29udGVudCgpOwotCiAg
ICAgdm9pZCBzZXRPd25lcihHcmFwaGljc0xheWVyQ2hyb21pdW0qIG93bmVyKSB7IG1fb3duZXIg
PSBvd25lcjsgfQogCiAgICAgdm9pZCBzZXRSZXBsaWNhTGF5ZXIoTGF5ZXJDaHJvbWl1bSogbGF5
ZXIpIHsgbV9yZXBsaWNhTGF5ZXIgPSBsYXllcjsgfQpAQCAtMTgyLDkgKzE4NSw2IEBAIHB1Ymxp
YzoKIAogICAgIC8vIEJlZ2luIGNhbGxzIHRoYXQgZm9yd2FyZCB0byB0aGUgQ0NMYXllckltcGwu
CiAgICAgTGF5ZXJSZW5kZXJlckNocm9taXVtKiBsYXllclJlbmRlcmVyKCkgY29uc3Q7Ci0gICAg
dm9pZCBzZXREb3VibGVTaWRlZChib29sKTsKLSAgICB2b2lkIHNldEJvdW5kcyhjb25zdCBJbnRT
aXplJik7Ci0gICAgY29uc3QgSW50U2l6ZSYgYm91bmRzKCkgY29uc3Q7CiAgICAgLy8gRW5kIGNh
bGxzIHRoYXQgZm9yd2FyZCB0byB0aGUgQ0NMYXllckltcGwuCiAKICAgICB0eXBlZGVmIFByb2dy
YW1CaW5kaW5nPFZlcnRleFNoYWRlclBvcywgRnJhZ21lbnRTaGFkZXJDb2xvcj4gQm9yZGVyUHJv
Z3JhbTsKQEAgLTIzMyw4ICsyMzMsNiBAQCBwcml2YXRlOgogICAgIC8vIFRoaXMgc2hvdWxkIG9u
bHkgYmUgY2FsbGVkIGZyb20gcmVtb3ZlRnJvbVN1cGVybGF5ZXIuCiAgICAgdm9pZCByZW1vdmVT
dWJsYXllcihMYXllckNocm9taXVtKik7CiAKLSAgICBib29sIGRlc2NlbmRhbnRzRHJhd0NvbnRl
bnRSZWN1cnNpdmUoKTsKLQogICAgIFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiBtX3N1
YmxheWVyczsKICAgICBMYXllckNocm9taXVtKiBtX3N1cGVybGF5ZXI7CiAKQEAgLTI0Myw2ICsy
NDEsNyBAQCBwcml2YXRlOgogI2VuZGlmCiAKICAgICAvLyBMYXllciBwcm9wZXJ0aWVzLgorICAg
IEludFNpemUgbV9ib3VuZHM7CiAgICAgRmxvYXRQb2ludCBtX3Bvc2l0aW9uOwogICAgIEZsb2F0
UG9pbnQgbV9hbmNob3JQb2ludDsKICAgICBDb2xvciBtX2JhY2tncm91bmRDb2xvcjsKQEAgLTI1
NSw2ICsyNTQsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9vcGFxdWU7CiAgICAgYm9vbCBtX2dl
b21ldHJ5RmxpcHBlZDsKICAgICBib29sIG1fbmVlZHNEaXNwbGF5T25Cb3VuZHNDaGFuZ2U7Cisg
ICAgYm9vbCBtX2RvdWJsZVNpZGVkOwogCiAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggbV90cmFu
c2Zvcm07CiAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggbV9zdWJsYXllclRyYW5zZm9ybTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVy
UmVuZGVyZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwCmluZGV4IGU3YjI5OWZjMjM3Y2U4ZDYw
YmU3OTczMGZmNzQzMDFiMWMxNTE1MGUuLmFjNGNmYWQ1ZjQzOTk2MzRlYjUxMThjMTYzYjVhMjE0
MzliODM1NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL0xheWVyUmVuZGVyZXJDaHJvbWl1bS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcApAQCAtNDQ4
LDYgKzQ0OCw3IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVQcm9wZXJ0aWVz
QW5kUmVuZGVyU3VyZmFjZXMoTGF5ZXJDaHJvbWl1bSogbGF5CiB7CiAgICAgbGF5ZXItPnNldExh
eWVyUmVuZGVyZXIodGhpcyk7CiAgICAgQ0NMYXllckltcGwqIGRyYXdMYXllciA9IGxheWVyLT5j
Y0xheWVySW1wbCgpOworICAgIGRyYXdMYXllci0+dXBkYXRlRnJvbUxheWVyKGxheWVyKTsKIAog
ICAgIC8vIENvbXB1dGUgdGhlIG5ldyBtYXRyaXggdHJhbnNmb3JtYXRpb24gdGhhdCB3aWxsIGJl
IGFwcGxpZWQgdG8gdGhpcyBsYXllciBhbmQKICAgICAvLyBhbGwgaXRzIHN1YmxheWVycy4gSXQn
cyBpbXBvcnRhbnQgdG8gcmVtZW1iZXIgdGhhdCB0aGUgbGF5ZXIncyBwb3NpdGlvbgpAQCAtNDY3
LDkgKzQ2OCw5IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVQcm9wZXJ0aWVz
QW5kUmVuZGVyU3VyZmFjZXMoTGF5ZXJDaHJvbWl1bSogbGF5CiAgICAgLy8gV2hlcmU6IFAgaXMg
dGhlIHByb2plY3Rpb24gbWF0cml4CiAgICAgLy8gICAgICAgIE0gaXMgdGhlIGxheWVyJ3MgbWF0
cml4IGNvbXB1dGVkIGFib3ZlCiAgICAgLy8gICAgICAgIFMgaXMgdGhlIHNjYWxlIGFkanVzdG1l
bnQgKHRvIHNjYWxlIHVwIHRvIHRoZSBsYXllciBzaXplKQotICAgIEludFNpemUgYm91bmRzID0g
bGF5ZXItPmJvdW5kcygpOwotICAgIEZsb2F0UG9pbnQgYW5jaG9yUG9pbnQgPSBsYXllci0+YW5j
aG9yUG9pbnQoKTsKLSAgICBGbG9hdFBvaW50IHBvc2l0aW9uID0gbGF5ZXItPnBvc2l0aW9uKCk7
CisgICAgSW50U2l6ZSBib3VuZHMgPSBkcmF3TGF5ZXItPmJvdW5kcygpOworICAgIEZsb2F0UG9p
bnQgYW5jaG9yUG9pbnQgPSBkcmF3TGF5ZXItPmFuY2hvclBvaW50KCk7CisgICAgRmxvYXRQb2lu
dCBwb3NpdGlvbiA9IGRyYXdMYXllci0+cG9zaXRpb24oKTsKIAogICAgIC8vIE9mZnNldCBiZXR3
ZWVuIGFuY2hvciBwb2ludCBhbmQgdGhlIGNlbnRlciBvZiB0aGUgcXVhZC4KICAgICBmbG9hdCBj
ZW50ZXJPZmZzZXRYID0gKDAuNSAtIGFuY2hvclBvaW50LngoKSkgKiBib3VuZHMud2lkdGgoKTsK
QEAgLTQ3NywxNiArNDc4LDE2IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVQ
cm9wZXJ0aWVzQW5kUmVuZGVyU3VyZmFjZXMoTGF5ZXJDaHJvbWl1bSogbGF5CiAKICAgICBUcmFu
c2Zvcm1hdGlvbk1hdHJpeCBsYXllckxvY2FsVHJhbnNmb3JtOwogICAgIC8vIExUID0gVHJbbF0K
LSAgICBsYXllckxvY2FsVHJhbnNmb3JtLnRyYW5zbGF0ZTNkKHBvc2l0aW9uLngoKSwgcG9zaXRp
b24ueSgpLCBsYXllci0+YW5jaG9yUG9pbnRaKCkpOworICAgIGxheWVyTG9jYWxUcmFuc2Zvcm0u
dHJhbnNsYXRlM2QocG9zaXRpb24ueCgpLCBwb3NpdGlvbi55KCksIGRyYXdMYXllci0+YW5jaG9y
UG9pbnRaKCkpOwogICAgIC8vIExUID0gVHJbbF0gKiBNW2xdCi0gICAgbGF5ZXJMb2NhbFRyYW5z
Zm9ybS5tdWx0aXBseShsYXllci0+dHJhbnNmb3JtKCkpOworICAgIGxheWVyTG9jYWxUcmFuc2Zv
cm0ubXVsdGlwbHkoZHJhd0xheWVyLT50cmFuc2Zvcm0oKSk7CiAgICAgLy8gTFQgPSBUcltsXSAq
IE1bbF0gKiBUcltjXQotICAgIGxheWVyTG9jYWxUcmFuc2Zvcm0udHJhbnNsYXRlM2QoY2VudGVy
T2Zmc2V0WCwgY2VudGVyT2Zmc2V0WSwgLWxheWVyLT5hbmNob3JQb2ludFooKSk7CisgICAgbGF5
ZXJMb2NhbFRyYW5zZm9ybS50cmFuc2xhdGUzZChjZW50ZXJPZmZzZXRYLCBjZW50ZXJPZmZzZXRZ
LCAtZHJhd0xheWVyLT5hbmNob3JQb2ludFooKSk7CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJp
eCBjb21iaW5lZFRyYW5zZm9ybSA9IHBhcmVudE1hdHJpeDsKICAgICBjb21iaW5lZFRyYW5zZm9y
bSA9IGNvbWJpbmVkVHJhbnNmb3JtLm11bHRpcGx5KGxheWVyTG9jYWxUcmFuc2Zvcm0pOwogCi0g
ICAgRmxvYXRSZWN0IGxheWVyUmVjdCgtMC41ICogbGF5ZXItPmJvdW5kcygpLndpZHRoKCksIC0w
LjUgKiBsYXllci0+Ym91bmRzKCkuaGVpZ2h0KCksIGxheWVyLT5ib3VuZHMoKS53aWR0aCgpLCBs
YXllci0+Ym91bmRzKCkuaGVpZ2h0KCkpOworICAgIEZsb2F0UmVjdCBsYXllclJlY3QoLTAuNSAq
IGRyYXdMYXllci0+Ym91bmRzKCkud2lkdGgoKSwgLTAuNSAqIGRyYXdMYXllci0+Ym91bmRzKCku
aGVpZ2h0KCksIGRyYXdMYXllci0+Ym91bmRzKCkud2lkdGgoKSwgZHJhd0xheWVyLT5ib3VuZHMo
KS5oZWlnaHQoKSk7CiAgICAgSW50UmVjdCB0cmFuc2Zvcm1lZExheWVyUmVjdDsKIAogICAgIC8v
IFRoZSBsYXllciBhbmQgaXRzIGRlc2NlbmRhbnRzIHJlbmRlciBvbiBhIG5ldyBSZW5kZXJTdXJm
YWNlIGlmIGFueSBvZgpAQCAtNDk4LDExICs0OTksMTEgQEAgdm9pZCBMYXllclJlbmRlcmVyQ2hy
b21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRSZW5kZXJTdXJmYWNlcyhMYXllckNocm9taXVtKiBs
YXkKICAgICAvLyBJZiBhIGxheWVyIHByZXNlcnZlcy0zZCB0aGVuIHdlIGRvbid0IGNyZWF0ZSBh
IFJlbmRlclN1cmZhY2UgZm9yIGl0IHRvIGF2b2lkIGZsYXR0ZW5pbmcKICAgICAvLyBvdXQgaXRz
IGNoaWxkcmVuLiBUaGUgb3BhY2l0eSB2YWx1ZSBvZiB0aGUgY2hpbGRyZW4gbGF5ZXJzIGlzIG11
bHRpcGxpZWQgYnkgdGhlIG9wYWNpdHkKICAgICAvLyBvZiB0aGVpciBwYXJlbnQuCi0gICAgYm9v
bCB1c2VTdXJmYWNlRm9yQ2xpcHBpbmcgPSBsYXllci0+bWFza3NUb0JvdW5kcygpICYmICFpc1Nj
YWxlT3JUcmFuc2xhdGlvbihjb21iaW5lZFRyYW5zZm9ybSk7Ci0gICAgYm9vbCB1c2VTdXJmYWNl
Rm9yT3BhY2l0eSA9IGxheWVyLT5vcGFjaXR5KCkgIT0gMSAmJiAhbGF5ZXItPnByZXNlcnZlczNE
KCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yTWFza2luZyA9IGxheWVyLT5tYXNrRHJhd0xheWVy
KCk7Ci0gICAgYm9vbCB1c2VTdXJmYWNlRm9yUmVmbGVjdGlvbiA9IGxheWVyLT5yZXBsaWNhTGF5
ZXIoKTsKLSAgICBpZiAoKCh1c2VTdXJmYWNlRm9yQ2xpcHBpbmcgfHwgdXNlU3VyZmFjZUZvck9w
YWNpdHkpICYmIGxheWVyLT5kZXNjZW5kYW50c0RyYXdDb250ZW50KCkpCisgICAgYm9vbCB1c2VT
dXJmYWNlRm9yQ2xpcHBpbmcgPSBkcmF3TGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSAmJiAhaXNTY2Fs
ZU9yVHJhbnNsYXRpb24oY29tYmluZWRUcmFuc2Zvcm0pOworICAgIGJvb2wgdXNlU3VyZmFjZUZv
ck9wYWNpdHkgPSBkcmF3TGF5ZXItPm9wYWNpdHkoKSAhPSAxICYmICFkcmF3TGF5ZXItPnByZXNl
cnZlczNEKCk7CisgICAgYm9vbCB1c2VTdXJmYWNlRm9yTWFza2luZyA9IGRyYXdMYXllci0+bWFz
a0xheWVyKCk7CisgICAgYm9vbCB1c2VTdXJmYWNlRm9yUmVmbGVjdGlvbiA9IGRyYXdMYXllci0+
cmVwbGljYUxheWVyKCk7CisgICAgaWYgKCgodXNlU3VyZmFjZUZvckNsaXBwaW5nIHx8IHVzZVN1
cmZhY2VGb3JPcGFjaXR5KSAmJiBkcmF3TGF5ZXItPmRlc2NlbmRhbnRzRHJhd3NDb250ZW50KCkp
CiAgICAgICAgIHx8IHVzZVN1cmZhY2VGb3JNYXNraW5nIHx8IHVzZVN1cmZhY2VGb3JSZWZsZWN0
aW9uKSB7CiAgICAgICAgIFJlbmRlclN1cmZhY2VDaHJvbWl1bSogcmVuZGVyU3VyZmFjZSA9IGRy
YXdMYXllci0+cmVuZGVyU3VyZmFjZSgpOwogICAgICAgICBpZiAoIXJlbmRlclN1cmZhY2UpCkBA
IC01MTYsMTUgKzUxNywxNSBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6dXBkYXRlUHJv
cGVydGllc0FuZFJlbmRlclN1cmZhY2VzKExheWVyQ2hyb21pdW0qIGxheQogICAgICAgICB0cmFu
c2Zvcm1lZExheWVyUmVjdCA9IEludFJlY3QoMCwgMCwgYm91bmRzLndpZHRoKCksIGJvdW5kcy5o
ZWlnaHQoKSk7CiAKICAgICAgICAgLy8gTGF5ZXIncyBvcGFjaXR5IHdpbGwgYmUgYXBwbGllZCB3
aGVuIGRyYXdpbmcgdGhlIHJlbmRlciBzdXJmYWNlLgotICAgICAgICByZW5kZXJTdXJmYWNlLT5t
X2RyYXdPcGFjaXR5ID0gbGF5ZXItPm9wYWNpdHkoKTsKLSAgICAgICAgaWYgKGxheWVyLT5zdXBl
cmxheWVyKCkgJiYgbGF5ZXItPnN1cGVybGF5ZXIoKS0+cHJlc2VydmVzM0QoKSkKKyAgICAgICAg
cmVuZGVyU3VyZmFjZS0+bV9kcmF3T3BhY2l0eSA9IGRyYXdMYXllci0+b3BhY2l0eSgpOworICAg
ICAgICBpZiAoZHJhd0xheWVyLT5zdXBlcmxheWVyKCkgJiYgZHJhd0xheWVyLT5zdXBlcmxheWVy
KCktPnByZXNlcnZlczNEKCkpCiAgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX2RyYXdPcGFj
aXR5ICo9IGRyYXdMYXllci0+c3VwZXJsYXllcigpLT5kcmF3T3BhY2l0eSgpOwogICAgICAgICBk
cmF3TGF5ZXItPnNldERyYXdPcGFjaXR5KDEpOwogCiAgICAgICAgIFRyYW5zZm9ybWF0aW9uTWF0
cml4IGxheWVyT3JpZ2luVHJhbnNmb3JtID0gY29tYmluZWRUcmFuc2Zvcm07CiAgICAgICAgIGxh
eWVyT3JpZ2luVHJhbnNmb3JtLnRyYW5zbGF0ZTNkKC0wLjUgKiBib3VuZHMud2lkdGgoKSwgLTAu
NSAqIGJvdW5kcy5oZWlnaHQoKSwgMCk7CiAgICAgICAgIHJlbmRlclN1cmZhY2UtPm1fb3JpZ2lu
VHJhbnNmb3JtID0gbGF5ZXJPcmlnaW5UcmFuc2Zvcm07Ci0gICAgICAgIGlmIChsYXllck9yaWdp
blRyYW5zZm9ybS5pc0ludmVydGlibGUoKSAmJiBsYXllci0+c3VwZXJsYXllcigpKSB7CisgICAg
ICAgIGlmIChsYXllck9yaWdpblRyYW5zZm9ybS5pc0ludmVydGlibGUoKSAmJiBkcmF3TGF5ZXIt
PnN1cGVybGF5ZXIoKSkgewogICAgICAgICAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggcGFyZW50
VG9MYXllciA9IGxheWVyT3JpZ2luVHJhbnNmb3JtLmludmVyc2UoKTsKIAogICAgICAgICAgICAg
ZHJhd0xheWVyLT5zZXRTY2lzc29yUmVjdChwYXJlbnRUb0xheWVyLm1hcFJlY3QoZHJhd0xheWVy
LT5zdXBlcmxheWVyKCktPnNjaXNzb3JSZWN0KCkpKTsKQEAgLTUzOCwxNiArNTM5LDE2IEBAIHZv
aWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRhdGVQcm9wZXJ0aWVzQW5kUmVuZGVyU3VyZmFj
ZXMoTGF5ZXJDaHJvbWl1bSogbGF5CiAKICAgICAgICAgcmVuZGVyU3VyZmFjZS0+bV9sYXllckxp
c3QuY2xlYXIoKTsKIAotICAgICAgICBpZiAobGF5ZXItPm1hc2tEcmF3TGF5ZXIoKSkgewotICAg
ICAgICAgICAgcmVuZGVyU3VyZmFjZS0+bV9tYXNrTGF5ZXIgPSBsYXllci0+bWFza0RyYXdMYXll
cigpOwotICAgICAgICAgICAgbGF5ZXItPm1hc2tEcmF3TGF5ZXIoKS0+c2V0TGF5ZXJSZW5kZXJl
cih0aGlzKTsKLSAgICAgICAgICAgIGxheWVyLT5tYXNrRHJhd0xheWVyKCktPnNldFRhcmdldFJl
bmRlclN1cmZhY2UocmVuZGVyU3VyZmFjZSk7CisgICAgICAgIGlmIChkcmF3TGF5ZXItPm1hc2tM
YXllcigpKSB7CisgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX21hc2tMYXllciA9IGRyYXdM
YXllci0+bWFza0xheWVyKCk7CisgICAgICAgICAgICBkcmF3TGF5ZXItPm1hc2tMYXllcigpLT5z
ZXRMYXllclJlbmRlcmVyKHRoaXMpOworICAgICAgICAgICAgZHJhd0xheWVyLT5tYXNrTGF5ZXIo
KS0+c2V0VGFyZ2V0UmVuZGVyU3VyZmFjZShyZW5kZXJTdXJmYWNlKTsKICAgICAgICAgfSBlbHNl
CiAgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX21hc2tMYXllciA9IDA7CiAKLSAgICAgICAg
aWYgKGxheWVyLT5yZXBsaWNhTGF5ZXIoKSAmJiBsYXllci0+cmVwbGljYUxheWVyKCktPm1hc2tE
cmF3TGF5ZXIoKSkgewotICAgICAgICAgICAgbGF5ZXItPnJlcGxpY2FMYXllcigpLT5tYXNrRHJh
d0xheWVyKCktPnNldExheWVyUmVuZGVyZXIodGhpcyk7Ci0gICAgICAgICAgICBsYXllci0+cmVw
bGljYUxheWVyKCktPm1hc2tEcmF3TGF5ZXIoKS0+c2V0VGFyZ2V0UmVuZGVyU3VyZmFjZShyZW5k
ZXJTdXJmYWNlKTsKKyAgICAgICAgaWYgKGRyYXdMYXllci0+cmVwbGljYUxheWVyKCkgJiYgZHJh
d0xheWVyLT5yZXBsaWNhTGF5ZXIoKS0+bWFza0xheWVyKCkpIHsKKyAgICAgICAgICAgIGRyYXdM
YXllci0+cmVwbGljYUxheWVyKCktPm1hc2tMYXllcigpLT5zZXRMYXllclJlbmRlcmVyKHRoaXMp
OworICAgICAgICAgICAgZHJhd0xheWVyLT5yZXBsaWNhTGF5ZXIoKS0+bWFza0xheWVyKCktPnNl
dFRhcmdldFJlbmRlclN1cmZhY2UocmVuZGVyU3VyZmFjZSk7CiAgICAgICAgIH0KIAogICAgICAg
ICByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0LmFwcGVuZChkcmF3TGF5ZXIpOwpAQCAtNTU2LDEwICs1
NTcsMTAgQEAgdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRS
ZW5kZXJTdXJmYWNlcyhMYXllckNocm9taXVtKiBsYXkKICAgICAgICAgZHJhd0xheWVyLT5zZXRE
cmF3VHJhbnNmb3JtKGNvbWJpbmVkVHJhbnNmb3JtKTsKICAgICAgICAgdHJhbnNmb3JtZWRMYXll
clJlY3QgPSBlbmNsb3NpbmdJbnRSZWN0KGRyYXdMYXllci0+ZHJhd1RyYW5zZm9ybSgpLm1hcFJl
Y3QobGF5ZXJSZWN0KSk7CiAKLSAgICAgICAgZHJhd0xheWVyLT5zZXREcmF3T3BhY2l0eShsYXll
ci0+b3BhY2l0eSgpKTsKKyAgICAgICAgZHJhd0xheWVyLT5zZXREcmF3T3BhY2l0eShkcmF3TGF5
ZXItPm9wYWNpdHkoKSk7CiAKLSAgICAgICAgaWYgKGxheWVyLT5zdXBlcmxheWVyKCkpIHsKLSAg
ICAgICAgICAgIGlmIChsYXllci0+c3VwZXJsYXllcigpLT5wcmVzZXJ2ZXMzRCgpKQorICAgICAg
ICBpZiAoZHJhd0xheWVyLT5zdXBlcmxheWVyKCkpIHsKKyAgICAgICAgICAgIGlmIChkcmF3TGF5
ZXItPnN1cGVybGF5ZXIoKS0+cHJlc2VydmVzM0QoKSkKICAgICAgICAgICAgICAgIGRyYXdMYXll
ci0+c2V0RHJhd09wYWNpdHkoZHJhd0xheWVyLT5kcmF3T3BhY2l0eSgpICogZHJhd0xheWVyLT5z
dXBlcmxheWVyKCktPmRyYXdPcGFjaXR5KCkpOwogCiAgICAgICAgICAgICAvLyBMYXllcnMgaW5o
ZXJpdCB0aGUgc2Npc3NvciByZWN0IGZyb20gdGhlaXIgc3VwZXJsYXllci4KQEAgLTU3MSw3ICs1
NzIsNyBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6dXBkYXRlUHJvcGVydGllc0FuZFJl
bmRlclN1cmZhY2VzKExheWVyQ2hyb21pdW0qIGxheQogICAgICAgICBpZiAobGF5ZXIgIT0gbV9y
b290TGF5ZXIpCiAgICAgICAgICAgICBkcmF3TGF5ZXItPmNsZWFyUmVuZGVyU3VyZmFjZSgpOwog
Ci0gICAgICAgIGlmIChsYXllci0+bWFza3NUb0JvdW5kcygpKSB7CisgICAgICAgIGlmIChkcmF3
TGF5ZXItPm1hc2tzVG9Cb3VuZHMoKSkgewogICAgICAgICAgICAgSW50UmVjdCBzY2lzc29yID0g
ZHJhd0xheWVyLT5zY2lzc29yUmVjdCgpOwogICAgICAgICAgICAgc2Npc3Nvci5pbnRlcnNlY3Qo
dHJhbnNmb3JtZWRMYXllclJlY3QpOwogICAgICAgICAgICAgZHJhd0xheWVyLT5zZXRTY2lzc29y
UmVjdChzY2lzc29yKTsKQEAgLTU4MSw3ICs1ODIsNyBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJv
bWl1bTo6dXBkYXRlUHJvcGVydGllc0FuZFJlbmRlclN1cmZhY2VzKExheWVyQ2hyb21pdW0qIGxh
eQogICAgIGlmIChkcmF3TGF5ZXItPnJlbmRlclN1cmZhY2UoKSkKICAgICAgICAgZHJhd0xheWVy
LT5zZXRUYXJnZXRSZW5kZXJTdXJmYWNlKGRyYXdMYXllci0+cmVuZGVyU3VyZmFjZSgpKTsKICAg
ICBlbHNlIHsKLSAgICAgICAgQVNTRVJUKGxheWVyLT5zdXBlcmxheWVyKCkpOworICAgICAgICBB
U1NFUlQoZHJhd0xheWVyLT5zdXBlcmxheWVyKCkpOwogICAgICAgICBkcmF3TGF5ZXItPnNldFRh
cmdldFJlbmRlclN1cmZhY2UoZHJhd0xheWVyLT5zdXBlcmxheWVyKCktPnRhcmdldFJlbmRlclN1
cmZhY2UoKSk7CiAgICAgfQogCkBAIC01OTUsNyArNTk2LDcgQEAgdm9pZCBMYXllclJlbmRlcmVy
Q2hyb21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRSZW5kZXJTdXJmYWNlcyhMYXllckNocm9taXVt
KiBsYXkKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBzdWJsYXllck1hdHJpeCA9IGRyYXdMYXll
ci0+ZHJhd1RyYW5zZm9ybSgpOwogCiAgICAgLy8gRmxhdHRlbiB0byAyRCBpZiB0aGUgbGF5ZXIg
ZG9lc24ndCBwcmVzZXJ2ZSAzRC4KLSAgICBpZiAoIWxheWVyLT5wcmVzZXJ2ZXMzRCgpKSB7Cisg
ICAgaWYgKCFkcmF3TGF5ZXItPnByZXNlcnZlczNEKCkpIHsKICAgICAgICAgc3VibGF5ZXJNYXRy
aXguc2V0TTEzKDApOwogICAgICAgICBzdWJsYXllck1hdHJpeC5zZXRNMjMoMCk7CiAgICAgICAg
IHN1YmxheWVyTWF0cml4LnNldE0zMSgwKTsKQEAgLTYwNiw3ICs2MDcsNyBAQCB2b2lkIExheWVy
UmVuZGVyZXJDaHJvbWl1bTo6dXBkYXRlUHJvcGVydGllc0FuZFJlbmRlclN1cmZhY2VzKExheWVy
Q2hyb21pdW0qIGxheQogICAgIH0KIAogICAgIC8vIEFwcGx5IHRoZSBzdWJsYXllciB0cmFuc2Zv
cm0gYXQgdGhlIGNlbnRlciBvZiB0aGUgbGF5ZXIuCi0gICAgc3VibGF5ZXJNYXRyaXgubXVsdGlw
bHkobGF5ZXItPnN1YmxheWVyVHJhbnNmb3JtKCkpOworICAgIHN1YmxheWVyTWF0cml4Lm11bHRp
cGx5KGRyYXdMYXllci0+c3VibGF5ZXJUcmFuc2Zvcm0oKSk7CiAKICAgICAvLyBUaGUgb3JpZ2lu
IG9mIHRoZSBzdWJsYXllcnMgaXMgdGhlIHRvcCBsZWZ0IGNvcm5lciBvZiB0aGUgbGF5ZXIsIG5v
dCB0aGUKICAgICAvLyBjZW50ZXIuIFRoZSBtYXRyaXggcGFzc2VkIGRvd24gdG8gdGhlIHN1Ymxh
eWVycyBpcyB0aGVyZWZvcmU6CkBAIC02MzUsNyArNjM2LDcgQEAgdm9pZCBMYXllclJlbmRlcmVy
Q2hyb21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRSZW5kZXJTdXJmYWNlcyhMYXllckNocm9taXVt
KiBsYXkKICAgICAgICAgfQogICAgIH0KIAotICAgIGlmIChsYXllci0+bWFza3NUb0JvdW5kcygp
IHx8IHVzZVN1cmZhY2VGb3JNYXNraW5nKSB7CisgICAgaWYgKGRyYXdMYXllci0+bWFza3NUb0Jv
dW5kcygpIHx8IHVzZVN1cmZhY2VGb3JNYXNraW5nKSB7CiAgICAgICAgIEludFJlY3QgZHJhd2Fi
bGVDb250ZW50UmVjdCA9IGRyYXdMYXllci0+ZHJhd2FibGVDb250ZW50UmVjdCgpOwogICAgICAg
ICBkcmF3YWJsZUNvbnRlbnRSZWN0LmludGVyc2VjdCh0cmFuc2Zvcm1lZExheWVyUmVjdCk7CiAg
ICAgICAgIGRyYXdMYXllci0+c2V0RHJhd2FibGVDb250ZW50UmVjdChkcmF3YWJsZUNvbnRlbnRS
ZWN0KTsKQEAgLTY1MSw3ICs2NTIsNyBAQCB2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6dXBk
YXRlUHJvcGVydGllc0FuZFJlbmRlclN1cmZhY2VzKExheWVyQ2hyb21pdW0qIGxheQogCiAgICAg
ICAgIC8vIERvbid0IGNsaXAgaWYgdGhlIGxheWVyIGlzIHJlZmxlY3RlZCBhcyB0aGUgcmVmbGVj
dGlvbiBzaG91bGRuJ3QgYmUKICAgICAgICAgLy8gY2xpcHBlZC4KLSAgICAgICAgaWYgKCFsYXll
ci0+cmVwbGljYUxheWVyKCkpIHsKKyAgICAgICAgaWYgKCFkcmF3TGF5ZXItPnJlcGxpY2FMYXll
cigpKSB7CiAgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX2NvbnRlbnRSZWN0LmludGVyc2Vj
dChkcmF3TGF5ZXItPnNjaXNzb3JSZWN0KCkpOwogICAgICAgICAgICAgRmxvYXRQb2ludCBjbGlw
cGVkU3VyZmFjZUNlbnRlciA9IHJlbmRlclN1cmZhY2UtPmNvbnRlbnRSZWN0Q2VudGVyKCk7CiAg
ICAgICAgICAgICBjZW50ZXJPZmZzZXREdWVUb0NsaXBwaW5nID0gY2xpcHBlZFN1cmZhY2VDZW50
ZXIgLSBzdXJmYWNlQ2VudGVyOwpAQCAtNjc1LDEwICs2NzYsMTAgQEAgdm9pZCBMYXllclJlbmRl
cmVyQ2hyb21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRSZW5kZXJTdXJmYWNlcyhMYXllckNocm9t
aXVtKiBsYXkKIAogICAgICAgICAvLyBDb21wdXRlIHRoZSB0cmFuc2Zvcm1hdGlvbiBtYXRyaXgg
dXNlZCB0byBkcmF3IHRoZSByZXBsaWNhIG9mIHRoZSByZW5kZXIKICAgICAgICAgLy8gc3VyZmFj
ZS4KLSAgICAgICAgaWYgKGxheWVyLT5yZXBsaWNhTGF5ZXIoKSkgeworICAgICAgICBpZiAoZHJh
d0xheWVyLT5yZXBsaWNhTGF5ZXIoKSkgewogICAgICAgICAgICAgcmVuZGVyU3VyZmFjZS0+bV9y
ZXBsaWNhRHJhd1RyYW5zZm9ybSA9IHJlbmRlclN1cmZhY2UtPm1fb3JpZ2luVHJhbnNmb3JtOwot
ICAgICAgICAgICAgcmVuZGVyU3VyZmFjZS0+bV9yZXBsaWNhRHJhd1RyYW5zZm9ybS50cmFuc2xh
dGUzZChsYXllci0+cmVwbGljYUxheWVyKCktPnBvc2l0aW9uKCkueCgpLCBsYXllci0+cmVwbGlj
YUxheWVyKCktPnBvc2l0aW9uKCkueSgpLCAwKTsKLSAgICAgICAgICAgIHJlbmRlclN1cmZhY2Ut
Pm1fcmVwbGljYURyYXdUcmFuc2Zvcm0ubXVsdGlwbHkobGF5ZXItPnJlcGxpY2FMYXllcigpLT50
cmFuc2Zvcm0oKSk7CisgICAgICAgICAgICByZW5kZXJTdXJmYWNlLT5tX3JlcGxpY2FEcmF3VHJh
bnNmb3JtLnRyYW5zbGF0ZTNkKGRyYXdMYXllci0+cmVwbGljYUxheWVyKCktPnBvc2l0aW9uKCku
eCgpLCBkcmF3TGF5ZXItPnJlcGxpY2FMYXllcigpLT5wb3NpdGlvbigpLnkoKSwgMCk7CisgICAg
ICAgICAgICByZW5kZXJTdXJmYWNlLT5tX3JlcGxpY2FEcmF3VHJhbnNmb3JtLm11bHRpcGx5KGRy
YXdMYXllci0+cmVwbGljYUxheWVyKCktPnRyYW5zZm9ybSgpKTsKICAgICAgICAgICAgIHJlbmRl
clN1cmZhY2UtPm1fcmVwbGljYURyYXdUcmFuc2Zvcm0udHJhbnNsYXRlM2Qoc3VyZmFjZUNlbnRl
ci54KCkgLSBhbmNob3JQb2ludC54KCkgKiBib3VuZHMud2lkdGgoKSwgc3VyZmFjZUNlbnRlci55
KCkgLSBhbmNob3JQb2ludC55KCkgKiBib3VuZHMuaGVpZ2h0KCksIDApOwogICAgICAgICB9CiAg
ICAgfQpAQCAtNjg2LDggKzY4Nyw4IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjp1cGRh
dGVQcm9wZXJ0aWVzQW5kUmVuZGVyU3VyZmFjZXMoTGF5ZXJDaHJvbWl1bSogbGF5CiAgICAgLy8g
Q29tcHV0ZSB0aGUgZGVwdGggdmFsdWUgb2YgdGhlIGNlbnRlciBvZiB0aGUgbGF5ZXIgd2hpY2gg
d2lsbCBiZSB1c2VkIHdoZW4KICAgICAvLyBzb3J0aW5nIHRoZSBsYXllcnMgZm9yIHRoZSBwcmVz
ZXJ2ZXMtM2QgcHJvcGVydHkuCiAgICAgY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIGxheWVy
RHJhd01hdHJpeCA9IGRyYXdMYXllci0+cmVuZGVyU3VyZmFjZSgpID8gZHJhd0xheWVyLT5yZW5k
ZXJTdXJmYWNlKCktPm1fZHJhd1RyYW5zZm9ybSA6IGRyYXdMYXllci0+ZHJhd1RyYW5zZm9ybSgp
OwotICAgIGlmIChsYXllci0+c3VwZXJsYXllcigpKSB7Ci0gICAgICAgIGlmICghbGF5ZXItPnN1
cGVybGF5ZXIoKS0+cHJlc2VydmVzM0QoKSkKKyAgICBpZiAoZHJhd0xheWVyLT5zdXBlcmxheWVy
KCkpIHsKKyAgICAgICAgaWYgKCFkcmF3TGF5ZXItPnN1cGVybGF5ZXIoKS0+cHJlc2VydmVzM0Qo
KSkKICAgICAgICAgICAgIGRyYXdMYXllci0+c2V0RHJhd0RlcHRoKGRyYXdMYXllci0+c3VwZXJs
YXllcigpLT5kcmF3RGVwdGgoKSk7CiAgICAgICAgIGVsc2UKICAgICAgICAgICAgIGRyYXdMYXll
ci0+c2V0RHJhd0RlcHRoKGxheWVyRHJhd01hdHJpeC5tNDMoKSk7CkBAIC02OTcsNyArNjk4LDcg
QEAgdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OnVwZGF0ZVByb3BlcnRpZXNBbmRSZW5kZXJT
dXJmYWNlcyhMYXllckNocm9taXVtKiBsYXkKICAgICAvLyBJZiBwcmVzZXJ2ZXMtM2QgdGhlbiBz
b3J0IGFsbCB0aGUgZGVzY2VuZGFudHMgYnkgdGhlIFogY29vcmRpbmF0ZSBvZiB0aGVpcgogICAg
IC8vIGNlbnRlci4gSWYgdGhlIHByZXNlcnZlcy0zZCBwcm9wZXJ0eSBpcyBhbHNvIHNldCBvbiB0
aGUgc3VwZXJsYXllciB0aGVuCiAgICAgLy8gc2tpcCB0aGUgc29ydGluZyBhcyB0aGUgc3VwZXJs
YXllciB3aWxsIHNvcnQgYWxsIHRoZSBkZXNjZW5kYW50cyBhbnl3YXkuCi0gICAgaWYgKGxheWVy
LT5wcmVzZXJ2ZXMzRCgpICYmICghbGF5ZXItPnN1cGVybGF5ZXIoKSB8fCAhbGF5ZXItPnN1cGVy
bGF5ZXIoKS0+cHJlc2VydmVzM0QoKSkpCisgICAgaWYgKGRyYXdMYXllci0+cHJlc2VydmVzM0Qo
KSAmJiAoIWRyYXdMYXllci0+c3VwZXJsYXllcigpIHx8ICFkcmF3TGF5ZXItPnN1cGVybGF5ZXIo
KS0+cHJlc2VydmVzM0QoKSkpCiAgICAgICAgIHN0ZDo6c3RhYmxlX3NvcnQoJmRlc2NlbmRhbnRz
LmF0KHRoaXNMYXllckluZGV4KSwgZGVzY2VuZGFudHMuZW5kKCksIGNvbXBhcmVMYXllclopOwog
fQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVySW1wbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0xheWVySW1wbC5jcHAKaW5kZXggYTBhZDBmYmQ2MjJiMDYzZmI0ODY0MGIy
ZWUyZGI3MWJkMjJiYTIyMS4uYjM4OGE0OTRkZjE2NzgyYjViM2FiYTQ5NGIxZTA5YzAxMDBmNzhj
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NMYXllckltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDTGF5ZXJJbXBsLmNwcApAQCAtNjIsMTMgKzYyLDE4IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogQ0NMYXllckltcGw6OkNDTGF5ZXJJbXBsKExheWVyQ2hyb21pdW0qIG93
bmVyKQogICAgIDogbV9vd25lcihvd25lcikKKyAgICAsIG1fYW5jaG9yUG9pbnQoMC41LCAwLjUp
CisgICAgLCBtX2FuY2hvclBvaW50WigwKQorICAgICwgbV9kb3VibGVTaWRlZCh0cnVlKQorICAg
ICwgbV9tYXNrc1RvQm91bmRzKGZhbHNlKQorICAgICwgbV9vcGFjaXR5KDEuMCkKKyAgICAsIG1f
cHJlc2VydmVzM0QoZmFsc2UpCiAjaWZuZGVmIE5ERUJVRwogICAgICwgbV9kZWJ1Z0lEKG93bmVy
LT5kZWJ1Z0lEKCkpCiAjZW5kaWYKICAgICAsIG1fdGFyZ2V0UmVuZGVyU3VyZmFjZSgwKQogICAg
ICwgbV9kcmF3RGVwdGgoMCkKICAgICAsIG1fZHJhd09wYWNpdHkoMCkKLSAgICAsIG1fZG91Ymxl
U2lkZWQodHJ1ZSkKICAgICAsIG1fZGVidWdCb3JkZXJDb2xvcigwLCAwLCAwLCAwKQogICAgICwg
bV9kZWJ1Z0JvcmRlcldpZHRoKDApCiAgICAgLCBtX3JlbmRlclN1cmZhY2UoMCkKQEAgLTk2LDYg
KzEwMSwyNSBAQCBDQ0xheWVySW1wbCogQ0NMYXllckltcGw6OnJlcGxpY2FMYXllcigpIGNvbnN0
CiAgICAgcmV0dXJuIG1fb3duZXItPnJlcGxpY2FMYXllcigpID8gbV9vd25lci0+cmVwbGljYUxh
eWVyKCktPmNjTGF5ZXJJbXBsKCkgOiAwOwogfQogCit2b2lkIENDTGF5ZXJJbXBsOjp1cGRhdGVG
cm9tTGF5ZXIoTGF5ZXJDaHJvbWl1bSogbGF5ZXIpCit7CisgICAgbV9hbmNob3JQb2ludCA9IGxh
eWVyLT5hbmNob3JQb2ludCgpOworICAgIG1fYW5jaG9yUG9pbnRaID0gbGF5ZXItPmFuY2hvclBv
aW50WigpOworICAgIG1fYm91bmRzID0gbGF5ZXItPmJvdW5kcygpOworICAgIG1fZG91YmxlU2lk
ZWQgPSBsYXllci0+ZG91YmxlU2lkZWQoKTsKKyAgICBtX21hc2tzVG9Cb3VuZHMgPSBsYXllci0+
bWFza3NUb0JvdW5kcygpOworICAgIG1fb3BhY2l0eSA9IGxheWVyLT5vcGFjaXR5KCk7CisgICAg
bV9wb3NpdGlvbiA9IGxheWVyLT5wb3NpdGlvbigpOworICAgIG1fcHJlc2VydmVzM0QgPSBsYXll
ci0+cHJlc2VydmVzM0QoKTsKKyAgICBtX3N1YmxheWVyVHJhbnNmb3JtID0gbGF5ZXItPnN1Ymxh
eWVyVHJhbnNmb3JtKCk7CisgICAgbV90cmFuc2Zvcm0gPSBsYXllci0+dHJhbnNmb3JtKCk7CisK
KyAgICBpZiAobWFza0xheWVyKCkpCisgICAgICAgIG1hc2tMYXllcigpLT51cGRhdGVGcm9tTGF5
ZXIobV9vd25lci0+bWFza0xheWVyKCkpOworICAgIGlmIChyZXBsaWNhTGF5ZXIoKSkKKyAgICAg
ICAgcmVwbGljYUxheWVyKCktPnVwZGF0ZUZyb21MYXllcihtX293bmVyLT5yZXBsaWNhTGF5ZXIo
KSk7Cit9CisKIHZvaWQgQ0NMYXllckltcGw6OnNldExheWVyUmVuZGVyZXIoTGF5ZXJSZW5kZXJl
ckNocm9taXVtKiByZW5kZXJlcikKIHsKICAgICBtX2xheWVyUmVuZGVyZXIgPSByZW5kZXJlcjsK
QEAgLTEwNyw2ICsxMzEsMTUgQEAgUmVuZGVyU3VyZmFjZUNocm9taXVtKiBDQ0xheWVySW1wbDo6
Y3JlYXRlUmVuZGVyU3VyZmFjZSgpCiAgICAgcmV0dXJuIG1fcmVuZGVyU3VyZmFjZS5nZXQoKTsK
IH0KIAorYm9vbCBDQ0xheWVySW1wbDo6ZGVzY2VuZGFudHNEcmF3c0NvbnRlbnQoKQoreworICAg
IGNvbnN0IFZlY3RvcjxSZWZQdHI8TGF5ZXJDaHJvbWl1bT4gPiYgc3VibGF5ZXJzID0gbV9vd25l
ci0+Z2V0U3VibGF5ZXJzKCk7CisgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdWJsYXllcnMu
c2l6ZSgpOyArK2kpCisgICAgICAgIGlmIChzdWJsYXllcnNbaV0tPmNjTGF5ZXJJbXBsKCktPmRy
YXdzQ29udGVudCgpIHx8IHN1YmxheWVyc1tpXS0+Y2NMYXllckltcGwoKS0+ZGVzY2VuZGFudHNE
cmF3c0NvbnRlbnQoKSkKKyAgICAgICAgICAgIHJldHVybiB0cnVlOworICAgIHJldHVybiBmYWxz
ZTsKK30KKwogLy8gVGhlc2UgYmVsb25nIG9uIENDTGF5ZXJJbXBsLCBidXQgc2hvdWxkIGJlIHN1
YmNsYXNlZCBieSBlYWNoIHR5cGUgYW5kIG5vdCBkZWZlciB0byB0aGUgTGF5ZXJDaHJvbWl1bSBz
dWJ0eXBlcy4KIGJvb2wgQ0NMYXllckltcGw6OmRyYXdzQ29udGVudCgpIGNvbnN0CiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xh
eWVySW1wbC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NMYXllckltcGwuaAppbmRleCA2ODkyOTc2MDJhZmEyYTc5NTM5ZTNkNzEyYjVkOTNlNTAzM2Fl
YTM5Li5lMmY1ZjliNDc5ZGY4YjAzNjllYmIwNWNjYWRmNDg3MjI1MDVkMTUwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVySW1w
bC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
TGF5ZXJJbXBsLmgKQEAgLTYwLDEyICs2MCwyOCBAQCBwdWJsaWM6CiAgICAgQ0NMYXllckltcGwq
IHJlcGxpY2FMYXllcigpIGNvbnN0OwogCiAgICAgdm9pZCBkcmF3KCk7Ci0gICAgYm9vbCBkcmF3
c0NvbnRlbnQoKSBjb25zdDsKICAgICB2b2lkIHVucmVzZXJ2ZUNvbnRlbnRzVGV4dHVyZSgpOwog
ICAgIHZvaWQgYmluZENvbnRlbnRzVGV4dHVyZSgpOwogCisgICAgLy8gUmV0dXJucyB0cnVlIGlm
IHRoaXMgbGF5ZXIgaGFzIGNvbnRlbnQgdG8gZHJhdy4KKyAgICBib29sIGRyYXdzQ29udGVudCgp
IGNvbnN0OworCisgICAgLy8gUmV0dXJucyB0cnVlIGlmIGFueSBvZiB0aGUgbGF5ZXIncyBkZXNj
ZW5kYW50cyBoYXMgY29udGVudCB0byBkcmF3LgorICAgIGJvb2wgZGVzY2VuZGFudHNEcmF3c0Nv
bnRlbnQoKTsKKwogICAgIHZvaWQgY2xlYW51cFJlc291cmNlcygpOwogCisgICAgdm9pZCB1cGRh
dGVGcm9tTGF5ZXIoTGF5ZXJDaHJvbWl1bSopOworCisgICAgY29uc3QgRmxvYXRQb2ludCYgYW5j
aG9yUG9pbnQoKSBjb25zdCB7IHJldHVybiBtX2FuY2hvclBvaW50OyB9CisgICAgZmxvYXQgYW5j
aG9yUG9pbnRaKCkgY29uc3QgeyByZXR1cm4gbV9hbmNob3JQb2ludFo7IH0KKyAgICBib29sIG1h
c2tzVG9Cb3VuZHMoKSBjb25zdCB7IHJldHVybiBtX21hc2tzVG9Cb3VuZHM7IH0KKyAgICBmbG9h
dCBvcGFjaXR5KCkgY29uc3QgeyByZXR1cm4gbV9vcGFjaXR5OyB9CisgICAgY29uc3QgRmxvYXRQ
b2ludCYgcG9zaXRpb24oKSBjb25zdCB7IHJldHVybiBtX3Bvc2l0aW9uOyB9CisgICAgYm9vbCBw
cmVzZXJ2ZXMzRCgpIGNvbnN0IHsgcmV0dXJuIG1fcHJlc2VydmVzM0Q7IH0KKyAgICBjb25zdCBU
cmFuc2Zvcm1hdGlvbk1hdHJpeCYgc3VibGF5ZXJUcmFuc2Zvcm0oKSBjb25zdCB7IHJldHVybiBt
X3N1YmxheWVyVHJhbnNmb3JtOyB9CisgICAgY29uc3QgVHJhbnNmb3JtYXRpb25NYXRyaXgmIHRy
YW5zZm9ybSgpIGNvbnN0IHsgcmV0dXJuIG1fdHJhbnNmb3JtOyB9CisKICAgICB2b2lkIHNldE5h
bWUoY29uc3QgU3RyaW5nJiBuYW1lKSB7IG1fbmFtZSA9IG5hbWU7IH0KICAgICBjb25zdCBTdHJp
bmcmIG5hbWUoKSBjb25zdCB7IHJldHVybiBtX25hbWU7IH0KIApAQCAtMTEzLDYgKzEyOSwyMiBA
QCBwcml2YXRlOgogICAgIExheWVyQ2hyb21pdW0qIG1fb3duZXI7CiAgICAgZXhwbGljaXQgQ0NM
YXllckltcGwoTGF5ZXJDaHJvbWl1bSopOwogCisgICAgLy8gUHJvcGVydGllcyBzeW5jaHJvbml6
ZWQgZnJvbSB0aGUgYXNzb2NpYXRlZCBMYXllckNocm9taXVtLgorICAgIEZsb2F0UG9pbnQgbV9h
bmNob3JQb2ludDsKKyAgICBmbG9hdCBtX2FuY2hvclBvaW50WjsKKyAgICBJbnRTaXplIG1fYm91
bmRzOworCisgICAgLy8gV2hldGhlciB0aGUgImJhY2siIG9mIHRoaXMgbGF5ZXIgc2hvdWxkIGRy
YXcuCisgICAgYm9vbCBtX2RvdWJsZVNpZGVkOworCisgICAgYm9vbCBtX21hc2tzVG9Cb3VuZHM7
CisgICAgZmxvYXQgbV9vcGFjaXR5OworICAgIEZsb2F0UG9pbnQgbV9wb3NpdGlvbjsKKyAgICBi
b29sIG1fcHJlc2VydmVzM0Q7CisgICAgVHJhbnNmb3JtYXRpb25NYXRyaXggbV9zdWJsYXllclRy
YW5zZm9ybTsKKyAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBtX3RyYW5zZm9ybTsKKworICAgIC8v
IFByb3BlcnRpZXMgb3duZWQgZXhjbHVzaXZlbHkgYnkgdGhpcyBDQ0xheWVySW1wbC4KICAgICAv
LyBEZWJ1Z2dpbmcuCiAjaWZuZGVmIE5ERUJVRwogICAgIGludCBtX2RlYnVnSUQ7CkBAIC0xMzEs
MTcgKzE2MywxMiBAQCBwcml2YXRlOgogICAgIGZsb2F0IG1fZHJhd0RlcHRoOwogICAgIGZsb2F0
IG1fZHJhd09wYWNpdHk7CiAKLSAgICAvLyBXaGV0aGVyIHRoZSAiYmFjayIgb2YgdGhpcyBsYXll
ciBzaG91bGQgZHJhdy4KLSAgICBib29sIG1fZG91YmxlU2lkZWQ7Ci0KICAgICAvLyBEZWJ1ZyBi
b3JkZXJzLgogICAgIENvbG9yIG1fZGVidWdCb3JkZXJDb2xvcjsKICAgICBmbG9hdCBtX2RlYnVn
Qm9yZGVyV2lkdGg7CiAKICAgICBUcmFuc2Zvcm1hdGlvbk1hdHJpeCBtX2RyYXdUcmFuc2Zvcm07
CiAKLSAgICBJbnRTaXplIG1fYm91bmRzOwotCiAgICAgLy8gVGhlIHNjaXNzb3IgcmVjdGFuZ2xl
IHRoYXQgc2hvdWxkIGJlIHVzZWQgd2hlbiB0aGlzIGxheWVyIGlzIGRyYXduLgogICAgIC8vIElu
aGVyaXRlZCBieSB0aGUgcGFyZW50IGxheWVyIGFuZCBmdXJ0aGVyIHJlc3RyaWN0ZWQgaWYgdGhp
cyBsYXllciBtYXNrcwogICAgIC8vIHRvIGJvdW5kcy4K
</data>

          </attachment>
      

    </bug>

</bugzilla>