<?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>99327</bug_id>
          
          <creation_ts>2012-10-15 08:03:23 -0700</creation_ts>
          <short_desc>[BlackBerry] Clean up BackingStoreClient</short_desc>
          <delta_ts>2012-10-15 10:19:01 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit BlackBerry</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antonio Gomes">tonikitoo</reporter>
          <assigned_to name="Antonio Gomes">tonikitoo</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>742046</commentid>
    <comment_count>0</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-10-15 08:03:23 -0700</bug_when>
    <thetext>now that we do not use this code path to scroll inner frames (instead we use AC layers!), we can have a couple of patches that make it look simpler, and even faster.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742053</commentid>
    <comment_count>1</comment_count>
      <attachid>168713</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-10-15 08:24:39 -0700</bug_when>
    <thetext>Created attachment 168713
patch I (landed r131305)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742130</commentid>
    <comment_count>2</comment_count>
      <attachid>168733</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2012-10-15 10:06:33 -0700</bug_when>
    <thetext>Created attachment 168733
patch 2 (landed r131314)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168713</attachid>
            <date>2012-10-15 08:24:39 -0700</date>
            <delta_ts>2012-10-15 09:04:46 -0700</delta_ts>
            <desc>patch I (landed r131305)</desc>
            <filename>0001-BlackBerry-Clean-up-BackingStoreClient-part-I.patch</filename>
            <type>text/plain</type>
            <size>6659</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA3Y2Y4ODM1ODc2OWNlZTNiNDRkNzAwYmY1MTk1OWQzYjVkZTBhMTI3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
