<?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>121059</bug_id>
          
          <creation_ts>2013-09-09 16:31:38 -0700</creation_ts>
          <short_desc>Introduce WTF::createOwned</short_desc>
          <delta_ts>2013-09-09 17:42:51 -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>New Bugs</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>926986</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-09 16:31:38 -0700</bug_when>
    <thetext>Introduce WTF::createOwned</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926987</commentid>
    <comment_count>1</comment_count>
      <attachid>211114</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-09 16:35:03 -0700</bug_when>
    <thetext>Created attachment 211114
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926990</commentid>
    <comment_count>2</comment_count>
      <attachid>211114</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2013-09-09 16:37:36 -0700</bug_when>
    <thetext>Comment on attachment 211114
Patch

This will be even nicer with variadic template support eventually :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926991</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-09 16:37:49 -0700</bug_when>
    <thetext>Attachment 211114 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/wtf/FilePrintStream.cpp&apos;, u&apos;Source/WTF/wtf/FilePrintStream.h&apos;, u&apos;Source/WTF/wtf/HashTable.h&apos;, u&apos;Source/WTF/wtf/ListHashSet.h&apos;, u&apos;Source/WTF/wtf/OwnPtr.h&apos;, u&apos;Source/WTF/wtf/Threading.cpp&apos;, u&apos;Source/WTF/wtf/ThreadingPthreads.cpp&apos;, u&apos;Source/WTF/wtf/unicode/Collator.h&apos;, u&apos;Source/WTF/wtf/unicode/CollatorDefault.cpp&apos;, u&apos;Source/WTF/wtf/unicode/icu/CollatorICU.cpp&apos;]&quot; exit_code: 1
Source/WTF/wtf/unicode/icu/CollatorICU.cpp:61:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/FilePrintStream.h:31:  Alphabetical sorting problem.  [build/include_order] [4]
Source/WTF/wtf/unicode/CollatorDefault.cpp:48:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/FilePrintStream.cpp:44:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/OwnPtr.h:92:  Missing spaces around &amp;&amp;  [whitespace/operators] [3]
Source/WTF/wtf/OwnPtr.h:93:  Missing spaces around &amp;&amp;  [whitespace/operators] [3]
Total errors found: 6 in 11 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>926994</commentid>
    <comment_count>4</comment_count>
      <attachid>211117</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-09 16:45:14 -0700</bug_when>
    <thetext>Created attachment 211117
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>926995</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-09 16:46:39 -0700</bug_when>
    <thetext>Attachment 211117 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/wtf/FilePrintStream.cpp&apos;, u&apos;Source/WTF/wtf/FilePrintStream.h&apos;, u&apos;Source/WTF/wtf/HashTable.h&apos;, u&apos;Source/WTF/wtf/ListHashSet.h&apos;, u&apos;Source/WTF/wtf/OwnPtr.h&apos;, u&apos;Source/WTF/wtf/Threading.cpp&apos;, u&apos;Source/WTF/wtf/ThreadingPthreads.cpp&apos;, u&apos;Source/WTF/wtf/unicode/Collator.h&apos;, u&apos;Source/WTF/wtf/unicode/CollatorDefault.cpp&apos;, u&apos;Source/WTF/wtf/unicode/icu/CollatorICU.cpp&apos;]&quot; exit_code: 1
Source/WTF/wtf/unicode/icu/CollatorICU.cpp:61:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/FilePrintStream.h:31:  Alphabetical sorting problem.  [build/include_order] [4]
Source/WTF/wtf/unicode/CollatorDefault.cpp:48:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/FilePrintStream.cpp:44:  The return type should use PassOwnPtr instead of OwnPtr.  [readability/pass_ptr] [5]
Source/WTF/wtf/OwnPtr.h:92:  Missing spaces around &amp;&amp;  [whitespace/operators] [3]
Source/WTF/wtf/OwnPtr.h:93:  Missing spaces around &amp;&amp;  [whitespace/operators] [3]
Total errors found: 6 in 11 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>927023</commentid>
    <comment_count>6</comment_count>
      <attachid>211117</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-09 17:42:49 -0700</bug_when>
    <thetext>Comment on attachment 211117
Patch

Clearing flags on attachment: 211117

Committed r155407: &lt;http://trac.webkit.org/changeset/155407&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>927024</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-09 17:42:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211114</attachid>
            <date>2013-09-09 16:35:03 -0700</date>
            <delta_ts>2013-09-09 16:45:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-121059-20130909163502.patch</filename>
            <type>text/plain</type>
            <size>11898</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU1MzgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDczMTNjZGU5NzFiMTdkNjRmNTExMjFi
