<?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>98952</bug_id>
          
          <creation_ts>2012-10-10 13:27:56 -0700</creation_ts>
          <short_desc>Switch over CachedResource::data() from taking a SharedBuffer to taking a ResourceBuffer</short_desc>
          <delta_ts>2012-10-10 17:26:45 -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>Page Loading</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>98539</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>japhet</cc>
    
    <cc>koivisto</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>739253</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 13:27:56 -0700</bug_when>
    <thetext>Switch over CachedResource::data() from taking a SharedBuffer to taking a ResourceBuffer

This is further progress towards http://bugs.webkit.org/show_bug.cgi?id=98539</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739254</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 13:28:08 -0700</bug_when>
    <thetext>Patch coming soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739366</commentid>
    <comment_count>2</comment_count>
      <attachid>168084</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 16:09:14 -0700</bug_when>
    <thetext>Created attachment 168084
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739370</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-10 16:12:28 -0700</bug_when>
    <thetext>Attachment 168084 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/html/ImageDocument.cpp:42:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 23 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>739377</commentid>
    <comment_count>4</comment_count>
      <attachid>168088</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 16:19:30 -0700</bug_when>
    <thetext>Created attachment 168088
Patch v2 - Now with more alphabetization</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739414</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 17:04:22 -0700</bug_when>
    <thetext>I&apos;m going to land without the okay of cr-linux as it seems to be way behind, and I have no reason to believe this patch would break it without having broken any other port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739430</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2012-10-10 17:26:45 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/130983</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168084</attachid>
            <date>2012-10-10 16:09:14 -0700</date>
            <delta_ts>2012-10-10 16:19:30 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>19518</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyN2UxNThkLi5kOGI0ZjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjEg
QEAKKzIwMTItMTAtMDUgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIFN3aXRjaCBvdmVyIENhY2hlZFJlc291cmNlOjpkYXRhKCkgZnJvbSB0YWtpbmcgYSBTaGFy
ZWRCdWZmZXIgdG8gdGFraW5nIGEgUmVzb3VyY2VCdWZmZXIuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODk1MgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoTm8gYmVoYXZpb3IgY2hh
bmdlKS4KKworICAgICAgICAqIGh0bWwvSW1hZ2VEb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbWFnZURvY3VtZW50UGFyc2VyOjphcHBlbmRCeXRlcyk6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZURvY3VtZW50UGFyc2VyOjpmaW5pc2gpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcjo6c2Vu
ZERhdGFUb1Jlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpk
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVT
aGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0OjpkYXRhKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oOgorICAgICAgICAo
V2ViQ29yZSk6CisgICAgICAgIChDYWNoZWRDU1NTdHlsZVNoZWV0KToKKyAgICAgICAgKiBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250Ojpk
YXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChDYWNoZWRGb250KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkSW1hZ2U6OmRhdGEpOgorICAg
ICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oOgorICAgICAgICAoQ2FjaGVkSW1hZ2Up
OgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDYWNoZWRSYXdSZXNvdXJjZTo6ZGF0YSk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgIChDYWNoZWRSYXdSZXNvdXJjZSk6Cisg
ICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuaDoKKyAgICAgICAgKENhY2hlZFJlc291cmNlKToKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU1ZH
RG9jdW1lbnQ6OmRhdGEpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVu
dC5oOgorICAgICAgICAoQ2FjaGVkU1ZHRG9jdW1lbnQpOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRTY3JpcHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU2NyaXB0OjpkYXRh
KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgIChDYWNo
ZWRTY3JpcHQpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkU2hhZGVyOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2Fj
aGUvQ2FjaGVkU2hhZGVyLmg6CisgICAgICAgIChDYWNoZWRTaGFkZXIpOgorICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVk
VGV4dFRyYWNrOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNr
Lmg6CisgICAgICAgIChDYWNoZWRUZXh0VHJhY2spOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRYU0xTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFhTTFN0eWxl
U2hlZXQ6OmRhdGEpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0
Lmg6CisgICAgICAgIChDYWNoZWRYU0xTdHlsZVNoZWV0KToKKwogMjAxMi0xMC0xMCAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgU3dpdGNoIENhY2hlZFJlc291
cmNlIG92ZXIgZnJvbSBTaGFyZWRCdWZmZXIgdG8gYSBuZXcgUmVzb3VyY2VCdWZmZXIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCmluZGV4IDBhZmQyNzYuLmQwOTJmMDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcApAQCAtMzksNiArMzksNyBAQAogI2luY2x1
ZGUgIk1vdXNlRXZlbnQuaCIKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogI2luY2x1ZGUg
IlBhZ2UuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgogI2luY2x1ZGUgIlJhd0RhdGFE
b2N1bWVudFBhcnNlci5oIgogI2luY2x1ZGUgIlNldHRpbmdzLmgiCiAKQEAgLTEzMiw3ICsxMzMs
NyBAQCB2b2lkIEltYWdlRG9jdW1lbnRQYXJzZXI6OmFwcGVuZEJ5dGVzKERvY3VtZW50V3JpdGVy
KiwgY29uc3QgY2hhciosIHNpemVfdCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgQ2FjaGVkSW1h
Z2UqIGNhY2hlZEltYWdlID0gZG9jdW1lbnQoKS0+Y2FjaGVkSW1hZ2UoKTsKLSAgICBjYWNoZWRJ
bWFnZS0+ZGF0YShmcmFtZS0+bG9hZGVyKCktPmRvY3VtZW50TG9hZGVyKCktPm1haW5SZXNvdXJj
ZURhdGEoKSwgZmFsc2UpOworICAgIGNhY2hlZEltYWdlLT5kYXRhKFJlc291cmNlQnVmZmVyOjph
ZG9wdFNoYXJlZEJ1ZmZlcihmcmFtZS0+bG9hZGVyKCktPmRvY3VtZW50TG9hZGVyKCktPm1haW5S
ZXNvdXJjZURhdGEoKSksIGZhbHNlKTsKIAogICAgIGRvY3VtZW50KCktPmltYWdlVXBkYXRlZCgp
OwogfQpAQCAtMTQ4LDcgKzE0OSw3IEBAIHZvaWQgSW1hZ2VEb2N1bWVudFBhcnNlcjo6ZmluaXNo
KCkKICAgICAgICAgaWYgKGRvY3VtZW50KCktPmZyYW1lKCktPmxvYWRlcigpLT5kb2N1bWVudExv
YWRlcigpLT5pc0xvYWRpbmdNdWx0aXBhcnRDb250ZW50KCkpCiAgICAgICAgICAgICBkYXRhID0g
ZGF0YS0+Y29weSgpOwogCi0gICAgICAgIGNhY2hlZEltYWdlLT5kYXRhKGRhdGEucmVsZWFzZSgp
LCB0cnVlKTsKKyAgICAgICAgY2FjaGVkSW1hZ2UtPmRhdGEoUmVzb3VyY2VCdWZmZXI6OmFkb3B0
U2hhcmVkQnVmZmVyKGRhdGEucmVsZWFzZSgpKSwgdHJ1ZSk7CiAgICAgICAgIGNhY2hlZEltYWdl
LT5maW5pc2goKTsKIAogICAgICAgICBjYWNoZWRJbWFnZS0+c2V0UmVzcG9uc2UoZG9jdW1lbnQo
KS0+ZnJhbWUoKS0+bG9hZGVyKCktPmRvY3VtZW50TG9hZGVyKCktPnJlc3BvbnNlKCkpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAKaW5kZXggZmJiYTBkNS4u
NjU2MzQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9h
ZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3Bw
CkBAIC0zNiw2ICszNiw3IEBACiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJM
b2dnaW5nLmgiCiAjaW5jbHVkZSAiTWVtb3J5Q2FjaGUuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUJ1
ZmZlci5oIgogI2luY2x1ZGUgIlNlY3VyaXR5T3JpZ2luLmgiCiAjaW5jbHVkZSAiU2VjdXJpdHlQ
b2xpY3kuaCIKICNpbmNsdWRlICJXZWJDb3JlTWVtb3J5SW5zdHJ1bWVudGF0aW9uLmgiCkBAIC0y
NzAsOSArMjcxLDkgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6c2VuZERhdGFUb1Jlc291cmNl
KGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgpCiAgICAgLy8gICAgIHRoYXQgYWxsIGRhdGEg
aGFzIGJlZW4gcmVjZWl2ZWQgeWV0LiAKICAgICBpZiAobV9sb2FkaW5nTXVsdGlwYXJ0Q29udGVu
dCB8fCAhcmVzb3VyY2VEYXRhKCkpIHsgCiAgICAgICAgIFJlZlB0cjxTaGFyZWRCdWZmZXI+IGNv
cGllZERhdGEgPSBTaGFyZWRCdWZmZXI6OmNyZWF0ZShkYXRhLCBsZW5ndGgpOyAKLSAgICAgICAg
bV9yZXNvdXJjZS0+ZGF0YShjb3BpZWREYXRhLnJlbGVhc2UoKSwgbV9sb2FkaW5nTXVsdGlwYXJ0
Q29udGVudCk7IAorICAgICAgICBtX3Jlc291cmNlLT5kYXRhKFJlc291cmNlQnVmZmVyOjphZG9w
dFNoYXJlZEJ1ZmZlcihjb3BpZWREYXRhLnJlbGVhc2UoKSksIG1fbG9hZGluZ011bHRpcGFydENv
bnRlbnQpOwogICAgIH0gZWxzZSAKLSAgICAgICAgbV9yZXNvdXJjZS0+ZGF0YShyZXNvdXJjZURh
dGEoKSwgZmFsc2UpOworICAgICAgICBtX3Jlc291cmNlLT5kYXRhKFJlc291cmNlQnVmZmVyOjph
ZG9wdFNoYXJlZEJ1ZmZlcihyZXNvdXJjZURhdGEoKSksIGZhbHNlKTsKIH0KIAogdm9pZCBTdWJy
ZXNvdXJjZUxvYWRlcjo6ZGlkUmVjZWl2ZUNhY2hlZE1ldGFkYXRhKGNvbnN0IGNoYXIqIGRhdGEs
IGludCBsZW5ndGgpCkBAIC0yOTUsNyArMjk2LDcgQEAgdm9pZCBTdWJyZXNvdXJjZUxvYWRlcjo6
ZGlkRmluaXNoTG9hZGluZyhkb3VibGUgZmluaXNoVGltZSkKICAgICBDYWNoZWRSZXNvdXJjZUhh
bmRsZTxDYWNoZWRSZXNvdXJjZT4gcHJvdGVjdFJlc291cmNlKG1fcmVzb3VyY2UpOwogICAgIG1f
c3RhdGUgPSBGaW5pc2hpbmc7CiAgICAgbV9yZXNvdXJjZS0+c2V0TG9hZEZpbmlzaFRpbWUoZmlu
aXNoVGltZSk7Ci0gICAgbV9yZXNvdXJjZS0+ZGF0YShyZXNvdXJjZURhdGEoKSwgdHJ1ZSk7Cisg
ICAgbV9yZXNvdXJjZS0+ZGF0YShSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFyZWRCdWZmZXIocmVz
b3VyY2VEYXRhKCkpLCB0cnVlKTsKICAgICBtX3Jlc291cmNlLT5maW5pc2goKTsKICAgICBSZXNv
dXJjZUxvYWRlcjo6ZGlkRmluaXNoTG9hZGluZyhmaW5pc2hUaW1lKTsKIH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmNwcAppbmRleCAz
N2U5NDBhLi4xMmJiZWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZENTU1N0eWxlU2hlZXQuY3BwCkBAIC05NCwxMiArOTQsMTIgQEAgY29uc3QgU3RyaW5n
IENhY2hlZENTU1N0eWxlU2hlZXQ6OnNoZWV0VGV4dChib29sIGVuZm9yY2VNSU1FVHlwZSwgYm9v
bCogaGFzVmFsaWQKICAgICByZXR1cm4gc2hlZXRUZXh0OwogfQogCi12b2lkIENhY2hlZENTU1N0
eWxlU2hlZXQ6OmRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0
YVJlY2VpdmVkKQordm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0OjpkYXRhKFBhc3NSZWZQdHI8UmVz
b3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogewogICAgIGlmICghYWxs
RGF0YVJlY2VpdmVkKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2RhdGEgPSBSZXNvdXJjZUJ1
ZmZlcjo6YWRvcHRTaGFyZWRCdWZmZXIoZGF0YSk7CisgICAgbV9kYXRhID0gZGF0YTsKICAgICBz
ZXRFbmNvZGVkU2l6ZShtX2RhdGEuZ2V0KCkgPyBtX2RhdGEtPnNpemUoKSA6IDApOwogICAgIC8v
IERlY29kZSB0aGUgZGF0YSB0byBmaW5kIG91dCB0aGUgZW5jb2RpbmcgYW5kIGtlZXAgdGhlIHNo
ZWV0IHRleHQgYXJvdW5kIGR1cmluZyBjaGVja05vdGlmeSgpCiAgICAgaWYgKG1fZGF0YSkgewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENTU1N0eWxlU2hl
ZXQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmgK
aW5kZXggNjU2NDU0YS4uMWJhN2NlNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZENTU1N0eWxlU2hlZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCkBAIC0zMiw3ICszMiw2IEBACiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKICAgICBjbGFzcyBDYWNoZWRSZXNvdXJjZUNsaWVudDsKLSAgICBjbGFzcyBT
aGFyZWRCdWZmZXI7CiAgICAgY2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOwogICAgIGNsYXNzIFRl
eHRSZXNvdXJjZURlY29kZXI7CiAgICAgc3RydWN0IENTU1BhcnNlckNvbnRleHQ7CkBAIC00OCw3
ICs0Nyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgCiAgICAgICAgIHZpcnR1YWwg
dm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKTsKICAgICAgICAgdmlydHVhbCBTdHJpbmcg
ZW5jb2RpbmcoKSBjb25zdDsKLSAgICAgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxT
aGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICAgICAgdmlydHVh
bCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRh
UmVjZWl2ZWQpOwogICAgICAgICB2aXJ0dWFsIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCkgT1ZF
UlJJREU7CiAKICAgICAgICAgUGFzc1JlZlB0cjxTdHlsZVNoZWV0Q29udGVudHM+IHJlc3RvcmVQ
YXJzZWRTdHlsZVNoZWV0KGNvbnN0IENTU1BhcnNlckNvbnRleHQmKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcAppbmRleCAyZDlkNjE5Li5mMTE5YjkzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCkBAIC04NCwxMiArODQs
MTIgQEAgdm9pZCBDYWNoZWRGb250OjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQq
IGMpCiAgICAgICAgIHN0YXRpY19jYXN0PENhY2hlZEZvbnRDbGllbnQqPihjKS0+Zm9udExvYWRl
ZCh0aGlzKTsKIH0KIAotdm9pZCBDYWNoZWRGb250OjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKK3ZvaWQgQ2FjaGVkRm9udDo6ZGF0YShQ
YXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKIHsK
ICAgICBpZiAoIWFsbERhdGFSZWNlaXZlZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9kYXRh
ID0gUmVzb3VyY2VCdWZmZXI6OmFkb3B0U2hhcmVkQnVmZmVyKGRhdGEpOworICAgIG1fZGF0YSA9
IGRhdGE7CiAgICAgc2V0RW5jb2RlZFNpemUobV9kYXRhLmdldCgpID8gbV9kYXRhLT5zaXplKCkg
OiAwKTsKICAgICBzZXRMb2FkaW5nKGZhbHNlKTsKICAgICBjaGVja05vdGlmeSgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaCBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKaW5kZXggZjYzNTZlYS4uZjFiYzRkNiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oCkBAIC0zOSw5ICszOSw2
IEBAIGNsYXNzIENhY2hlZFJlc291cmNlTG9hZGVyOwogY2xhc3MgRm9udFBsYXRmb3JtRGF0YTsK
IGNsYXNzIFNWR0RvY3VtZW50OwogY2xhc3MgU1ZHRm9udEVsZW1lbnQ7Ci1jbGFzcyBTaGFyZWRC
dWZmZXI7Ci1zdHJ1Y3QgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTsKLQogc3RydWN0IEZvbnRDdXN0
b21QbGF0Zm9ybURhdGE7CiAKIGNsYXNzIENhY2hlZEZvbnQgOiBwdWJsaWMgQ2FjaGVkUmVzb3Vy
Y2UgewpAQCAtNTIsNyArNDksNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGxvYWQoQ2Fj
aGVkUmVzb3VyY2VMb2FkZXIqLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmKTsKIAogICAg
IHZpcnR1YWwgdm9pZCBkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3VyY2VDbGllbnQqKTsKLSAgICB2
aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxE
YXRhUmVjZWl2ZWQpOworICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VC
dWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKIAogICAgIHZpcnR1YWwgdm9pZCBh
bGxDbGllbnRzUmVtb3ZlZCgpOwogICAgIHZvaWQgYmVnaW5Mb2FkSWZOZWVkZWQoQ2FjaGVkUmVz
b3VyY2VMb2FkZXIqIGRsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRJbWFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1h
Z2UuY3BwCmluZGV4IGE3NWIzYzcuLjJiZWM5ZjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZEltYWdlLmNwcApAQCAtMzQzLDkgKzM0Myw5IEBAIHNpemVfdCBDYWNoZWRJ
bWFnZTo6bWF4aW11bURlY29kZWRJbWFnZVNpemUoKQogICAgIHJldHVybiBzZXR0aW5ncyA/IHNl
dHRpbmdzLT5tYXhpbXVtRGVjb2RlZEltYWdlU2l6ZSgpIDogMDsKIH0KIAotdm9pZCBDYWNoZWRJ
bWFnZTo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVj
ZWl2ZWQpCit2b2lkIENhY2hlZEltYWdlOjpkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+
IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogewotICAgIG1fZGF0YSA9IFJlc291cmNlQnVm
ZmVyOjphZG9wdFNoYXJlZEJ1ZmZlcihkYXRhKTsKKyAgICBtX2RhdGEgPSBkYXRhOwogCiAgICAg
Y3JlYXRlSW1hZ2UoKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZEltYWdlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkSW1hZ2Uu
aAppbmRleCA2N2UwMDYwLi4zYzE4OWIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkSW1hZ2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkSW1hZ2UuaApAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lk
IGFsbENsaWVudHNSZW1vdmVkKCk7CiAgICAgdmlydHVhbCB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0
YSgpOwogCi0gICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRh
dGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVm
UHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAgICAgdmly
dHVhbCB2b2lkIGVycm9yKENhY2hlZFJlc291cmNlOjpTdGF0dXMpOwogICAgIHZpcnR1YWwgdm9p
ZCBzZXRSZXNwb25zZShjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik7CiAgICAgCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2UuY3BwIGIvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcAppbmRleCBmODVj
MmJkLi5mZGQ5YjgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmF3UmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRSYXdSZXNvdXJjZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAgQ2FjaGVkUmF3UmVzb3VyY2U6OkNh
Y2hlZFJhd1Jlc291cmNlKFJlc291cmNlUmVxdWVzdCYgcmVzb3VyY2VSZXF1ZXN0KQogewogfQog
Ci12b2lkIENhY2hlZFJhd1Jlc291cmNlOjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBk
YXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKK3ZvaWQgQ2FjaGVkUmF3UmVzb3VyY2U6OmRhdGEo
UGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7
CiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2FjaGVkUmF3UmVzb3VyY2U+IHByb3RlY3QodGhp
cyk7CiAgICAgaWYgKGRhdGEpIHsKQEAgLTY0LDkgKzY0LDkgQEAgdm9pZCBDYWNoZWRSYXdSZXNv
dXJjZTo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVj
ZWl2ZWQKICAgICBpZiAobV9vcHRpb25zLnNob3VsZEJ1ZmZlckRhdGEgPT0gQnVmZmVyRGF0YSkg
ewogICAgICAgICBpZiAoZGF0YSkKICAgICAgICAgICAgIHNldEVuY29kZWRTaXplKGRhdGEtPnNp
emUoKSk7Ci0gICAgICAgIG1fZGF0YSA9IFJlc291cmNlQnVmZmVyOjphZG9wdFNoYXJlZEJ1ZmZl
cihkYXRhKTsKKyAgICAgICAgbV9kYXRhID0gZGF0YTsKICAgICB9Ci0gICAgQ2FjaGVkUmVzb3Vy
Y2U6OmRhdGEobV9kYXRhID8gbV9kYXRhLT5zaGFyZWRCdWZmZXIoKSA6IDAsIGFsbERhdGFSZWNl
aXZlZCk7CisgICAgQ2FjaGVkUmVzb3VyY2U6OmRhdGEobV9kYXRhLCBhbGxEYXRhUmVjZWl2ZWQp
OwogfQogCiB2b2lkIENhY2hlZFJhd1Jlc291cmNlOjpkaWRBZGRDbGllbnQoQ2FjaGVkUmVzb3Vy
Y2VDbGllbnQqIGMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2Fj
aGVkUmF3UmVzb3VyY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdS
ZXNvdXJjZS5oCmluZGV4IDc4YmU1YTUuLjZkMmU5NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5oCkBAIC00OCw3ICs0OCw3IEBAIHB1Ymxp
YzoKIAogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291
cmNlQ2xpZW50Kik7Ci0gICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZm
ZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGF0YShQ
YXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAK
ICAgICB2aXJ0dWFsIGJvb2wgc2hvdWxkSWdub3JlSFRUUFN0YXR1c0NvZGVFcnJvcnMoKSBjb25z
dCB7IHJldHVybiB0cnVlOyB9CiAgICAgdmlydHVhbCB2b2lkIGFsbENsaWVudHNSZW1vdmVkKCk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2Uu
Y3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcAppbmRl
eCBkZmI0OTM4Li41ODExNWUwIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkUmVzb3VyY2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRSZXNvdXJjZS5jcHAKQEAgLTI0OSw3ICsyNDksNyBAQCB2b2lkIENhY2hlZFJlc291cmNl
OjpjaGVja05vdGlmeSgpCiAgICAgICAgIGMtPm5vdGlmeUZpbmlzaGVkKHRoaXMpOwogfQogCi12
b2lkIENhY2hlZFJlc291cmNlOjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiwgYm9vbCBh
bGxEYXRhUmVjZWl2ZWQpCit2b2lkIENhY2hlZFJlc291cmNlOjpkYXRhKFBhc3NSZWZQdHI8UmVz
b3VyY2VCdWZmZXI+LCBib29sIGFsbERhdGFSZWNlaXZlZCkKIHsKICAgICBpZiAoIWFsbERhdGFS
ZWNlaXZlZCkKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkUmVzb3VyY2UuaAppbmRleCA1NjI2NGM3Li5lYjMxZDlkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVzb3VyY2UuaApAQCAtMTAwLDcgKzEwMCw3IEBAIHB1
YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmNvZGluZyhjb25zdCBTdHJpbmcmKSB7IH0K
ICAgICB2aXJ0dWFsIFN0cmluZyBlbmNvZGluZygpIGNvbnN0IHsgcmV0dXJuIFN0cmluZygpOyB9
Ci0gICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJv
b2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFJl
c291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAgICAgdmlydHVhbCB2
b2lkIGVycm9yKENhY2hlZFJlc291cmNlOjpTdGF0dXMpOwogCiAgICAgdmlydHVhbCBib29sIHNo
b3VsZElnbm9yZUhUVFBTdGF0dXNDb2RlRXJyb3JzKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnQuY3Bw
CmluZGV4IDY4ZjJmYjQuLjRlYzU0YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVy
L2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcApAQCAtMjcsNyArMjcsNyBAQAogCiAjaW5jbHVk
ZSAiQ2FjaGVkUmVzb3VyY2VDbGllbnQuaCIKICNpbmNsdWRlICJDYWNoZWRSZXNvdXJjZUhhbmRs
ZS5oIgotI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgorI2luY2x1ZGUgIlJlc291cmNlQnVmZmVy
LmgiCiAjaW5jbHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CkBAIC01Myw3ICs1Myw3IEBAIFN0cmluZyBDYWNoZWRTVkdEb2N1bWVudDo6ZW5jb2Rp
bmcoKSBjb25zdAogICAgIHJldHVybiBtX2RlY29kZXItPmVuY29kaW5nKCkubmFtZSgpOwogfQog
Ci12b2lkIENhY2hlZFNWR0RvY3VtZW50OjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBk
YXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKK3ZvaWQgQ2FjaGVkU1ZHRG9jdW1lbnQ6OmRhdGEo
UGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7
CiAgICAgaWYgKCFhbGxEYXRhUmVjZWl2ZWQpCiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5oIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmgKaW5kZXggNTRkNWE4OC4u
ODNlNTljNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNW
R0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0Rv
Y3VtZW50LmgKQEAgLTQxLDcgKzQxLDcgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB2b2lkIHNl
dEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwogICAgIHZpcnR1YWwgU3RyaW5nIGVuY29kaW5nKCkg
Y29uc3Q7Ci0gICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRh
dGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVm
UHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAKICAgICB2
aXJ0dWFsIHZvaWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyopIGNvbnN0IE9W
RVJSSURFOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
U2NyaXB0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTY3JpcHQuY3Bw
CmluZGV4IGMxYWI4NGMuLjE1MTEyOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTY3JpcHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRTY3JpcHQuY3BwCkBAIC03OSwxMiArNzksMTIgQEAgY29uc3QgU3RyaW5nJiBDYWNo
ZWRTY3JpcHQ6OnNjcmlwdCgpCiAgICAgcmV0dXJuIG1fc2NyaXB0OwogfQogCi12b2lkIENhY2hl
ZFNjcmlwdDo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRh
UmVjZWl2ZWQpCit2b2lkIENhY2hlZFNjcmlwdDo6ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKIHsKICAgICBpZiAoIWFsbERhdGFSZWNl
aXZlZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9kYXRhID0gUmVzb3VyY2VCdWZmZXI6OmFk
b3B0U2hhcmVkQnVmZmVyKGRhdGEpOworICAgIG1fZGF0YSA9IGRhdGE7CiAgICAgc2V0RW5jb2Rl
ZFNpemUobV9kYXRhLmdldCgpID8gbV9kYXRhLT5zaXplKCkgOiAwKTsKICAgICBzZXRMb2FkaW5n
KGZhbHNlKTsKICAgICBjaGVja05vdGlmeSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZFNjcmlwdC5oCmluZGV4IGNmOTljY2UuLmI4NTFiYWYyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCkBAIC00OCw3ICs0OCw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0RW5jb2RpbmcoY29uc3QgU3Ry
aW5nJik7CiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGVuY29kaW5nKCkgY29uc3Q7Ci0gICAgICAg
IHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFs
bERhdGFSZWNlaXZlZCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8UmVz
b3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKIAogICAgICAgICB2aXJ0
dWFsIHZvaWQgZGVzdHJveURlY29kZWREYXRhKCk7CiAjaWYgVVNFKEpTQykgICAgICAgIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmNwcAppbmRleCA2ZWQ3MGVh
Li44N2NiMzE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
U2hhZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVy
LmNwcApAQCAtNjEsMTAgKzYxLDEwIEBAIGNvbnN0IFN0cmluZyYgQ2FjaGVkU2hhZGVyOjpzaGFk
ZXJTdHJpbmcoKQogICAgIHJldHVybiBtX3NoYWRlclN0cmluZzsKIH0KIAotdm9pZCBDYWNoZWRT
aGFkZXI6OmRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJl
Y2VpdmVkKQordm9pZCBDYWNoZWRTaGFkZXI6OmRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZl
cj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7CiAgICAgaWYgKGFsbERhdGFSZWNlaXZl
ZCkKLSAgICAgICAgbV9kYXRhID0gUmVzb3VyY2VCdWZmZXI6OmFkb3B0U2hhcmVkQnVmZmVyKGRh
dGEpOworICAgICAgICBtX2RhdGEgPSBkYXRhOwogICAgIENhY2hlZFJlc291cmNlOjpkYXRhKGRh
dGEsIGFsbERhdGFSZWNlaXZlZCk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTaGFkZXIuaAppbmRleCBmYTU1YWExLi42ZDg0MGQyIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hhZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oCkBAIC00NCw3ICs0NCw3IEBAIHB1YmxpYzoKICAg
ICB2aXJ0dWFsIH5DYWNoZWRTaGFkZXIoKTsKICAgICAKICAgICBjb25zdCBTdHJpbmcmIHNoYWRl
clN0cmluZygpOwotICAgIHZvaWQgZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4sIGJvb2wg
YWxsRGF0YVJlY2VpdmVkKTsKKyAgICB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZl
cj4sIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKICAgICAKICAgICB2aXJ0dWFsIHZvaWQgcmVwb3J0
TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyopIGNvbnN0IE9WRVJSSURFOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwCmluZGV4IGViMGE3
NWUuLjBhMTJkZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNo
ZWRUZXh0VHJhY2suY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRU
ZXh0VHJhY2suY3BwCkBAIC00OCw5ICs0OCw5IEBAIENhY2hlZFRleHRUcmFjazo6fkNhY2hlZFRl
eHRUcmFjaygpCiB7CiB9CiAKLXZvaWQgQ2FjaGVkVGV4dFRyYWNrOjpkYXRhKFBhc3NSZWZQdHI8
U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKK3ZvaWQgQ2FjaGVkVGV4
dFRyYWNrOjpkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0
YVJlY2VpdmVkKQogewotICAgIG1fZGF0YSA9IFJlc291cmNlQnVmZmVyOjphZG9wdFNoYXJlZEJ1
ZmZlcihkYXRhKTsKKyAgICBtX2RhdGEgPSBkYXRhOwogICAgIHNldEVuY29kZWRTaXplKG1fZGF0
YS5nZXQoKSA/IG1fZGF0YS0+c2l6ZSgpIDogMCk7CiAKICAgICBDYWNoZWRSZXNvdXJjZUNsaWVu
dFdhbGtlcjxDYWNoZWRSZXNvdXJjZUNsaWVudD4gd2Fsa2VyKG1fY2xpZW50cyk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmgKaW5kZXggMmJiYzZkYi4u
MmJjNjBkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRl
eHRUcmFjay5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJh
Y2suaApAQCAtMzMsMTQgKzMzLDEyIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3Mg
U2hhcmVkQnVmZmVyOwotCiBjbGFzcyBDYWNoZWRUZXh0VHJhY2sgOiBwdWJsaWMgQ2FjaGVkUmVz
b3VyY2UgewogcHVibGljOgogICAgIENhY2hlZFRleHRUcmFjayhjb25zdCBSZXNvdXJjZVJlcXVl
c3QmKTsKICAgICB2aXJ0dWFsIH5DYWNoZWRUZXh0VHJhY2soKTsKIAotICAgIHZpcnR1YWwgdm9p
ZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZl
ZCk7CisgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0
YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwogfTsKIAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuY3BwCmluZGV4IGQ0NjVmZDIuLmFh
MjExZjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRYU0xT
dHlsZVNoZWV0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkWFNM
U3R5bGVTaGVldC5jcHAKQEAgLTY0LDEyICs2NCwxMiBAQCBTdHJpbmcgQ2FjaGVkWFNMU3R5bGVT
aGVldDo6ZW5jb2RpbmcoKSBjb25zdAogICAgIHJldHVybiBtX2RlY29kZXItPmVuY29kaW5nKCku
bmFtZSgpOwogfQogCi12b2lkIENhY2hlZFhTTFN0eWxlU2hlZXQ6OmRhdGEoUGFzc1JlZlB0cjxT
aGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQordm9pZCBDYWNoZWRYU0xT
dHlsZVNoZWV0OjpkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxs
RGF0YVJlY2VpdmVkKQogewogICAgIGlmICghYWxsRGF0YVJlY2VpdmVkKQogICAgICAgICByZXR1
cm47CiAKLSAgICBtX2RhdGEgPSBSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFyZWRCdWZmZXIoZGF0
YSk7CisgICAgbV9kYXRhID0gZGF0YTsKICAgICBzZXRFbmNvZGVkU2l6ZShtX2RhdGEuZ2V0KCkg
PyBtX2RhdGEtPnNpemUoKSA6IDApOwogICAgIGlmIChtX2RhdGEuZ2V0KCkpIHsKICAgICAgICAg
bV9zaGVldCA9IG1fZGVjb2Rlci0+ZGVjb2RlKG1fZGF0YS0+ZGF0YSgpLCBlbmNvZGVkU2l6ZSgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHls
ZVNoZWV0LmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkWFNMU3R5bGVTaGVl
dC5oCmluZGV4IDRhOGUwYWUuLmU1MTYyYjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuaApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAgICAgICAgIAogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0RW5jb2Rpbmco
Y29uc3QgU3RyaW5nJik7CiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGVuY29kaW5nKCkgY29uc3Q7
Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRh
LCBib29sIGFsbERhdGFSZWNlaXZlZCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NS
ZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKTsKICAgICAg
ICAgCiAgICAgICAgIHZpcnR1YWwgdm9pZCByZXBvcnRNZW1vcnlVc2FnZShNZW1vcnlPYmplY3RJ
bmZvKikgY29uc3QgT1ZFUlJJREU7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168088</attachid>
            <date>2012-10-10 16:19:30 -0700</date>
            <delta_ts>2012-10-10 16:49:40 -0700</delta_ts>
            <desc>Patch v2 - Now with more alphabetization </desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>19510</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyN2UxNThkLi5kOGI0ZjY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjEg
QEAKKzIwMTItMTAtMDUgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCisgICAg
ICAgIFN3aXRjaCBvdmVyIENhY2hlZFJlc291cmNlOjpkYXRhKCkgZnJvbSB0YWtpbmcgYSBTaGFy
ZWRCdWZmZXIgdG8gdGFraW5nIGEgUmVzb3VyY2VCdWZmZXIuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05ODk1MgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cyAoTm8gYmVoYXZpb3IgY2hh
bmdlKS4KKworICAgICAgICAqIGh0bWwvSW1hZ2VEb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbWFnZURvY3VtZW50UGFyc2VyOjphcHBlbmRCeXRlcyk6CisgICAgICAgIChXZWJDb3Jl
OjpJbWFnZURvY3VtZW50UGFyc2VyOjpmaW5pc2gpOgorICAgICAgICAqIGxvYWRlci9TdWJyZXNv
dXJjZUxvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTdWJyZXNvdXJjZUxvYWRlcjo6c2Vu
ZERhdGFUb1Jlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OlN1YnJlc291cmNlTG9hZGVyOjpk
aWRGaW5pc2hMb2FkaW5nKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVT
aGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRDU1NTdHlsZVNoZWV0OjpkYXRhKToK
KyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oOgorICAgICAgICAo
V2ViQ29yZSk6CisgICAgICAgIChDYWNoZWRDU1NTdHlsZVNoZWV0KToKKyAgICAgICAgKiBsb2Fk
ZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDYWNoZWRGb250Ojpk
YXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oOgorICAgICAgICAoV2Vi
Q29yZSk6CisgICAgICAgIChDYWNoZWRGb250KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2Fj
aGVkSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkSW1hZ2U6OmRhdGEpOgorICAg
ICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRJbWFnZS5oOgorICAgICAgICAoQ2FjaGVkSW1hZ2Up
OgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDYWNoZWRSYXdSZXNvdXJjZTo6ZGF0YSk6CisgICAgICAgICogbG9hZGVyL2Nh
Y2hlL0NhY2hlZFJhd1Jlc291cmNlLmg6CisgICAgICAgIChDYWNoZWRSYXdSZXNvdXJjZSk6Cisg
ICAgICAgICogbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNhY2hlZFJlc291cmNlOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVk
UmVzb3VyY2UuaDoKKyAgICAgICAgKENhY2hlZFJlc291cmNlKToKKyAgICAgICAgKiBsb2FkZXIv
Y2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU1ZH
RG9jdW1lbnQ6OmRhdGEpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVu
dC5oOgorICAgICAgICAoQ2FjaGVkU1ZHRG9jdW1lbnQpOgorICAgICAgICAqIGxvYWRlci9jYWNo
ZS9DYWNoZWRTY3JpcHQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVkU2NyaXB0OjpkYXRh
KToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0Lmg6CisgICAgICAgIChDYWNo
ZWRTY3JpcHQpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q2FjaGVkU2hhZGVyOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2Fj
aGUvQ2FjaGVkU2hhZGVyLmg6CisgICAgICAgIChDYWNoZWRTaGFkZXIpOgorICAgICAgICAqIGxv
YWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2suY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FjaGVk
VGV4dFRyYWNrOjpkYXRhKToKKyAgICAgICAgKiBsb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNr
Lmg6CisgICAgICAgIChDYWNoZWRUZXh0VHJhY2spOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9D
YWNoZWRYU0xTdHlsZVNoZWV0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhY2hlZFhTTFN0eWxl
U2hlZXQ6OmRhdGEpOgorICAgICAgICAqIGxvYWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0
Lmg6CisgICAgICAgIChDYWNoZWRYU0xTdHlsZVNoZWV0KToKKwogMjAxMi0xMC0xMCAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgU3dpdGNoIENhY2hlZFJlc291
cmNlIG92ZXIgZnJvbSBTaGFyZWRCdWZmZXIgdG8gYSBuZXcgUmVzb3VyY2VCdWZmZXIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0ltYWdlRG9jdW1lbnQuY3BwCmluZGV4IDBhZmQyNzYuLjdkZTFiNDYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VEb2N1bWVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9JbWFnZURvY3VtZW50LmNwcApAQCAtNDAsNiArNDAsNyBAQAogI2luY2x1
ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlJhd0Rh
dGFEb2N1bWVudFBhcnNlci5oIgorI2luY2x1ZGUgIlJlc291cmNlQnVmZmVyLmgiCiAjaW5jbHVk
ZSAiU2V0dGluZ3MuaCIKIAogdXNpbmcgc3RkOjptaW47CkBAIC0xMzIsNyArMTMzLDcgQEAgdm9p
ZCBJbWFnZURvY3VtZW50UGFyc2VyOjphcHBlbmRCeXRlcyhEb2N1bWVudFdyaXRlciosIGNvbnN0
IGNoYXIqLCBzaXplX3QpCiAgICAgICAgIHJldHVybjsKIAogICAgIENhY2hlZEltYWdlKiBjYWNo
ZWRJbWFnZSA9IGRvY3VtZW50KCktPmNhY2hlZEltYWdlKCk7Ci0gICAgY2FjaGVkSW1hZ2UtPmRh
dGEoZnJhbWUtPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VEYXRhKCks
IGZhbHNlKTsKKyAgICBjYWNoZWRJbWFnZS0+ZGF0YShSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFy
ZWRCdWZmZXIoZnJhbWUtPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT5tYWluUmVzb3VyY2VE
YXRhKCkpLCBmYWxzZSk7CiAKICAgICBkb2N1bWVudCgpLT5pbWFnZVVwZGF0ZWQoKTsKIH0KQEAg
LTE0OCw3ICsxNDksNyBAQCB2b2lkIEltYWdlRG9jdW1lbnRQYXJzZXI6OmZpbmlzaCgpCiAgICAg
ICAgIGlmIChkb2N1bWVudCgpLT5mcmFtZSgpLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIoKS0+
aXNMb2FkaW5nTXVsdGlwYXJ0Q29udGVudCgpKQogICAgICAgICAgICAgZGF0YSA9IGRhdGEtPmNv
cHkoKTsKIAotICAgICAgICBjYWNoZWRJbWFnZS0+ZGF0YShkYXRhLnJlbGVhc2UoKSwgdHJ1ZSk7
CisgICAgICAgIGNhY2hlZEltYWdlLT5kYXRhKFJlc291cmNlQnVmZmVyOjphZG9wdFNoYXJlZEJ1
ZmZlcihkYXRhLnJlbGVhc2UoKSksIHRydWUpOwogICAgICAgICBjYWNoZWRJbWFnZS0+ZmluaXNo
KCk7CiAKICAgICAgICAgY2FjaGVkSW1hZ2UtPnNldFJlc3BvbnNlKGRvY3VtZW50KCktPmZyYW1l
KCktPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgpKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvU3VicmVzb3VyY2VMb2FkZXIuY3BwCmluZGV4IGZiYmEwZDUuLjY1NjM0NTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9TdWJyZXNvdXJjZUxvYWRlci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL1N1YnJlc291cmNlTG9hZGVyLmNwcApAQCAtMzYs
NiArMzYsNyBAQAogI2luY2x1ZGUgIkZyYW1lTG9hZGVyLmgiCiAjaW5jbHVkZSAiTG9nZ2luZy5o
IgogI2luY2x1ZGUgIk1lbW9yeUNhY2hlLmgiCisjaW5jbHVkZSAiUmVzb3VyY2VCdWZmZXIuaCIK
ICNpbmNsdWRlICJTZWN1cml0eU9yaWdpbi5oIgogI2luY2x1ZGUgIlNlY3VyaXR5UG9saWN5Lmgi
CiAjaW5jbHVkZSAiV2ViQ29yZU1lbW9yeUluc3RydW1lbnRhdGlvbi5oIgpAQCAtMjcwLDkgKzI3
MSw5IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OnNlbmREYXRhVG9SZXNvdXJjZShjb25zdCBj
aGFyKiBkYXRhLCBpbnQgbGVuZ3RoKQogICAgIC8vICAgICB0aGF0IGFsbCBkYXRhIGhhcyBiZWVu
IHJlY2VpdmVkIHlldC4gCiAgICAgaWYgKG1fbG9hZGluZ011bHRpcGFydENvbnRlbnQgfHwgIXJl
c291cmNlRGF0YSgpKSB7IAogICAgICAgICBSZWZQdHI8U2hhcmVkQnVmZmVyPiBjb3BpZWREYXRh
ID0gU2hhcmVkQnVmZmVyOjpjcmVhdGUoZGF0YSwgbGVuZ3RoKTsgCi0gICAgICAgIG1fcmVzb3Vy
Y2UtPmRhdGEoY29waWVkRGF0YS5yZWxlYXNlKCksIG1fbG9hZGluZ011bHRpcGFydENvbnRlbnQp
OyAKKyAgICAgICAgbV9yZXNvdXJjZS0+ZGF0YShSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFyZWRC
dWZmZXIoY29waWVkRGF0YS5yZWxlYXNlKCkpLCBtX2xvYWRpbmdNdWx0aXBhcnRDb250ZW50KTsK
ICAgICB9IGVsc2UgCi0gICAgICAgIG1fcmVzb3VyY2UtPmRhdGEocmVzb3VyY2VEYXRhKCksIGZh
bHNlKTsKKyAgICAgICAgbV9yZXNvdXJjZS0+ZGF0YShSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFy
ZWRCdWZmZXIocmVzb3VyY2VEYXRhKCkpLCBmYWxzZSk7CiB9CiAKIHZvaWQgU3VicmVzb3VyY2VM
b2FkZXI6OmRpZFJlY2VpdmVDYWNoZWRNZXRhZGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVu
Z3RoKQpAQCAtMjk1LDcgKzI5Niw3IEBAIHZvaWQgU3VicmVzb3VyY2VMb2FkZXI6OmRpZEZpbmlz
aExvYWRpbmcoZG91YmxlIGZpbmlzaFRpbWUpCiAgICAgQ2FjaGVkUmVzb3VyY2VIYW5kbGU8Q2Fj
aGVkUmVzb3VyY2U+IHByb3RlY3RSZXNvdXJjZShtX3Jlc291cmNlKTsKICAgICBtX3N0YXRlID0g
RmluaXNoaW5nOwogICAgIG1fcmVzb3VyY2UtPnNldExvYWRGaW5pc2hUaW1lKGZpbmlzaFRpbWUp
OwotICAgIG1fcmVzb3VyY2UtPmRhdGEocmVzb3VyY2VEYXRhKCksIHRydWUpOworICAgIG1fcmVz
b3VyY2UtPmRhdGEoUmVzb3VyY2VCdWZmZXI6OmFkb3B0U2hhcmVkQnVmZmVyKHJlc291cmNlRGF0
YSgpKSwgdHJ1ZSk7CiAgICAgbV9yZXNvdXJjZS0+ZmluaXNoKCk7CiAgICAgUmVzb3VyY2VMb2Fk
ZXI6OmRpZEZpbmlzaExvYWRpbmcoZmluaXNoVGltZSk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5jcHAKaW5kZXggMzdlOTQwYS4u
MTJiYmViNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZENT
U1N0eWxlU2hlZXQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRD
U1NTdHlsZVNoZWV0LmNwcApAQCAtOTQsMTIgKzk0LDEyIEBAIGNvbnN0IFN0cmluZyBDYWNoZWRD
U1NTdHlsZVNoZWV0OjpzaGVldFRleHQoYm9vbCBlbmZvcmNlTUlNRVR5cGUsIGJvb2wqIGhhc1Zh
bGlkCiAgICAgcmV0dXJuIHNoZWV0VGV4dDsKIH0KIAotdm9pZCBDYWNoZWRDU1NTdHlsZVNoZWV0
OjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZl
ZCkKK3ZvaWQgQ2FjaGVkQ1NTU3R5bGVTaGVldDo6ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKIHsKICAgICBpZiAoIWFsbERhdGFSZWNl
aXZlZCkKICAgICAgICAgcmV0dXJuOwogCi0gICAgbV9kYXRhID0gUmVzb3VyY2VCdWZmZXI6OmFk
b3B0U2hhcmVkQnVmZmVyKGRhdGEpOworICAgIG1fZGF0YSA9IGRhdGE7CiAgICAgc2V0RW5jb2Rl
ZFNpemUobV9kYXRhLmdldCgpID8gbV9kYXRhLT5zaXplKCkgOiAwKTsKICAgICAvLyBEZWNvZGUg
dGhlIGRhdGEgdG8gZmluZCBvdXQgdGhlIGVuY29kaW5nIGFuZCBrZWVwIHRoZSBzaGVldCB0ZXh0
IGFyb3VuZCBkdXJpbmcgY2hlY2tOb3RpZnkoKQogICAgIGlmIChtX2RhdGEpIHsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRDU1NTdHlsZVNoZWV0LmggYi9T
b3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkQ1NTU3R5bGVTaGVldC5oCmluZGV4IDY1
NjQ1NGEuLjFiYTdjZTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRDU1NTdHlsZVNoZWV0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0Nh
Y2hlZENTU1N0eWxlU2hlZXQuaApAQCAtMzIsNyArMzIsNiBAQAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAgICAgY2xhc3MgQ2FjaGVkUmVzb3VyY2VDbGllbnQ7Ci0gICAgY2xhc3MgU2hhcmVkQnVm
ZmVyOwogICAgIGNsYXNzIFN0eWxlU2hlZXRDb250ZW50czsKICAgICBjbGFzcyBUZXh0UmVzb3Vy
Y2VEZWNvZGVyOwogICAgIHN0cnVjdCBDU1NQYXJzZXJDb250ZXh0OwpAQCAtNDgsNyArNDcsNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIAogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0
RW5jb2RpbmcoY29uc3QgU3RyaW5nJik7CiAgICAgICAgIHZpcnR1YWwgU3RyaW5nIGVuY29kaW5n
KCkgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CisgICAgICAgIHZpcnR1YWwgdm9pZCBk
YXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVk
KTsKICAgICAgICAgdmlydHVhbCB2b2lkIGRlc3Ryb3lEZWNvZGVkRGF0YSgpIE9WRVJSSURFOwog
CiAgICAgICAgIFBhc3NSZWZQdHI8U3R5bGVTaGVldENvbnRlbnRzPiByZXN0b3JlUGFyc2VkU3R5
bGVTaGVldChjb25zdCBDU1NQYXJzZXJDb250ZXh0Jik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkRm9udC5jcHAKaW5kZXggMmQ5ZDYxOS4uZjExOWI5MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmNwcApAQCAtODQsMTIgKzg0LDEyIEBAIHZv
aWQgQ2FjaGVkRm9udDo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50KiBjKQogICAg
ICAgICBzdGF0aWNfY2FzdDxDYWNoZWRGb250Q2xpZW50Kj4oYyktPmZvbnRMb2FkZWQodGhpcyk7
CiB9CiAKLXZvaWQgQ2FjaGVkRm9udDo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0
YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCit2b2lkIENhY2hlZEZvbnQ6OmRhdGEoUGFzc1JlZlB0
cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7CiAgICAgaWYg
KCFhbGxEYXRhUmVjZWl2ZWQpCiAgICAgICAgIHJldHVybjsKIAotICAgIG1fZGF0YSA9IFJlc291
cmNlQnVmZmVyOjphZG9wdFNoYXJlZEJ1ZmZlcihkYXRhKTsKKyAgICBtX2RhdGEgPSBkYXRhOwog
ICAgIHNldEVuY29kZWRTaXplKG1fZGF0YS5nZXQoKSA/IG1fZGF0YS0+c2l6ZSgpIDogMCk7CiAg
ICAgc2V0TG9hZGluZyhmYWxzZSk7CiAgICAgY2hlY2tOb3RpZnkoKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmggYi9Tb3VyY2UvV2ViQ29yZS9s
b2FkZXIvY2FjaGUvQ2FjaGVkRm9udC5oCmluZGV4IGY2MzU2ZWEuLmYxYmM0ZDYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRGb250LmgKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEZvbnQuaApAQCAtMzksOSArMzksNiBAQCBjbGFz
cyBDYWNoZWRSZXNvdXJjZUxvYWRlcjsKIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGE7CiBjbGFzcyBT
VkdEb2N1bWVudDsKIGNsYXNzIFNWR0ZvbnRFbGVtZW50OwotY2xhc3MgU2hhcmVkQnVmZmVyOwot
c3RydWN0IEZvbnRDdXN0b21QbGF0Zm9ybURhdGE7Ci0KIHN0cnVjdCBGb250Q3VzdG9tUGxhdGZv
cm1EYXRhOwogCiBjbGFzcyBDYWNoZWRGb250IDogcHVibGljIENhY2hlZFJlc291cmNlIHsKQEAg
LTUyLDcgKzQ5LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBsb2FkKENhY2hlZFJlc291
cmNlTG9hZGVyKiwgY29uc3QgUmVzb3VyY2VMb2FkZXJPcHRpb25zJik7CiAKICAgICB2aXJ0dWFs
IHZvaWQgZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50Kik7Ci0gICAgdmlydHVhbCB2
b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2Vp
dmVkKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBk
YXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAKICAgICB2aXJ0dWFsIHZvaWQgYWxsQ2xpZW50
c1JlbW92ZWQoKTsKICAgICB2b2lkIGJlZ2luTG9hZElmTmVlZGVkKENhY2hlZFJlc291cmNlTG9h
ZGVyKiBkbCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
SW1hZ2UuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmNwcApp
bmRleCBhNzViM2M3Li4yYmVjOWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkSW1hZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRJbWFnZS5jcHAKQEAgLTM0Myw5ICszNDMsOSBAQCBzaXplX3QgQ2FjaGVkSW1hZ2U6Om1h
eGltdW1EZWNvZGVkSW1hZ2VTaXplKCkKICAgICByZXR1cm4gc2V0dGluZ3MgPyBzZXR0aW5ncy0+
bWF4aW11bURlY29kZWRJbWFnZVNpemUoKSA6IDA7CiB9CiAKLXZvaWQgQ2FjaGVkSW1hZ2U6OmRh
dGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQor
dm9pZCBDYWNoZWRJbWFnZTo6ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBi
b29sIGFsbERhdGFSZWNlaXZlZCkKIHsKLSAgICBtX2RhdGEgPSBSZXNvdXJjZUJ1ZmZlcjo6YWRv
cHRTaGFyZWRCdWZmZXIoZGF0YSk7CisgICAgbV9kYXRhID0gZGF0YTsKIAogICAgIGNyZWF0ZUlt
YWdlKCk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRJ
bWFnZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZEltYWdlLmgKaW5kZXgg
NjdlMDA2MC4uM2MxODliMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hl
L0NhY2hlZEltYWdlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZElt
YWdlLmgKQEAgLTcyLDcgKzcyLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBhbGxDbGll
bnRzUmVtb3ZlZCgpOwogICAgIHZpcnR1YWwgdm9pZCBkZXN0cm95RGVjb2RlZERhdGEoKTsKIAot
ICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29s
IGFsbERhdGFSZWNlaXZlZCk7CisgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNv
dXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwogICAgIHZpcnR1YWwgdm9p
ZCBlcnJvcihDYWNoZWRSZXNvdXJjZTo6U3RhdHVzKTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0UmVz
cG9uc2UoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYpOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jlc291cmNlLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSYXdSZXNvdXJjZS5jcHAKaW5kZXggZjg1YzJiZC4uZmRk
OWI4MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jl
c291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVz
b3VyY2UuY3BwCkBAIC00Miw3ICs0Miw3IEBAIENhY2hlZFJhd1Jlc291cmNlOjpDYWNoZWRSYXdS
ZXNvdXJjZShSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCkKIHsKIH0KIAotdm9pZCBD
YWNoZWRSYXdSZXNvdXJjZTo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9v
bCBhbGxEYXRhUmVjZWl2ZWQpCit2b2lkIENhY2hlZFJhd1Jlc291cmNlOjpkYXRhKFBhc3NSZWZQ
dHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogewogICAgIENh
Y2hlZFJlc291cmNlSGFuZGxlPENhY2hlZFJhd1Jlc291cmNlPiBwcm90ZWN0KHRoaXMpOwogICAg
IGlmIChkYXRhKSB7CkBAIC02NCw5ICs2NCw5IEBAIHZvaWQgQ2FjaGVkUmF3UmVzb3VyY2U6OmRh
dGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkCiAg
ICAgaWYgKG1fb3B0aW9ucy5zaG91bGRCdWZmZXJEYXRhID09IEJ1ZmZlckRhdGEpIHsKICAgICAg
ICAgaWYgKGRhdGEpCiAgICAgICAgICAgICBzZXRFbmNvZGVkU2l6ZShkYXRhLT5zaXplKCkpOwot
ICAgICAgICBtX2RhdGEgPSBSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFyZWRCdWZmZXIoZGF0YSk7
CisgICAgICAgIG1fZGF0YSA9IGRhdGE7CiAgICAgfQotICAgIENhY2hlZFJlc291cmNlOjpkYXRh
KG1fZGF0YSA/IG1fZGF0YS0+c2hhcmVkQnVmZmVyKCkgOiAwLCBhbGxEYXRhUmVjZWl2ZWQpOwor
ICAgIENhY2hlZFJlc291cmNlOjpkYXRhKG1fZGF0YSwgYWxsRGF0YVJlY2VpdmVkKTsKIH0KIAog
dm9pZCBDYWNoZWRSYXdSZXNvdXJjZTo6ZGlkQWRkQ2xpZW50KENhY2hlZFJlc291cmNlQ2xpZW50
KiBjKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJhd1Jl
c291cmNlLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2Uu
aAppbmRleCA3OGJlNWE1Li42ZDJlOTcwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvY2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
Y2FjaGUvQ2FjaGVkUmF3UmVzb3VyY2UuaApAQCAtNDgsNyArNDgsNyBAQCBwdWJsaWM6CiAKIHBy
aXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIGRpZEFkZENsaWVudChDYWNoZWRSZXNvdXJjZUNsaWVu
dCopOwotICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRh
LCBib29sIGFsbERhdGFSZWNlaXZlZCk7CisgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0
cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwogCiAgICAgdmly
dHVhbCBib29sIHNob3VsZElnbm9yZUhUVFBTdGF0dXNDb2RlRXJyb3JzKCkgY29uc3QgeyByZXR1
cm4gdHJ1ZTsgfQogICAgIHZpcnR1YWwgdm9pZCBhbGxDbGllbnRzUmVtb3ZlZCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRSZXNvdXJjZS5jcHAKaW5kZXggZGZiNDkz
OC4uNTgxMTVlMCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hl
ZFJlc291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkUmVz
b3VyY2UuY3BwCkBAIC0yNDksNyArMjQ5LDcgQEAgdm9pZCBDYWNoZWRSZXNvdXJjZTo6Y2hlY2tO
b3RpZnkoKQogICAgICAgICBjLT5ub3RpZnlGaW5pc2hlZCh0aGlzKTsKIH0KIAotdm9pZCBDYWNo
ZWRSZXNvdXJjZTo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4sIGJvb2wgYWxsRGF0YVJl
Y2VpdmVkKQordm9pZCBDYWNoZWRSZXNvdXJjZTo6ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVm
ZmVyPiwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7CiAgICAgaWYgKCFhbGxEYXRhUmVjZWl2ZWQp
CiAgICAgICAgIHJldHVybjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRSZXNvdXJjZS5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJl
c291cmNlLmgKaW5kZXggNTYyNjRjNy4uZWIzMWQ5ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL2NhY2hlL0NhY2hlZFJlc291cmNlLmgKQEAgLTEwMCw3ICsxMDAsNyBAQCBwdWJsaWM6CiAK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RW5jb2RpbmcoY29uc3QgU3RyaW5nJikgeyB9CiAgICAgdmly
dHVhbCBTdHJpbmcgZW5jb2RpbmcoKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQotICAgIHZp
cnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFsbERh
dGFSZWNlaXZlZCk7CisgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1
ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwogICAgIHZpcnR1YWwgdm9pZCBlcnJv
cihDYWNoZWRSZXNvdXJjZTo6U3RhdHVzKTsKIAogICAgIHZpcnR1YWwgYm9vbCBzaG91bGRJZ25v
cmVIVFRQU3RhdHVzQ29kZUVycm9ycygpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnQuY3BwIGIv
U291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNWR0RvY3VtZW50LmNwcAppbmRleCA2
OGYyZmI0Li40ZWM1NGE4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkU1ZHRG9jdW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9D
YWNoZWRTVkdEb2N1bWVudC5jcHAKQEAgLTI3LDcgKzI3LDcgQEAKIAogI2luY2x1ZGUgIkNhY2hl
ZFJlc291cmNlQ2xpZW50LmgiCiAjaW5jbHVkZSAiQ2FjaGVkUmVzb3VyY2VIYW5kbGUuaCIKLSNp
bmNsdWRlICJTaGFyZWRCdWZmZXIuaCIKKyNpbmNsdWRlICJSZXNvdXJjZUJ1ZmZlci5oIgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtNTMsNyArNTMsNyBAQCBTdHJpbmcgQ2FjaGVkU1ZHRG9jdW1lbnQ6OmVuY29kaW5nKCkgY29u
c3QKICAgICByZXR1cm4gbV9kZWNvZGVyLT5lbmNvZGluZygpLm5hbWUoKTsKIH0KIAotdm9pZCBD
YWNoZWRTVkdEb2N1bWVudDo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9v
bCBhbGxEYXRhUmVjZWl2ZWQpCit2b2lkIENhY2hlZFNWR0RvY3VtZW50OjpkYXRhKFBhc3NSZWZQ
dHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogewogICAgIGlm
ICghYWxsRGF0YVJlY2VpdmVkKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU1ZHRG9jdW1lbnQuaCBiL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5oCmluZGV4IDU0ZDVhODguLjgzZTU5YzQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVu
dC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTVkdEb2N1bWVudC5o
CkBAIC00MSw3ICs0MSw3IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgdm9pZCBzZXRFbmNvZGlu
Zyhjb25zdCBTdHJpbmcmKTsKICAgICB2aXJ0dWFsIFN0cmluZyBlbmNvZGluZygpIGNvbnN0Owot
ICAgIHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29s
IGFsbERhdGFSZWNlaXZlZCk7CisgICAgdmlydHVhbCB2b2lkIGRhdGEoUGFzc1JlZlB0cjxSZXNv
dXJjZUJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOwogCiAgICAgdmlydHVhbCB2
b2lkIHJlcG9ydE1lbW9yeVVzYWdlKE1lbW9yeU9iamVjdEluZm8qKSBjb25zdCBPVkVSUklERTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2NyaXB0LmNwcAppbmRleCBj
MWFiODRjLi4xNTExMjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUv
Q2FjaGVkU2NyaXB0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVk
U2NyaXB0LmNwcApAQCAtNzksMTIgKzc5LDEyIEBAIGNvbnN0IFN0cmluZyYgQ2FjaGVkU2NyaXB0
OjpzY3JpcHQoKQogICAgIHJldHVybiBtX3NjcmlwdDsKIH0KIAotdm9pZCBDYWNoZWRTY3JpcHQ6
OmRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+IGRhdGEsIGJvb2wgYWxsRGF0YVJlY2VpdmVk
KQordm9pZCBDYWNoZWRTY3JpcHQ6OmRhdGEoUGFzc1JlZlB0cjxSZXNvdXJjZUJ1ZmZlcj4gZGF0
YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiB7CiAgICAgaWYgKCFhbGxEYXRhUmVjZWl2ZWQpCiAg
ICAgICAgIHJldHVybjsKIAotICAgIG1fZGF0YSA9IFJlc291cmNlQnVmZmVyOjphZG9wdFNoYXJl
ZEJ1ZmZlcihkYXRhKTsKKyAgICBtX2RhdGEgPSBkYXRhOwogICAgIHNldEVuY29kZWRTaXplKG1f
ZGF0YS5nZXQoKSA/IG1fZGF0YS0+c2l6ZSgpIDogMCk7CiAgICAgc2V0TG9hZGluZyhmYWxzZSk7
CiAgICAgY2hlY2tOb3RpZnkoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRTY3JpcHQuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRT
Y3JpcHQuaAppbmRleCBjZjk5Y2NlLi5iODUxYmFmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNjcmlwdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRTY3JpcHQuaApAQCAtNDgsNyArNDgsNyBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKICAgICAgICAgdmlydHVhbCB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0cmluZyYpOwog
ICAgICAgICB2aXJ0dWFsIFN0cmluZyBlbmNvZGluZygpIGNvbnN0OwotICAgICAgICB2aXJ0dWFs
IHZvaWQgZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVj
ZWl2ZWQpOworICAgICAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAKICAgICAgICAgdmlydHVhbCB2b2lk
IGRlc3Ryb3lEZWNvZGVkRGF0YSgpOwogI2lmIFVTRShKU0MpICAgICAgICAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRTaGFkZXIuY3BwIGIvU291cmNlL1dl
YkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAKaW5kZXggNmVkNzBlYS4uODdjYjMx
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5jcHAKQEAg
LTYxLDEwICs2MSwxMCBAQCBjb25zdCBTdHJpbmcmIENhY2hlZFNoYWRlcjo6c2hhZGVyU3RyaW5n
KCkKICAgICByZXR1cm4gbV9zaGFkZXJTdHJpbmc7CiB9CiAKLXZvaWQgQ2FjaGVkU2hhZGVyOjpk
YXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkK
K3ZvaWQgQ2FjaGVkU2hhZGVyOjpkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEs
IGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogewogICAgIGlmIChhbGxEYXRhUmVjZWl2ZWQpCi0gICAg
ICAgIG1fZGF0YSA9IFJlc291cmNlQnVmZmVyOjphZG9wdFNoYXJlZEJ1ZmZlcihkYXRhKTsKKyAg
ICAgICAgbV9kYXRhID0gZGF0YTsKICAgICBDYWNoZWRSZXNvdXJjZTo6ZGF0YShkYXRhLCBhbGxE
YXRhUmVjZWl2ZWQpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkU2hhZGVyLmggYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkU2hh
ZGVyLmgKaW5kZXggZmE1NWFhMS4uNmQ4NDBkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL2NhY2hlL0NhY2hlZFNoYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9j
YWNoZS9DYWNoZWRTaGFkZXIuaApAQCAtNDQsNyArNDQsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVh
bCB+Q2FjaGVkU2hhZGVyKCk7CiAgICAgCiAgICAgY29uc3QgU3RyaW5nJiBzaGFkZXJTdHJpbmco
KTsKLSAgICB2b2lkIGRhdGEoUGFzc1JlZlB0cjxTaGFyZWRCdWZmZXI+LCBib29sIGFsbERhdGFS
ZWNlaXZlZCk7CisgICAgdm9pZCBkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+LCBib29s
IGFsbERhdGFSZWNlaXZlZCk7CiAgICAgCiAgICAgdmlydHVhbCB2b2lkIHJlcG9ydE1lbW9yeVVz
YWdlKE1lbW9yeU9iamVjdEluZm8qKSBjb25zdCBPVkVSUklERTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRUcmFjay5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmNwcAppbmRleCBlYjBhNzVlLi4wYTEy
ZGY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRy
YWNrLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNr
LmNwcApAQCAtNDgsOSArNDgsOSBAQCBDYWNoZWRUZXh0VHJhY2s6On5DYWNoZWRUZXh0VHJhY2so
KQogewogfQogCi12b2lkIENhY2hlZFRleHRUcmFjazo6ZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1
ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCit2b2lkIENhY2hlZFRleHRUcmFjazo6
ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZl
ZCkKIHsKLSAgICBtX2RhdGEgPSBSZXNvdXJjZUJ1ZmZlcjo6YWRvcHRTaGFyZWRCdWZmZXIoZGF0
YSk7CisgICAgbV9kYXRhID0gZGF0YTsKICAgICBzZXRFbmNvZGVkU2l6ZShtX2RhdGEuZ2V0KCkg
PyBtX2RhdGEtPnNpemUoKSA6IDApOwogCiAgICAgQ2FjaGVkUmVzb3VyY2VDbGllbnRXYWxrZXI8
Q2FjaGVkUmVzb3VyY2VDbGllbnQ+IHdhbGtlcihtX2NsaWVudHMpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRUcmFjay5oIGIvU291cmNlL1dlYkNv
cmUvbG9hZGVyL2NhY2hlL0NhY2hlZFRleHRUcmFjay5oCmluZGV4IDJiYmM2ZGIuLjJiYzYwZDAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNoZS9DYWNoZWRUZXh0VHJhY2su
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkVGV4dFRyYWNrLmgKQEAg
LTMzLDE0ICszMywxMiBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLWNsYXNzIFNoYXJlZEJ1
ZmZlcjsKLQogY2xhc3MgQ2FjaGVkVGV4dFRyYWNrIDogcHVibGljIENhY2hlZFJlc291cmNlIHsK
IHB1YmxpYzoKICAgICBDYWNoZWRUZXh0VHJhY2soY29uc3QgUmVzb3VyY2VSZXF1ZXN0Jik7CiAg
ICAgdmlydHVhbCB+Q2FjaGVkVGV4dFRyYWNrKCk7CiAKLSAgICB2aXJ0dWFsIHZvaWQgZGF0YShQ
YXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBhbGxEYXRhUmVjZWl2ZWQpOworICAg
IHZpcnR1YWwgdm9pZCBkYXRhKFBhc3NSZWZQdHI8UmVzb3VyY2VCdWZmZXI+IGRhdGEsIGJvb2wg
YWxsRGF0YVJlY2VpdmVkKTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRl
ci9jYWNoZS9DYWNoZWRYU0xTdHlsZVNoZWV0LmNwcAppbmRleCBkNDY1ZmQyLi5hYTIxMWYwIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkWFNMU3R5bGVTaGVl
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFhTTFN0eWxlU2hl
ZXQuY3BwCkBAIC02NCwxMiArNjQsMTIgQEAgU3RyaW5nIENhY2hlZFhTTFN0eWxlU2hlZXQ6OmVu
Y29kaW5nKCkgY29uc3QKICAgICByZXR1cm4gbV9kZWNvZGVyLT5lbmNvZGluZygpLm5hbWUoKTsK
IH0KIAotdm9pZCBDYWNoZWRYU0xTdHlsZVNoZWV0OjpkYXRhKFBhc3NSZWZQdHI8U2hhcmVkQnVm
ZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCkKK3ZvaWQgQ2FjaGVkWFNMU3R5bGVTaGVl
dDo6ZGF0YShQYXNzUmVmUHRyPFJlc291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNl
aXZlZCkKIHsKICAgICBpZiAoIWFsbERhdGFSZWNlaXZlZCkKICAgICAgICAgcmV0dXJuOwogCi0g
ICAgbV9kYXRhID0gUmVzb3VyY2VCdWZmZXI6OmFkb3B0U2hhcmVkQnVmZmVyKGRhdGEpOworICAg
IG1fZGF0YSA9IGRhdGE7CiAgICAgc2V0RW5jb2RlZFNpemUobV9kYXRhLmdldCgpID8gbV9kYXRh
LT5zaXplKCkgOiAwKTsKICAgICBpZiAobV9kYXRhLmdldCgpKSB7CiAgICAgICAgIG1fc2hlZXQg
PSBtX2RlY29kZXItPmRlY29kZShtX2RhdGEtPmRhdGEoKSwgZW5jb2RlZFNpemUoKSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2FjaGUvQ2FjaGVkWFNMU3R5bGVTaGVldC5o
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL2NhY2hlL0NhY2hlZFhTTFN0eWxlU2hlZXQuaAppbmRl
eCA0YThlMGFlLi5lNTE2MmI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvY2Fj
aGUvQ2FjaGVkWFNMU3R5bGVTaGVldC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9jYWNo
ZS9DYWNoZWRYU0xTdHlsZVNoZWV0LmgKQEAgLTQ1LDcgKzQ1LDcgQEAgbmFtZXNwYWNlIFdlYkNv
cmUgewogICAgICAgICAKICAgICAgICAgdmlydHVhbCB2b2lkIHNldEVuY29kaW5nKGNvbnN0IFN0
cmluZyYpOwogICAgICAgICB2aXJ0dWFsIFN0cmluZyBlbmNvZGluZygpIGNvbnN0OwotICAgICAg
ICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFNoYXJlZEJ1ZmZlcj4gZGF0YSwgYm9vbCBh
bGxEYXRhUmVjZWl2ZWQpOworICAgICAgICB2aXJ0dWFsIHZvaWQgZGF0YShQYXNzUmVmUHRyPFJl
c291cmNlQnVmZmVyPiBkYXRhLCBib29sIGFsbERhdGFSZWNlaXZlZCk7CiAgICAgICAgIAogICAg
ICAgICB2aXJ0dWFsIHZvaWQgcmVwb3J0TWVtb3J5VXNhZ2UoTWVtb3J5T2JqZWN0SW5mbyopIGNv
bnN0IE9WRVJSSURFOwogCg==
</data>
<flag name="review"
          id="180984"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>