TW9uLCAxNSBPY3QgMjAxMiAxMToyMjoyNCAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIFtCbGFja0Jl
cnJ5XSBDbGVhbiB1cCBCYWNraW5nU3RvcmVDbGllbnQgKHBhcnQgSSkKIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05OTMyNwoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuClBhdGNoIGJ5IEFudG9uaW8gR29tZXMgPGFnb21lc0ByaW0uY29tPgoKTm93IHRoYXQgd2Ug
d29uJ3QgdXNlIHRoZSBCYWNraW5nU3RvcmVDbGllbnQgY29kZSBwYXRoIHRvIHNjcm9sbCBpbm5l
ciBmcmFtZXMgYXQgYWxsCihpbnN0ZWFkIHdlIHVzZSBBQyBsYXllcnMhKSwgd2UgY2FuIHJlbW92
ZSBhbGwgIiFpc01haW5GcmFtZSIgY29kZSBwYXRocy4KCk5vIGJlaGF2aW9yIGNoYW5nZSwgc2lu
Y2UgdGhlIGNvZGUgcGF0aCBiZWluZyByZW1vdmVkIHdhcyBub3QgaW4gdXNlLgoKKiBXZWJLaXRT
dXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHA6CihCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tp
bmdTdG9yZUNsaWVudDo6YWJzb2x1dGVSZWN0KToKKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2lu
Z1N0b3JlQ2xpZW50Ojp0cmFuc2Zvcm1lZEFjdHVhbFZpc2libGVTaXplKToKKEJsYWNrQmVycnk6
OldlYktpdDo6QmFja2luZ1N0b3JlQ2xpZW50Ojp2aWV3cG9ydFNpemUpOgooQmxhY2tCZXJyeTo6
V2ViS2l0OjpCYWNraW5nU3RvcmVDbGllbnQ6OnRyYW5zZm9ybWVkVmlld3BvcnRTaXplKToKKEJs
YWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlQ2xpZW50Ojp2aXNpYmxlQ29udGVudHNSZWN0
KToKKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlQ2xpZW50Ojp0cmFuc2Zvcm1lZFZp
c2libGVDb250ZW50c1JlY3QpOgooQmxhY2tCZXJyeTo6V2ViS2l0OjpCYWNraW5nU3RvcmVDbGll
bnQ6OmNoZWNrT3JpZ2luT2ZDdXJyZW50U2Nyb2xsT3BlcmF0aW9uKToKLS0tCiBTb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICB8ICAgMjEgKysrKysrKysK
IC4uLi9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHAgICAgICAgICAgIHwgICA1
MiArKysrLS0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKyks
IDQxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCmluZGV4IDBlYzI5
MmQuLjgzYjZiMjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0
IEBACisyMDEyLTEwLTE1ICBBbnRvbmlvIEdvbWVzICA8YWdvbWVzQHJpbS5jb20+CisKKyAgICAg
ICAgW0JsYWNrQmVycnldIENsZWFuIHVwIEJhY2tpbmdTdG9yZUNsaWVudCAocGFydCBJKQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzMjcKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBOb3cgdGhhdCB3ZSB3
b24ndCB1c2UgdGhlIEJhY2tpbmdTdG9yZUNsaWVudCBjb2RlIHBhdGggdG8gc2Nyb2xsIGlubmVy
IGZyYW1lcyBhdCBhbGwKKyAgICAgICAgKGluc3RlYWQgd2UgdXNlIEFDIGxheWVycyEpLCB3ZSBj
YW4gcmVtb3ZlIGFsbCAiIWlzTWFpbkZyYW1lIiBjb2RlIHBhdGhzLgorCisgICAgICAgIE5vIGJl
aGF2aW9yIGNoYW5nZSwgc2luY2UgdGhlIGNvZGUgcGF0aCBiZWluZyByZW1vdmVkIHdhcyBub3Qg
aW4gdXNlLgorCisgICAgICAgICogV2ViS2l0U3VwcG9ydC9CYWNraW5nU3RvcmVDbGllbnQuY3Bw
OgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpCYWNraW5nU3RvcmVDbGllbnQ6OmFic29s
dXRlUmVjdCk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tpbmdTdG9yZUNsaWVu
dDo6dHJhbnNmb3JtZWRBY3R1YWxWaXNpYmxlU2l6ZSk6CisgICAgICAgIChCbGFja0JlcnJ5OjpX
ZWJLaXQ6OkJhY2tpbmdTdG9yZUNsaWVudDo6dmlld3BvcnRTaXplKToKKyAgICAgICAgKEJsYWNr
QmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlQ2xpZW50Ojp0cmFuc2Zvcm1lZFZpZXdwb3J0U2l6
ZSk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tpbmdTdG9yZUNsaWVudDo6dmlz
aWJsZUNvbnRlbnRzUmVjdCk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tpbmdT
dG9yZUNsaWVudDo6dHJhbnNmb3JtZWRWaXNpYmxlQ29udGVudHNSZWN0KToKKyAgICAgICAgKEJs
YWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlQ2xpZW50OjpjaGVja09yaWdpbk9mQ3VycmVu
dFNjcm9sbE9wZXJhdGlvbik6CisKIDIwMTItMTAtMTMgIEpha29iIFBldHNvdml0cyAgPGpwZXRz
b3ZpdHNAcmltLmNvbT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gRmV0Y2ggYmxpdCByZWN0cyBm
cm9tIGEgdmlld3BvcnQgYWNjZXNzb3IKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2ti
ZXJyeS9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9CYWNraW5nU3RvcmVDbGllbnQuY3BwCmluZGV4IDRk
Mzg5Y2QuLmFiNDQxMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJL
aXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFj
a2JlcnJ5L1dlYktpdFN1cHBvcnQvQmFja2luZ1N0b3JlQ2xpZW50LmNwcApAQCAtMTI2LDE1ICsx
MjYsNyBAQCBJbnRSZWN0IEJhY2tpbmdTdG9yZUNsaWVudDo6YWJzb2x1dGVSZWN0KCkgY29uc3QK
IHsKICAgICBJbnRSZWN0IHJlY3QgPSBJbnRSZWN0KEludFBvaW50Ojp6ZXJvKCksIHZpZXdwb3J0
U2l6ZSgpKTsKIAotICAgIGlmICghaXNNYWluRnJhbWUoKSkgewotICAgICAgICAvLyBJdCBpcyBw
b3NzaWJsZSB0aGF0IHRoZSBvd25lciBIVE1MIGVsZW1lbnQgaGFzIGJlZW4gcmVtb3ZlZCBhdCB0
aGlzIHBvaW50LAotICAgICAgICAvLyBlc3BlY2lhbGx5IHdoZW4gdGhlIGZyYW1lIGlzIGxvYWRp
bmcgYSBKYXZhU2NyaXB0IFVSTC4KLSAgICAgICAgaWYgKEVsZW1lbnQqIGVsdCA9IG1fZnJhbWUt
Pm93bmVyRWxlbWVudCgpKSB7Ci0gICAgICAgICAgICBpZiAoUmVuZGVyQm94KiBvYmogPSBlbHQt
PnJlbmRlckJveCgpKQotICAgICAgICAgICAgICAgIHJlY3QubW92ZShvYmotPmJvcmRlckxlZnQo
KSArIG9iai0+cGFkZGluZ0xlZnQoKSwgb2JqLT5ib3JkZXJUb3AoKSArIG9iai0+cGFkZGluZ1Rv
cCgpKTsKLSAgICAgICAgfQotICAgIH0KLQorICAgIC8vIEZJWE1FOiBTcGVlZCBpdCB1cCEKICAg
ICBGcmFtZSogZnJhbWUgPSBtX2ZyYW1lOwogICAgIHdoaWxlIChmcmFtZSkgewogICAgICAgICBp
ZiAoRWxlbWVudCogZWxlbWVudCA9IHN0YXRpY19jYXN0PEVsZW1lbnQqPihmcmFtZS0+b3duZXJF
bGVtZW50KCkpKSB7CkBAIC0yMjEsMTAgKzIxMyw4IEBAIEludFNpemUgQmFja2luZ1N0b3JlQ2xp
ZW50OjphY3R1YWxWaXNpYmxlU2l6ZSgpIGNvbnN0CiAKIEludFNpemUgQmFja2luZ1N0b3JlQ2xp
ZW50Ojp0cmFuc2Zvcm1lZEFjdHVhbFZpc2libGVTaXplKCkgY29uc3QKIHsKLSAgICBpZiAoaXNN
YWluRnJhbWUoKSkKLSAgICAgICAgcmV0dXJuIG1fd2ViUGFnZS0+ZC0+dHJhbnNmb3JtZWRBY3R1
YWxWaXNpYmxlU2l6ZSgpOwotCi0gICAgcmV0dXJuIHRyYW5zZm9ybWVkVmlld3BvcnRTaXplKCk7
CisgICAgQVNTRVJUKGlzTWFpbkZyYW1lKCkpOworICAgIHJldHVybiBtX3dlYlBhZ2UtPmQtPnRy
YW5zZm9ybWVkQWN0dWFsVmlzaWJsZVNpemUoKTsKIH0KIAogSW50U2l6ZSBCYWNraW5nU3RvcmVD
bGllbnQ6OnZpZXdwb3J0U2l6ZSgpIGNvbnN0CkBAIC0yMzMsMTAgKzIyMyw4IEBAIEludFNpemUg
QmFja2luZ1N0b3JlQ2xpZW50Ojp2aWV3cG9ydFNpemUoKSBjb25zdAogICAgIGlmICghbV9mcmFt
ZS0+dmlldygpKQogICAgICAgICByZXR1cm4gSW50U2l6ZSgpOwogCi0gICAgaWYgKGlzTWFpbkZy
YW1lKCkpCi0gICAgICAgIHJldHVybiBtX3dlYlBhZ2UtPmQtPnZpZXdwb3J0U2l6ZSgpOwotCi0g
ICAgcmV0dXJuIG1fZnJhbWUtPnZpZXcoKS0+dmlzaWJsZUNvbnRlbnRSZWN0KCkuc2l6ZSgpOwor
ICAgIEFTU0VSVChpc01haW5GcmFtZSgpKTsKKyAgICByZXR1cm4gbV93ZWJQYWdlLT5kLT52aWV3
cG9ydFNpemUoKTsKIH0KIAogSW50U2l6ZSBCYWNraW5nU3RvcmVDbGllbnQ6OnRyYW5zZm9ybWVk
Vmlld3BvcnRTaXplKCkgY29uc3QKQEAgLTI0NSwxMyArMjMzLDggQEAgSW50U2l6ZSBCYWNraW5n
U3RvcmVDbGllbnQ6OnRyYW5zZm9ybWVkVmlld3BvcnRTaXplKCkgY29uc3QKICAgICBpZiAoIW1f
ZnJhbWUtPnZpZXcoKSkKICAgICAgICAgcmV0dXJuIEludFNpemUoKTsKIAotICAgIGlmIChpc01h
aW5GcmFtZSgpKQotICAgICAgICByZXR1cm4gbV93ZWJQYWdlLT5kLT50cmFuc2Zvcm1lZFZpZXdw
b3J0U2l6ZSgpOwotCi0gICAgY29uc3QgSW50U2l6ZSB1bnRyYW5zZm9ybWVkVmlld3BvcnRTaXpl
ID0gbV9mcmFtZS0+dmlldygpLT52aXNpYmxlQ29udGVudFJlY3QoKS5zaXplKCk7Ci0gICAgY29u
c3QgRmxvYXRQb2ludCB0cmFuc2Zvcm1lZEJvdHRvbVJpZ2h0ID0gbV93ZWJQYWdlLT5kLT5tX3Ry
YW5zZm9ybWF0aW9uTWF0cml4LT5tYXBQb2ludCgKLSAgICAgICAgRmxvYXRQb2ludCh1bnRyYW5z
Zm9ybWVkVmlld3BvcnRTaXplLndpZHRoKCksIHVudHJhbnNmb3JtZWRWaWV3cG9ydFNpemUuaGVp
Z2h0KCkpKTsKLSAgICByZXR1cm4gSW50U2l6ZShmbG9vcmYodHJhbnNmb3JtZWRCb3R0b21SaWdo
dC54KCkpLCBmbG9vcmYodHJhbnNmb3JtZWRCb3R0b21SaWdodC55KCkpKTsKKyAgICBBU1NFUlQo
aXNNYWluRnJhbWUoKSk7CisgICAgcmV0dXJuIG1fd2ViUGFnZS0+ZC0+dHJhbnNmb3JtZWRWaWV3
cG9ydFNpemUoKTsKIH0KIAogSW50UmVjdCBCYWNraW5nU3RvcmVDbGllbnQ6OnZpc2libGVDb250
ZW50c1JlY3QoKSBjb25zdApAQCAtMjYxLDE0ICsyNDQsNyBAQCBJbnRSZWN0IEJhY2tpbmdTdG9y
ZUNsaWVudDo6dmlzaWJsZUNvbnRlbnRzUmVjdCgpIGNvbnN0CiAgICAgICAgIHJldHVybiBJbnRS
ZWN0KCk7CiAKICAgICBJbnRSZWN0IHZpc2libGVDb250ZW50UmVjdCA9IG1fZnJhbWUtPnZpZXco
KS0+dmlzaWJsZUNvbnRlbnRSZWN0KCk7Ci0gICAgaWYgKGlzTWFpbkZyYW1lKCkpCi0gICAgICAg
IHJldHVybiB2aXNpYmxlQ29udGVudFJlY3Q7Ci0KLSAgICBJbnRQb2ludCBvZmZzZXQgPSBhYnNv
bHV0ZUxvY2F0aW9uKCk7Ci0gICAgdmlzaWJsZUNvbnRlbnRSZWN0Lm1vdmUob2Zmc2V0LngoKSwg
b2Zmc2V0LnkoKSk7Ci0gICAgaWYgKG1fcGFyZW50KQotICAgICAgICB2aXNpYmxlQ29udGVudFJl
Y3QuaW50ZXJzZWN0KG1fcGFyZW50LT52aXNpYmxlQ29udGVudHNSZWN0KCkpOwotCisgICAgQVNT
RVJUKGlzTWFpbkZyYW1lKCkpOwogICAgIHJldHVybiB2aXNpYmxlQ29udGVudFJlY3Q7CiB9CiAK
QEAgLTI4MSwxMSArMjU3LDcgQEAgSW50UmVjdCBCYWNraW5nU3RvcmVDbGllbnQ6OnRyYW5zZm9y
bWVkVmlzaWJsZUNvbnRlbnRzUmVjdCgpIGNvbnN0CiAgICAgLy8gdmlld3BvcnQgc2l6ZSBhcyBp
dCBpcywgd2hpY2ggZW5zdXJlcyB0aGF0IGUuZy4gYmxpdHRpbmcgb3BlcmF0aW9ucwogICAgIC8v
IGFsd2F5cyBjb3ZlciB0aGUgd2hvbGUgd2lkZ2V0L3NjcmVlbi4KICAgICBJbnRSZWN0IHZpc2li
bGVDb250ZW50c1JlY3QgPSBJbnRSZWN0KHRyYW5zZm9ybWVkU2Nyb2xsUG9zaXRpb24oKSwgdHJh
bnNmb3JtZWRWaWV3cG9ydFNpemUoKSk7Ci0gICAgaWYgKGlzTWFpbkZyYW1lKCkpCi0gICAgICAg
IHJldHVybiB2aXNpYmxlQ29udGVudHNSZWN0OwotCi0gICAgSW50UG9pbnQgb2Zmc2V0ID0gdHJh
bnNmb3JtZWRBYnNvbHV0ZUxvY2F0aW9uKCk7Ci0gICAgdmlzaWJsZUNvbnRlbnRzUmVjdC5tb3Zl
KG9mZnNldC54KCksIG9mZnNldC55KCkpOworICAgIEFTU0VSVChpc01haW5GcmFtZSgpKTsKICAg
ICByZXR1cm4gdmlzaWJsZUNvbnRlbnRzUmVjdDsKIH0KIApAQCAtNDEwLDEwICszODIsOCBAQCB2
b2lkIEJhY2tpbmdTdG9yZUNsaWVudDo6Y2hlY2tPcmlnaW5PZkN1cnJlbnRTY3JvbGxPcGVyYXRp
b24oKQogICAgIGlmIChpc1Njcm9sbE5vdGlmaWNhdGlvblN1cHByZXNzZWQoKSkKICAgICAgICAg
cmV0dXJuOwogCi0gICAgaWYgKGlzTWFpbkZyYW1lKCkpCi0gICAgICAgIG1fd2ViUGFnZS0+ZC0+
bm90aWZ5VHJhbnNmb3JtZWRTY3JvbGxDaGFuZ2VkKCk7Ci0gICAgZWxzZQotICAgICAgICBtX2Jh
Y2tpbmdTdG9yZS0+ZC0+c2Nyb2xsQ2hhbmdlZCh0cmFuc2Zvcm1lZFNjcm9sbFBvc2l0aW9uKCkp
OworICAgIEFTU0VSVChpc01haW5GcmFtZSgpKTsKKyAgICBtX3dlYlBhZ2UtPmQtPm5vdGlmeVRy
YW5zZm9ybWVkU2Nyb2xsQ2hhbmdlZCgpOwogfQogCiB9Ci0tIAoxLjcuNS40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168733</attachid>
            <date>2012-10-15 10:06:33 -0700</date>
            <delta_ts>2012-10-15 10:18:49 -0700</delta_ts>
            <desc>patch 2 (landed r131314)</desc>
            <filename>0001-BlackBerry-Clean-up-BackingStoreClient-part-II.patch</filename>
            <type>text/plain</type>
            <size>18892</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSAwNzc3ZTAzZjkxYmYyOWM2YmFhZjE3NWQ0NmZjOWU1MmMyZWRhNmM0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KRGF0ZTog