MjY1NGY1OGZkZTI5Y2Y0MjcuLmZlZTgyOWY0MzRmMzg3YzY4MGNmNmUyNjZmMTRmMDY5M2FkYTlk
ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTMtMDktMDkgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBJbnRyb2R1Y2UgV1RGOjpjcmVhdGVPd25lZAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIxMDU5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV1RGOjpjcmVh
dGVPd25lZCBpcyBhIGZ1bmN0aW9uIHRlbXBsYXRlIHRoYXQgZG9lcyBhZG9wdFB0ciArIG5ldyBp
biBhIHNpbmdsZSBmdW5jdGlvbiBjYWxsLAorICAgICAgICB3aXRoIGFsbCB0aGUgYXJndW1lbnRz
IGJlaW5nIHBlcmZlY3RseSBmb3J3YXJkZWQgdGhhbmtzIHRvIEMrKzExLgorICAgICAgICAKKyAg
ICAgICAgQmVpbmcgZm9yd2FyZC1sb29raW5nLCBjcmVhdGVPd25lZCByZXR1cm5zIGFuIE93blB0
ciByYXRoZXIgdGhhbiBhIFBhc3NPd25QdHIgc2luY2UgdGhlIHBsYW4gaXMgCisgICAgICAgIHRv
IGdldCByaWQgb2YgUGFzc093blB0ciBhbmQganVzdCB1c2Ugc3RkOjptb3ZlIGluc3RlYWQuCisK
KyAgICAgICAgKiB3dGYvRmlsZVByaW50U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYvRmlsZVBy
aW50U3RyZWFtLmg6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAqIHd0Zi9M
aXN0SGFzaFNldC5oOgorICAgICAgICAqIHd0Zi9Pd25QdHIuaDoKKyAgICAgICAgKFdURjo6T3du
UHRyOjpPd25QdHIpOgorICAgICAgICAoV1RGOjpjcmVhdGVPd25lZCk6CisgICAgICAgIChXVEY6
OmNyZWF0ZVRocmVhZCk6CisgICAgICAgIChXVEY6OmVzdGFibGlzaElkZW50aWZpZXJGb3JQdGhy
ZWFkSGFuZGxlKToKKyAgICAgICAgKFdURjo6Y3JlYXRlVGhyZWFkSW50ZXJuYWwpOgorICAgICAg
ICAoV1RGOjpDb2xsYXRvcjo6dXNlckRlZmF1bHQpOgorICAgICAgICAoV1RGOjpDb2xsYXRvcjo6
dXNlckRlZmF1bHQpOgorCiAyMDEzLTA5LTA5ICBMdWNpYW5vIFdvbGYgIDxsdWNpYW5vLndvbGZA
b3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBOaXggdXBzdHJlYW1pbmcgLSBBZGRpbmcgc3R1YnMg
YW5kIE5peCBzcGVjaWZpYyBwbGF0Zm9ybSBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93
dGYvRmlsZVByaW50U3RyZWFtLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5j
cHAKaW5kZXggYjVhYjI1ZTBiZmU5N2Q0ZWZlZGU0OGQ0ZTNjOTBmNmNhMGEzNGVhZS4uYjI3ZThi
ZGFhMGY3MTg2N2Q0MmEyNDY2ZjdhNTJhNWUwMDZlMDdhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvRmlsZVByaW50U3RyZWFtLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRT
dHJlYW0uY3BwCkBAIC00MSwxMyArNDEsMTMgQEAgRmlsZVByaW50U3RyZWFtOjp+RmlsZVByaW50
U3RyZWFtKCkKICAgICBmY2xvc2UobV9maWxlKTsKIH0KIAotUGFzc093blB0cjxGaWxlUHJpbnRT
dHJlYW0+IEZpbGVQcmludFN0cmVhbTo6b3Blbihjb25zdCBjaGFyKiBmaWxlbmFtZSwgY29uc3Qg
Y2hhciogbW9kZSkKK093blB0cjxGaWxlUHJpbnRTdHJlYW0+IEZpbGVQcmludFN0cmVhbTo6b3Bl
bihjb25zdCBjaGFyKiBmaWxlbmFtZSwgY29uc3QgY2hhciogbW9kZSkKIHsKICAgICBGSUxFKiBm
aWxlID0gZm9wZW4oZmlsZW5hbWUsIG1vZGUpOwogICAgIGlmICghZmlsZSkKLSAgICAgICAgcmV0
dXJuIFBhc3NPd25QdHI8RmlsZVByaW50U3RyZWFtPigpOwotICAgIAotICAgIHJldHVybiBhZG9w
dFB0cihuZXcgRmlsZVByaW50U3RyZWFtKGZpbGUpKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisKKyAgICByZXR1cm4gY3JlYXRlT3duZWQ8RmlsZVByaW50U3RyZWFtPihmaWxlKTsKIH0KIAog
dm9pZCBGaWxlUHJpbnRTdHJlYW06OnZwcmludGYoY29uc3QgY2hhciogZm9ybWF0LCB2YV9saXN0
IGFyZ0xpc3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaCBi
L1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCmluZGV4IDZhMDBmMDBhZWY5YTkwYTQ3
OGNkYzAzNGM5Mjk1OWM2Zjk2MmNhZWEuLjRjMDc1NDhjNzVjOTRmNzcyZjA0MjA0MTlhYTBhNDQ0
MzYzZDE3OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCisr
KyBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCkBAIC0yNyw4ICsyNyw4IEBACiAj
ZGVmaW5lIEZpbGVQcmludFN0cmVhbV9oCiAKICNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUg
PHd0Zi9QYXNzT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVk
ZSA8d3RmL093blB0ci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNDIsNyArNDIsNyBAQCBw
dWJsaWM6CiAgICAgRmlsZVByaW50U3RyZWFtKEZJTEUqLCBBZG9wdGlvbk1vZGUgPSBBZG9wdCk7
CiAgICAgdmlydHVhbCB+RmlsZVByaW50U3RyZWFtKCk7CiAgICAgCi0gICAgV1RGX0VYUE9SVF9Q
UklWQVRFIHN0YXRpYyBQYXNzT3duUHRyPEZpbGVQcmludFN0cmVhbT4gb3Blbihjb25zdCBjaGFy
KiBmaWxlbmFtZSwgY29uc3QgY2hhciogbW9kZSk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0
YXRpYyBPd25QdHI8RmlsZVByaW50U3RyZWFtPiBvcGVuKGNvbnN0IGNoYXIqIGZpbGVuYW1lLCBj
b25zdCBjaGFyKiBtb2RlKTsKICAgICAKICAgICBGSUxFKiBmaWxlKCkgeyByZXR1cm4gbV9maWxl
OyB9CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaCBiL1NvdXJj
ZS9XVEYvd3RmL0hhc2hUYWJsZS5oCmluZGV4IDUwMjIyM2E0OGQzMjE1YTBjODJlNzUzYTk0NmVi
YWIwZjI2MTA5YTUuLjAyMTgxNTFlZjE1NDliNzVhYTg2NzM4NTE0N2QwOTJjYWUyZGYwNTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0hhc2hUYWJsZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L0hhc2hUYWJsZS5oCkBAIC01NTUsMTAgKzU1NSwxMCBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoYWRvcHRQdHIobmV3IE11
dGV4KSkKKyAgICAgICAgLCBtX211dGV4KGNyZWF0ZU93bmVkPE11dGV4PigpKQogI2VuZGlmCiAj
aWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICwgbV9zdGF0cyhhZG9w
dFB0cihuZXcgU3RhdHMpKQorICAgICAgICAsIG1fc3RhdHMoY3JlYXRlT3duZWQ8U3RhdHM+KCkp
CiAjZW5kaWYKICAgICB7CiAgICAgfQpAQCAtMTE2NiwxMCArMTE2NiwxMCBAQCBuYW1lc3BhY2Ug
V1RGIHsKICAgICAgICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9J
VEVSQVRPUlMKICAgICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoYWRv
cHRQdHIobmV3IE11dGV4KSkKKyAgICAgICAgLCBtX211dGV4KGNyZWF0ZU93bmVkPE11dGV4Pigp
KQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICwg
bV9zdGF0cyhhZG9wdFB0cihuZXcgU3RhdHMoKm90aGVyLm1fc3RhdHMpKSkKKyAgICAgICAgLCBt
X3N0YXRzKGNyZWF0ZU93bmVkPFN0YXRzPigqb3RoZXIubV9zdGF0cykpCiAjZW5kaWYKICAgICB7
CiAgICAgICAgIC8vIENvcHkgdGhlIGhhc2ggdGFibGUgdGhlIGR1bWIgd2F5LCBieSBhZGRpbmcg
ZWFjaCBlbGVtZW50IHRvIHRoZSBuZXcgdGFibGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi9MaXN0SGFzaFNldC5oIGIvU291cmNlL1dURi93dGYvTGlzdEhhc2hTZXQuaAppbmRleCAwNzMy
MTYwNDcxN2NmOWExZWEzMjc3M2M1MzM0YTJjOTMxYjM5ZjM3Li5jNTNiNzMzMDgyYmFlYWYwODA3
YzJkZmJiZjlmMDgxMzM3OGY4ZTAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9MaXN0SGFz
aFNldC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0xpc3RIYXNoU2V0LmgKQEAgLTUxMSw3ICs1MTEs
NyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICBpbmxpbmUgTGlzdEhhc2hTZXQ8VCwgaW5saW5lQ2Fw
YWNpdHksIFU+OjpMaXN0SGFzaFNldCgpCiAgICAgICAgIDogbV9oZWFkKDApCiAgICAgICAgICwg
bV90YWlsKDApCi0gICAgICAgICwgbV9hbGxvY2F0b3IoYWRvcHRQdHIobmV3IE5vZGVBbGxvY2F0
b3IpKQorICAgICAgICAsIG1fYWxsb2NhdG9yKGNyZWF0ZU93bmVkPE5vZGVBbGxvY2F0b3I+KCkp
CiAgICAgewogICAgIH0KIApAQCAtNTE5LDcgKzUxOSw3IEBAIG5hbWVzcGFjZSBXVEYgewogICAg
IGlubGluZSBMaXN0SGFzaFNldDxULCBpbmxpbmVDYXBhY2l0eSwgVT46Okxpc3RIYXNoU2V0KGNv
bnN0IExpc3RIYXNoU2V0JiBvdGhlcikKICAgICAgICAgOiBtX2hlYWQoMCkKICAgICAgICAgLCBt
X3RhaWwoMCkKLSAgICAgICAgLCBtX2FsbG9jYXRvcihhZG9wdFB0cihuZXcgTm9kZUFsbG9jYXRv
cikpCisgICAgICAgICwgbV9hbGxvY2F0b3IoY3JlYXRlT3duZWQ8Tm9kZUFsbG9jYXRvcj4oKSkK
ICAgICB7CiAgICAgICAgIGNvbnN0X2l0ZXJhdG9yIGVuZCA9IG90aGVyLmVuZCgpOwogICAgICAg
ICBmb3IgKGNvbnN0X2l0ZXJhdG9yIGl0ID0gb3RoZXIuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvT3duUHRyLmggYi9Tb3VyY2UvV1RGL3d0Zi9P
d25QdHIuaAppbmRleCBlMGViODZhMjZiOTZhMTk0ZmYyOGM4ZWZmN2QyZGNlMTc3ODQzNzZkLi45
MmE0YjQ5YjhmZGRlOTBhNmJhYjk0YTJjYjZkMzkzMGQzNDU3Mzg3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi9Pd25QdHIuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Pd25QdHIuaApAQCAtMzYs
MTEgKzM2LDYgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gUGFz
c093blB0cjxUPiBhZG9wdFB0cihUKik7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBjbGFz
cyBPd25QdHIgewotI2lmIENPTVBJTEVSX1NVUFBPUlRTKENYWF9SVkFMVUVfUkVGRVJFTkNFUykK
LSAgICAgICAgLy8gSWYgcnZhbHVlIHJlZmVyZW5jZXMgYXJlIG5vdCBzdXBwb3J0ZWQsIHRoZSBj
b3B5IGNvbnN0cnVjdG9yIGlzCi0gICAgICAgIC8vIHB1YmxpYyBzbyBPd25QdHIgY2Fubm90IGJl
IG1hcmtlZCBub25jb3B5YWJsZS4gU2VlIG5vdGUgYmVsb3cuCi0gICAgICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKE93blB0cik7Ci0jZW5kaWYKICAgICBwdWJsaWM6CiAgICAgICAgIHR5cGVkZWYg
dHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9pbnRlcjxUPjo6dHlwZSBWYWx1ZVR5cGU7CiAgICAgICAg
IHR5cGVkZWYgVmFsdWVUeXBlKiBQdHJUeXBlOwpAQCAtOTEsNiArODYsMTIgQEAgbmFtZXNwYWNl
IFdURiB7CiAgICAgICAgIHZvaWQgc3dhcChPd25QdHImIG8pIHsgc3RkOjpzd2FwKG1fcHRyLCBv
Lm1fcHRyKTsgfQogCiAgICAgcHJpdmF0ZToKKyAgICAgICAgZXhwbGljaXQgT3duUHRyKFB0clR5
cGUgcHRyKSA6IG1fcHRyKHB0cikgeyB9CisKKyAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVT4g
ZnJpZW5kIE93blB0cjxVPiBjcmVhdGVPd25lZCgpOworICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBVLCB0eXBlbmFtZSBBMT4gZnJpZW5kIE93blB0cjxVPiBjcmVhdGVPd25lZChBMSYmKTsKKyAg
ICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVSwgdHlwZW5hbWUgQTEsIHR5cGVuYW1lIEEyPiBmcmll
bmQgT3duUHRyPFU+IGNyZWF0ZU93bmVkKEExJiYsIEEyJiYpOworCiAjaWYgIUNPTVBJTEVSX1NV
UFBPUlRTKENYWF9SVkFMVUVfUkVGRVJFTkNFUykKICAgICAgICAgLy8gSWYgcnZhbHVlIHJlZmVy
ZW5jZXMgYXJlIHN1cHBvcnRlZCwgbm9uY29weWFibGUgdGFrZXMgY2FyZSBvZiB0aGlzLgogICAg
ICAgICBPd25QdHImIG9wZXJhdG9yPShjb25zdCBPd25QdHImKTsKQEAgLTIxMiw4ICsyMTMsMjcg
QEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgIHJldHVybiBwLmdldCgpOwogICAgIH0KIAordGVt
cGxhdGU8dHlwZW5hbWUgVD4KK2lubGluZSBPd25QdHI8VD4gY3JlYXRlT3duZWQoKQoreworICAg
IHJldHVybiBPd25QdHI8VD4obmV3IFQpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBl
bmFtZSBBMT4KK2lubGluZSBPd25QdHI8VD4gY3JlYXRlT3duZWQoQTEmJiBhMSkKK3sKKyAgICBy
ZXR1cm4gT3duUHRyPFQ+KG5ldyBUKHN0ZDo6Zm9yd2FyZDxBMT4oYTEpKSk7Cit9CisKK3RlbXBs
YXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIEExLCB0eXBlbmFtZSBBMj4KK2lubGluZSBPd25QdHI8
VD4gY3JlYXRlT3duZWQoQTEmJiBhMSwgQTImJiBhMikKK3sKKyAgICByZXR1cm4gT3duUHRyPFQ+
KG5ldyBUKHN0ZDo6Zm9yd2FyZDxBMT4oYTEpLCBzdGQ6OmZvcndhcmQ8QTI+KGEyKSkpOworfQor
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPd25QdHI7Cit1c2luZyBXVEY6OmNy
ZWF0ZU93bmVkOwogCiAjZW5kaWYgLy8gV1RGX093blB0cl9oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9UaHJlYWRpbmcuY3BwIGIvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAppbmRl
eCBjM2ZmNTgzMTVmMDNlNWNhZDU0MzE1OWQ3NmVmNzgxYmY2NzcyNzg1Li4xMmMwY2E0NTc4NWVh
YTVkZTI5NDg0NzlkZWMzMjU2ZmE4OGFkNTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9U
aHJlYWRpbmcuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHAKQEAgLTExNiw3
ICsxMTYsNyBAQCBzdGF0aWMgdm9pZCBjb21wYXRFbnRyeVBvaW50KHZvaWQqIHBhcmFtKQogCiBU
aHJlYWRJZGVudGlmaWVyIGNyZWF0ZVRocmVhZChUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1
ZSBlbnRyeVBvaW50LCB2b2lkKiBkYXRhLCBjb25zdCBjaGFyKiBuYW1lKQogewotICAgIE93blB0
cjxUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24+IGludm9jYXRpb24gPSBh
ZG9wdFB0cihuZXcgVGhyZWFkRnVuY3Rpb25XaXRoUmV0dXJuVmFsdWVJbnZvY2F0aW9uKGVudHJ5
UG9pbnQsIGRhdGEpKTsKKyAgICBhdXRvIGludm9jYXRpb24gPSBjcmVhdGVPd25lZDxUaHJlYWRG
dW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24+KGVudHJ5UG9pbnQsIGRhdGEpOwogCiAg
ICAgLy8gQmFsYW5jZWQgYnkgYWRvcHRQdHIoKSBpbiBjb21wYXRFbnRyeVBvaW50LgogICAgIHJl
dHVybiBjcmVhdGVUaHJlYWQoY29tcGF0RW50cnlQb2ludCwgaW52b2NhdGlvbi5sZWFrUHRyKCks
IG5hbWUpOwpAQCAtMTM2LDcgKzEzNiw3IEBAIFdURl9FWFBPUlRfUFJJVkFURSBUaHJlYWRJZGVu
dGlmaWVyIGNyZWF0ZVRocmVhZChUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1ZSBlCiAKIFRo
cmVhZElkZW50aWZpZXIgY3JlYXRlVGhyZWFkKFRocmVhZEZ1bmN0aW9uV2l0aFJldHVyblZhbHVl
IGVudHJ5UG9pbnQsIHZvaWQqIGRhdGEpCiB7Ci0gICAgT3duUHRyPFRocmVhZEZ1bmN0aW9uV2l0
aFJldHVyblZhbHVlSW52b2NhdGlvbj4gaW52b2NhdGlvbiA9IGFkb3B0UHRyKG5ldyBUaHJlYWRG
dW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24oZW50cnlQb2ludCwgZGF0YSkpOworICAg
IGF1dG8gaW52b2NhdGlvbiA9IGNyZWF0ZU93bmVkPFRocmVhZEZ1bmN0aW9uV2l0aFJldHVyblZh
bHVlSW52b2NhdGlvbj4oZW50cnlQb2ludCwgZGF0YSk7CiAKICAgICAvLyBCYWxhbmNlZCBieSBh
ZG9wdFB0cigpIGluIGNvbXBhdEVudHJ5UG9pbnQuCiAgICAgcmV0dXJuIGNyZWF0ZVRocmVhZChj
b21wYXRFbnRyeVBvaW50LCBpbnZvY2F0aW9uLmxlYWtQdHIoKSwgMCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9UaHJl
YWRpbmdQdGhyZWFkcy5jcHAKaW5kZXggMDNkYmVlYzdlNWVkOWNkZGFlNzRlYTExODBlMDA5ZDdk
MWVmZjVmZC4uMzNiYjdjNDEzZTVhZDkzOGVmNGY2Y2ZkZGExMjIyYmU5MjdkMTk5YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcApAQCAtMTc5LDcgKzE3OSw3IEBAIHN0YXRpYyBU
aHJlYWRJZGVudGlmaWVyIGVzdGFibGlzaElkZW50aWZpZXJGb3JQdGhyZWFkSGFuZGxlKGNvbnN0
IHB0aHJlYWRfdCYgcHRoCiAgICAgQVNTRVJUKCFpZGVudGlmaWVyQnlQdGhyZWFkSGFuZGxlKHB0
aHJlYWRIYW5kbGUpKTsKICAgICBNdXRleExvY2tlciBsb2NrZXIodGhyZWFkTWFwTXV0ZXgoKSk7
CiAgICAgc3RhdGljIFRocmVhZElkZW50aWZpZXIgaWRlbnRpZmllckNvdW50ID0gMTsKLSAgICB0
aHJlYWRNYXAoKS5hZGQoaWRlbnRpZmllckNvdW50LCBhZG9wdFB0cihuZXcgUHRocmVhZFN0YXRl
KHB0aHJlYWRIYW5kbGUpKSk7CisgICAgdGhyZWFkTWFwKCkuYWRkKGlkZW50aWZpZXJDb3VudCwg
Y3JlYXRlT3duZWQ8UHRocmVhZFN0YXRlPihwdGhyZWFkSGFuZGxlKS5yZWxlYXNlKCkpOwogICAg
IHJldHVybiBpZGVudGlmaWVyQ291bnQrKzsKIH0KIApAQCAtMTk4LDcgKzE5OCw3IEBAIHN0YXRp
YyB2b2lkKiB3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQqIHBhcmFtKQogCiBUaHJlYWRJZGVudGlm
aWVyIGNyZWF0ZVRocmVhZEludGVybmFsKFRocmVhZEZ1bmN0aW9uIGVudHJ5UG9pbnQsIHZvaWQq
IGRhdGEsIGNvbnN0IGNoYXIqKQogewotICAgIE93blB0cjxUaHJlYWRGdW5jdGlvbkludm9jYXRp
b24+IGludm9jYXRpb24gPSBhZG9wdFB0cihuZXcgVGhyZWFkRnVuY3Rpb25JbnZvY2F0aW9uKGVu
dHJ5UG9pbnQsIGRhdGEpKTsKKyAgICBhdXRvIGludm9jYXRpb24gPSBXVEY6OmNyZWF0ZU93bmVk
PFRocmVhZEZ1bmN0aW9uSW52b2NhdGlvbj4oZW50cnlQb2ludCwgZGF0YSk7CiAgICAgcHRocmVh
ZF90IHRocmVhZEhhbmRsZTsKICAgICBpZiAocHRocmVhZF9jcmVhdGUoJnRocmVhZEhhbmRsZSwg
MCwgd3RmVGhyZWFkRW50cnlQb2ludCwgaW52b2NhdGlvbi5nZXQoKSkpIHsKICAgICAgICAgTE9H
X0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIHB0aHJlYWQgYXQgZW50cnkgcG9pbnQgJXAgd2l0aCBk
YXRhICVwIiwgd3RmVGhyZWFkRW50cnlQb2ludCwgaW52b2NhdGlvbi5nZXQoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yLmggYi9Tb3VyY2UvV1RGL3d0Zi91
bmljb2RlL0NvbGxhdG9yLmgKaW5kZXggMTYxZmI2ZjAxMGU4OGIzYWQ5ZDU3YzgxYWRjZDI3MTMx
Yjg1ZTIyMy4uMTU4ZjlhZmIwYTI0OTI1MmE2Y2Y3YzIzM2YzOTdiYjUzMTM1MmY3NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvci5oCisrKyBiL1NvdXJjZS9XVEYv
d3RmL3VuaWNvZGUvQ29sbGF0b3IuaApAQCAtMzAsNyArMzAsNyBAQAogI2RlZmluZSBXVEZfQ29s
bGF0b3JfaAogCiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bh
c3NPd25QdHIuaD4KKyNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNv
ZGUvVW5pY29kZS5oPgogCiAjaWYgVVNFKElDVV9VTklDT0RFKSAmJiAhVUNPTkZJR19OT19DT0xM
QVRJT04KQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgIFdURl9FWFBP
UlRfUFJJVkFURSB+Q29sbGF0b3IoKTsKICAgICAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQg
c2V0T3JkZXJMb3dlckZpcnN0KGJvb2wpOwogCi0gICAgICAgIFdURl9FWFBPUlRfUFJJVkFURSBz
dGF0aWMgUGFzc093blB0cjxDb2xsYXRvcj4gdXNlckRlZmF1bHQoKTsKKyAgICAgICAgV1RGX0VY
UE9SVF9QUklWQVRFIHN0YXRpYyBPd25QdHI8Q29sbGF0b3I+IHVzZXJEZWZhdWx0KCk7CiAKICAg
ICAgICAgV1RGX0VYUE9SVF9QUklWQVRFIFJlc3VsdCBjb2xsYXRlKGNvbnN0IDo6VUNoYXIqLCBz
aXplX3QsIGNvbnN0IDo6VUNoYXIqLCBzaXplX3QpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91
bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHAKaW5kZXggN2JkZTExNGE0OGJlYTFhYjI5MDk5MmRm
MTE2MTQxZDZhZTM0NDM3ZS4uZmU1Y2ZlMzg3MjE4NGU1ZjI4OGIwNDBhNjdkZDA3YjQxOGIwMjQy
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcApAQCAtNDUs
OSArNDUsOSBAQCB2b2lkIENvbGxhdG9yOjpzZXRPcmRlckxvd2VyRmlyc3QoYm9vbCkKIHsKIH0K
IAotUGFzc093blB0cjxDb2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKK093blB0cjxD
b2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKIHsKLSAgICByZXR1cm4gYWRvcHRQdHIo
bmV3IENvbGxhdG9yKDApKTsKKyAgICByZXR1cm4gY3JlYXRlT3duZWQ8Q29sbGF0b3I+KDApOwog
fQogCiAvLyBBIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIHBsYXRmb3JtcyB0aGF0IGxhY2sg
VW5pY29kZS1hd2FyZSBjb2xsYXRpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi91bmlj
b2RlL2ljdS9Db2xsYXRvcklDVS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91bmljb2RlL2ljdS9Db2xs
YXRvcklDVS5jcHAKaW5kZXggYzc0ZjE0OGQxNjZlZTUyZmZlMTk2Y2JkNWM2NTg0ZjliYzQ3NGVj
Ny4uZTdhZmZkYzc4Y2I0MTFhZWYxMjQ5MjIwZWRhNDYyNDM5Njk0MTczMSAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi93dGYvdW5pY29kZS9pY3UvQ29sbGF0b3JJQ1UuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL3VuaWNvZGUvaWN1L0NvbGxhdG9ySUNVLmNwcApAQCAtNTgsNyArNTgsNyBAQCBDb2xs
YXRvcjo6Q29sbGF0b3IoY29uc3QgY2hhciogbG9jYWxlKQogewogfQogCi1QYXNzT3duUHRyPENv
bGxhdG9yPiBDb2xsYXRvcjo6dXNlckRlZmF1bHQoKQorT3duUHRyPENvbGxhdG9yPiBDb2xsYXRv
cjo6dXNlckRlZmF1bHQoKQogewogI2lmIE9TKERBUldJTikgJiYgVVNFKENGKQogICAgIC8vIE1h
YyBPUyBYIGRvZXNuJ3Qgc2V0IFVOSVggbG9jYWxlIHRvIG1hdGNoIHVzZXItc2VsZWN0ZWQgb25l
LCBzbyBJQ1UgZGVmYXVsdCBkb2Vzbid0IHdvcmsuCkBAIC03MSwxMSArNzEsMTEgQEAgUGFzc093
blB0cjxDb2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKICNlbmRpZgogICAgIGNoYXIg
YnVmWzI1Nl07CiAgICAgaWYgKCFjb2xsYXRpb25PcmRlcikKLSAgICAgICAgcmV0dXJuIGFkb3B0
UHRyKG5ldyBDb2xsYXRvcigiIikpOworICAgICAgICByZXR1cm4gY3JlYXRlT3duZWQ8Q29sbGF0
b3I+KCIiKTsKICAgICBDRlN0cmluZ0dldENTdHJpbmcoY29sbGF0aW9uT3JkZXIsIGJ1Ziwgc2l6
ZW9mKGJ1ZiksIGtDRlN0cmluZ0VuY29kaW5nQVNDSUkpOwotICAgIHJldHVybiBhZG9wdFB0cihu
ZXcgQ29sbGF0b3IoYnVmKSk7CisgICAgcmV0dXJuIGNyZWF0ZU93bmVkPENvbGxhdG9yPihidWYp
OwogI2Vsc2UKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IENvbGxhdG9yKDApKTsKKyAgICByZXR1
cm4gY3JlYXRlT3duZWQ8Q29sbGF0b3I+KDApOwogI2VuZGlmCiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211117</attachid>
            <date>2013-09-09 16:45:14 -0700</date>
            <delta_ts>2013-09-09 17:42:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-121059-20130909164513.patch</filename>
            <type>text/plain</type>
            <size>11924</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU1MzgwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IDczMTNjZGU5NzFiMTdkNjRmNTExMjFi
