<?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>97718</bug_id>
          
          <creation_ts>2012-09-26 12:52:11 -0700</creation_ts>
          <short_desc>[BlackBerry] Remove blitContents() in favor of blitVisibleContents()</short_desc>
          <delta_ts>2012-09-26 14:11:06 -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="Jakob Petsovits">jpetsovits</reporter>
          <assigned_to name="Jakob Petsovits">jpetsovits</assigned_to>
          <cc>anilsson</cc>
    
    <cc>manyoso</cc>
    
    <cc>mifenton</cc>
    
    <cc>rwlbuis</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>728886</commentid>
    <comment_count>0</comment_count>
    <who name="Jakob Petsovits">jpetsovits</who>
    <bug_when>2012-09-26 12:52:11 -0700</bug_when>
    <thetext>After the last calling sites of blitContents() have been removed or reworked, the actual method itself can now retire. All blits now go through blitVisibleContents(). The knowledge that we always blit the full visible surface can facilitate further optimizations; we will get to that in time.

Patch below.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728897</commentid>
    <comment_count>1</comment_count>
      <attachid>165859</attachid>
    <who name="Jakob Petsovits">jpetsovits</who>
    <bug_when>2012-09-26 13:07:51 -0700</bug_when>
    <thetext>Created attachment 165859
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728901</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-26 13:10:49 -0700</bug_when>
    <thetext>Attachment 165859 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/blackberry/Api/BackingStore....&quot; exit_code: 1
Source/WebKit/blackberry/Api/BackingStore.cpp:1278:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728928</commentid>
    <comment_count>3</comment_count>
      <attachid>165866</attachid>
    <who name="Jakob Petsovits">jpetsovits</who>
    <bug_when>2012-09-26 13:33:53 -0700</bug_when>
    <thetext>Created attachment 165866
Patch

Try to satisfy the stylebot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728963</commentid>
    <comment_count>4</comment_count>
      <attachid>165866</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-26 14:11:03 -0700</bug_when>
    <thetext>Comment on attachment 165866
Patch

Clearing flags on attachment: 165866

Committed r129706: &lt;http://trac.webkit.org/changeset/129706&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>728964</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-26 14:11:06 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165859</attachid>
            <date>2012-09-26 13:07:51 -0700</date>
            <delta_ts>2012-09-26 13:33:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97718-20120926160547.patch</filename>
            <type>text/plain</type>
            <size>12983</size>
            <attacher name="Jakob Petsovits">jpetsovits</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Js
YWNrYmVycnkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwpp
bmRleCAwMDgzMDUyNTRiYmY5YzNkNzQ4MDA5ZDZlYjBiMjE2MGIyNmE0NTAwLi4xMzVmNDIwZjRh
ZDg5N2U1Yzk4ZDNmZjUxOTFjMDVhNjhlYzBkN2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMi0wOS0yNiAgSmFrb2IgUGV0c292aXRzICA8anBl
dHNvdml0c0ByaW0uY29tPgorCisgICAgICAgIFtCbGFja0JlcnJ5XSBSZW1vdmUgYmxpdENvbnRl
bnRzKCkgaW4gZmF2b3Igb2YgYmxpdFZpc2libGVDb250ZW50cygpLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3MTgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZnRlciB0aGUgbGFzdCBjYWxsaW5nIHNp
dGVzIG9mIGJsaXRDb250ZW50cygpIGhhdmUKKyAgICAgICAgYmVlbiByZW1vdmVkIG9yIHJld29y
a2VkLCB0aGUgYWN0dWFsIG1ldGhvZCBpdHNlbGYKKyAgICAgICAgY2FuIG5vdyByZXRpcmUuIEFs
bCBibGl0cyBub3cgZ28gdGhyb3VnaAorICAgICAgICBibGl0VmlzaWJsZUNvbnRlbnRzKCkuIFRo
ZSBrbm93bGVkZ2UgdGhhdCB3ZSBhbHdheXMKKyAgICAgICAgYmxpdCB0aGUgZnVsbCB2aXNpYmxl
IHN1cmZhY2UgY2FuIGZhY2lsaXRhdGUgZnVydGhlcgorICAgICAgICBvcHRpbWl6YXRpb25zOyB3
ZSB3aWxsIGdldCB0byB0aGF0IGluIHRpbWUuCisKKyAgICAgICAgKiBBcGkvQmFja2luZ1N0b3Jl
LmNwcDoKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlUHJpdmF0ZTo6
c3VzcGVuZFNjcmVlbkFuZEJhY2tpbmdTdG9yZVVwZGF0ZXMpOgorICAgICAgICAoQmxhY2tCZXJy
eTo6V2ViS2l0OjpCYWNraW5nU3RvcmVQcml2YXRlOjpyZXN1bWVTY3JlZW5BbmRCYWNraW5nU3Rv
cmVVcGRhdGVzKToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlUHJp
dmF0ZTo6YmxpdFZpc2libGVDb250ZW50cyk6CisgICAgICAgICogQXBpL0JhY2tpbmdTdG9yZS5o
OgorICAgICAgICAqIEFwaS9CYWNraW5nU3RvcmVfcC5oOgorICAgICAgICAoQmFja2luZ1N0b3Jl
UHJpdmF0ZSk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFj
a0JlcnJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJy
eTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6CisKIDIwMTItMDktMjUgIEdlbmV2
aWV2ZSBNYWsgIDxnbWFrQHJpbS5jb20+CiAKICAgICAgICAgRmF0IEZpbmdlcnMgZG9lc24ndCB3
b3JrIG9uIG5vbi1zY3JvbGxhYmxlIHBhZ2VzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L0FwaS9CYWNraW5nU3RvcmUuY3BwCmluZGV4IDhiNzA4NDEyZjAxNmQ5Njc1NmVlZDdlMzM3OGFm
ZmI1NDUzYjRiYzMuLmU2OTgxZjUzMzI2YzJkMzJmZWFhNzAzZGQ3MGJjYzdmNmZhZWQzYTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZS5jcHAKQEAgLTI4
NCw4ICsyODQsOCBAQCB2b2lkIEJhY2tpbmdTdG9yZVByaXZhdGU6OnN1c3BlbmRTY3JlZW5BbmRC
YWNraW5nU3RvcmVVcGRhdGVzKCkKICAgICArK21fc3VzcGVuZEJhY2tpbmdTdG9yZVVwZGF0ZXM7
CiAKICAgICAvLyBNYWtlIHN1cmUgdGhlIHVzZXIgaW50ZXJmYWNlIHRocmVhZCBnZXRzIHRoZSBt
ZXNzYWdlIGJlZm9yZSB3ZSBwcm9jZWVkCi0gICAgLy8gYmVjYXVzZSBibGl0Q29udGVudHMgY2Fu
IGJlIGNhbGxlZCBmcm9tIHRoaXMgdGhyZWFkIGFuZCBpdCBtdXN0IGhvbm9yCi0gICAgLy8gdGhp
cyBmbGFnLgorICAgIC8vIGJlY2F1c2UgYmxpdFZpc2libGVDb250ZW50cygpIGNhbiBiZSBjYWxs
ZWQgZnJvbSB0aGUgdXNlciBpbnRlcmZhY2UKKyAgICAvLyB0aHJlYWQgYW5kIGl0IG11c3QgaG9u
b3IgdGhpcyBmbGFnLgogICAgICsrbV9zdXNwZW5kU2NyZWVuVXBkYXRlczsKIAogICAgIEJsYWNr
QmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJmYWNlVGhyZWFkTWVzc2FnZUNsaWVudCgpLT5zeW5j
VG9DdXJyZW50TWVzc2FnZSgpOwpAQCAtMzQ3LDggKzM0Nyw4IEBAIHZvaWQgQmFja2luZ1N0b3Jl
UHJpdmF0ZTo6cmVzdW1lU2NyZWVuQW5kQmFja2luZ1N0b3JlVXBkYXRlcyhCYWNraW5nU3RvcmU6
OlJlc3VtCiAgICAgICAgIHJlbmRlclZpc2libGVDb250ZW50cygpOwogCiAgICAgLy8gTWFrZSBz
dXJlIHRoZSB1c2VyIGludGVyZmFjZSB0aHJlYWQgZ2V0cyB0aGUgbWVzc2FnZSBiZWZvcmUgd2Ug
cHJvY2VlZAotICAgIC8vIGJlY2F1c2UgYmxpdENvbnRlbnRzIGNhbiBiZSBjYWxsZWQgZnJvbSB0
aGUgdXNlciBpbnRlcmZhY2UgdGhyZWFkIGFuZAotICAgIC8vIGl0IG11c3QgaG9ub3IgdGhpcyBm
bGFnLgorICAgIC8vIGJlY2F1c2UgYmxpdFZpc2libGVDb250ZW50cygpIGNhbiBiZSBjYWxsZWQg
ZnJvbSB0aGUgdXNlciBpbnRlcmZhY2UKKyAgICAvLyB0aHJlYWQgYW5kIGl0IG11c3QgaG9ub3Ig
dGhpcyBmbGFnLgogICAgIC0tbV9zdXNwZW5kU2NyZWVuVXBkYXRlczsKICAgICBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+c3luY1RvQ3Vy
cmVudE1lc3NhZ2UoKTsKIApAQCAtMTE0MiwzNSArMTE0Miw2IEBAIGJvb2wgQmFja2luZ1N0b3Jl
UHJpdmF0ZTo6cmVuZGVyQmFja2luZ1N0b3JlKCkKICAgICByZXR1cm4gcmVuZGVyKGZyb250U3Rh
dGUoKS0+YmFja2luZ1N0b3JlUmVjdCgpKTsKIH0KIAotdm9pZCBCYWNraW5nU3RvcmVQcml2YXRl
OjpibGl0VmlzaWJsZUNvbnRlbnRzKGJvb2wgZm9yY2UpCi17Ci0gICAgLy8gQmxpdHRpbmcgbXVz
dCBuZXZlciBoYXBwZW4gZm9yIGRpcmVjdCByZW5kZXJpbmcgY2FzZS4KLSAgICBBU1NFUlQoIXNo
b3VsZERpcmVjdFJlbmRlcmluZ1RvV2luZG93KCkpOwotICAgIGlmIChzaG91bGREaXJlY3RSZW5k
ZXJpbmdUb1dpbmRvdygpKSB7Ci0gICAgICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpsb2dBbHdh
eXMoQmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsQ3JpdGljYWwsCi0gICAgICAgICAgICAi
QmFja2luZ1N0b3JlOjpibGl0VmlzaWJsZUNvbnRlbnRzIG9wZXJhdGlvbiBub3Qgc3VwcG9ydGVk
IGluIGRpcmVjdCByZW5kZXJpbmcgbW9kZSIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0g
ICAgaWYgKG1fc3VzcGVuZFNjcmVlblVwZGF0ZXMpIHsKLSAgICAgICAgLy8gQXZvaWQgY2xpZW50
IGdvaW5nIGludG8gYnVzeSBsb29wIHdoaWxlIHVwZGF0ZXMgc3VzcGVuZGVkLgotICAgICAgICBp
ZiAoZm9yY2UpCi0gICAgICAgICAgICBtX2hhc0JsaXRKb2JzID0gZmFsc2U7Ci0gICAgICAgIHJl
dHVybjsKLSAgICB9Ci0KLSAgICBpZiAoIUJsYWNrQmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJm
YWNlVGhyZWFkTWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSkgewotICAgICAgICBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+
ZGlzcGF0Y2hNZXNzYWdlKAotICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0
ZU1ldGhvZENhbGxNZXNzYWdlKAotICAgICAgICAgICAgICAgICZCYWNraW5nU3RvcmVQcml2YXRl
OjpibGl0VmlzaWJsZUNvbnRlbnRzLCB0aGlzLCBmb3JjZSkpOwotICAgICAgICByZXR1cm47Ci0g
ICAgfQotCi0gICAgYmxpdENvbnRlbnRzKG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZh
Y2VCbGl0dGVkRGVzdGluYXRpb25SZWN0KCksCi0gICAgICAgICAgICAgICAgIG1fd2ViUGFnZS0+
Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VCbGl0dGVkVmlzaWJsZUNvbnRlbnRzUmVjdCgpLAotICAg
ICAgICAgICAgICAgICBmb3JjZSk7Ci19Ci0KIHZvaWQgQmFja2luZ1N0b3JlUHJpdmF0ZTo6Y29w
eVByZXZpb3VzQ29udGVudHNUb0JhY2tTdXJmYWNlT2ZXaW5kb3coKQogewogICAgIFBsYXRmb3Jt
OjpJbnRSZWN0UmVnaW9uIHByZXZpb3VzQ29udGVudHNSZWdpb24KQEAgLTEyNDYsMTUgKzEyMTcs
MTYgQEAgdm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpwYWludERlZmF1bHRCYWNrZ3JvdW5kKGNv
bnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBjb250ZW4KICAgICB9CiB9CiAKLXZvaWQgQmFja2luZ1N0
b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBkc3RSZWN0
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUGxhdGZvcm06
OkludFJlY3QmIHNyY1JlY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGZvcmNlKQordm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0VmlzaWJsZUNvbnRl
bnRzKGJvb2wgZm9yY2UpCiB7CiAgICAgLy8gQmxpdHRpbmcgbXVzdCBuZXZlciBoYXBwZW4gZm9y
IGRpcmVjdCByZW5kZXJpbmcgY2FzZS4KICAgICAvLyBVc2UgaW52YWxpZGF0ZVdpbmRvdygpIGlu
c3RlYWQuCiAgICAgQVNTRVJUKCFzaG91bGREaXJlY3RSZW5kZXJpbmdUb1dpbmRvdygpKTsKLSAg
ICBpZiAoc2hvdWxkRGlyZWN0UmVuZGVyaW5nVG9XaW5kb3coKSkKKyAgICBpZiAoc2hvdWxkRGly
ZWN0UmVuZGVyaW5nVG9XaW5kb3coKSkgeworICAgICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
bG9nQWx3YXlzKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2FsLAorICAgICAg
ICAgICAgIkJhY2tpbmdTdG9yZTo6YmxpdFZpc2libGVDb250ZW50cyBvcGVyYXRpb24gbm90IHN1
cHBvcnRlZCBpbiBkaXJlY3QgcmVuZGVyaW5nIG1vZGUiKTsKICAgICAgICAgcmV0dXJuOworICAg
IH0KIAogICAgIGlmICghbV93ZWJQYWdlLT5pc1Zpc2libGUoKSB8fCBtX3N1c3BlbmRTY3JlZW5V
cGRhdGVzKSB7CiAgICAgICAgIC8vIEF2b2lkIGNsaWVudCBnb2luZyBpbnRvIGJ1c3kgbG9vcCB3
aGlsZSBibGl0IGlzIGltcG9zc2libGUuCkBAIC0xMjY2LDcgKzEyMzgsNyBAQCB2b2lkIEJhY2tp
bmdTdG9yZVByaXZhdGU6OmJsaXRDb250ZW50cyhjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYgZHN0
UmVjdCwKICAgICBpZiAoIUJsYWNrQmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJmYWNlVGhyZWFk
TWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSkgewogICAgICAgICBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+ZGlzcGF0Y2hN
ZXNzYWdlKAogICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0ZU1ldGhvZENh
bGxNZXNzYWdlKAotICAgICAgICAgICAgICAgICZCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0Q29u
dGVudHMsIHRoaXMsIGRzdFJlY3QsIHNyY1JlY3QsIGZvcmNlKSk7CisgICAgICAgICAgICAgICAg
JkJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRWaXNpYmxlQ29udGVudHMsIHRoaXMsIGZvcmNlKSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTEyODcsNiArMTI1OSw4IEBAIHZvaWQgQmFj
a2luZ1N0b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBk
c3RSZWN0LAogCiAgICAgbV9oYXNCbGl0Sm9icyA9IGZhbHNlOwogCisgICAgY29uc3QgUGxhdGZv
cm06OkludFJlY3QgZHN0UmVjdCA9IG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VC
bGl0dGVkRGVzdGluYXRpb25SZWN0KCk7CisgICAgY29uc3QgUGxhdGZvcm06OkludFJlY3Qgc3Jj
UmVjdCA9IG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VCbGl0dGVkVmlzaWJsZUNv
bnRlbnRzUmVjdCgpOwogICAgIGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0IGNvbnRlbnRzUmVjdCA9
IFBsYXRmb3JtOjpJbnRSZWN0KFBsYXRmb3JtOjpJbnRQb2ludCgwLCAwKSwgbV9jbGllbnQtPnRy
YW5zZm9ybWVkQ29udGVudHNTaXplKCkpOwogCiAjaWYgREVCVUdfVklTVUFMSVpFCkBAIC0xMjk0
LDkgKzEyNjgsNyBAQCB2b2lkIEJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRDb250ZW50cyhjb25z
dCBQbGF0Zm9ybTo6SW50UmVjdCYgZHN0UmVjdCwKICAgICAvLyBhbmQgdGhlIHVpIHRocmVhZCB2
aWV3cG9ydCByZWN0IGluc3RlYWQgb2YgdGhlIG5vcm1hbCBzb3VyY2UgcmVjdCBzbyB3ZQogICAg
IC8vIGNhbiB2aXN1YWxpemUgdGhlIGVudGlyZSBiYWNraW5nc3RvcmUgYW5kIHdoYXQgaXQgaXMg
ZG9pbmcgd2hlbiB3ZQogICAgIC8vIHNjcm9sbCBhbmQgem9vbSEKLSAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgbm90IGV4cGxpY2l0ZWx5IGRlcGVuZCBvbiBXZWJDb3JlOjouCi0gICAgV2ViQ29y
ZTo6SW50UmVjdCBkZWJ1Z1JlY3QgPSBmcm9udFN0YXRlKCktPmJhY2tpbmdTdG9yZVJlY3QoKTsK
LSAgICBkZWJ1Z1JlY3QudW5pdGUobV93ZWJQYWdlLT5jbGllbnQoKS0+dXNlckludGVyZmFjZUJs
aXR0ZWRWaXNpYmxlQ29udGVudHNSZWN0KCkpOworICAgIFBsYXRmb3JtOjpJbnRSZWN0IGRlYnVn
UmVjdCA9IHVuaW9uT2ZSZWN0cyhzcmNSZWN0LCBmcm9udFN0YXRlKCktPmJhY2tpbmdTdG9yZVJl
Y3QoKSk7CiAgICAgaWYgKGRlYnVnUmVjdC53aWR0aCgpIDwgZGVidWdSZWN0LmhlaWdodCgpKQog
ICAgICAgICBkZWJ1Z1JlY3Quc2V0V2lkdGgoY2VpbChkb3VibGUoc3JjUmVjdC53aWR0aCgpKSAq
IChkb3VibGUoZGVidWdSZWN0LmhlaWdodCgpKSAvIHNyY1JlY3QuaGVpZ2h0KCkpKSk7CiAgICAg
aWYgKGRlYnVnUmVjdC5oZWlnaHQoKSA8IGRlYnVnUmVjdC53aWR0aCgpKQpAQCAtMTMxMyw3ICsx
Mjg1LDcgQEAgdm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0Q29udGVudHMoY29uc3QgUGxh
dGZvcm06OkludFJlY3QmIGRzdFJlY3QsCiAKICNpZiBERUJVR19CQUNLSU5HU1RPUkUKICAgICBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENy
aXRpY2FsLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIkJhY2tpbmdTdG9yZVByaXZhdGU6
OmJsaXRDb250ZW50cyBkc3RSZWN0PSglZCwlZCAlZHglZCkgc3JjUmVjdD0oJWQsJWQgJWR4JWQp
IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICJCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0
VmlzaWJsZUNvbnRlbnRzIGRzdFJlY3Q9KCVkLCVkICVkeCVkKSBzcmNSZWN0PSglZCwlZCAlZHgl
ZCkiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZHN0UmVjdC54KCksIGRzdFJlY3QueSgp
LCBkc3RSZWN0LndpZHRoKCksIGRzdFJlY3QuaGVpZ2h0KCksCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBzcmNSZWN0LngoKSwgc3JjUmVjdC55KCksIHNyY1JlY3Qud2lkdGgoKSwgc3JjUmVj
dC5oZWlnaHQoKSk7CiAjZW5kaWYKQEAgLTE1MTEsNyArMTQ4Myw3IEBAIHZvaWQgQmFja2luZ1N0
b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBkc3RSZWN0
LAogICAgICAgICBTdXJmYWNlUG9vbDo6Z2xvYmFsU3VyZmFjZVBvb2woKS0+Y3JlYXRlUGxhdGZv
cm1HcmFwaGljc0NvbnRleHQoYnVmZmVyRHJhd2FibGUpOwogICAgIEdyYXBoaWNzQ29udGV4dCBn
cmFwaGljc0NvbnRleHQoYnVmZmVyUGxhdGZvcm1HcmFwaGljc0NvbnRleHQpOwogICAgIEZsb2F0
UmVjdCB3a1ZpZXdwb3J0ID0gRmxvYXRSZWN0KHZpc2libGVDb250ZW50c1JlY3QoKSk7Ci0gICAg
RmxvYXRSZWN0IHVpVmlld3BvcnQgPSBGbG9hdFJlY3QobV93ZWJQYWdlLT5jbGllbnQoKS0+dXNl
ckludGVyZmFjZUJsaXR0ZWRWaXNpYmxlQ29udGVudHNSZWN0KCkpOworICAgIEZsb2F0UmVjdCB1
aVZpZXdwb3J0ID0gRmxvYXRSZWN0KHNyY1JlY3QpOwogICAgIHdrVmlld3BvcnQubW92ZSgtY29u
dGVudHMueCgpLCAtY29udGVudHMueSgpKTsKICAgICB1aVZpZXdwb3J0Lm1vdmUoLWNvbnRlbnRz
LngoKSwgLWNvbnRlbnRzLnkoKSk7CiAKQEAgLTI2NDEsMTggKzI2MTMsNiBAQCB2b2lkIEJhY2tp
bmdTdG9yZTo6YmxpdFZpc2libGVDb250ZW50cygpCiAgICAgZC0+YmxpdFZpc2libGVDb250ZW50
cyhmYWxzZSAvKmZvcmNlKi8pOwogfQogCi12b2lkIEJhY2tpbmdTdG9yZTo6YmxpdENvbnRlbnRz
KGNvbnN0IEJsYWNrQmVycnk6OlBsYXRmb3JtOjpJbnRSZWN0JiBkc3RSZWN0LCBjb25zdCBCbGFj
a0JlcnJ5OjpQbGF0Zm9ybTo6SW50UmVjdCYgY29udGVudHMpCi17Ci0gICAgLy8gQmxpdHRpbmcg
ZHVyaW5nIGRpcmVjdCByZW5kZXJpbmcgaXMgbm90IHN1cHBvcnRlZC4KLSAgICBpZiAoaXNEaXJl
Y3RSZW5kZXJpbmdUb1dpbmRvdygpKSB7Ci0gICAgICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjps
b2coQmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsQ3JpdGljYWwsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIkJhY2tpbmdTdG9yZTo6YmxpdENvbnRlbnRzIG9wZXJhdGlvbiBu
b3Qgc3VwcG9ydGVkIGluIGRpcmVjdCByZW5kZXJpbmcgbW9kZSIpOwotICAgICAgICByZXR1cm47
Ci0gICAgfQotCi0gICAgZC0+YmxpdENvbnRlbnRzKGRzdFJlY3QsIGNvbnRlbnRzKTsKLX0KLQog
dm9pZCBCYWNraW5nU3RvcmU6OnJlcGFpbnQoaW50IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBo
ZWlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib29sIGNvbnRlbnRDaGFuZ2VkLCBi
b29sIGltbWVkaWF0ZSkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9B
cGkvQmFja2luZ1N0b3JlLmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdT
dG9yZS5oCmluZGV4IGMzMTg1ZGM0NDYwNjJjMzlkY2FmNTQ1ZGM1N2Q2NjUyMTFhM2Y4Y2UuLjI1
MDFjOThkOTE4ZjkwMDU4MTJmNTZkZWVjZDNmMjI3NThiMGFjNzAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktp
dC9ibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuaApAQCAtNjAsNyArNjAsNiBAQCBwdWJsaWM6
CiAgICAgdm9pZCBzZXRTY3JvbGxpbmdPclpvb21pbmcoYm9vbCk7CiAKICAgICB2b2lkIGJsaXRW
aXNpYmxlQ29udGVudHMoKTsKLSAgICB2b2lkIGJsaXRDb250ZW50cyhjb25zdCBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6SW50UmVjdCYgZHN0UmVjdCwgY29uc3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06
OkludFJlY3QmIGNvbnRlbnRzKTsKICAgICB2b2lkIHJlcGFpbnQoaW50IHgsIGludCB5LCBpbnQg
d2lkdGgsIGludCBoZWlnaHQsIGJvb2wgY29udGVudENoYW5nZWQsIGJvb2wgaW1tZWRpYXRlKTsK
IAogICAgIC8vIEluIHRoZSBkZWZlcnMgYmxpdCBtb2RlLCBhbnkgYmxpdCByZXF1ZXN0cyB3aWxs
IGp1c3QgcmV0dXJuIGVhcmx5LCBhbmQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvYmxhY2ti
ZXJyeS9BcGkvQmFja2luZ1N0b3JlX3AuaCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkv
QmFja2luZ1N0b3JlX3AuaAppbmRleCBkZGY4YTIyNWJmNTM2ZjgyOTRmYmNkMzQ3NTg3NjY3NWM2
OGE3NzQ3Li5iNmNlNDRmZjQ1NDZkZTY2MTA0YzlmZTMzZmI5ODYxMjYyNDc2YTRjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZV9wLmgKKysrIGIv
U291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmVfcC5oCkBAIC0xMTYsMTAg
KzExNiwxMCBAQCBwdWJsaWM6CiAKICAgICBib29sIGlzU3VzcGVuZGVkKCkgY29uc3QgeyByZXR1
cm4gbV9zdXNwZW5kQmFja2luZ1N0b3JlVXBkYXRlczsgfQogCi0gICAgLy8gU3VzcGVuZHMgYWxs
IHNjcmVlbiB1cGRhdGVzIHNvIHRoYXQgJ2JsaXRDb250ZW50cycgaXMgZGlzYWJsZWQuCisgICAg
Ly8gU3VzcGVuZHMgYWxsIHNjcmVlbiB1cGRhdGVzIHNvIHRoYXQgJ2JsaXRWaXNpYmxlQ29udGVu
dHMnIGlzIGRpc2FibGVkLgogICAgIHZvaWQgc3VzcGVuZFNjcmVlbkFuZEJhY2tpbmdTdG9yZVVw
ZGF0ZXMoKTsKIAotICAgIC8vIFJlc3VtZXMgYWxsIHNjcmVlbiB1cGRhdGVzIHNvIHRoYXQgJ2Js
aXRDb250ZW50cycgaXMgZW5hYmxlZC4KKyAgICAvLyBSZXN1bWVzIGFsbCBzY3JlZW4gdXBkYXRl
cyBzbyB0aGF0ICdibGl0VmlzaWJsZUNvbnRlbnRzJyBpcyBlbmFibGVkLgogICAgIHZvaWQgcmVz
dW1lU2NyZWVuQW5kQmFja2luZ1N0b3JlVXBkYXRlcyhCYWNraW5nU3RvcmU6OlJlc3VtZVVwZGF0
ZU9wZXJhdGlvbik7CiAKICAgICAvLyBUaGUgZnVuY3Rpb25zIHJlcGFpbnQoKSwgc2xvd1Njcm9s
bCgpLCBzY3JvbGwoKSwgc2Nyb2xsaW5nU3RhcnRlZEhlbHBlcigpIGFyZQpAQCAtMTk0LDE1ICsx
OTQsMTUgQEAgcHVibGljOgogICAgIHZvaWQgY29weVByZXZpb3VzQ29udGVudHNUb0JhY2tTdXJm
YWNlT2ZXaW5kb3coKTsKICAgICB2b2lkIGNvcHlQcmV2aW91c0NvbnRlbnRzVG9CYWNrU3VyZmFj
ZU9mVGlsZShjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYsIEJhY2tpbmdTdG9yZVRpbGUqKTsKICAg
ICB2b2lkIHBhaW50RGVmYXVsdEJhY2tncm91bmQoY29uc3QgUGxhdGZvcm06OkludFJlY3QmIGNv
bnRlbnRzLCBjb25zdCBXZWJDb3JlOjpUcmFuc2Zvcm1hdGlvbk1hdHJpeCYsIGJvb2wgZmx1c2gp
OwotICAgIHZvaWQgYmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBkc3RSZWN0
LCBjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYgY29udGVudHMsIGJvb2wgZm9yY2UgPSBmYWxzZSk7
CiAgICAgdm9pZCBibGl0T25JZGxlKCk7CiAKICAgICB0eXBlZGVmIHN0ZDo6cGFpcjxUaWxlSW5k
ZXgsIFBsYXRmb3JtOjpJbnRSZWN0PiBUaWxlUmVjdDsKICAgICBQbGF0Zm9ybTo6SW50UmVjdCBi
bGl0VGlsZVJlY3QoVGlsZUJ1ZmZlciosIGNvbnN0IFRpbGVSZWN0JiwgY29uc3QgUGxhdGZvcm06
OkludFBvaW50JiwgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmLCBCYWNraW5n
U3RvcmVHZW9tZXRyeSopOwogCiAjaWYgVVNFKEFDQ0VMRVJBVEVEX0NPTVBPU0lUSU5HKQotICAg
IC8vIFVzZSBpbnN0ZWFkIG9mIGJsaXRDb250ZW50cyBpZiB5b3UgbmVlZCBtb3JlIGNvbnRyb2wg
b3ZlciBPcGVuR0wgc3RhdGUuCi0gICAgLy8gTm90ZSB0aGF0IGNvbnRlbnRzIGlzIGV4cHJlc3Nl
ZCBpbiB1bnRyYW5zZm9ybWVkIGNvbnRlbnQgY29vcmRpbmF0ZXMuCisgICAgLy8gVXNlIGluc3Rl
YWQgb2YgYmxpdFZpc2libGVDb250ZW50cygpIGlmIHlvdSBuZWVkIG1vcmUgY29udHJvbCBvdmVy
CisgICAgLy8gT3BlbkdMIHN0YXRlLiBOb3RlIHRoYXQgY29udGVudHMgaXMgZXhwcmVzc2VkIGlu
IHVudHJhbnNmb3JtZWQKKyAgICAvLyBjb250ZW50IGNvb3JkaW5hdGVzLgogICAgIC8vIFByZWNv
bmRpdGlvbnM6IFlvdSBoYXZlIHRvIGNhbGwgcHJlcGFyZUZyYW1lIGFuZCBzZXRWaWV3cG9ydCBv
biB0aGUgTGF5ZXJSZW5kZXJlciBiZWZvcmUKICAgICAvLyAgICAgICAgICAgICAgICBjYWxsaW5n
IHRoaXMuCiAgICAgdm9pZCBjb21wb3NpdGVDb250ZW50cyhXZWJDb3JlOjpMYXllclJlbmRlcmVy
KiwgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmLCBjb25zdCBXZWJDb3JlOjpG
bG9hdFJlY3QmIGNvbnRlbnRzLCBib29sIGNvbnRlbnRzT3BhcXVlKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJs
YWNrQmVycnkuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0Zy
YW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHAKaW5kZXggOTA2YTk5ODUyNGM4ZGM0YTM5MjU2
MGUzNzhiMTJmMmFhZWU0ZDQ3OC4uZWE3YWFjYzljOTE4OTkzZWJmNzM3OWY1MGJjYjE0MDcyOWE3
NmUxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L1dlYkNvcmVTdXBwb3J0
L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9ibGFj
a2JlcnJ5L1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeS5jcHAKQEAg
LTQyOCw3ICs0MjgsNyBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJyeTo6dHJhbnNp
dGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSgpCiAKICAgICAvLyBJbiBGcmFtZTo6Y3JlYXRlVmll
dywgRnJhbWUncyBGcmFtZVZpZXcgb2JqZWN0IGlzIHNldCB0byAwIGFuZCByZWNyZWF0ZWQuCiAg
ICAgLy8gVGhpcyBvcGVyYXRpb24gaXMgbm90IGF0b21pYywgYW5kIGFuIGF0dGVtcHQgdG8gYmxp
dCBjb250ZW50cyBtaWdodCBoYXBwZW4KLSAgICAvLyBpbiB0aGUgYmFja2luZyBzdG9yZSBmcm9t
IGFub3RoZXIgdGhyZWFkIChzZWUgQmFja2luZ1N0b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzIG1l
dGhvZCksCisgICAgLy8gaW4gdGhlIGJhY2tpbmcgc3RvcmUgZnJvbSBhbm90aGVyIHRocmVhZCAo
c2VlIEJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRWaXNpYmxlQ29udGVudHMgbWV0aG9kKSwKICAg
ICAvLyBzbyB3ZSBzdXNwZW5kIGFuZCByZXN1bWUgc2NyZWVuIHVwZGF0ZSB0byBtYWtlIHN1cmUg
d2UgZG8gbm90IGdldCBhIGludmFsaWQgRnJhbWVWaWV3CiAgICAgLy8gc3RhdGUuCiAgICAgQmFj
a2luZ1N0b3JlQ2xpZW50KiBiYWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZSA9IG1fd2ViUGFnZVBy
aXZhdGUtPmJhY2tpbmdTdG9yZUNsaWVudEZvckZyYW1lKG1fZnJhbWUpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>165866</attachid>
            <date>2012-09-26 13:33:53 -0700</date>
            <delta_ts>2012-09-26 14:11:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97718-20120926163150.patch</filename>
            <type>text/plain</type>
            <size>13161</size>
            <attacher name="Jakob Petsovits">jpetsovits</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI5NjYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Js
YWNrYmVycnkvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0NoYW5nZUxvZwpp
bmRleCAwMDgzMDUyNTRiYmY5YzNkNzQ4MDA5ZDZlYjBiMjE2MGIyNmE0NTAwLi4xMzVmNDIwZjRh
ZDg5N2U1Yzk4ZDNmZjUxOTFjMDVhNjhlYzBkN2MxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAxMi0wOS0yNiAgSmFrb2IgUGV0c292aXRzICA8anBl
dHNvdml0c0ByaW0uY29tPgorCisgICAgICAgIFtCbGFja0JlcnJ5XSBSZW1vdmUgYmxpdENvbnRl
bnRzKCkgaW4gZmF2b3Igb2YgYmxpdFZpc2libGVDb250ZW50cygpLgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTc3MTgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZnRlciB0aGUgbGFzdCBjYWxsaW5nIHNp
dGVzIG9mIGJsaXRDb250ZW50cygpIGhhdmUKKyAgICAgICAgYmVlbiByZW1vdmVkIG9yIHJld29y
a2VkLCB0aGUgYWN0dWFsIG1ldGhvZCBpdHNlbGYKKyAgICAgICAgY2FuIG5vdyByZXRpcmUuIEFs
bCBibGl0cyBub3cgZ28gdGhyb3VnaAorICAgICAgICBibGl0VmlzaWJsZUNvbnRlbnRzKCkuIFRo
ZSBrbm93bGVkZ2UgdGhhdCB3ZSBhbHdheXMKKyAgICAgICAgYmxpdCB0aGUgZnVsbCB2aXNpYmxl
IHN1cmZhY2UgY2FuIGZhY2lsaXRhdGUgZnVydGhlcgorICAgICAgICBvcHRpbWl6YXRpb25zOyB3
ZSB3aWxsIGdldCB0byB0aGF0IGluIHRpbWUuCisKKyAgICAgICAgKiBBcGkvQmFja2luZ1N0b3Jl
LmNwcDoKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlUHJpdmF0ZTo6
c3VzcGVuZFNjcmVlbkFuZEJhY2tpbmdTdG9yZVVwZGF0ZXMpOgorICAgICAgICAoQmxhY2tCZXJy
eTo6V2ViS2l0OjpCYWNraW5nU3RvcmVQcml2YXRlOjpyZXN1bWVTY3JlZW5BbmRCYWNraW5nU3Rv
cmVVcGRhdGVzKToKKyAgICAgICAgKEJsYWNrQmVycnk6OldlYktpdDo6QmFja2luZ1N0b3JlUHJp
dmF0ZTo6YmxpdFZpc2libGVDb250ZW50cyk6CisgICAgICAgICogQXBpL0JhY2tpbmdTdG9yZS5o
OgorICAgICAgICAqIEFwaS9CYWNraW5nU3RvcmVfcC5oOgorICAgICAgICAoQmFja2luZ1N0b3Jl
UHJpdmF0ZSk6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRCbGFj
a0JlcnJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZyYW1lTG9hZGVyQ2xpZW50QmxhY2tCZXJy
eTo6dHJhbnNpdGlvblRvQ29tbWl0dGVkRm9yTmV3UGFnZSk6CisKIDIwMTItMDktMjUgIEdlbmV2
aWV2ZSBNYWsgIDxnbWFrQHJpbS5jb20+CiAKICAgICAgICAgRmF0IEZpbmdlcnMgZG9lc24ndCB3
b3JrIG9uIG5vbi1zY3JvbGxhYmxlIHBhZ2VzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9i
bGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmUuY3BwIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5
L0FwaS9CYWNraW5nU3RvcmUuY3BwCmluZGV4IDhiNzA4NDEyZjAxNmQ5Njc1NmVlZDdlMzM3OGFm
ZmI1NDUzYjRiYzMuLjdhNTQzNjk3YWI0ZmYzODM5YmUyNWU1NGM4ZmZiMjQ2YTkxNjcyMGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmNwcAor
KysgYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZS5jcHAKQEAgLTI4
NCw4ICsyODQsOCBAQCB2b2lkIEJhY2tpbmdTdG9yZVByaXZhdGU6OnN1c3BlbmRTY3JlZW5BbmRC
YWNraW5nU3RvcmVVcGRhdGVzKCkKICAgICArK21fc3VzcGVuZEJhY2tpbmdTdG9yZVVwZGF0ZXM7
CiAKICAgICAvLyBNYWtlIHN1cmUgdGhlIHVzZXIgaW50ZXJmYWNlIHRocmVhZCBnZXRzIHRoZSBt
ZXNzYWdlIGJlZm9yZSB3ZSBwcm9jZWVkCi0gICAgLy8gYmVjYXVzZSBibGl0Q29udGVudHMgY2Fu
IGJlIGNhbGxlZCBmcm9tIHRoaXMgdGhyZWFkIGFuZCBpdCBtdXN0IGhvbm9yCi0gICAgLy8gdGhp
cyBmbGFnLgorICAgIC8vIGJlY2F1c2UgYmxpdFZpc2libGVDb250ZW50cygpIGNhbiBiZSBjYWxs
ZWQgZnJvbSB0aGUgdXNlciBpbnRlcmZhY2UKKyAgICAvLyB0aHJlYWQgYW5kIGl0IG11c3QgaG9u
b3IgdGhpcyBmbGFnLgogICAgICsrbV9zdXNwZW5kU2NyZWVuVXBkYXRlczsKIAogICAgIEJsYWNr
QmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJmYWNlVGhyZWFkTWVzc2FnZUNsaWVudCgpLT5zeW5j
VG9DdXJyZW50TWVzc2FnZSgpOwpAQCAtMzQ3LDggKzM0Nyw4IEBAIHZvaWQgQmFja2luZ1N0b3Jl
UHJpdmF0ZTo6cmVzdW1lU2NyZWVuQW5kQmFja2luZ1N0b3JlVXBkYXRlcyhCYWNraW5nU3RvcmU6
OlJlc3VtCiAgICAgICAgIHJlbmRlclZpc2libGVDb250ZW50cygpOwogCiAgICAgLy8gTWFrZSBz
dXJlIHRoZSB1c2VyIGludGVyZmFjZSB0aHJlYWQgZ2V0cyB0aGUgbWVzc2FnZSBiZWZvcmUgd2Ug
cHJvY2VlZAotICAgIC8vIGJlY2F1c2UgYmxpdENvbnRlbnRzIGNhbiBiZSBjYWxsZWQgZnJvbSB0
aGUgdXNlciBpbnRlcmZhY2UgdGhyZWFkIGFuZAotICAgIC8vIGl0IG11c3QgaG9ub3IgdGhpcyBm
bGFnLgorICAgIC8vIGJlY2F1c2UgYmxpdFZpc2libGVDb250ZW50cygpIGNhbiBiZSBjYWxsZWQg
ZnJvbSB0aGUgdXNlciBpbnRlcmZhY2UKKyAgICAvLyB0aHJlYWQgYW5kIGl0IG11c3QgaG9ub3Ig
dGhpcyBmbGFnLgogICAgIC0tbV9zdXNwZW5kU2NyZWVuVXBkYXRlczsKICAgICBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+c3luY1RvQ3Vy
cmVudE1lc3NhZ2UoKTsKIApAQCAtMTE0MiwzNSArMTE0Miw2IEBAIGJvb2wgQmFja2luZ1N0b3Jl
UHJpdmF0ZTo6cmVuZGVyQmFja2luZ1N0b3JlKCkKICAgICByZXR1cm4gcmVuZGVyKGZyb250U3Rh
dGUoKS0+YmFja2luZ1N0b3JlUmVjdCgpKTsKIH0KIAotdm9pZCBCYWNraW5nU3RvcmVQcml2YXRl
OjpibGl0VmlzaWJsZUNvbnRlbnRzKGJvb2wgZm9yY2UpCi17Ci0gICAgLy8gQmxpdHRpbmcgbXVz
dCBuZXZlciBoYXBwZW4gZm9yIGRpcmVjdCByZW5kZXJpbmcgY2FzZS4KLSAgICBBU1NFUlQoIXNo
b3VsZERpcmVjdFJlbmRlcmluZ1RvV2luZG93KCkpOwotICAgIGlmIChzaG91bGREaXJlY3RSZW5k
ZXJpbmdUb1dpbmRvdygpKSB7Ci0gICAgICAgIEJsYWNrQmVycnk6OlBsYXRmb3JtOjpsb2dBbHdh
eXMoQmxhY2tCZXJyeTo6UGxhdGZvcm06OkxvZ0xldmVsQ3JpdGljYWwsCi0gICAgICAgICAgICAi
QmFja2luZ1N0b3JlOjpibGl0VmlzaWJsZUNvbnRlbnRzIG9wZXJhdGlvbiBub3Qgc3VwcG9ydGVk
IGluIGRpcmVjdCByZW5kZXJpbmcgbW9kZSIpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0g
ICAgaWYgKG1fc3VzcGVuZFNjcmVlblVwZGF0ZXMpIHsKLSAgICAgICAgLy8gQXZvaWQgY2xpZW50
IGdvaW5nIGludG8gYnVzeSBsb29wIHdoaWxlIHVwZGF0ZXMgc3VzcGVuZGVkLgotICAgICAgICBp
ZiAoZm9yY2UpCi0gICAgICAgICAgICBtX2hhc0JsaXRKb2JzID0gZmFsc2U7Ci0gICAgICAgIHJl
dHVybjsKLSAgICB9Ci0KLSAgICBpZiAoIUJsYWNrQmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJm
YWNlVGhyZWFkTWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSkgewotICAgICAgICBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+
ZGlzcGF0Y2hNZXNzYWdlKAotICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0
ZU1ldGhvZENhbGxNZXNzYWdlKAotICAgICAgICAgICAgICAgICZCYWNraW5nU3RvcmVQcml2YXRl
OjpibGl0VmlzaWJsZUNvbnRlbnRzLCB0aGlzLCBmb3JjZSkpOwotICAgICAgICByZXR1cm47Ci0g
ICAgfQotCi0gICAgYmxpdENvbnRlbnRzKG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZh
Y2VCbGl0dGVkRGVzdGluYXRpb25SZWN0KCksCi0gICAgICAgICAgICAgICAgIG1fd2ViUGFnZS0+
Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VCbGl0dGVkVmlzaWJsZUNvbnRlbnRzUmVjdCgpLAotICAg
ICAgICAgICAgICAgICBmb3JjZSk7Ci19Ci0KIHZvaWQgQmFja2luZ1N0b3JlUHJpdmF0ZTo6Y29w
eVByZXZpb3VzQ29udGVudHNUb0JhY2tTdXJmYWNlT2ZXaW5kb3coKQogewogICAgIFBsYXRmb3Jt
OjpJbnRSZWN0UmVnaW9uIHByZXZpb3VzQ29udGVudHNSZWdpb24KQEAgLTEyNDYsMTUgKzEyMTcs
MTYgQEAgdm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpwYWludERlZmF1bHRCYWNrZ3JvdW5kKGNv
bnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBjb250ZW4KICAgICB9CiB9CiAKLXZvaWQgQmFja2luZ1N0
b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBkc3RSZWN0
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgUGxhdGZvcm06
OkludFJlY3QmIHNyY1JlY3QsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBib29sIGZvcmNlKQordm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0VmlzaWJsZUNvbnRl
bnRzKGJvb2wgZm9yY2UpCiB7CiAgICAgLy8gQmxpdHRpbmcgbXVzdCBuZXZlciBoYXBwZW4gZm9y
IGRpcmVjdCByZW5kZXJpbmcgY2FzZS4KICAgICAvLyBVc2UgaW52YWxpZGF0ZVdpbmRvdygpIGlu
c3RlYWQuCiAgICAgQVNTRVJUKCFzaG91bGREaXJlY3RSZW5kZXJpbmdUb1dpbmRvdygpKTsKLSAg
ICBpZiAoc2hvdWxkRGlyZWN0UmVuZGVyaW5nVG9XaW5kb3coKSkKKyAgICBpZiAoc2hvdWxkRGly
ZWN0UmVuZGVyaW5nVG9XaW5kb3coKSkgeworICAgICAgICBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6
bG9nQWx3YXlzKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2FsLAorICAgICAg
ICAgICAgIkJhY2tpbmdTdG9yZTo6YmxpdFZpc2libGVDb250ZW50cyBvcGVyYXRpb24gbm90IHN1
cHBvcnRlZCBpbiBkaXJlY3QgcmVuZGVyaW5nIG1vZGUiKTsKICAgICAgICAgcmV0dXJuOworICAg
IH0KIAogICAgIGlmICghbV93ZWJQYWdlLT5pc1Zpc2libGUoKSB8fCBtX3N1c3BlbmRTY3JlZW5V
cGRhdGVzKSB7CiAgICAgICAgIC8vIEF2b2lkIGNsaWVudCBnb2luZyBpbnRvIGJ1c3kgbG9vcCB3
aGlsZSBibGl0IGlzIGltcG9zc2libGUuCkBAIC0xMjY2LDcgKzEyMzgsNyBAQCB2b2lkIEJhY2tp
bmdTdG9yZVByaXZhdGU6OmJsaXRDb250ZW50cyhjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYgZHN0
UmVjdCwKICAgICBpZiAoIUJsYWNrQmVycnk6OlBsYXRmb3JtOjp1c2VySW50ZXJmYWNlVGhyZWFk
TWVzc2FnZUNsaWVudCgpLT5pc0N1cnJlbnRUaHJlYWQoKSkgewogICAgICAgICBCbGFja0JlcnJ5
OjpQbGF0Zm9ybTo6dXNlckludGVyZmFjZVRocmVhZE1lc3NhZ2VDbGllbnQoKS0+ZGlzcGF0Y2hN
ZXNzYWdlKAogICAgICAgICAgICAgQmxhY2tCZXJyeTo6UGxhdGZvcm06OmNyZWF0ZU1ldGhvZENh
bGxNZXNzYWdlKAotICAgICAgICAgICAgICAgICZCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0Q29u
dGVudHMsIHRoaXMsIGRzdFJlY3QsIHNyY1JlY3QsIGZvcmNlKSk7CisgICAgICAgICAgICAgICAg
JkJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRWaXNpYmxlQ29udGVudHMsIHRoaXMsIGZvcmNlKSk7
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKQEAgLTEyODcsNiArMTI1OSw4IEBAIHZvaWQgQmFj
a2luZ1N0b3JlUHJpdmF0ZTo6YmxpdENvbnRlbnRzKGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0JiBk
c3RSZWN0LAogCiAgICAgbV9oYXNCbGl0Sm9icyA9IGZhbHNlOwogCisgICAgY29uc3QgUGxhdGZv
cm06OkludFJlY3QgZHN0UmVjdCA9IG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VC
bGl0dGVkRGVzdGluYXRpb25SZWN0KCk7CisgICAgY29uc3QgUGxhdGZvcm06OkludFJlY3Qgc3Jj
UmVjdCA9IG1fd2ViUGFnZS0+Y2xpZW50KCktPnVzZXJJbnRlcmZhY2VCbGl0dGVkVmlzaWJsZUNv
bnRlbnRzUmVjdCgpOwogICAgIGNvbnN0IFBsYXRmb3JtOjpJbnRSZWN0IGNvbnRlbnRzUmVjdCA9
IFBsYXRmb3JtOjpJbnRSZWN0KFBsYXRmb3JtOjpJbnRQb2ludCgwLCAwKSwgbV9jbGllbnQtPnRy
YW5zZm9ybWVkQ29udGVudHNTaXplKCkpOwogCiAjaWYgREVCVUdfVklTVUFMSVpFCkBAIC0xMjk0
LDkgKzEyNjgsNyBAQCB2b2lkIEJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRDb250ZW50cyhjb25z
dCBQbGF0Zm9ybTo6SW50UmVjdCYgZHN0UmVjdCwKICAgICAvLyBhbmQgdGhlIHVpIHRocmVhZCB2
aWV3cG9ydCByZWN0IGluc3RlYWQgb2YgdGhlIG5vcm1hbCBzb3VyY2UgcmVjdCBzbyB3ZQogICAg
IC8vIGNhbiB2aXN1YWxpemUgdGhlIGVudGlyZSBiYWNraW5nc3RvcmUgYW5kIHdoYXQgaXQgaXMg
ZG9pbmcgd2hlbiB3ZQogICAgIC8vIHNjcm9sbCBhbmQgem9vbSEKLSAgICAvLyBGSVhNRTogVGhp
cyBzaG91bGQgbm90IGV4cGxpY2l0ZWx5IGRlcGVuZCBvbiBXZWJDb3JlOjouCi0gICAgV2ViQ29y
ZTo6SW50UmVjdCBkZWJ1Z1JlY3QgPSBmcm9udFN0YXRlKCktPmJhY2tpbmdTdG9yZVJlY3QoKTsK
LSAgICBkZWJ1Z1JlY3QudW5pdGUobV93ZWJQYWdlLT5jbGllbnQoKS0+dXNlckludGVyZmFjZUJs
aXR0ZWRWaXNpYmxlQ29udGVudHNSZWN0KCkpOworICAgIFBsYXRmb3JtOjpJbnRSZWN0IGRlYnVn
UmVjdCA9IHVuaW9uT2ZSZWN0cyhzcmNSZWN0LCBmcm9udFN0YXRlKCktPmJhY2tpbmdTdG9yZVJl
Y3QoKSk7CiAgICAgaWYgKGRlYnVnUmVjdC53aWR0aCgpIDwgZGVidWdSZWN0LmhlaWdodCgpKQog
ICAgICAgICBkZWJ1Z1JlY3Quc2V0V2lkdGgoY2VpbChkb3VibGUoc3JjUmVjdC53aWR0aCgpKSAq
IChkb3VibGUoZGVidWdSZWN0LmhlaWdodCgpKSAvIHNyY1JlY3QuaGVpZ2h0KCkpKSk7CiAgICAg
aWYgKGRlYnVnUmVjdC5oZWlnaHQoKSA8IGRlYnVnUmVjdC53aWR0aCgpKQpAQCAtMTMxMyw5ICsx
Mjg1LDkgQEAgdm9pZCBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0Q29udGVudHMoY29uc3QgUGxh
dGZvcm06OkludFJlY3QmIGRzdFJlY3QsCiAKICNpZiBERUJVR19CQUNLSU5HU1RPUkUKICAgICBC
bGFja0JlcnJ5OjpQbGF0Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENy
aXRpY2FsLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIkJhY2tpbmdTdG9yZVByaXZhdGU6
OmJsaXRDb250ZW50cyBkc3RSZWN0PSglZCwlZCAlZHglZCkgc3JjUmVjdD0oJWQsJWQgJWR4JWQp
IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgIGRzdFJlY3QueCgpLCBkc3RSZWN0LnkoKSwg
ZHN0UmVjdC53aWR0aCgpLCBkc3RSZWN0LmhlaWdodCgpLAotICAgICAgICAgICAgICAgICAgICAg
ICAgICAgc3JjUmVjdC54KCksIHNyY1JlY3QueSgpLCBzcmNSZWN0LndpZHRoKCksIHNyY1JlY3Qu
aGVpZ2h0KCkpOworICAgICAgICAiQmFja2luZ1N0b3JlUHJpdmF0ZTo6YmxpdFZpc2libGVDb250
ZW50cyBkc3RSZWN0PSglZCwlZCAlZHglZCkgc3JjUmVjdD0oJWQsJWQgJWR4JWQpIiwKKyAgICAg
ICAgZHN0UmVjdC54KCksIGRzdFJlY3QueSgpLCBkc3RSZWN0LndpZHRoKCksIGRzdFJlY3QuaGVp
Z2h0KCksCisgICAgICAgIHNyY1JlY3QueCgpLCBzcmNSZWN0LnkoKSwgc3JjUmVjdC53aWR0aCgp
LCBzcmNSZWN0LmhlaWdodCgpKTsKICNlbmRpZgogCiAgICAgUGxhdGZvcm06OkludFBvaW50IG9y
aWdpbiA9IGNvbnRlbnRzLmxvY2F0aW9uKCk7CkBAIC0xNTExLDcgKzE0ODMsNyBAQCB2b2lkIEJh
Y2tpbmdTdG9yZVByaXZhdGU6OmJsaXRDb250ZW50cyhjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYg
ZHN0UmVjdCwKICAgICAgICAgU3VyZmFjZVBvb2w6Omdsb2JhbFN1cmZhY2VQb29sKCktPmNyZWF0
ZVBsYXRmb3JtR3JhcGhpY3NDb250ZXh0KGJ1ZmZlckRyYXdhYmxlKTsKICAgICBHcmFwaGljc0Nv
bnRleHQgZ3JhcGhpY3NDb250ZXh0KGJ1ZmZlclBsYXRmb3JtR3JhcGhpY3NDb250ZXh0KTsKICAg
ICBGbG9hdFJlY3Qgd2tWaWV3cG9ydCA9IEZsb2F0UmVjdCh2aXNpYmxlQ29udGVudHNSZWN0KCkp
OwotICAgIEZsb2F0UmVjdCB1aVZpZXdwb3J0ID0gRmxvYXRSZWN0KG1fd2ViUGFnZS0+Y2xpZW50
KCktPnVzZXJJbnRlcmZhY2VCbGl0dGVkVmlzaWJsZUNvbnRlbnRzUmVjdCgpKTsKKyAgICBGbG9h
dFJlY3QgdWlWaWV3cG9ydCA9IEZsb2F0UmVjdChzcmNSZWN0KTsKICAgICB3a1ZpZXdwb3J0Lm1v
dmUoLWNvbnRlbnRzLngoKSwgLWNvbnRlbnRzLnkoKSk7CiAgICAgdWlWaWV3cG9ydC5tb3ZlKC1j
b250ZW50cy54KCksIC1jb250ZW50cy55KCkpOwogCkBAIC0yNjQxLDE4ICsyNjEzLDYgQEAgdm9p
ZCBCYWNraW5nU3RvcmU6OmJsaXRWaXNpYmxlQ29udGVudHMoKQogICAgIGQtPmJsaXRWaXNpYmxl
Q29udGVudHMoZmFsc2UgLypmb3JjZSovKTsKIH0KIAotdm9pZCBCYWNraW5nU3RvcmU6OmJsaXRD
b250ZW50cyhjb25zdCBCbGFja0JlcnJ5OjpQbGF0Zm9ybTo6SW50UmVjdCYgZHN0UmVjdCwgY29u
c3QgQmxhY2tCZXJyeTo6UGxhdGZvcm06OkludFJlY3QmIGNvbnRlbnRzKQotewotICAgIC8vIEJs
aXR0aW5nIGR1cmluZyBkaXJlY3QgcmVuZGVyaW5nIGlzIG5vdCBzdXBwb3J0ZWQuCi0gICAgaWYg
KGlzRGlyZWN0UmVuZGVyaW5nVG9XaW5kb3coKSkgewotICAgICAgICBCbGFja0JlcnJ5OjpQbGF0
Zm9ybTo6bG9nKEJsYWNrQmVycnk6OlBsYXRmb3JtOjpMb2dMZXZlbENyaXRpY2FsLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICJCYWNraW5nU3RvcmU6OmJsaXRDb250ZW50cyBvcGVy
YXRpb24gbm90IHN1cHBvcnRlZCBpbiBkaXJlY3QgcmVuZGVyaW5nIG1vZGUiKTsKLSAgICAgICAg
cmV0dXJuOwotICAgIH0KLQotICAgIGQtPmJsaXRDb250ZW50cyhkc3RSZWN0LCBjb250ZW50cyk7
Ci19Ci0KIHZvaWQgQmFja2luZ1N0b3JlOjpyZXBhaW50KGludCB4LCBpbnQgeSwgaW50IHdpZHRo
LCBpbnQgaGVpZ2h0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBjb250ZW50Q2hh
bmdlZCwgYm9vbCBpbW1lZGlhdGUpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNr
YmVycnkvQXBpL0JhY2tpbmdTdG9yZS5oIGIvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9C
YWNraW5nU3RvcmUuaAppbmRleCBjMzE4NWRjNDQ2MDYyYzM5ZGNhZjU0NWRjNTdkNjY1MjExYTNm
OGNlLi4yNTAxYzk4ZDkxOGY5MDA1ODEyZjU2ZGVlY2QzZjIyNzU4YjBhYzcwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZS5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlLmgKQEAgLTYwLDcgKzYwLDYgQEAg
cHVibGljOgogICAgIHZvaWQgc2V0U2Nyb2xsaW5nT3Jab29taW5nKGJvb2wpOwogCiAgICAgdm9p
ZCBibGl0VmlzaWJsZUNvbnRlbnRzKCk7Ci0gICAgdm9pZCBibGl0Q29udGVudHMoY29uc3QgQmxh
Y2tCZXJyeTo6UGxhdGZvcm06OkludFJlY3QmIGRzdFJlY3QsIGNvbnN0IEJsYWNrQmVycnk6OlBs
YXRmb3JtOjpJbnRSZWN0JiBjb250ZW50cyk7CiAgICAgdm9pZCByZXBhaW50KGludCB4LCBpbnQg
eSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBib29sIGNvbnRlbnRDaGFuZ2VkLCBib29sIGltbWVk
aWF0ZSk7CiAKICAgICAvLyBJbiB0aGUgZGVmZXJzIGJsaXQgbW9kZSwgYW55IGJsaXQgcmVxdWVz
dHMgd2lsbCBqdXN0IHJldHVybiBlYXJseSwgYW5kCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L2JsYWNrYmVycnkvQXBpL0JhY2tpbmdTdG9yZV9wLmggYi9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVy
cnkvQXBpL0JhY2tpbmdTdG9yZV9wLmgKaW5kZXggZGRmOGEyMjViZjUzNmY4Mjk0ZmJjZDM0NzU4
NzY2NzVjNjhhNzc0Ny4uYjZjZTQ0ZmY0NTQ2ZGU2NjEwNGM5ZmUzM2ZiOTg2MTI2MjQ3NmE0YyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ibGFja2JlcnJ5L0FwaS9CYWNraW5nU3RvcmVfcC5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9BcGkvQmFja2luZ1N0b3JlX3AuaApAQCAt
MTE2LDEwICsxMTYsMTAgQEAgcHVibGljOgogCiAgICAgYm9vbCBpc1N1c3BlbmRlZCgpIGNvbnN0
IHsgcmV0dXJuIG1fc3VzcGVuZEJhY2tpbmdTdG9yZVVwZGF0ZXM7IH0KIAotICAgIC8vIFN1c3Bl
bmRzIGFsbCBzY3JlZW4gdXBkYXRlcyBzbyB0aGF0ICdibGl0Q29udGVudHMnIGlzIGRpc2FibGVk
LgorICAgIC8vIFN1c3BlbmRzIGFsbCBzY3JlZW4gdXBkYXRlcyBzbyB0aGF0ICdibGl0VmlzaWJs
ZUNvbnRlbnRzJyBpcyBkaXNhYmxlZC4KICAgICB2b2lkIHN1c3BlbmRTY3JlZW5BbmRCYWNraW5n
U3RvcmVVcGRhdGVzKCk7CiAKLSAgICAvLyBSZXN1bWVzIGFsbCBzY3JlZW4gdXBkYXRlcyBzbyB0
aGF0ICdibGl0Q29udGVudHMnIGlzIGVuYWJsZWQuCisgICAgLy8gUmVzdW1lcyBhbGwgc2NyZWVu
IHVwZGF0ZXMgc28gdGhhdCAnYmxpdFZpc2libGVDb250ZW50cycgaXMgZW5hYmxlZC4KICAgICB2
b2lkIHJlc3VtZVNjcmVlbkFuZEJhY2tpbmdTdG9yZVVwZGF0ZXMoQmFja2luZ1N0b3JlOjpSZXN1
bWVVcGRhdGVPcGVyYXRpb24pOwogCiAgICAgLy8gVGhlIGZ1bmN0aW9ucyByZXBhaW50KCksIHNs
b3dTY3JvbGwoKSwgc2Nyb2xsKCksIHNjcm9sbGluZ1N0YXJ0ZWRIZWxwZXIoKSBhcmUKQEAgLTE5
NCwxNSArMTk0LDE1IEBAIHB1YmxpYzoKICAgICB2b2lkIGNvcHlQcmV2aW91c0NvbnRlbnRzVG9C
YWNrU3VyZmFjZU9mV2luZG93KCk7CiAgICAgdm9pZCBjb3B5UHJldmlvdXNDb250ZW50c1RvQmFj
a1N1cmZhY2VPZlRpbGUoY29uc3QgUGxhdGZvcm06OkludFJlY3QmLCBCYWNraW5nU3RvcmVUaWxl
Kik7CiAgICAgdm9pZCBwYWludERlZmF1bHRCYWNrZ3JvdW5kKGNvbnN0IFBsYXRmb3JtOjpJbnRS
ZWN0JiBjb250ZW50cywgY29uc3QgV2ViQ29yZTo6VHJhbnNmb3JtYXRpb25NYXRyaXgmLCBib29s
IGZsdXNoKTsKLSAgICB2b2lkIGJsaXRDb250ZW50cyhjb25zdCBQbGF0Zm9ybTo6SW50UmVjdCYg
ZHN0UmVjdCwgY29uc3QgUGxhdGZvcm06OkludFJlY3QmIGNvbnRlbnRzLCBib29sIGZvcmNlID0g
ZmFsc2UpOwogICAgIHZvaWQgYmxpdE9uSWRsZSgpOwogCiAgICAgdHlwZWRlZiBzdGQ6OnBhaXI8
VGlsZUluZGV4LCBQbGF0Zm9ybTo6SW50UmVjdD4gVGlsZVJlY3Q7CiAgICAgUGxhdGZvcm06Oklu
dFJlY3QgYmxpdFRpbGVSZWN0KFRpbGVCdWZmZXIqLCBjb25zdCBUaWxlUmVjdCYsIGNvbnN0IFBs
YXRmb3JtOjpJbnRQb2ludCYsIGNvbnN0IFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9uTWF0cml4Jiwg
QmFja2luZ1N0b3JlR2VvbWV0cnkqKTsKIAogI2lmIFVTRShBQ0NFTEVSQVRFRF9DT01QT1NJVElO
RykKLSAgICAvLyBVc2UgaW5zdGVhZCBvZiBibGl0Q29udGVudHMgaWYgeW91IG5lZWQgbW9yZSBj
b250cm9sIG92ZXIgT3BlbkdMIHN0YXRlLgotICAgIC8vIE5vdGUgdGhhdCBjb250ZW50cyBpcyBl
eHByZXNzZWQgaW4gdW50cmFuc2Zvcm1lZCBjb250ZW50IGNvb3JkaW5hdGVzLgorICAgIC8vIFVz
ZSBpbnN0ZWFkIG9mIGJsaXRWaXNpYmxlQ29udGVudHMoKSBpZiB5b3UgbmVlZCBtb3JlIGNvbnRy
b2wgb3ZlcgorICAgIC8vIE9wZW5HTCBzdGF0ZS4gTm90ZSB0aGF0IGNvbnRlbnRzIGlzIGV4cHJl
c3NlZCBpbiB1bnRyYW5zZm9ybWVkCisgICAgLy8gY29udGVudCBjb29yZGluYXRlcy4KICAgICAv
LyBQcmVjb25kaXRpb25zOiBZb3UgaGF2ZSB0byBjYWxsIHByZXBhcmVGcmFtZSBhbmQgc2V0Vmll
d3BvcnQgb24gdGhlIExheWVyUmVuZGVyZXIgYmVmb3JlCiAgICAgLy8gICAgICAgICAgICAgICAg
Y2FsbGluZyB0aGlzLgogICAgIHZvaWQgY29tcG9zaXRlQ29udGVudHMoV2ViQ29yZTo6TGF5ZXJS
ZW5kZXJlciosIGNvbnN0IFdlYkNvcmU6OlRyYW5zZm9ybWF0aW9uTWF0cml4JiwgY29uc3QgV2Vi
Q29yZTo6RmxvYXRSZWN0JiBjb250ZW50cywgYm9vbCBjb250ZW50c09wYXF1ZSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2JsYWNrYmVycnkvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRCbGFja0JlcnJ5LmNwcCBiL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3JlU3Vw
cG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwCmluZGV4IDkwNmE5OTg1MjRjOGRj
NGEzOTI1NjBlMzc4YjEyZjJhYWVlNGQ0NzguLmVhN2FhY2M5YzkxODk5M2ViZjczNzlmNTBiY2Ix
NDA3MjlhNzZlMTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvYmxhY2tiZXJyeS9XZWJDb3Jl
U3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnkuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvYmxhY2tiZXJyeS9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnku
Y3BwCkBAIC00MjgsNyArNDI4LDcgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudEJsYWNrQmVycnk6
OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKQogCiAgICAgLy8gSW4gRnJhbWU6OmNy
ZWF0ZVZpZXcsIEZyYW1lJ3MgRnJhbWVWaWV3IG9iamVjdCBpcyBzZXQgdG8gMCBhbmQgcmVjcmVh
dGVkLgogICAgIC8vIFRoaXMgb3BlcmF0aW9uIGlzIG5vdCBhdG9taWMsIGFuZCBhbiBhdHRlbXB0
IHRvIGJsaXQgY29udGVudHMgbWlnaHQgaGFwcGVuCi0gICAgLy8gaW4gdGhlIGJhY2tpbmcgc3Rv
cmUgZnJvbSBhbm90aGVyIHRocmVhZCAoc2VlIEJhY2tpbmdTdG9yZVByaXZhdGU6OmJsaXRDb250
ZW50cyBtZXRob2QpLAorICAgIC8vIGluIHRoZSBiYWNraW5nIHN0b3JlIGZyb20gYW5vdGhlciB0
aHJlYWQgKHNlZSBCYWNraW5nU3RvcmVQcml2YXRlOjpibGl0VmlzaWJsZUNvbnRlbnRzIG1ldGhv
ZCksCiAgICAgLy8gc28gd2Ugc3VzcGVuZCBhbmQgcmVzdW1lIHNjcmVlbiB1cGRhdGUgdG8gbWFr
ZSBzdXJlIHdlIGRvIG5vdCBnZXQgYSBpbnZhbGlkIEZyYW1lVmlldwogICAgIC8vIHN0YXRlLgog
ICAgIEJhY2tpbmdTdG9yZUNsaWVudCogYmFja2luZ1N0b3JlQ2xpZW50Rm9yRnJhbWUgPSBtX3dl
YlBhZ2VQcml2YXRlLT5iYWNraW5nU3RvcmVDbGllbnRGb3JGcmFtZShtX2ZyYW1lKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>