TW9uLCAxNSBPY3QgMjAxMiAxMzowMzozMCAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIFtCbGFja0Jl
cnJ5XSBDbGVhbiB1cCBCYWNraW5nU3RvcmVDbGllbnQgKHBhcnQgSUkpCiBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzMjcKClJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgpQYXRjaCBieSBBbnRvbmlvIEdvbWVzIDxhZ29tZXNAcmltLmNvbT4KClJlbW92ZSBtb3Jl
IHVubmVlZGVkIEJhY2tpbmdTdG9yZUNsaWVudCA8LT4gV2ViUGFnZUNsaWVudCBpbnRlZ3JhdGlv
bgptZXRob2RzOgotIEJhY2tpbmdTdG9yZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJh
bWUoLi4uKQotIHZvaWQgYWRkQmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUoLi4uKQotIHZvaWQg
cmVtb3ZlQmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUoLi4uKQoKQ2hhbmdlIHBsYWNlcyBjYWxs
aW5nIFdQUHJpdjo6YmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUgdG8gZGlyZWN0bHkKYWNjZXNz
IFdQUHJpdjo6YmFja2luZ1N0b3JlQ2xpZW50IGluc3RlYWQsIHNpbmNlIG9ubHkgdGhlIG1haW4g
ZnJhbWUgd2lsbApoYXZlIGEgQmFja2luZ1N0b3JlQ2xpZW50IGluc3RhbmNlIGFzc29jaWF0ZWQg
d2l0aCBpdCwgYW5kIGl0IGlzIG93bmVkIGJ5CnRoZSBXS1ByaXYuCgpSZW1vdmUgbm9uLW1haW5m
cmFtZSBvbmx5IHJlZmVyZW5jZXMgdG8gQmFja2luZ1N0b3JlQ2xpZW50IGNvbXBsZXRlbHksCnNp
bmNlIGl0IGlzIGRlYWQgY29kZSBub3cuCgoqIEFwaS9JblJlZ2lvblNjcm9sbGVyLmNwcDoKKEJs
YWNrQmVycnk6OldlYktpdDo6SW5SZWdpb25TY3JvbGxlclByaXZhdGU6OnNldExheWVyU2Nyb2xs
UG9zaXRpb24pOgoqIEFwaS9XZWJQYWdlLmNwcDoKKEJsYWNrQmVycnk6OldlYktpdDo6V2ViUGFn
ZVByaXZhdGU6OmJhY2tpbmdTdG9yZUNsaWVudCk6CihCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBh
Z2U6OmRlc3Ryb3kpOgoqIEFwaS9XZWJQYWdlX3AuaDoKKFdlYlBhZ2VQcml2YXRlKToKKiBXZWJD
b3JlU3VwcG9ydC9DaHJvbWVDbGllbnRCbGFja0JlcnJ5LmNwcDoKKFdlYkNvcmU6OkNocm9tZUNs
aWVudEJsYWNrQmVycnk6OmludmFsaWRhdGVDb250ZW50c0ZvclNsb3dTY3JvbGwpOgooV2ViQ29y
ZTo6Q2hyb21lQ2xpZW50QmxhY2tCZXJyeTo6c2Nyb2xsKToKKiBXZWJDb3JlU3VwcG9ydC9GcmFt
ZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwOgooV2ViQ29yZTo6RnJhbWVMb2FkZXJDbGllbnRC
bGFja0JlcnJ5Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGb3JOZXdQYWdlKToKKFdlYkNvcmU6OkZy
YW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6Y3JlYXRlRnJhbWUpOgooV2ViQ29yZTo6RnJhbWVM
b2FkZXJDbGllbnRCbGFja0JlcnJ5OjpkZXRhY2hlZEZyb21QYXJlbnQyKToKKiBXZWJLaXRTdXBw
b3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHA6CihCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tpbmdT
dG9yZUNsaWVudDo6Y3JlYXRlKToKKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlQ2xp
ZW50OjpCYWNraW5nU3RvcmVDbGllbnQpOgooQmxhY2tCZXJyeTo6V2ViS2l0OjpCYWNraW5nU3Rv
cmVDbGllbnQ6On5CYWNraW5nU3RvcmVDbGllbnQpOgoqIFdlYktpdFN1cHBvcnQvQmFja2luZ1N0
b3JlQ2xpZW50Lmg6CihCYWNraW5nU3RvcmVDbGllbnQpOgoqIFdlYktpdFN1cHBvcnQvSW5wdXRI
YW5kbGVyLmNwcDoKKEJsYWNrQmVycnk6OldlYktpdDo6SW5wdXRIYW5kbGVyOjpzZXRCYXRjaEVk
aXRpbmdBY3RpdmUpOgotLS0KIFNvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25T
Y3JvbGxlci5jcHAgIHwgICAxMiAtLS0tCiBTb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL1dl
YlBhZ2UuY3BwICAgICAgICAgICB8ICAgMzIgKy0tLS0tLS0tLS0tCiBTb3VyY2UvV2ViS2l0L2Js
YWNrYmVycnkvQXBpL1dlYlBhZ2VfcC5oICAgICAgICAgICB8ICAgIDQgKy0KIFNvdXJjZS9XZWJL
aXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgIHwgICA0NCArKysrKysrKysr
KysrKysrCiAuLi4vV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50QmxhY2tCZXJyeS5jcHAgICAg
ICB8ICAgMTIgKystLQogLi4uL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tC
ZXJyeS5jcHAgfCAgIDE4ICsrLS0tLS0KIC4uLi9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNs
aWVudC5jcHAgICAgICAgICAgIHwgICA1NSArLS0tLS0tLS0tLS0tLS0tLS0tCiAuLi4vYmxhY2ti
ZXJyeS9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5oICB8ICAgIDcgKy0tCiAuLi4v
YmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5jcHAgICAgICB8ICAgIDggKyst
LQogOSBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCAxMjYgZGVsZXRpb25zKC0pCgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVy
LmNwcCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvSW5SZWdpb25TY3JvbGxlci5jcHAK
aW5kZXggYzkxY2U5MC4uMzUzMWNiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2Jl
cnJ5L0FwaS9JblJlZ2lvblNjcm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVy
cnkvQXBpL0luUmVnaW9uU2Nyb2xsZXIuY3BwCkBAIC0yOTksMjAgKzI5OSw4IEBAIGJvb2wgSW5S
ZWdpb25TY3JvbGxlclByaXZhdGU6OnNldExheWVyU2Nyb2xsUG9zaXRpb24oUmVuZGVyTGF5ZXIq
IGxheWVyLCBjb25zdCBJCiAgICAgICAgIEFTU0VSVChjYW5TY3JvbGxJbm5lckZyYW1lKGZyYW1l
KSk7CiAKICAgICAgICAgdmlldy0+c2V0Q2FuQmxpdE9uU2Nyb2xsKGZhbHNlKTsKLQotICAgICAg
ICBCYWNraW5nU3RvcmVDbGllbnQqIGJhY2tpbmdTdG9yZUNsaWVudCA9IG1fd2ViUGFnZS0+YmFj
a2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUodmlldy0+ZnJhbWUoKSk7Ci0gICAgICAgIGlmIChiYWNr
aW5nU3RvcmVDbGllbnQpIHsKLSAgICAgICAgICAgIGJhY2tpbmdTdG9yZUNsaWVudC0+c2V0SXND
bGllbnRHZW5lcmF0ZWRTY3JvbGwodHJ1ZSk7Ci0gICAgICAgICAgICBiYWNraW5nU3RvcmVDbGll
bnQtPnNldElzU2Nyb2xsTm90aWZpY2F0aW9uU3VwcHJlc3NlZCh0cnVlKTsKLSAgICAgICAgfQot
CiAgICAgICAgIHZpZXctPnNldFNjcm9sbFBvc2l0aW9uKHNjcm9sbFBvc2l0aW9uKTsKIAotICAg
ICAgICBpZiAoYmFja2luZ1N0b3JlQ2xpZW50KSB7Ci0gICAgICAgICAgICBiYWNraW5nU3RvcmVD
bGllbnQtPnNldElzQ2xpZW50R2VuZXJhdGVkU2Nyb2xsKGZhbHNlKTsKLSAgICAgICAgICAgIGJh
Y2tpbmdTdG9yZUNsaWVudC0+c2V0SXNTY3JvbGxOb3RpZmljYXRpb25TdXBwcmVzc2VkKGZhbHNl
KTsKLSAgICAgICAgfQotCiAgICAgfSBlbHNlIHsKIAogICAgICAgICAvLyBSZW5kZXJCb3gtYmFz
ZWQgZWxlbWVudHMgY2FzZSAoc2Nyb2xsYWJsZSBib3hlcyAoZGl2J3MsIHAncywgdGV4dGFyZWEn
cywgZXRjKSkuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL1dlYlBh
Z2UuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9XZWJQYWdlLmNwcAppbmRleCBj
YzY2NTg4Li40OGQyZDkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBp
L1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2ViUGFnZS5j
cHAKQEAgLTI0NzksMzAgKzI0NzksMTEgQEAgSW50U2l6ZSBXZWJQYWdlUHJpdmF0ZTo6Zml4ZWRM
YXlvdXRTaXplKGJvb2wgc25hcFRvSW5jcmVtZW50KSBjb25zdAogICAgIHJldHVybiBJbnRTaXpl
KGRlZmF1bHRMYXlvdXRXaWR0aCwgZGVmYXVsdExheW91dEhlaWdodCk7CiB9CiAKLUJhY2tpbmdT
dG9yZUNsaWVudCogV2ViUGFnZVByaXZhdGU6OmJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKGNv
bnN0IEZyYW1lKiBmcmFtZSkgY29uc3QKK0JhY2tpbmdTdG9yZUNsaWVudCogV2ViUGFnZVByaXZh
dGU6OmJhY2tpbmdTdG9yZUNsaWVudCgpIGNvbnN0CiB7Ci0gICAgQVNTRVJUKGZyYW1lKTsKLSAg
ICBCYWNraW5nU3RvcmVDbGllbnQqIGJhY2tpbmdTdG9yZUNsaWVudCA9IDA7Ci0gICAgaWYgKG1f
YmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWVNYXAuY29udGFpbnMoZnJhbWUpKQotICAgICAgICBi
YWNraW5nU3RvcmVDbGllbnQgPSBtX2JhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lTWFwLmdldChm
cmFtZSk7Ci0gICAgcmV0dXJuIGJhY2tpbmdTdG9yZUNsaWVudDsKLX0KLQotdm9pZCBXZWJQYWdl
UHJpdmF0ZTo6YWRkQmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUoY29uc3QgRnJhbWUqIGZyYW1l
LCBCYWNraW5nU3RvcmVDbGllbnQqIGNsaWVudCkKLXsKLSAgICBBU1NFUlQoZnJhbWUpOwotICAg
IEFTU0VSVChjbGllbnQpOwotICAgIG1fYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWVNYXAuYWRk
KGZyYW1lLCBjbGllbnQpOworICAgIHJldHVybiBtX2JhY2tpbmdTdG9yZUNsaWVudDsKIH0KIAot
dm9pZCBXZWJQYWdlUHJpdmF0ZTo6cmVtb3ZlQmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUoY29u
c3QgRnJhbWUqIGZyYW1lKQotewotICAgIEFTU0VSVChmcmFtZSk7Ci0gICAgaWYgKG1fYmFja2lu
Z1N0b3JlQ2xpZW50Rm9yRnJhbWVNYXAuY29udGFpbnMoZnJhbWUpKQotICAgICAgICBtX2JhY2tp
bmdTdG9yZUNsaWVudEZvckZyYW1lTWFwLnJlbW92ZShmcmFtZSk7Ci19Ci0KLQogdm9pZCBXZWJQ
YWdlUHJpdmF0ZTo6Y2xlYXJEb2N1bWVudERhdGEoY29uc3QgRG9jdW1lbnQqIGRvY3VtZW50R29p
bmdBd2F5KQogewogICAgIEFTU0VSVChkb2N1bWVudEdvaW5nQXdheSk7CkBAIC0zMTI1LDE1ICsz
MTA2LDYgQEAgdm9pZCBXZWJQYWdlOjpkZXN0cm95KCkKIAogICAgIEZyYW1lTG9hZGVyKiBsb2Fk
ZXIgPSBkLT5tX21haW5GcmFtZS0+bG9hZGVyKCk7CiAKLSAgICAvLyBSZW1vdmUgbWFpbiBmcmFt
ZSdzIGJhY2tpbmcgc3RvcmUgY2xpZW50IGZyb20gdGhlIG1hcAotICAgIC8vIHRvIHByZXZlbnQg
RnJhbWVMb2FkZXJDbGllbnRCbGFja3lCZXJyeTo6ZGV0YWNoRnJvbVBhcmVudDIoKSwKLSAgICAv
LyB3aGljaCBpcyBjYWxsZWQgYnkgbG9hZGVyLT5kZXRhY2hGcm9tUGFyZW50KCksIGRlbGV0aW5n
IGl0LgotICAgIC8vIFdlIHdpbGwgZGVsZXRlIGl0IGluIH5XZWJQYWdlUHJpdmF0ZSgpLgotICAg
IC8vIFJlYXNvbjogbG9hZGVyLT5kZXRhY2hGcm9tUGFyZW50KCkgbWF5IHBpbmcgYmFjayB0byBi
YWNraW5nIHN0b3JlCi0gICAgLy8gaW5kaXJlY3RseSB0aHJvdWdoIENocm9tZUNsaWVudEJsYWNr
QmVycnk6OmludmFsaWRhdGVDb250ZW50c0FuZFdpbmRvdygpLgotICAgIC8vIHNlZSBSSU0gUFIg
IzkzMjU2LgotICAgIGQtPnJlbW92ZUJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKGQtPm1fbWFp
bkZyYW1lKTsKLQogICAgIC8vIFNldCBtX21haW5GcmFtZSB0byAwIHRvIGF2b2lkIGNhbGxzIGJh
Y2sgaW4gdG8gdGhlIGJhY2tpbmdzdG9yZSBkdXJpbmcgd2VicGFnZSBkZWxldGlvbi4KICAgICBk
LT5tX21haW5GcmFtZSA9IDA7CiAgICAgaWYgKGxvYWRlcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2ViUGFnZV9wLmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVy
cnkvQXBpL1dlYlBhZ2VfcC5oCmluZGV4IDkwYWY4ZWMuLjAxOTJiM2EgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvV2ViUGFnZV9wLmgKKysrIGIvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L0FwaS9XZWJQYWdlX3AuaApAQCAtNDMyLDkgKzQzMiw3IEBAIHB1YmxpYzoK
ICAgICBib29sIGRpc3BhdGNoVG91Y2hQb2ludEFzTW91c2VFdmVudFRvRnVsbFNjcmVlblBsdWdp
bihXZWJDb3JlOjpQbHVnaW5WaWV3KiwgY29uc3QgUGxhdGZvcm06OlRvdWNoUG9pbnQmKTsKICAg
ICBib29sIGRpc3BhdGNoTW91c2VFdmVudFRvRnVsbFNjcmVlblBsdWdpbihXZWJDb3JlOjpQbHVn
aW5WaWV3KiwgY29uc3QgUGxhdGZvcm06Ok1vdXNlRXZlbnQmKTsKIAotICAgIEJhY2tpbmdTdG9y
ZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUoY29uc3QgV2ViQ29yZTo6RnJhbWUq
KSBjb25zdDsKLSAgICB2b2lkIGFkZEJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKGNvbnN0IFdl
YkNvcmU6OkZyYW1lKiwgQmFja2luZ1N0b3JlQ2xpZW50Kik7Ci0gICAgdm9pZCByZW1vdmVCYWNr
aW5nU3RvcmVDbGllbnRGb3JGcmFtZShjb25zdCBXZWJDb3JlOjpGcmFtZSopOworICAgIEJhY2tp
bmdTdG9yZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50KCkgY29uc3Q7CiAKICAgICB2b2lkIHNl
dFBhcmVudFBvcHVwKFdlYkNvcmU6OlBhZ2VQb3B1cEJsYWNrQmVycnkqIHdlYlBvcHVwKTsKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9DaGFuZ2VMb2cKaW5kZXggN2ZmMmI4NC4uOTBhMjMyZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2JsYWNrYmVycnkvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDkgQEAKIDIwMTItMTAtMTUgIEFu
dG9uaW8gR29tZXMgIDxhZ29tZXNAcmltLmNvbT4KIAorICAgICAgICBbQmxhY2tCZXJyeV0gQ2xl
YW4gdXAgQmFja2luZ1N0b3JlQ2xpZW50IChwYXJ0IElJKQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTkzMjcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgbW9yZSB1bm5lZWRlZCBCYWNraW5nU3Rv
cmVDbGllbnQgPC0+IFdlYlBhZ2VDbGllbnQgaW50ZWdyYXRpb24KKyAgICAgICAgbWV0aG9kczoK
KyAgICAgICAgLSBCYWNraW5nU3RvcmVDbGllbnQqIGJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1l
KC4uLikKKyAgICAgICAgLSB2b2lkIGFkZEJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKC4uLikK
KyAgICAgICAgLSB2b2lkIHJlbW92ZUJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKC4uLikKKwor
ICAgICAgICBDaGFuZ2UgcGxhY2VzIGNhbGxpbmcgV1BQcml2OjpiYWNraW5nU3RvcmVDbGllbnRG
b3JGcmFtZSB0byBkaXJlY3RseQorICAgICAgICBhY2Nlc3MgV1BQcml2OjpiYWNraW5nU3RvcmVD
bGllbnQgaW5zdGVhZCwgc2luY2Ugb25seSB0aGUgbWFpbiBmcmFtZSB3aWxsCisgICAgICAgIGhh
dmUgYSBCYWNraW5nU3RvcmVDbGllbnQgaW5zdGFuY2UgYXNzb2NpYXRlZCB3aXRoIGl0LCBhbmQg
aXQgaXMgb3duZWQgYnkKKyAgICAgICAgdGhlIFdLUHJpdi4KKworICAgICAgICBSZW1vdmUgbm9u
LW1haW5mcmFtZSBvbmx5IHJlZmVyZW5jZXMgdG8gQmFja2luZ1N0b3JlQ2xpZW50IGNvbXBsZXRl
bHksCisgICAgICAgIHNpbmNlIGl0IGlzIGRlYWQgY29kZSBub3cuCisKKyAgICAgICAgKiBBcGkv
SW5SZWdpb25TY3JvbGxlci5jcHA6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkluUmVn
aW9uU2Nyb2xsZXJQcml2YXRlOjpzZXRMYXllclNjcm9sbFBvc2l0aW9uKToKKyAgICAgICAgKiBB
cGkvV2ViUGFnZS5jcHA6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OldlYlBhZ2VQcml2
YXRlOjpiYWNraW5nU3RvcmVDbGllbnQpOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpX
ZWJQYWdlOjpkZXN0cm95KToKKyAgICAgICAgKiBBcGkvV2ViUGFnZV9wLmg6CisgICAgICAgIChX
ZWJQYWdlUHJpdmF0ZSk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xpZW50Qmxh
Y2tCZXJyeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDaHJvbWVDbGllbnRCbGFja0JlcnJ5Ojpp
bnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xsKToKKyAgICAgICAgKFdlYkNvcmU6OkNocm9t
ZUNsaWVudEJsYWNrQmVycnk6OnNjcm9sbCk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJh
bWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9h
ZGVyQ2xpZW50QmxhY2tCZXJyeTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6OmNyZWF0ZUZyYW1l
KToKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6ZGV0YWNo
ZWRGcm9tUGFyZW50Mik6CisgICAgICAgICogV2ViS2l0U3VwcG9ydC9CYWNraW5nU3RvcmVDbGll
bnQuY3BwOgorICAgICAgICAoQmxhY2tCZXJyeTo6V2ViS2l0OjpCYWNraW5nU3RvcmVDbGllbnQ6
OmNyZWF0ZSk6CisgICAgICAgIChCbGFja0JlcnJ5OjpXZWJLaXQ6OkJhY2tpbmdTdG9yZUNsaWVu
dDo6QmFja2luZ1N0b3JlQ2xpZW50KToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6QmFj
a2luZ1N0b3JlQ2xpZW50Ojp+QmFja2luZ1N0b3JlQ2xpZW50KToKKyAgICAgICAgKiBXZWJLaXRT
dXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5oOgorICAgICAgICAoQmFja2luZ1N0b3JlQ2xpZW50
KToKKyAgICAgICAgKiBXZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5jcHA6CisgICAgICAgIChC
bGFja0JlcnJ5OjpXZWJLaXQ6OklucHV0SGFuZGxlcjo6c2V0QmF0Y2hFZGl0aW5nQWN0aXZlKToK
KworMjAxMi0xMC0xNSAgQW50b25pbyBHb21lcyAgPGFnb21lc0ByaW0uY29tPgorCiAgICAgICAg
IFtCbGFja0JlcnJ5XSBDbGVhbiB1cCBCYWNraW5nU3RvcmVDbGllbnQgKHBhcnQgSSkKICAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk5MzI3CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9DaHJvbWVDbGll
bnRCbGFja0JlcnJ5LmNwcCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9y
dC9DaHJvbWVDbGllbnRCbGFja0JlcnJ5LmNwcAppbmRleCA1YzcyZTQxLi5iZTYwYWExIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvQ2hyb21lQ2xp
ZW50QmxhY2tCZXJyeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVT
dXBwb3J0L0Nocm9tZUNsaWVudEJsYWNrQmVycnkuY3BwCkBAIC01ODUsOSArNTg1LDkgQEAgdm9p
ZCBDaHJvbWVDbGllbnRCbGFja0JlcnJ5OjppbnZhbGlkYXRlQ29udGVudHNGb3JTbG93U2Nyb2xs
KGNvbnN0IEludFNpemUmIGRlbHQKICAgICBpZiAoc2Nyb2xsVmlldyAhPSBtX3dlYlBhZ2VQcml2
YXRlLT5tX21haW5GcmFtZS0+dmlldygpKQogICAgICAgICBpbnZhbGlkYXRlQ29udGVudHNBbmRS
b290Vmlldyh1cGRhdGVSZWN0LCB0cnVlIC8qaW1tZWRpYXRlKi8pOwogICAgIGVsc2UgewotICAg
ICAgICBCYWNraW5nU3RvcmVDbGllbnQqIGJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lID0gbV93
ZWJQYWdlUHJpdmF0ZS0+YmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUobV93ZWJQYWdlUHJpdmF0
ZS0+bV9tYWluRnJhbWUpOwotICAgICAgICBBU1NFUlQoYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJh
bWUpOwotICAgICAgICBiYWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZS0+Y2hlY2tPcmlnaW5PZkN1
cnJlbnRTY3JvbGxPcGVyYXRpb24oKTsKKyAgICAgICAgQmFja2luZ1N0b3JlQ2xpZW50KiBiYWNr
aW5nU3RvcmVDbGllbnQgPSBtX3dlYlBhZ2VQcml2YXRlLT5iYWNraW5nU3RvcmVDbGllbnQoKTsK
KyAgICAgICAgQVNTRVJUKGJhY2tpbmdTdG9yZUNsaWVudCk7CisgICAgICAgIGJhY2tpbmdTdG9y
ZUNsaWVudC0+Y2hlY2tPcmlnaW5PZkN1cnJlbnRTY3JvbGxPcGVyYXRpb24oKTsKIAogICAgICAg
ICBtX3dlYlBhZ2VQcml2YXRlLT5tX2JhY2tpbmdTdG9yZS0+ZC0+c2xvd1Njcm9sbChkZWx0YSwg
dXBkYXRlUmVjdCwgaW1tZWRpYXRlKTsKICAgICB9CkBAIC02MDEsOSArNjAxLDkgQEAgdm9pZCBD
aHJvbWVDbGllbnRCbGFja0JlcnJ5OjpzY3JvbGwoY29uc3QgSW50U2l6ZSYgZGVsdGEsIGNvbnN0
IEludFJlY3QmIHNjcm9sbFYKICAgICBpZiAoIW1fd2ViUGFnZVByaXZhdGUtPm1fbWFpbkZyYW1l
LT52aWV3KCkpCiAgICAgICAgIHJldHVybjsKIAotICAgIEJhY2tpbmdTdG9yZUNsaWVudCogYmFj
a2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUgPSBtX3dlYlBhZ2VQcml2YXRlLT5iYWNraW5nU3RvcmVD
bGllbnRGb3JGcmFtZShtX3dlYlBhZ2VQcml2YXRlLT5tX21haW5GcmFtZSk7Ci0gICAgQVNTRVJU
KGJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKTsKLSAgICBiYWNraW5nU3RvcmVDbGllbnRGb3JG
cmFtZS0+Y2hlY2tPcmlnaW5PZkN1cnJlbnRTY3JvbGxPcGVyYXRpb24oKTsKKyAgICBCYWNraW5n
U3RvcmVDbGllbnQqIGJhY2tpbmdTdG9yZUNsaWVudCA9IG1fd2ViUGFnZVByaXZhdGUtPmJhY2tp
bmdTdG9yZUNsaWVudCgpOworICAgIEFTU0VSVChiYWNraW5nU3RvcmVDbGllbnQpOworICAgIGJh
Y2tpbmdTdG9yZUNsaWVudC0+Y2hlY2tPcmlnaW5PZkN1cnJlbnRTY3JvbGxPcGVyYXRpb24oKTsK
IAogICAgIG1fd2ViUGFnZVByaXZhdGUtPm1fYmFja2luZ1N0b3JlLT5kLT5zY3JvbGwoZGVsdGEs
IHNjcm9sbFZpZXdSZWN0LCBjbGlwUmVjdCk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5LmNw
cCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNs
aWVudEJsYWNrQmVycnkuY3BwCmluZGV4IDA1MDQ1ZTkuLjg2MDNjYjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJs
YWNrQmVycnkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9y
dC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwCkBAIC00MzUsOSArNDM1LDggQEAgdm9p
ZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5l
d1BhZ2UoKQogICAgIC8vIGluIHRoZSBiYWNraW5nIHN0b3JlIGZyb20gYW5vdGhlciB0aHJlYWQg
KHNlZSBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0VmlzaWJsZUNvbnRlbnRzIG1ldGhvZCksCiAg
ICAgLy8gc28gd2Ugc3VzcGVuZCBhbmQgcmVzdW1lIHNjcmVlbiB1cGRhdGUgdG8gbWFrZSBzdXJl
IHdlIGRvIG5vdCBnZXQgYSBpbnZhbGlkIEZyYW1lVmlldwogICAgIC8vIHN0YXRlLgotICAgIEJh
Y2tpbmdTdG9yZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUgPSBtX3dlYlBhZ2VQ
cml2YXRlLT5iYWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZShtX2ZyYW1lKTsKLSAgICBpZiAoYmFj
a2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUpCi0gICAgICAgIGJhY2tpbmdTdG9yZUNsaWVudEZvckZy
YW1lLT5iYWNraW5nU3RvcmUoKS0+ZC0+c3VzcGVuZFNjcmVlbkFuZEJhY2tpbmdTdG9yZVVwZGF0
ZXMoKTsKKyAgICBpZiAoaXNNYWluRnJhbWUoKSAmJiBtX3dlYlBhZ2VQcml2YXRlLT5iYWNraW5n
U3RvcmVDbGllbnQoKSkKKyAgICAgICAgbV93ZWJQYWdlUHJpdmF0ZS0+YmFja2luZ1N0b3JlQ2xp
ZW50KCktPmJhY2tpbmdTdG9yZSgpLT5kLT5zdXNwZW5kU2NyZWVuQW5kQmFja2luZ1N0b3JlVXBk
YXRlcygpOwogCiAgICAgLy8gV2UgYXJlIG5hdmlnYXRpbmcgYXdheSBmcm9tIHRoaXMgZG9jdW1l
bnQsIHNvIGNsZWFuIHVwIGFueSBmb290cHJpbnQgd2UgbWlnaHQgaGF2ZS4KICAgICBpZiAobV9m
cmFtZS0+ZG9jdW1lbnQoKSkKQEAgLTQ1Niw4ICs0NTUsOSBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xp
ZW50QmxhY2tCZXJyeTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpCiAgICAgICAg
ICAgICAgICAgICAgICAgICBTY3JvbGxiYXJBbHdheXNPZmYsICAgICAgICAgICAgICAgICAgICAv
KiB2ZXIgbW9kZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSk7ICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgLyogbG9jayB0aGUgbW9kZSAqLwogCi0gICAgaWYgKGJhY2tp
bmdTdG9yZUNsaWVudEZvckZyYW1lKQotICAgICAgICBiYWNraW5nU3RvcmVDbGllbnRGb3JGcmFt
ZS0+YmFja2luZ1N0b3JlKCktPmQtPnJlc3VtZVNjcmVlbkFuZEJhY2tpbmdTdG9yZVVwZGF0ZXMo
QmFja2luZ1N0b3JlOjpOb25lKTsKKyAgICBpZiAoaXNNYWluRnJhbWUoKSAmJiBtX3dlYlBhZ2VQ
cml2YXRlLT5iYWNraW5nU3RvcmVDbGllbnQoKSkKKyAgICAgICAgbV93ZWJQYWdlUHJpdmF0ZS0+
YmFja2luZ1N0b3JlQ2xpZW50KCktPmJhY2tpbmdTdG9yZSgpLT5kLT5yZXN1bWVTY3JlZW5BbmRC
YWNraW5nU3RvcmVVcGRhdGVzKEJhY2tpbmdTdG9yZTo6Tm9uZSk7CisKICAgICBtX2ZyYW1lLT52
aWV3KCktPnVwZGF0ZUNhbkhhdmVTY3JvbGxiYXJzKCk7CiAKICAgICBpZiAoaXNNYWluRnJhbWUo
KSkgewpAQCAtNzg3LDggKzc4Nyw2IEBAIFBhc3NSZWZQdHI8RnJhbWU+IEZyYW1lTG9hZGVyQ2xp
ZW50QmxhY2tCZXJyeTo6Y3JlYXRlRnJhbWUoY29uc3QgS1VSTCYgdXJsLCBjb25zCiAgICAgaWYg
KCFjaGlsZEZyYW1lLT50cmVlKCktPnBhcmVudCgpKQogICAgICAgICByZXR1cm4gMDsKIAotICAg
IEJhY2tpbmdTdG9yZUNsaWVudDo6Y3JlYXRlKGNoaWxkRnJhbWUuZ2V0KCksIG1fZnJhbWUsIG1f
d2ViUGFnZVByaXZhdGUtPm1fd2ViUGFnZSk7Ci0KICAgICBtX2ZyYW1lLT5sb2FkZXIoKS0+bG9h
ZFVSTEludG9DaGlsZEZyYW1lKHVybCwgcmVmZXJyZXIsIGNoaWxkRnJhbWUuZ2V0KCkpOwogCiAg
ICAgaWYgKCFjaGlsZEZyYW1lLT50cmVlKCktPnBhcmVudCgpKQpAQCAtOTU2LDEyICs5NTQsNiBA
QCBGcmFtZSogRnJhbWVMb2FkZXJDbGllbnRCbGFja0JlcnJ5OjpkaXNwYXRjaENyZWF0ZVBhZ2Uo
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYgbgogCiB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50QmxhY2tC
ZXJyeTo6ZGV0YWNoZWRGcm9tUGFyZW50MigpCiB7Ci0gICAgQmFja2luZ1N0b3JlQ2xpZW50KiBi
YWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZSA9IG1fd2ViUGFnZVByaXZhdGUtPmJhY2tpbmdTdG9y
ZUNsaWVudEZvckZyYW1lKG1fZnJhbWUpOwotICAgIGlmIChiYWNraW5nU3RvcmVDbGllbnRGb3JG
cmFtZSkgewotICAgICAgICBkZWxldGUgYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWU7Ci0gICAg
ICAgIGJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lID0gMDsKLSAgICB9Ci0KICAgICBpZiAobV9m
cmFtZS0+ZG9jdW1lbnQoKSkKICAgICAgICAgbV93ZWJQYWdlUHJpdmF0ZS0+Y2xlYXJEb2N1bWVu
dERhdGEobV9mcmFtZS0+ZG9jdW1lbnQoKSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
YmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHAgYi9Tb3VyY2Uv
V2ViS2l0L2JsYWNrYmVycnkvV2ViS2l0U3VwcG9ydC9CYWNraW5nU3RvcmVDbGllbnQuY3BwCmlu
ZGV4IGFiNDQxMDguLjE0ZTlkNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJy
eS9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9yZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvQmFja2luZ1N0b3JlQ2xpZW50LmNwcApAQCAtNTEs
NzcgKzUxLDI4IEBAIHN0YXRpYyBpbmxpbmUgSW50U2l6ZSBwb2ludFRvU2l6ZShjb25zdCBJbnRQ
b2ludCYgcG9pbnQpCiAKIEJhY2tpbmdTdG9yZUNsaWVudCogQmFja2luZ1N0b3JlQ2xpZW50Ojpj
cmVhdGUoRnJhbWUqIGZyYW1lLCBGcmFtZSogcGFyZW50RnJhbWUsIFdlYlBhZ2UqIHBhcmVudFBh
Z2UpCiB7Ci0gICAgQVNTRVJUKHBhcmVudFBhZ2UpOwotICAgIEFTU0VSVChmcmFtZS0+dmlldygp
KTsKLQotICAgIC8vIEZJWE1FOiBXZSBkbyBub3Qgc3VwcG9ydCBpbm5lciBmcmFtZXMgZm9yIG5v
dy4KLSAgICBpZiAocGFyZW50RnJhbWUpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgQmFja2lu
Z1N0b3JlQ2xpZW50KiBwYXJlbnRCYWNraW5nU3RvcmVDbGllbnQKLSAgICAgICAgPSBwYXJlbnRG
cmFtZQotICAgICAgICA/IHBhcmVudFBhZ2UtPmQtPmJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1l
KHBhcmVudEZyYW1lKQotICAgICAgICA6IDA7Ci0KLSAgICAvLyBJZiB0aGlzIGZyYW1lIGhhcyBh
IHBhcmVudCB3aXRoIG5vIGJhY2tpbmdzdG9yZSB0aGVuIGp1c3Qgc3RvcCBzaW5jZQotICAgIC8v
IG91ciBmcmFtZSBoZWlyYXJjaHkgaXMgZG9uZS4KLSAgICBpZiAocGFyZW50RnJhbWUgJiYgIXBh
cmVudEJhY2tpbmdTdG9yZUNsaWVudCkKLSAgICAgICAgcmV0dXJuIDA7Ci0KLSAgICBCYWNraW5n
U3RvcmVDbGllbnQqIGl0ID0gbmV3IEJhY2tpbmdTdG9yZUNsaWVudChmcmFtZSwgcGFyZW50RnJh
bWUsIHBhcmVudFBhZ2UpOwotICAgIEFTU0VSVChpdCk7Ci0KLSAgICAvLyBGcmFtZSAtPiBCYWNr
aW5nU3RvcmVDbGllbnQgbWFwcGluZyBpcyBjb250cm9sbGVkIGJ5IHRoZSBQYWdlLgotICAgIHBh
cmVudFBhZ2UtPmQtPmFkZEJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKGZyYW1lLCBpdCk7Ci0K
LSAgICAvLyBBZGQgdGhlIGJhY2tpbmcgc3RvcmUgY2xpZW50IHRvIHRoZSBjaGlsZCBsaXN0IG9m
IGl0cyBwYXJlbnQuCi0gICAgaWYgKHBhcmVudEJhY2tpbmdTdG9yZUNsaWVudCkKLSAgICAgICAg
cGFyZW50QmFja2luZ1N0b3JlQ2xpZW50LT5hZGRDaGlsZChpdCk7Ci0KKyAgICBBU1NFUlQoIXBh
cmVudEZyYW1lKTsKKyAgICBCYWNraW5nU3RvcmVDbGllbnQqIGl0ID0gbmV3IEJhY2tpbmdTdG9y
ZUNsaWVudChmcmFtZSwgcGFyZW50UGFnZSk7CiAgICAgcmV0dXJuIGl0OwogfQogCi1CYWNraW5n
U3RvcmVDbGllbnQ6OkJhY2tpbmdTdG9yZUNsaWVudChGcmFtZSogZnJhbWUsIEZyYW1lKiBwYXJl
bnRGcmFtZSwgV2ViUGFnZSogcGFyZW50UGFnZSkKK0JhY2tpbmdTdG9yZUNsaWVudDo6QmFja2lu
Z1N0b3JlQ2xpZW50KEZyYW1lKiBmcmFtZSwgV2ViUGFnZSogcGFyZW50UGFnZSkKICAgICA6IG1f
ZnJhbWUoZnJhbWUpCiAgICAgLCBtX3dlYlBhZ2UocGFyZW50UGFnZSkKICAgICAsIG1fYmFja2lu
Z1N0b3JlKDApCi0gICAgLCBtX3BhcmVudCgwKQogICAgICwgbV9pc0NsaWVudEdlbmVyYXRlZFNj
cm9sbChmYWxzZSkKICAgICAsIG1faXNTY3JvbGxOb3RpZmljYXRpb25TdXBwcmVzc2VkKGZhbHNl
KQogewotICAgIFVOVVNFRF9QQVJBTShwYXJlbnRGcmFtZSk7CiAgICAgbV9iYWNraW5nU3RvcmUg
PSBuZXcgQmFja2luZ1N0b3JlKG1fd2ViUGFnZSwgdGhpcyk7CiB9CiAKIEJhY2tpbmdTdG9yZUNs
aWVudDo6fkJhY2tpbmdTdG9yZUNsaWVudCgpCiB7Ci0gICAgbV93ZWJQYWdlLT5kLT5yZW1vdmVC
YWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZShtX2ZyYW1lKTsKLQogICAgIGRlbGV0ZSBtX2JhY2tp
bmdTdG9yZTsKICAgICBtX2JhY2tpbmdTdG9yZSA9IDA7CiAgICAgbV9mcmFtZSA9IDA7CiB9CiAK
LXZvaWQgQmFja2luZ1N0b3JlQ2xpZW50OjphZGRDaGlsZChCYWNraW5nU3RvcmVDbGllbnQqIGNo
aWxkKQotewotICAgIEFTU0VSVChjaGlsZCk7Ci0gICAgY2hpbGQtPm1fcGFyZW50ID0gdGhpczsK
LX0KLQotV1RGOjpWZWN0b3IgPEJhY2tpbmdTdG9yZUNsaWVudCo+IEJhY2tpbmdTdG9yZUNsaWVu
dDo6Y2hpbGRyZW4oKSBjb25zdAotewotICAgIFdURjo6VmVjdG9yPEJhY2tpbmdTdG9yZUNsaWVu
dCo+IGNoaWxkcmVuOwotICAgIGZvciAoRnJhbWUqIGNoaWxkID0gbV9mcmFtZS0+dHJlZSgpLT5m
aXJzdENoaWxkKCk7IGNoaWxkOyBjaGlsZCA9IGNoaWxkLT50cmVlKCktPm5leHRTaWJsaW5nKCkp
IHsKLSAgICAgICAgQmxhY2tCZXJyeTo6V2ViS2l0OjpCYWNraW5nU3RvcmVDbGllbnQqIGNsaWVu
dCA9Ci0gICAgICAgICAgICBtX3dlYlBhZ2UtPmQtPmJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1l
KGNoaWxkKTsKLQotICAgICAgICBpZiAoY2xpZW50KQotICAgICAgICAgICAgY2hpbGRyZW4uYXBw
ZW5kKGNsaWVudCk7Ci0gICAgfQotCi0gICAgcmV0dXJuIGNoaWxkcmVuOwotfQotCiBJbnRSZWN0
IEJhY2tpbmdTdG9yZUNsaWVudDo6YWJzb2x1dGVSZWN0KCkgY29uc3QKIHsKICAgICBJbnRSZWN0
IHJlY3QgPSBJbnRSZWN0KEludFBvaW50Ojp6ZXJvKCksIHZpZXdwb3J0U2l6ZSgpKTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0JhY2tpbmdTdG9y
ZUNsaWVudC5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvQmFja2lu
Z1N0b3JlQ2xpZW50LmgKaW5kZXggNjlhZWU5YS4uMTg1MzM3MiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvQmFja2luZ1N0b3JlQ2xpZW50LmgKKysr
IGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvQmFja2luZ1N0b3JlQ2xp
ZW50LmgKQEAgLTQ1LDEwICs0NSw2IEBAIHB1YmxpYzoKICAgICBXZWJDb3JlOjpGcmFtZSogZnJh
bWUoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lOyB9CiAgICAgYm9vbCBpc01haW5GcmFtZSgpIGNv
bnN0IHsgcmV0dXJuIG1fZnJhbWUgPT0gbV93ZWJQYWdlLT5kLT5tX21haW5GcmFtZTsgfQogCi0g
ICAgdm9pZCBhZGRDaGlsZChCYWNraW5nU3RvcmVDbGllbnQqIGNoaWxkKTsKLSAgICBXVEY6OlZl
Y3RvciA8QmFja2luZ1N0b3JlQ2xpZW50Kj4gY2hpbGRyZW4oKSBjb25zdDsKLSAgICBCYWNraW5n
U3RvcmVDbGllbnQqIHBhcmVudCgpIGNvbnN0IHsgcmV0dXJuIG1fcGFyZW50OyB9Ci0KICAgICBX
ZWJDb3JlOjpJbnRQb2ludCBhYnNvbHV0ZUxvY2F0aW9uKCkgY29uc3Q7CiAgICAgV2ViQ29yZTo6
SW50UG9pbnQgdHJhbnNmb3JtZWRBYnNvbHV0ZUxvY2F0aW9uKCkgY29uc3Q7CiAgICAgV2ViQ29y
ZTo6SW50UmVjdCBhYnNvbHV0ZVJlY3QoKSBjb25zdDsKQEAgLTEwNCwxMiArMTAwLDExIEBAIHB1
YmxpYzoKICAgICB2b2lkIGNoZWNrT3JpZ2luT2ZDdXJyZW50U2Nyb2xsT3BlcmF0aW9uKCk7CiAK
IHByaXZhdGU6Ci0gICAgQmFja2luZ1N0b3JlQ2xpZW50KFdlYkNvcmU6OkZyYW1lKiwgV2ViQ29y
ZTo6RnJhbWUqIHBhcmVudEZyYW1lLCBXZWJQYWdlKiBwYXJlbnRQYWdlKTsKKyAgICBCYWNraW5n
U3RvcmVDbGllbnQoV2ViQ29yZTo6RnJhbWUqLCBXZWJQYWdlKiBwYXJlbnRQYWdlKTsKIAogICAg
IFdlYkNvcmU6OkZyYW1lKiBtX2ZyYW1lOwogICAgIFdlYlBhZ2UqIG1fd2ViUGFnZTsKICAgICBC
YWNraW5nU3RvcmUqIG1fYmFja2luZ1N0b3JlOwotICAgIEJhY2tpbmdTdG9yZUNsaWVudCogbV9w
YXJlbnQ7CiAgICAgYm9vbCBtX2lzQ2xpZW50R2VuZXJhdGVkU2Nyb2xsOwogICAgIGJvb2wgbV9p
c1Njcm9sbE5vdGlmaWNhdGlvblN1cHByZXNzZWQ7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9ibGFja2JlcnJ5L1dlYktpdFN1cHBvcnQvSW5wdXRIYW5kbGVyLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvYmxhY2tiZXJyeS9XZWJLaXRTdXBwb3J0L0lucHV0SGFuZGxlci5jcHAKaW5kZXggZjc5
MDY3Ny4uMTBkNGIxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYktp
dFN1cHBvcnQvSW5wdXRIYW5kbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkv
V2ViS2l0U3VwcG9ydC9JbnB1dEhhbmRsZXIuY3BwCkBAIC0xNzQ1LDE0ICsxNzQ1LDE0IEBAIGJv
b2wgSW5wdXRIYW5kbGVyOjpzZXRCYXRjaEVkaXRpbmdBY3RpdmUoYm9vbCBhY3RpdmUpCiAKICAg
ICAvLyBGSVhNRSBzd2l0Y2ggdGhpcyB0byBtX2N1cnJlbnRGb2N1c0VsZW1lbnQtPmRvY3VtZW50
KCktPmZyYW1lKCkgd2hlbiB3ZSBoYXZlIHNlcGFyYXRlCiAgICAgLy8gYmFja2luZ3N0b3JlIGZv
ciBlYWNoIGZyYW1lLgotICAgIEJhY2tpbmdTdG9yZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50
Rm9yRnJhbWUgPSBtX3dlYlBhZ2UtPmJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKG1fd2ViUGFn
ZS0+bWFpbkZyYW1lKCkpOwotICAgIEFTU0VSVChiYWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZSk7
CisgICAgQmFja2luZ1N0b3JlQ2xpZW50KiBiYWNraW5nU3RvcmVDbGllbnQgPSBtX3dlYlBhZ2Ut
PmJhY2tpbmdTdG9yZUNsaWVudCgpOworICAgIEFTU0VSVChiYWNraW5nU3RvcmVDbGllbnQpOwog
CiAgICAgLy8gRW5hYmxlIC8gRGlzYWJsZSB0aGUgYmFja2luZ3N0b3JlIHRvIHByZXZlbnQgdmlz
dWFsIHVwZGF0ZXMuCiAgICAgaWYgKCFhY3RpdmUpCi0gICAgICAgIGJhY2tpbmdTdG9yZUNsaWVu
dEZvckZyYW1lLT5iYWNraW5nU3RvcmUoKS0+cmVzdW1lU2NyZWVuQW5kQmFja2luZ1N0b3JlVXBk
YXRlcyhCYWNraW5nU3RvcmU6OlJlbmRlckFuZEJsaXQpOworICAgICAgICBiYWNraW5nU3RvcmVD
bGllbnQtPmJhY2tpbmdTdG9yZSgpLT5yZXN1bWVTY3JlZW5BbmRCYWNraW5nU3RvcmVVcGRhdGVz
KEJhY2tpbmdTdG9yZTo6UmVuZGVyQW5kQmxpdCk7CiAgICAgZWxzZQotICAgICAgICBiYWNraW5n
U3RvcmVDbGllbnRGb3JGcmFtZS0+YmFja2luZ1N0b3JlKCktPnN1c3BlbmRTY3JlZW5BbmRCYWNr
aW5nU3RvcmVVcGRhdGVzKCk7CisgICAgICAgIGJhY2tpbmdTdG9yZUNsaWVudC0+YmFja2luZ1N0
b3JlKCktPnN1c3BlbmRTY3JlZW5BbmRCYWNraW5nU3RvcmVVcGRhdGVzKCk7CiAKICAgICByZXR1
cm4gdHJ1ZTsKIH0KLS0gCjEuNy41LjQKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>