MjY1NGY1OGZkZTI5Y2Y0MjcuLmZlZTgyOWY0MzRmMzg3YzY4MGNmNmUyNjZmMTRmMDY5M2FkYTlk
ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjkgQEAKKzIwMTMtMDktMDkgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBJbnRyb2R1Y2UgV1RGOjpjcmVhdGVPd25lZAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIxMDU5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV1RGOjpjcmVh
dGVPd25lZCBpcyBhIGZ1bmN0aW9uIHRlbXBsYXRlIHRoYXQgZG9lcyBhZG9wdFB0ciArIG5ldyBp
biBhIHNpbmdsZSBmdW5jdGlvbiBjYWxsLAorICAgICAgICB3aXRoIGFsbCB0aGUgYXJndW1lbnRz
IGJlaW5nIHBlcmZlY3RseSBmb3J3YXJkZWQgdGhhbmtzIHRvIEMrKzExLgorICAgICAgICAKKyAg
ICAgICAgQmVpbmcgZm9yd2FyZC1sb29raW5nLCBjcmVhdGVPd25lZCByZXR1cm5zIGFuIE93blB0
ciByYXRoZXIgdGhhbiBhIFBhc3NPd25QdHIgc2luY2UgdGhlIHBsYW4gaXMgCisgICAgICAgIHRv
IGdldCByaWQgb2YgUGFzc093blB0ciBhbmQganVzdCB1c2Ugc3RkOjptb3ZlIGluc3RlYWQuCisK
KyAgICAgICAgKiB3dGYvRmlsZVByaW50U3RyZWFtLmNwcDoKKyAgICAgICAgKiB3dGYvRmlsZVBy
aW50U3RyZWFtLmg6CisgICAgICAgICogd3RmL0hhc2hUYWJsZS5oOgorICAgICAgICAqIHd0Zi9M
aXN0SGFzaFNldC5oOgorICAgICAgICAqIHd0Zi9Pd25QdHIuaDoKKyAgICAgICAgKFdURjo6T3du
UHRyOjpPd25QdHIpOgorICAgICAgICAoV1RGOjpjcmVhdGVPd25lZCk6CisgICAgICAgIChXVEY6
OmNyZWF0ZVRocmVhZCk6CisgICAgICAgIChXVEY6OmVzdGFibGlzaElkZW50aWZpZXJGb3JQdGhy
ZWFkSGFuZGxlKToKKyAgICAgICAgKFdURjo6Y3JlYXRlVGhyZWFkSW50ZXJuYWwpOgorICAgICAg
ICAoV1RGOjpDb2xsYXRvcjo6dXNlckRlZmF1bHQpOgorICAgICAgICAoV1RGOjpDb2xsYXRvcjo6
dXNlckRlZmF1bHQpOgorCiAyMDEzLTA5LTA5ICBMdWNpYW5vIFdvbGYgIDxsdWNpYW5vLndvbGZA
b3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBOaXggdXBzdHJlYW1pbmcgLSBBZGRpbmcgc3R1YnMg
YW5kIE5peCBzcGVjaWZpYyBwbGF0Zm9ybSBmaWxlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93
dGYvRmlsZVByaW50U3RyZWFtLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5j
cHAKaW5kZXggYjVhYjI1ZTBiZmU5N2Q0ZWZlZGU0OGQ0ZTNjOTBmNmNhMGEzNGVhZS4uYjI3ZThi
ZGFhMGY3MTg2N2Q0MmEyNDY2ZjdhNTJhNWUwMDZlMDdhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dU
Ri93dGYvRmlsZVByaW50U3RyZWFtLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRT
dHJlYW0uY3BwCkBAIC00MSwxMyArNDEsMTMgQEAgRmlsZVByaW50U3RyZWFtOjp+RmlsZVByaW50
U3RyZWFtKCkKICAgICBmY2xvc2UobV9maWxlKTsKIH0KIAotUGFzc093blB0cjxGaWxlUHJpbnRT
dHJlYW0+IEZpbGVQcmludFN0cmVhbTo6b3Blbihjb25zdCBjaGFyKiBmaWxlbmFtZSwgY29uc3Qg
Y2hhciogbW9kZSkKK093blB0cjxGaWxlUHJpbnRTdHJlYW0+IEZpbGVQcmludFN0cmVhbTo6b3Bl
bihjb25zdCBjaGFyKiBmaWxlbmFtZSwgY29uc3QgY2hhciogbW9kZSkKIHsKICAgICBGSUxFKiBm
aWxlID0gZm9wZW4oZmlsZW5hbWUsIG1vZGUpOwogICAgIGlmICghZmlsZSkKLSAgICAgICAgcmV0
dXJuIFBhc3NPd25QdHI8RmlsZVByaW50U3RyZWFtPigpOwotICAgIAotICAgIHJldHVybiBhZG9w
dFB0cihuZXcgRmlsZVByaW50U3RyZWFtKGZpbGUpKTsKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisKKyAgICByZXR1cm4gY3JlYXRlT3duZWQ8RmlsZVByaW50U3RyZWFtPihmaWxlKTsKIH0KIAog
dm9pZCBGaWxlUHJpbnRTdHJlYW06OnZwcmludGYoY29uc3QgY2hhciogZm9ybWF0LCB2YV9saXN0
IGFyZ0xpc3QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9GaWxlUHJpbnRTdHJlYW0uaCBi
L1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCmluZGV4IDZhMDBmMDBhZWY5YTkwYTQ3
OGNkYzAzNGM5Mjk1OWM2Zjk2MmNhZWEuLjRjMDc1NDhjNzVjOTRmNzcyZjA0MjA0MTlhYTBhNDQ0
MzYzZDE3OWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCisr
KyBiL1NvdXJjZS9XVEYvd3RmL0ZpbGVQcmludFN0cmVhbS5oCkBAIC0yNyw4ICsyNyw4IEBACiAj
ZGVmaW5lIEZpbGVQcmludFN0cmVhbV9oCiAKICNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUg
PHd0Zi9QYXNzT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL1ByaW50U3RyZWFtLmg+CisjaW5jbHVk
ZSA8d3RmL093blB0ci5oPgogCiBuYW1lc3BhY2UgV1RGIHsKIApAQCAtNDIsNyArNDIsNyBAQCBw
dWJsaWM6CiAgICAgRmlsZVByaW50U3RyZWFtKEZJTEUqLCBBZG9wdGlvbk1vZGUgPSBBZG9wdCk7
CiAgICAgdmlydHVhbCB+RmlsZVByaW50U3RyZWFtKCk7CiAgICAgCi0gICAgV1RGX0VYUE9SVF9Q
UklWQVRFIHN0YXRpYyBQYXNzT3duUHRyPEZpbGVQcmludFN0cmVhbT4gb3Blbihjb25zdCBjaGFy
KiBmaWxlbmFtZSwgY29uc3QgY2hhciogbW9kZSk7CisgICAgV1RGX0VYUE9SVF9QUklWQVRFIHN0
YXRpYyBPd25QdHI8RmlsZVByaW50U3RyZWFtPiBvcGVuKGNvbnN0IGNoYXIqIGZpbGVuYW1lLCBj
b25zdCBjaGFyKiBtb2RlKTsKICAgICAKICAgICBGSUxFKiBmaWxlKCkgeyByZXR1cm4gbV9maWxl
OyB9CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9IYXNoVGFibGUuaCBiL1NvdXJj
ZS9XVEYvd3RmL0hhc2hUYWJsZS5oCmluZGV4IDUwMjIyM2E0OGQzMjE1YTBjODJlNzUzYTk0NmVi
YWIwZjI2MTA5YTUuLjAyMTgxNTFlZjE1NDliNzVhYTg2NzM4NTE0N2QwOTJjYWUyZGYwNTQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0hhc2hUYWJsZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L0hhc2hUYWJsZS5oCkBAIC01NTUsMTAgKzU1NSwxMCBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICAg
ICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9JVEVSQVRPUlMKICAg
ICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoYWRvcHRQdHIobmV3IE11
dGV4KSkKKyAgICAgICAgLCBtX211dGV4KGNyZWF0ZU93bmVkPE11dGV4PigpKQogI2VuZGlmCiAj
aWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICwgbV9zdGF0cyhhZG9w
dFB0cihuZXcgU3RhdHMpKQorICAgICAgICAsIG1fc3RhdHMoY3JlYXRlT3duZWQ8U3RhdHM+KCkp
CiAjZW5kaWYKICAgICB7CiAgICAgfQpAQCAtMTE2NiwxMCArMTE2NiwxMCBAQCBuYW1lc3BhY2Ug
V1RGIHsKICAgICAgICAgLCBtX2RlbGV0ZWRDb3VudCgwKQogI2lmIENIRUNLX0hBU0hUQUJMRV9J
VEVSQVRPUlMKICAgICAgICAgLCBtX2l0ZXJhdG9ycygwKQotICAgICAgICAsIG1fbXV0ZXgoYWRv
cHRQdHIobmV3IE11dGV4KSkKKyAgICAgICAgLCBtX211dGV4KGNyZWF0ZU93bmVkPE11dGV4Pigp
KQogI2VuZGlmCiAjaWYgRFVNUF9IQVNIVEFCTEVfU1RBVFNfUEVSX1RBQkxFCi0gICAgICAgICwg
bV9zdGF0cyhhZG9wdFB0cihuZXcgU3RhdHMoKm90aGVyLm1fc3RhdHMpKSkKKyAgICAgICAgLCBt
X3N0YXRzKGNyZWF0ZU93bmVkPFN0YXRzPigqb3RoZXIubV9zdGF0cykpCiAjZW5kaWYKICAgICB7
CiAgICAgICAgIC8vIENvcHkgdGhlIGhhc2ggdGFibGUgdGhlIGR1bWIgd2F5LCBieSBhZGRpbmcg
ZWFjaCBlbGVtZW50IHRvIHRoZSBuZXcgdGFibGUuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0
Zi9MaXN0SGFzaFNldC5oIGIvU291cmNlL1dURi93dGYvTGlzdEhhc2hTZXQuaAppbmRleCAwNzMy
MTYwNDcxN2NmOWExZWEzMjc3M2M1MzM0YTJjOTMxYjM5ZjM3Li5jNTNiNzMzMDgyYmFlYWYwODA3
YzJkZmJiZjlmMDgxMzM3OGY4ZTAzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9MaXN0SGFz
aFNldC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0xpc3RIYXNoU2V0LmgKQEAgLTUxMSw3ICs1MTEs
NyBAQCBuYW1lc3BhY2UgV1RGIHsKICAgICBpbmxpbmUgTGlzdEhhc2hTZXQ8VCwgaW5saW5lQ2Fw
YWNpdHksIFU+OjpMaXN0SGFzaFNldCgpCiAgICAgICAgIDogbV9oZWFkKDApCiAgICAgICAgICwg
bV90YWlsKDApCi0gICAgICAgICwgbV9hbGxvY2F0b3IoYWRvcHRQdHIobmV3IE5vZGVBbGxvY2F0
b3IpKQorICAgICAgICAsIG1fYWxsb2NhdG9yKGNyZWF0ZU93bmVkPE5vZGVBbGxvY2F0b3I+KCkp
CiAgICAgewogICAgIH0KIApAQCAtNTE5LDcgKzUxOSw3IEBAIG5hbWVzcGFjZSBXVEYgewogICAg
IGlubGluZSBMaXN0SGFzaFNldDxULCBpbmxpbmVDYXBhY2l0eSwgVT46Okxpc3RIYXNoU2V0KGNv
bnN0IExpc3RIYXNoU2V0JiBvdGhlcikKICAgICAgICAgOiBtX2hlYWQoMCkKICAgICAgICAgLCBt
X3RhaWwoMCkKLSAgICAgICAgLCBtX2FsbG9jYXRvcihhZG9wdFB0cihuZXcgTm9kZUFsbG9jYXRv
cikpCisgICAgICAgICwgbV9hbGxvY2F0b3IoY3JlYXRlT3duZWQ8Tm9kZUFsbG9jYXRvcj4oKSkK
ICAgICB7CiAgICAgICAgIGNvbnN0X2l0ZXJhdG9yIGVuZCA9IG90aGVyLmVuZCgpOwogICAgICAg
ICBmb3IgKGNvbnN0X2l0ZXJhdG9yIGl0ID0gb3RoZXIuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvT3duUHRyLmggYi9Tb3VyY2UvV1RGL3d0Zi9P
d25QdHIuaAppbmRleCBlMGViODZhMjZiOTZhMTk0ZmYyOGM4ZWZmN2QyZGNlMTc3ODQzNzZkLi45
MmE0YjQ5YjhmZGRlOTBhNmJhYjk0YTJjYjZkMzkzMGQzNDU3Mzg3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV1RGL3d0Zi9Pd25QdHIuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Pd25QdHIuaApAQCAtMzYs
MTEgKzM2LDYgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4gUGFz
c093blB0cjxUPiBhZG9wdFB0cihUKik7CiAKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPiBjbGFz
cyBPd25QdHIgewotI2lmIENPTVBJTEVSX1NVUFBPUlRTKENYWF9SVkFMVUVfUkVGRVJFTkNFUykK
LSAgICAgICAgLy8gSWYgcnZhbHVlIHJlZmVyZW5jZXMgYXJlIG5vdCBzdXBwb3J0ZWQsIHRoZSBj
b3B5IGNvbnN0cnVjdG9yIGlzCi0gICAgICAgIC8vIHB1YmxpYyBzbyBPd25QdHIgY2Fubm90IGJl
IG1hcmtlZCBub25jb3B5YWJsZS4gU2VlIG5vdGUgYmVsb3cuCi0gICAgICAgIFdURl9NQUtFX05P
TkNPUFlBQkxFKE93blB0cik7Ci0jZW5kaWYKICAgICBwdWJsaWM6CiAgICAgICAgIHR5cGVkZWYg
dHlwZW5hbWUgc3RkOjpyZW1vdmVfcG9pbnRlcjxUPjo6dHlwZSBWYWx1ZVR5cGU7CiAgICAgICAg
IHR5cGVkZWYgVmFsdWVUeXBlKiBQdHJUeXBlOwpAQCAtOTEsNiArODYsMTIgQEAgbmFtZXNwYWNl
IFdURiB7CiAgICAgICAgIHZvaWQgc3dhcChPd25QdHImIG8pIHsgc3RkOjpzd2FwKG1fcHRyLCBv
Lm1fcHRyKTsgfQogCiAgICAgcHJpdmF0ZToKKyAgICAgICAgZXhwbGljaXQgT3duUHRyKFB0clR5
cGUgcHRyKSA6IG1fcHRyKHB0cikgeyB9CisKKyAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVT4g
ZnJpZW5kIE93blB0cjxVPiBjcmVhdGVPd25lZCgpOworICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFt
ZSBVLCB0eXBlbmFtZSBBMT4gZnJpZW5kIE93blB0cjxVPiBjcmVhdGVPd25lZChBMSYmKTsKKyAg
ICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVSwgdHlwZW5hbWUgQTEsIHR5cGVuYW1lIEEyPiBmcmll
bmQgT3duUHRyPFU+IGNyZWF0ZU93bmVkKEExJiYsIEEyJiYpOworCiAjaWYgIUNPTVBJTEVSX1NV
UFBPUlRTKENYWF9SVkFMVUVfUkVGRVJFTkNFUykKICAgICAgICAgLy8gSWYgcnZhbHVlIHJlZmVy
ZW5jZXMgYXJlIHN1cHBvcnRlZCwgbm9uY29weWFibGUgdGFrZXMgY2FyZSBvZiB0aGlzLgogICAg
ICAgICBPd25QdHImIG9wZXJhdG9yPShjb25zdCBPd25QdHImKTsKQEAgLTIxMiw4ICsyMTMsMjcg
QEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgIHJldHVybiBwLmdldCgpOwogICAgIH0KIAordGVt
cGxhdGU8dHlwZW5hbWUgVD4KK2lubGluZSBPd25QdHI8VD4gY3JlYXRlT3duZWQoKQoreworICAg
IHJldHVybiBPd25QdHI8VD4obmV3IFQpOworfQorCit0ZW1wbGF0ZTx0eXBlbmFtZSBULCB0eXBl
bmFtZSBBMT4KK2lubGluZSBPd25QdHI8VD4gY3JlYXRlT3duZWQoQTEmJiBhMSkKK3sKKyAgICBy
ZXR1cm4gT3duUHRyPFQ+KG5ldyBUKHN0ZDo6Zm9yd2FyZDxBMT4oYTEpKSk7Cit9CisKK3RlbXBs
YXRlPHR5cGVuYW1lIFQsIHR5cGVuYW1lIEExLCB0eXBlbmFtZSBBMj4KK2lubGluZSBPd25QdHI8
VD4gY3JlYXRlT3duZWQoQTEmJiBhMSwgQTImJiBhMikKK3sKKyAgICByZXR1cm4gT3duUHRyPFQ+
KG5ldyBUKHN0ZDo6Zm9yd2FyZDxBMT4oYTEpLCBzdGQ6OmZvcndhcmQ8QTI+KGEyKSkpOworfQor
CiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpPd25QdHI7Cit1c2luZyBXVEY6OmNy
ZWF0ZU93bmVkOwogCiAjZW5kaWYgLy8gV1RGX093blB0cl9oCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V1RGL3d0Zi9UaHJlYWRpbmcuY3BwIGIvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNwcAppbmRl
eCBjM2ZmNTgzMTVmMDNlNWNhZDU0MzE1OWQ3NmVmNzgxYmY2NzcyNzg1Li4xMmMwY2E0NTc4NWVh
YTVkZTI5NDg0NzlkZWMzMjU2ZmE4OGFkNTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9U
aHJlYWRpbmcuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHAKQEAgLTExNiw3
ICsxMTYsNyBAQCBzdGF0aWMgdm9pZCBjb21wYXRFbnRyeVBvaW50KHZvaWQqIHBhcmFtKQogCiBU
aHJlYWRJZGVudGlmaWVyIGNyZWF0ZVRocmVhZChUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1
ZSBlbnRyeVBvaW50LCB2b2lkKiBkYXRhLCBjb25zdCBjaGFyKiBuYW1lKQogewotICAgIE93blB0
cjxUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24+IGludm9jYXRpb24gPSBh
ZG9wdFB0cihuZXcgVGhyZWFkRnVuY3Rpb25XaXRoUmV0dXJuVmFsdWVJbnZvY2F0aW9uKGVudHJ5
UG9pbnQsIGRhdGEpKTsKKyAgICBhdXRvIGludm9jYXRpb24gPSBjcmVhdGVPd25lZDxUaHJlYWRG
dW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24+KGVudHJ5UG9pbnQsIGRhdGEpOwogCiAg
ICAgLy8gQmFsYW5jZWQgYnkgYWRvcHRQdHIoKSBpbiBjb21wYXRFbnRyeVBvaW50LgogICAgIHJl
dHVybiBjcmVhdGVUaHJlYWQoY29tcGF0RW50cnlQb2ludCwgaW52b2NhdGlvbi5sZWFrUHRyKCks
IG5hbWUpOwpAQCAtMTM2LDcgKzEzNiw3IEBAIFdURl9FWFBPUlRfUFJJVkFURSBUaHJlYWRJZGVu
dGlmaWVyIGNyZWF0ZVRocmVhZChUaHJlYWRGdW5jdGlvbldpdGhSZXR1cm5WYWx1ZSBlCiAKIFRo
cmVhZElkZW50aWZpZXIgY3JlYXRlVGhyZWFkKFRocmVhZEZ1bmN0aW9uV2l0aFJldHVyblZhbHVl
IGVudHJ5UG9pbnQsIHZvaWQqIGRhdGEpCiB7Ci0gICAgT3duUHRyPFRocmVhZEZ1bmN0aW9uV2l0
aFJldHVyblZhbHVlSW52b2NhdGlvbj4gaW52b2NhdGlvbiA9IGFkb3B0UHRyKG5ldyBUaHJlYWRG
dW5jdGlvbldpdGhSZXR1cm5WYWx1ZUludm9jYXRpb24oZW50cnlQb2ludCwgZGF0YSkpOworICAg
IGF1dG8gaW52b2NhdGlvbiA9IGNyZWF0ZU93bmVkPFRocmVhZEZ1bmN0aW9uV2l0aFJldHVyblZh
bHVlSW52b2NhdGlvbj4oZW50cnlQb2ludCwgZGF0YSk7CiAKICAgICAvLyBCYWxhbmNlZCBieSBh
ZG9wdFB0cigpIGluIGNvbXBhdEVudHJ5UG9pbnQuCiAgICAgcmV0dXJuIGNyZWF0ZVRocmVhZChj
b21wYXRFbnRyeVBvaW50LCBpbnZvY2F0aW9uLmxlYWtQdHIoKSwgMCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9UaHJl
YWRpbmdQdGhyZWFkcy5jcHAKaW5kZXggMDNkYmVlYzdlNWVkOWNkZGFlNzRlYTExODBlMDA5ZDdk
MWVmZjVmZC4uMzNiYjdjNDEzZTVhZDkzOGVmNGY2Y2ZkZGExMjIyYmU5MjdkMTk5YiAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL1RocmVhZGluZ1B0aHJlYWRzLmNwcApAQCAtMTc5LDcgKzE3OSw3IEBAIHN0YXRpYyBU
aHJlYWRJZGVudGlmaWVyIGVzdGFibGlzaElkZW50aWZpZXJGb3JQdGhyZWFkSGFuZGxlKGNvbnN0
IHB0aHJlYWRfdCYgcHRoCiAgICAgQVNTRVJUKCFpZGVudGlmaWVyQnlQdGhyZWFkSGFuZGxlKHB0
aHJlYWRIYW5kbGUpKTsKICAgICBNdXRleExvY2tlciBsb2NrZXIodGhyZWFkTWFwTXV0ZXgoKSk7
CiAgICAgc3RhdGljIFRocmVhZElkZW50aWZpZXIgaWRlbnRpZmllckNvdW50ID0gMTsKLSAgICB0
aHJlYWRNYXAoKS5hZGQoaWRlbnRpZmllckNvdW50LCBhZG9wdFB0cihuZXcgUHRocmVhZFN0YXRl
KHB0aHJlYWRIYW5kbGUpKSk7CisgICAgdGhyZWFkTWFwKCkuYWRkKGlkZW50aWZpZXJDb3VudCwg
Y3JlYXRlT3duZWQ8UHRocmVhZFN0YXRlPihwdGhyZWFkSGFuZGxlKS5yZWxlYXNlKCkpOwogICAg
IHJldHVybiBpZGVudGlmaWVyQ291bnQrKzsKIH0KIApAQCAtMTk4LDcgKzE5OCw3IEBAIHN0YXRp
YyB2b2lkKiB3dGZUaHJlYWRFbnRyeVBvaW50KHZvaWQqIHBhcmFtKQogCiBUaHJlYWRJZGVudGlm
aWVyIGNyZWF0ZVRocmVhZEludGVybmFsKFRocmVhZEZ1bmN0aW9uIGVudHJ5UG9pbnQsIHZvaWQq
IGRhdGEsIGNvbnN0IGNoYXIqKQogewotICAgIE93blB0cjxUaHJlYWRGdW5jdGlvbkludm9jYXRp
b24+IGludm9jYXRpb24gPSBhZG9wdFB0cihuZXcgVGhyZWFkRnVuY3Rpb25JbnZvY2F0aW9uKGVu
dHJ5UG9pbnQsIGRhdGEpKTsKKyAgICBhdXRvIGludm9jYXRpb24gPSBXVEY6OmNyZWF0ZU93bmVk
PFRocmVhZEZ1bmN0aW9uSW52b2NhdGlvbj4oZW50cnlQb2ludCwgZGF0YSk7CiAgICAgcHRocmVh
ZF90IHRocmVhZEhhbmRsZTsKICAgICBpZiAocHRocmVhZF9jcmVhdGUoJnRocmVhZEhhbmRsZSwg
MCwgd3RmVGhyZWFkRW50cnlQb2ludCwgaW52b2NhdGlvbi5nZXQoKSkpIHsKICAgICAgICAgTE9H
X0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIHB0aHJlYWQgYXQgZW50cnkgcG9pbnQgJXAgd2l0aCBk
YXRhICVwIiwgd3RmVGhyZWFkRW50cnlQb2ludCwgaW52b2NhdGlvbi5nZXQoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yLmggYi9Tb3VyY2UvV1RGL3d0Zi91
bmljb2RlL0NvbGxhdG9yLmgKaW5kZXggMTYxZmI2ZjAxMGU4OGIzYWQ5ZDU3YzgxYWRjZDI3MTMx
Yjg1ZTIyMy4uMTU4ZjlhZmIwYTI0OTI1MmE2Y2Y3YzIzM2YzOTdiYjUzMTM1MmY3NyAxMDA2NDQK
LS0tIGEvU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvci5oCisrKyBiL1NvdXJjZS9XVEYv
d3RmL3VuaWNvZGUvQ29sbGF0b3IuaApAQCAtMzAsNyArMzAsNyBAQAogI2RlZmluZSBXVEZfQ29s
bGF0b3JfaAogCiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1Bh
c3NPd25QdHIuaD4KKyNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CiAjaW5jbHVkZSA8d3RmL3VuaWNv
ZGUvVW5pY29kZS5oPgogCiAjaWYgVVNFKElDVV9VTklDT0RFKSAmJiAhVUNPTkZJR19OT19DT0xM
QVRJT04KQEAgLTQ4LDcgKzQ4LDcgQEAgbmFtZXNwYWNlIFdURiB7CiAgICAgICAgIFdURl9FWFBP
UlRfUFJJVkFURSB+Q29sbGF0b3IoKTsKICAgICAgICAgV1RGX0VYUE9SVF9QUklWQVRFIHZvaWQg
c2V0T3JkZXJMb3dlckZpcnN0KGJvb2wpOwogCi0gICAgICAgIFdURl9FWFBPUlRfUFJJVkFURSBz
dGF0aWMgUGFzc093blB0cjxDb2xsYXRvcj4gdXNlckRlZmF1bHQoKTsKKyAgICAgICAgV1RGX0VY
UE9SVF9QUklWQVRFIHN0YXRpYyBPd25QdHI8Q29sbGF0b3I+IHVzZXJEZWZhdWx0KCk7CiAKICAg
ICAgICAgV1RGX0VYUE9SVF9QUklWQVRFIFJlc3VsdCBjb2xsYXRlKGNvbnN0IDo6VUNoYXIqLCBz
aXplX3QsIGNvbnN0IDo6VUNoYXIqLCBzaXplX3QpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV1RGL3d0Zi91bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91
bmljb2RlL0NvbGxhdG9yRGVmYXVsdC5jcHAKaW5kZXggN2JkZTExNGE0OGJlYTFhYjI5MDk5MmRm
MTE2MTQxZDZhZTM0NDM3ZS4uZmU1Y2ZlMzg3MjE4NGU1ZjI4OGIwNDBhNjdkZDA3YjQxOGIwMjQy
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvdW5pY29kZS9Db2xsYXRvckRlZmF1bHQuY3Bw
CisrKyBiL1NvdXJjZS9XVEYvd3RmL3VuaWNvZGUvQ29sbGF0b3JEZWZhdWx0LmNwcApAQCAtNDUs
OSArNDUsOSBAQCB2b2lkIENvbGxhdG9yOjpzZXRPcmRlckxvd2VyRmlyc3QoYm9vbCkKIHsKIH0K
IAotUGFzc093blB0cjxDb2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKK093blB0cjxD
b2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKIHsKLSAgICByZXR1cm4gYWRvcHRQdHIo
bmV3IENvbGxhdG9yKDApKTsKKyAgICByZXR1cm4gY3JlYXRlT3duZWQ8Q29sbGF0b3I+KDApOwog
fQogCiAvLyBBIGRlZmF1bHQgaW1wbGVtZW50YXRpb24gZm9yIHBsYXRmb3JtcyB0aGF0IGxhY2sg
VW5pY29kZS1hd2FyZSBjb2xsYXRpb24uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi91bmlj
b2RlL2ljdS9Db2xsYXRvcklDVS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi91bmljb2RlL2ljdS9Db2xs
YXRvcklDVS5jcHAKaW5kZXggYzc0ZjE0OGQxNjZlZTUyZmZlMTk2Y2JkNWM2NTg0ZjliYzQ3NGVj
Ny4uOWQ1NWY4OGFmZjE0ZGE1OWM1MDk5NTAxZDE4ZTBlOTY1ZWE3NjQ0MSAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi93dGYvdW5pY29kZS9pY3UvQ29sbGF0b3JJQ1UuY3BwCisrKyBiL1NvdXJjZS9X
VEYvd3RmL3VuaWNvZGUvaWN1L0NvbGxhdG9ySUNVLmNwcApAQCAtNTgsNyArNTgsNyBAQCBDb2xs
YXRvcjo6Q29sbGF0b3IoY29uc3QgY2hhciogbG9jYWxlKQogewogfQogCi1QYXNzT3duUHRyPENv
bGxhdG9yPiBDb2xsYXRvcjo6dXNlckRlZmF1bHQoKQorT3duUHRyPENvbGxhdG9yPiBDb2xsYXRv
cjo6dXNlckRlZmF1bHQoKQogewogI2lmIE9TKERBUldJTikgJiYgVVNFKENGKQogICAgIC8vIE1h
YyBPUyBYIGRvZXNuJ3Qgc2V0IFVOSVggbG9jYWxlIHRvIG1hdGNoIHVzZXItc2VsZWN0ZWQgb25l
LCBzbyBJQ1UgZGVmYXVsdCBkb2Vzbid0IHdvcmsuCkBAIC03MSwxMSArNzEsMTEgQEAgUGFzc093
blB0cjxDb2xsYXRvcj4gQ29sbGF0b3I6OnVzZXJEZWZhdWx0KCkKICNlbmRpZgogICAgIGNoYXIg
YnVmWzI1Nl07CiAgICAgaWYgKCFjb2xsYXRpb25PcmRlcikKLSAgICAgICAgcmV0dXJuIGFkb3B0
UHRyKG5ldyBDb2xsYXRvcigiIikpOworICAgICAgICByZXR1cm4gY3JlYXRlT3duZWQ8Q29sbGF0
b3I+KCIiKTsKICAgICBDRlN0cmluZ0dldENTdHJpbmcoY29sbGF0aW9uT3JkZXIsIGJ1Ziwgc2l6
ZW9mKGJ1ZiksIGtDRlN0cmluZ0VuY29kaW5nQVNDSUkpOwotICAgIHJldHVybiBhZG9wdFB0cihu
ZXcgQ29sbGF0b3IoYnVmKSk7CisgICAgcmV0dXJuIGNyZWF0ZU93bmVkPENvbGxhdG9yPihidWYp
OwogI2Vsc2UKLSAgICByZXR1cm4gYWRvcHRQdHIobmV3IENvbGxhdG9yKDApKTsKKyAgICByZXR1
cm4gY3JlYXRlT3duZWQ8Q29sbGF0b3I+KHN0YXRpY19jYXN0PGNvbnN0IGNoYXIqPigwKSk7CiAj
ZW5kaWYKIH0KIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>