<?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>77261</bug_id>
          
          <creation_ts>2012-01-27 16:12:52 -0800</creation_ts>
          <short_desc>Remove all references to NSPasteboard objects from the Pasteboard class interface on Mac.</short_desc>
          <delta_ts>2012-01-30 08:59:01 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>HTML Editing</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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>
          <dependson>77260</dependson>
          <blocked>77259</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Enrica Casucci">enrica</reporter>
          <assigned_to name="Enrica Casucci">enrica</assigned_to>
          <cc>ap</cc>
    
    <cc>mitz</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>544493</commentid>
    <comment_count>0</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2012-01-27 16:12:52 -0800</bug_when>
    <thetext>This is a cleanup task required for https://bugs.webkit.org/show_bug.cgi?id=77259.
We want to make sure the only references to NSPasteboard objects are made from within the Pasteboard class only.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544512</commentid>
    <comment_count>1</comment_count>
      <attachid>124401</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2012-01-27 16:48:24 -0800</bug_when>
    <thetext>Created attachment 124401
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544513</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-27 16:50:14 -0800</bug_when>
    <thetext>Attachment 124401 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/platform/Pasteboard.h:84:  The parameter name &quot;url&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/WebCore/platform/Pasteboard.h:84:  The parameter name &quot;frame&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 6 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>544516</commentid>
    <comment_count>3</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2012-01-27 16:52:21 -0800</bug_when>
    <thetext>Style issues are fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545139</commentid>
    <comment_count>4</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2012-01-30 08:59:01 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/106248</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124401</attachid>
            <date>2012-01-27 16:48:24 -0800</date>
            <delta_ts>2012-01-28 10:42:12 -0800</delta_ts>
            <desc>patch</desc>
            <filename>cleanuppasteboard.txt</filename>
            <type>text/plain</type>
            <size>15892</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNjE2NykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ5IEBACisyMDEyLTAxLTI3ICBFbnJpY2Eg
Q2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVtb3ZlIGFsbCByZWZlcmVu
Y2VzIHRvIE5TUGFzdGVib2FyZCBvYmplY3RzIGZyb20gdGhlIFBhc3RlYm9hcmQKKyAgICAgICAg
Y2xhc3MgaW50ZXJmYWNlIG9uIE1hYy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTc3MjYxCisgICAgICAgIAorICAgICAgICBUaGlzIGlzIGNsZWFudXAg
d29yayBuZWVkZWQgYXMgZmlyc3Qgc3RlcCBpbiB0aGUgZGlyZWN0aW9uIG9mCisgICAgICAgIHJl
bW92aW5nIGFjY2VzcyB0byBOU1Bhc3RlYm9hcmQgZnJvbSB0aGUgV2ViUHJvY2Vzcy4KKyAgICAg
ICAgVGhpcyB3YXkgYWxsIGFjY2VzcyB0byB0aGUgTlNQYXN0ZWJvYXJkIG9iamVjdCBhcmUgaW50
ZXJuYWwgdG8KKyAgICAgICAgdGhlIGNsYXNzLgorICAgICAgICBSZW1vdmVkIHN0YXRpYyBtZXRo
b2RzIHRha2luZyBOU1Bhc3RlYm9hcmQgYXMgcGFyYW1lbnRlciBhbmQgY2hhbmdlZAorICAgICAg
ICB0aGUgY29uc3RydWN0b3Igb2YgdGhlIGNsYXNzIHRvIHRha2UgdGhlIHBhc3RlYm9hcmQgbmFt
ZSBpbnN0ZWFkIG9mCisgICAgICAgIHRoZSBOU1Bhc3RlYm9hcmQgb2JqZWN0LgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gVGhl
cmUgaXMgbm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogZWRpdGluZy9FZGl0b3Iu
Y3BwOiBSZW1vdmVkIHVudW5zZWQgcHJpdmF0ZSBtZXRob2Qgd3JpdGVTZWxlY3Rpb25Ub1Bhc3Rl
Ym9hcmQuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBlZGl0aW5nL0VkaXRvci5oOiBE
aXR0by4KKyAgICAgICAgKEVkaXRvcik6CisgICAgICAgICgpOgorICAgICAgICAqIGVkaXRpbmcv
bWFjL0VkaXRvck1hYy5tbToKKyAgICAgICAgKFdlYkNvcmU6OkVkaXRvcjo6d3JpdGVTZWxlY3Rp
b25Ub1Bhc3RlYm9hcmQpOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpyZWFkU2VsZWN0aW9u
RnJvbVBhc3RlYm9hcmQpOgorICAgICAgICAqIHBsYXRmb3JtL1Bhc3RlYm9hcmQuaDoKKyAgICAg
ICAgKFBhc3RlYm9hcmQpOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9DbGlwYm9hcmRNYWMubW06
CisgICAgICAgIChXZWJDb3JlOjpDbGlwYm9hcmRNYWM6OndyaXRlUmFuZ2UpOgorICAgICAgICAo
V2ViQ29yZTo6Q2xpcGJvYXJkTWFjOjp3cml0ZVBsYWluVGV4dCk6CisgICAgICAgIChXZWJDb3Jl
OjpDbGlwYm9hcmRNYWM6OndyaXRlVVJMKToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvRHJhZ0Rh
dGFNYWMubW06CisgICAgICAgIChXZWJDb3JlOjpEcmFnRGF0YTo6YXNQbGFpblRleHQpOgorICAg
ICAgICAoV2ViQ29yZTo6RHJhZ0RhdGE6OmFzVVJMKToKKyAgICAgICAgKFdlYkNvcmU6OkRyYWdE
YXRhOjphc0ZyYWdtZW50KToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvUGFzdGVib2FyZE1hYy5t
bToKKyAgICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6OmdlbmVyYWxQYXN0ZWJvYXJkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlBhc3RlYm9hcmQ6OlBhc3RlYm9hcmQpOgorICAgICAgICAoV2ViQ29y
ZTo6UGFzdGVib2FyZDo6d3JpdGVTZWxlY3Rpb25Gb3JUeXBlcyk6IEFkZGVkLgorICAgICAgICAo
V2ViQ29yZTo6UGFzdGVib2FyZDo6d3JpdGVQbGFpblRleHQpOgorICAgICAgICAoV2ViQ29yZTo6
UGFzdGVib2FyZDo6d3JpdGVTZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6UGFzdGVib2Fy
ZDo6d3JpdGVVUkxGb3JUeXBlcyk6IEFkZGVkLgorICAgICAgICAoV2ViQ29yZTo6UGFzdGVib2Fy
ZDo6d3JpdGVVUkwpOgorICAgICAgICAoV2ViQ29yZTo6UGFzdGVib2FyZDo6d3JpdGVJbWFnZSk6
CisKIDIwMTItMDEtMjcgIE1pa2UgTGF3dGhlciAgPG1pa2VsYXd0aGVyQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBDU1MgY2FsYyBwYXJzaW5nIHN0YWdlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGluZy9F
ZGl0b3IuY3BwCShyZXZpc2lvbiAxMDU5MDgpCisrKyBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0Vk
aXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2NiwxMSArNDY2LDYgQEAgYm9vbCBFZGl0b3I6
OnRyeURIVE1MUGFzdGUoKQogICAgIHJldHVybiAhZGlzcGF0Y2hDUFBFdmVudChldmVudE5hbWVz
KCkucGFzdGVFdmVudCwgQ2xpcGJvYXJkUmVhZGFibGUpOwogfQogCi12b2lkIEVkaXRvcjo6d3Jp
dGVTZWxlY3Rpb25Ub1Bhc3RlYm9hcmQoUGFzdGVib2FyZCogcGFzdGVib2FyZCkKLXsKLSAgICBw
YXN0ZWJvYXJkLT53cml0ZVNlbGVjdGlvbihzZWxlY3RlZFJhbmdlKCkuZ2V0KCksIGNhblNtYXJ0
Q29weU9yRGVsZXRlKCksIG1fZnJhbWUpOwotfQotCiBib29sIEVkaXRvcjo6c2hvdWxkSW5zZXJ0
VGV4dChjb25zdCBTdHJpbmcmIHRleHQsIFJhbmdlKiByYW5nZSwgRWRpdG9ySW5zZXJ0QWN0aW9u
IGFjdGlvbikgY29uc3QKIHsKICAgICByZXR1cm4gY2xpZW50KCkgJiYgY2xpZW50KCktPnNob3Vs
ZEluc2VydFRleHQodGV4dCwgcmFuZ2UsIGFjdGlvbik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL0VkaXRvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRp
dG9yLmgJKHJldmlzaW9uIDEwNTkwOCkKKysrIFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwNyw3ICs0MDcsNiBAQCBwcml2YXRlOgogICAgIFBhc3NS
ZWZQdHI8Q2xpcGJvYXJkPiBuZXdHZW5lcmFsQ2xpcGJvYXJkKENsaXBib2FyZEFjY2Vzc1BvbGlj
eSwgRnJhbWUqKTsKICAgICB2b2lkIHBhc3RlQXNQbGFpblRleHRXaXRoUGFzdGVib2FyZChQYXN0
ZWJvYXJkKik7CiAgICAgdm9pZCBwYXN0ZVdpdGhQYXN0ZWJvYXJkKFBhc3RlYm9hcmQqLCBib29s
IGFsbG93UGxhaW5UZXh0KTsKLSAgICB2b2lkIHdyaXRlU2VsZWN0aW9uVG9QYXN0ZWJvYXJkKFBh
c3RlYm9hcmQqKTsKICAgICB2b2lkIHJldmVhbFNlbGVjdGlvbkFmdGVyRWRpdGluZ09wZXJhdGlv
bigpOwogICAgIHZvaWQgbWFya01pc3NwZWxsaW5nc09yQmFkR3JhbW1hcihjb25zdCBWaXNpYmxl
U2VsZWN0aW9uJiwgYm9vbCBjaGVja1NwZWxsaW5nLCBSZWZQdHI8UmFuZ2U+JiBmaXJzdE1pc3Nw
ZWxsaW5nUmFuZ2UpOwogICAgIFRleHRDaGVja2luZ1R5cGVNYXNrIHJlc29sdmVUZXh0Q2hlY2tp
bmdUeXBlTWFzayhUZXh0Q2hlY2tpbmdUeXBlTWFzayk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9l
ZGl0aW5nL21hYy9FZGl0b3JNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRp
dGluZy9tYWMvRWRpdG9yTWFjLm1tCShyZXZpc2lvbiAxMDU5MDgpCisrKyBTb3VyY2UvV2ViQ29y
ZS9lZGl0aW5nL21hYy9FZGl0b3JNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTI5MiwxMiArMjky
LDEzIEBAIHZvaWQgRWRpdG9yOjp3cml0ZVNlbGVjdGlvblRvUGFzdGVib2FyZCgKICAgICBSZXRh
aW5QdHI8TlNNdXRhYmxlQXJyYXk+IHR5cGVzKEFkb3B0TlMsIFtbTlNNdXRhYmxlQXJyYXkgYWxs
b2NdIGluaXRdKTsgICAgCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBwYXN0ZWJvYXJkVHlw
ZXMuc2l6ZSgpOyArK2kpCiAgICAgICAgIFt0eXBlcy5nZXQoKSBhZGRPYmplY3Q6cGFzdGVib2Fy
ZFR5cGVzW2ldXTsKLSAgICBQYXN0ZWJvYXJkOjp3cml0ZVNlbGVjdGlvbihbTlNQYXN0ZWJvYXJk
IHBhc3RlYm9hcmRXaXRoTmFtZTpwYXN0ZWJvYXJkTmFtZV0sIHR5cGVzLmdldCgpLCBzZWxlY3Rl
ZFJhbmdlKCkuZ2V0KCksIHRydWUsIG1fZnJhbWUpOworICAgIFBhc3RlYm9hcmQgcGFzdGVib2Fy
ZChwYXN0ZWJvYXJkTmFtZSk7CisgICAgcGFzdGVib2FyZC53cml0ZVNlbGVjdGlvbkZvclR5cGVz
KHR5cGVzLmdldCgpLCBzZWxlY3RlZFJhbmdlKCkuZ2V0KCksIHRydWUsIG1fZnJhbWUpOwogfQog
ICAgIAogdm9pZCBFZGl0b3I6OnJlYWRTZWxlY3Rpb25Gcm9tUGFzdGVib2FyZChjb25zdCBTdHJp
bmcmIHBhc3RlYm9hcmROYW1lKQogewotICAgIFBhc3RlYm9hcmQgcGFzdGVib2FyZChbTlNQYXN0
ZWJvYXJkIHBhc3RlYm9hcmRXaXRoTmFtZTpwYXN0ZWJvYXJkTmFtZV0pOworICAgIFBhc3RlYm9h
cmQgcGFzdGVib2FyZChwYXN0ZWJvYXJkTmFtZSk7CiAgICAgaWYgKG1fZnJhbWUtPnNlbGVjdGlv
bigpLT5pc0NvbnRlbnRSaWNobHlFZGl0YWJsZSgpKQogICAgICAgICBwYXN0ZVdpdGhQYXN0ZWJv
YXJkKCZwYXN0ZWJvYXJkLCB0cnVlKTsKICAgICBlbHNlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9QYXN0ZWJvYXJkLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vUGFzdGVib2FyZC5oCShyZXZpc2lvbiAxMDU5MDgpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9QYXN0ZWJvYXJkLmgJKHdvcmtpbmcgY29weSkKQEAgLTgwLDEyICs4MCwxMCBAQCBjbGFz
cyBQYXN0ZWJvYXJkIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShQYXN0ZWJvYXJkKTsgV1RG
X01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAjaWYgUExBVEZPUk0oTUFDKQotICAgIC8v
SGVscGVyIGZ1bmN0aW9ucyB0byBhbGxvdyBDbGlwYm9hcmQgdG8gc2hhcmUgY29kZQotICAgIHN0
YXRpYyB2b2lkIHdyaXRlU2VsZWN0aW9uKE5TUGFzdGVib2FyZCosIE5TQXJyYXkqIHBhc3RlYm9h
cmRUeXBlcywgUmFuZ2UqIHNlbGVjdGVkUmFuZ2UsIGJvb2wgY2FuU21hcnRDb3B5T3JEZWxldGUs
IEZyYW1lKik7Ci0gICAgc3RhdGljIHZvaWQgd3JpdGVVUkwoTlNQYXN0ZWJvYXJkKiBwYXN0ZWJv
YXJkLCBOU0FycmF5KiB0eXBlcywgY29uc3QgS1VSTCYgdXJsLCBjb25zdCBTdHJpbmcmIHRpdGxl
U3RyLCBGcmFtZSogZnJhbWUpOwotICAgIHN0YXRpYyB2b2lkIHdyaXRlUGxhaW5UZXh0KE5TUGFz
dGVib2FyZCogcGFzdGVib2FyZCwgY29uc3QgU3RyaW5nJiB0ZXh0KTsKKyAgICB2b2lkIHdyaXRl
U2VsZWN0aW9uRm9yVHlwZXMoTlNBcnJheSogcGFzdGVib2FyZFR5cGVzLCBSYW5nZSogc2VsZWN0
ZWRSYW5nZSwgYm9vbCBjYW5TbWFydENvcHlPckRlbGV0ZSwgRnJhbWUqKTsKKyAgICB2b2lkIHdy
aXRlVVJMRm9yVHlwZXMoTlNBcnJheSogdHlwZXMsIGNvbnN0IEtVUkwmIHVybCwgY29uc3QgU3Ry
aW5nJiB0aXRsZVN0ciwgRnJhbWUqIGZyYW1lKTsKIAotICAgIFBhc3RlYm9hcmQoTlNQYXN0ZWJv
YXJkICopOworICAgIFBhc3RlYm9hcmQoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZSk7CiAj
ZW5kaWYKICAgICAKICAgICBzdGF0aWMgUGFzdGVib2FyZCogZ2VuZXJhbFBhc3RlYm9hcmQoKTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9DbGlwYm9hcmRNYWMubW0KPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NsaXBib2FyZE1hYy5tbQkocmV2
aXNpb24gMTA1OTA4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NsaXBib2FyZE1h
Yy5tbQkod29ya2luZyBjb3B5KQpAQCAtMzY3LDE5ICszNjcsMjIgQEAgdm9pZCBDbGlwYm9hcmRN
YWM6OndyaXRlUmFuZ2UoUmFuZ2UqIHJhbgogewogICAgIEFTU0VSVChyYW5nZSk7CiAgICAgQVNT
RVJUKGZyYW1lKTsKLSAgICBQYXN0ZWJvYXJkOjp3cml0ZVNlbGVjdGlvbihtX3Bhc3RlYm9hcmQu
Z2V0KCksIDAsIHJhbmdlLCBmcmFtZS0+ZWRpdG9yKCktPnNtYXJ0SW5zZXJ0RGVsZXRlRW5hYmxl
ZCgpICYmIGZyYW1lLT5zZWxlY3Rpb24oKS0+Z3JhbnVsYXJpdHkoKSA9PSBXb3JkR3JhbnVsYXJp
dHksIGZyYW1lKTsKKyAgICBQYXN0ZWJvYXJkIHBhc3RlYm9hcmQoW21fcGFzdGVib2FyZC5nZXQo
KSBuYW1lXSk7CisgICAgcGFzdGVib2FyZC53cml0ZVNlbGVjdGlvbkZvclR5cGVzKG5pbCwgcmFu
Z2UsIGZyYW1lLT5lZGl0b3IoKS0+c21hcnRJbnNlcnREZWxldGVFbmFibGVkKCkgJiYgZnJhbWUt
PnNlbGVjdGlvbigpLT5ncmFudWxhcml0eSgpID09IFdvcmRHcmFudWxhcml0eSwgZnJhbWUpOwog
fQogCiB2b2lkIENsaXBib2FyZE1hYzo6d3JpdGVQbGFpblRleHQoY29uc3QgU3RyaW5nJiB0ZXh0
KQogewotICAgIFBhc3RlYm9hcmQ6OndyaXRlUGxhaW5UZXh0KG1fcGFzdGVib2FyZC5nZXQoKSwg
dGV4dCk7CisgICAgUGFzdGVib2FyZCBwYXN0ZWJvYXJkKFttX3Bhc3RlYm9hcmQuZ2V0KCkgbmFt
ZV0pOworICAgIHBhc3RlYm9hcmQud3JpdGVQbGFpblRleHQodGV4dCk7CiB9CiAKIHZvaWQgQ2xp
cGJvYXJkTWFjOjp3cml0ZVVSTChjb25zdCBLVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgdGl0bGUs
IEZyYW1lKiBmcmFtZSkKIHsgICAKICAgICBBU1NFUlQoZnJhbWUpOwogICAgIEFTU0VSVChtX3Bh
c3RlYm9hcmQpOwotICAgIFBhc3RlYm9hcmQ6OndyaXRlVVJMKG1fcGFzdGVib2FyZC5nZXQoKSwg
bmlsLCB1cmwsIHRpdGxlLCBmcmFtZSk7CisgICAgUGFzdGVib2FyZCBwYXN0ZWJvYXJkKFttX3Bh
c3RlYm9hcmQuZ2V0KCkgbmFtZV0pOworICAgIHBhc3RlYm9hcmQud3JpdGVVUkxGb3JUeXBlcyhu
aWwsIHVybCwgdGl0bGUsIGZyYW1lKTsKIH0KICAgICAKICNpZiBFTkFCTEUoRFJBR19TVVBQT1JU
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0RyYWdEYXRhTWFjLm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9EcmFnRGF0YU1hYy5tbQkocmV2
aXNpb24gMTA1OTA4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0RyYWdEYXRhTWFj
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDUsNyArMTA1LDcgQEAgYm9vbCBEcmFnRGF0YTo6Y29u
dGFpbnNQbGFpblRleHQoKSBjb25zdAogCiBTdHJpbmcgRHJhZ0RhdGE6OmFzUGxhaW5UZXh0KEZy
YW1lICpmcmFtZSkgY29uc3QKIHsKLSAgICBQYXN0ZWJvYXJkIHBhc3RlYm9hcmQobV9wYXN0ZWJv
YXJkLmdldCgpKTsKKyAgICBQYXN0ZWJvYXJkIHBhc3RlYm9hcmQoW21fcGFzdGVib2FyZC5nZXQo
KSBuYW1lXSk7CiAgICAgcmV0dXJuIHBhc3RlYm9hcmQucGxhaW5UZXh0KGZyYW1lKTsKIH0KIApA
QCAtMTU3LDEzICsxNTcsMTMgQEAgU3RyaW5nIERyYWdEYXRhOjphc1VSTChGcmFtZSogZnJhbWUs
IEZpbAogICAgICAgICBpZiAoTlNTdHJpbmcgKlVSTFRpdGxlU3RyaW5nID0gW21fcGFzdGVib2Fy
ZC5nZXQoKSBzdHJpbmdGb3JUeXBlOldlYlVSTE5hbWVQYm9hcmRUeXBlXSkKICAgICAgICAgICAg
ICp0aXRsZSA9IFVSTFRpdGxlU3RyaW5nOwogICAgIH0KLSAgICBQYXN0ZWJvYXJkIHBhc3RlYm9h
cmQobV9wYXN0ZWJvYXJkLmdldCgpKTsKKyAgICBQYXN0ZWJvYXJkIHBhc3RlYm9hcmQoW21fcGFz
dGVib2FyZC5nZXQoKSBuYW1lXSk7CiAgICAgcmV0dXJuIHBhc3RlYm9hcmQuYXNVUkwoZnJhbWUp
OwogfQogCiBQYXNzUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IERyYWdEYXRhOjphc0ZyYWdtZW50
KEZyYW1lKiBmcmFtZSwgUGFzc1JlZlB0cjxSYW5nZT4gcmFuZ2UsIGJvb2wgYWxsb3dQbGFpblRl
eHQsIGJvb2wmIGNob3NlUGxhaW5UZXh0KSBjb25zdAogewotICAgIFBhc3RlYm9hcmQgcGFzdGVi
b2FyZChtX3Bhc3RlYm9hcmQuZ2V0KCkpOworICAgIFBhc3RlYm9hcmQgcGFzdGVib2FyZChbbV9w
YXN0ZWJvYXJkLmdldCgpIG5hbWVdKTsKICAgICAKICAgICByZXR1cm4gcGFzdGVib2FyZC5kb2N1
bWVudEZyYWdtZW50KGZyYW1lLCByYW5nZSwgYWxsb3dQbGFpblRleHQsIGNob3NlUGxhaW5UZXh0
KTsKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QYXN0ZWJvYXJkTWFjLm1t
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QYXN0ZWJvYXJkTWFj
Lm1tCShyZXZpc2lvbiAxMDU5MDgpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGFz
dGVib2FyZE1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMTEzLDEzICsxMTMsMTQgQEAgc3RhdGlj
IE5TQXJyYXkqIHdyaXRhYmxlVHlwZXNGb3JJbWFnZSgpCiAKIFBhc3RlYm9hcmQqIFBhc3RlYm9h
cmQ6OmdlbmVyYWxQYXN0ZWJvYXJkKCkgCiB7Ci0gICAgc3RhdGljIFBhc3RlYm9hcmQqIHBhc3Rl
Ym9hcmQgPSBuZXcgUGFzdGVib2FyZChbTlNQYXN0ZWJvYXJkIGdlbmVyYWxQYXN0ZWJvYXJkXSk7
CisgICAgc3RhdGljIFBhc3RlYm9hcmQqIHBhc3RlYm9hcmQgPSBuZXcgUGFzdGVib2FyZChOU0dl
bmVyYWxQYm9hcmQpOwogICAgIHJldHVybiBwYXN0ZWJvYXJkOwogfQogCi1QYXN0ZWJvYXJkOjpQ
YXN0ZWJvYXJkKE5TUGFzdGVib2FyZCogcGJvYXJkKQotICAgIDogbV9wYXN0ZWJvYXJkKHBib2Fy
ZCkKK1Bhc3RlYm9hcmQ6OlBhc3RlYm9hcmQoY29uc3QgU3RyaW5nJiBwYXN0ZWJvYXJkTmFtZSkK
KyAgICA6IG1fcGFzdGVib2FyZChbTlNQYXN0ZWJvYXJkIHBhc3RlYm9hcmRXaXRoTmFtZTpwYXN0
ZWJvYXJkTmFtZV0pCiB7CisgICAgQVNTRVJUKHBhc3RlYm9hcmROYW1lKTsKIH0KIAogdm9pZCBQ
YXN0ZWJvYXJkOjpjbGVhcigpCkBAIC0xMjcsNyArMTI4LDcgQEAgdm9pZCBQYXN0ZWJvYXJkOjpj
bGVhcigpCiAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBkZWNsYXJlVHlwZXM6W05TQXJyYXkgYXJy
YXldIG93bmVyOm5pbF07CiB9CiAKLXZvaWQgUGFzdGVib2FyZDo6d3JpdGVTZWxlY3Rpb24oTlNQ
YXN0ZWJvYXJkKiBwYXN0ZWJvYXJkLCBOU0FycmF5KiBwYXN0ZWJvYXJkVHlwZXMsIFJhbmdlKiBz
ZWxlY3RlZFJhbmdlLCBib29sIGNhblNtYXJ0Q29weU9yRGVsZXRlLCBGcmFtZSogZnJhbWUpCit2
b2lkIFBhc3RlYm9hcmQ6OndyaXRlU2VsZWN0aW9uRm9yVHlwZXMoTlNBcnJheSogcGFzdGVib2Fy
ZFR5cGVzLCBSYW5nZSogc2VsZWN0ZWRSYW5nZSwgYm9vbCBjYW5TbWFydENvcHlPckRlbGV0ZSwg
RnJhbWUqIGZyYW1lKQogewogICAgIGlmICghV2ViQXJjaGl2ZVBib2FyZFR5cGUpCiAgICAgICAg
IFBhc3RlYm9hcmQ6OmdlbmVyYWxQYXN0ZWJvYXJkKCk7IC8vIEluaXRpYWxpemVzIHBhc3RlYm9h
cmQgdHlwZXMuCkBAIC0xNTgsMjYgKzE1OSwyNiBAQCB2b2lkIFBhc3RlYm9hcmQ6OndyaXRlU2Vs
ZWN0aW9uKE5TUGFzdGViCiAjZW5kaWYKIAogICAgIE5TQXJyYXkgKnR5cGVzID0gcGFzdGVib2Fy
ZFR5cGVzID8gcGFzdGVib2FyZFR5cGVzIDogc2VsZWN0aW9uUGFzdGVib2FyZFR5cGVzKGNhblNt
YXJ0Q29weU9yRGVsZXRlLCBbYXR0cmlidXRlZFN0cmluZyBjb250YWluc0F0dGFjaG1lbnRzXSk7
Ci0gICAgW3Bhc3RlYm9hcmQgZGVjbGFyZVR5cGVzOnR5cGVzIG93bmVyOm5pbF07CisgICAgW21f
cGFzdGVib2FyZC5nZXQoKSBkZWNsYXJlVHlwZXM6dHlwZXMgb3duZXI6bmlsXTsKICAgICBmcmFt
ZS0+ZWRpdG9yKCktPmNsaWVudCgpLT5kaWRTZXRTZWxlY3Rpb25UeXBlc0ZvclBhc3RlYm9hcmQo
KTsKICAgICAKICAgICAvLyBQdXQgSFRNTCBvbiB0aGUgcGFzdGVib2FyZC4KICAgICBpZiAoW3R5
cGVzIGNvbnRhaW5zT2JqZWN0OldlYkFyY2hpdmVQYm9hcmRUeXBlXSkgewogICAgICAgICBSZWZQ
dHI8TGVnYWN5V2ViQXJjaGl2ZT4gYXJjaGl2ZSA9IExlZ2FjeVdlYkFyY2hpdmU6OmNyZWF0ZUZy
b21TZWxlY3Rpb24oZnJhbWUpOwogICAgICAgICBSZXRhaW5QdHI8Q0ZEYXRhUmVmPiBkYXRhID0g
YXJjaGl2ZSA/IGFyY2hpdmUtPnJhd0RhdGFSZXByZXNlbnRhdGlvbigpIDogMDsKLSAgICAgICAg
W3Bhc3RlYm9hcmQgc2V0RGF0YTooTlNEYXRhICopZGF0YS5nZXQoKSBmb3JUeXBlOldlYkFyY2hp
dmVQYm9hcmRUeXBlXTsKKyAgICAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBzZXREYXRhOihOU0Rh
dGEgKilkYXRhLmdldCgpIGZvclR5cGU6V2ViQXJjaGl2ZVBib2FyZFR5cGVdOwogICAgIH0KICAg
ICAKICAgICAvLyBQdXQgdGhlIGF0dHJpYnV0ZWQgc3RyaW5nIG9uIHRoZSBwYXN0ZWJvYXJkIChS
VEYvUlRGRCBmb3JtYXQpLgogICAgIGlmIChbdHlwZXMgY29udGFpbnNPYmplY3Q6TlNSVEZEUGJv
YXJkVHlwZV0pIHsKICAgICAgICAgTlNEYXRhICpSVEZERGF0YSA9IFthdHRyaWJ1dGVkU3RyaW5n
IFJURkRGcm9tUmFuZ2U6TlNNYWtlUmFuZ2UoMCwgW2F0dHJpYnV0ZWRTdHJpbmcgbGVuZ3RoXSkg
ZG9jdW1lbnRBdHRyaWJ1dGVzOm5pbF07Ci0gICAgICAgIFtwYXN0ZWJvYXJkIHNldERhdGE6UlRG
RERhdGEgZm9yVHlwZTpOU1JURkRQYm9hcmRUeXBlXTsKKyAgICAgICAgW21fcGFzdGVib2FyZC5n
ZXQoKSBzZXREYXRhOlJURkREYXRhIGZvclR5cGU6TlNSVEZEUGJvYXJkVHlwZV07CiAgICAgfQog
ICAgIGlmIChbdHlwZXMgY29udGFpbnNPYmplY3Q6TlNSVEZQYm9hcmRUeXBlXSkgewogICAgICAg
ICBpZiAoW2F0dHJpYnV0ZWRTdHJpbmcgY29udGFpbnNBdHRhY2htZW50c10pCiAgICAgICAgICAg
ICBhdHRyaWJ1dGVkU3RyaW5nID0gYXR0cmlidXRlZFN0cmluZ0J5U3RyaXBwaW5nQXR0YWNobWVu
dENoYXJhY3RlcnMoYXR0cmlidXRlZFN0cmluZyk7CiAgICAgICAgIE5TRGF0YSAqUlRGRGF0YSA9
IFthdHRyaWJ1dGVkU3RyaW5nIFJURkZyb21SYW5nZTpOU01ha2VSYW5nZSgwLCBbYXR0cmlidXRl
ZFN0cmluZyBsZW5ndGhdKSBkb2N1bWVudEF0dHJpYnV0ZXM6bmlsXTsKLSAgICAgICAgW3Bhc3Rl
Ym9hcmQgc2V0RGF0YTpSVEZEYXRhIGZvclR5cGU6TlNSVEZQYm9hcmRUeXBlXTsKKyAgICAgICAg
W21fcGFzdGVib2FyZC5nZXQoKSBzZXREYXRhOlJURkRhdGEgZm9yVHlwZTpOU1JURlBib2FyZFR5
cGVdOwogICAgIH0KICAgICAKICAgICAvLyBQdXQgcGxhaW4gc3RyaW5nIG9uIHRoZSBwYXN0ZWJv
YXJkLgpAQCAtMTg5LDQ4ICsxOTAsMzQgQEAgdm9pZCBQYXN0ZWJvYXJkOjp3cml0ZVNlbGVjdGlv
bihOU1Bhc3RlYgogICAgICAgICAKICAgICAgICAgTlNTdHJpbmcgKk5vbkJyZWFraW5nU3BhY2VT
dHJpbmcgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENoYXJhY3RlcnM6Jm5vQnJlYWtTcGFjZSBsZW5n
dGg6MV07CiAgICAgICAgIFtzIHJlcGxhY2VPY2N1cnJlbmNlc09mU3RyaW5nOk5vbkJyZWFraW5n
U3BhY2VTdHJpbmcgd2l0aFN0cmluZzpAIiAiIG9wdGlvbnM6MCByYW5nZTpOU01ha2VSYW5nZSgw
LCBbcyBsZW5ndGhdKV07Ci0gICAgICAgIFtwYXN0ZWJvYXJkIHNldFN0cmluZzpzIGZvclR5cGU6
TlNTdHJpbmdQYm9hcmRUeXBlXTsKKyAgICAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBzZXRTdHJp
bmc6cyBmb3JUeXBlOk5TU3RyaW5nUGJvYXJkVHlwZV07CiAgICAgICAgIFtzIHJlbGVhc2VdOwog
ICAgIH0KICAgICAKICAgICBpZiAoW3R5cGVzIGNvbnRhaW5zT2JqZWN0OldlYlNtYXJ0UGFzdGVQ
Ym9hcmRUeXBlXSkgewotICAgICAgICBbcGFzdGVib2FyZCBzZXREYXRhOm5pbCBmb3JUeXBlOldl
YlNtYXJ0UGFzdGVQYm9hcmRUeXBlXTsKKyAgICAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBzZXRE
YXRhOm5pbCBmb3JUeXBlOldlYlNtYXJ0UGFzdGVQYm9hcmRUeXBlXTsKICAgICB9CiB9CiAKLXZv
aWQgUGFzdGVib2FyZDo6d3JpdGVQbGFpblRleHQoTlNQYXN0ZWJvYXJkKiBwYXN0ZWJvYXJkLCBj
b25zdCBTdHJpbmcmIHRleHQpCit2b2lkIFBhc3RlYm9hcmQ6OndyaXRlUGxhaW5UZXh0KGNvbnN0
IFN0cmluZyYgdGV4dCkKIHsKLSAgICBOU0FycmF5ICp0eXBlcyA9IFtOU0FycmF5IGFycmF5V2l0
aE9iamVjdDpOU1N0cmluZ1Bib2FyZFR5cGVdOwotICAgIFtwYXN0ZWJvYXJkIGRlY2xhcmVUeXBl
czp0eXBlcyBvd25lcjpuaWxdOwotICAgIAotICAgIFtwYXN0ZWJvYXJkIHNldFN0cmluZzp0ZXh0
IGZvclR5cGU6TlNTdHJpbmdQYm9hcmRUeXBlXTsKKyAgICBbbV9wYXN0ZWJvYXJkLmdldCgpIGRl
Y2xhcmVUeXBlczpbTlNBcnJheSBhcnJheVdpdGhPYmplY3Q6TlNTdHJpbmdQYm9hcmRUeXBlXSBv
d25lcjpuaWxdOworICAgIFttX3Bhc3RlYm9hcmQuZ2V0KCkgc2V0U3RyaW5nOnRleHQgZm9yVHlw
ZTpOU1N0cmluZ1Bib2FyZFR5cGVdOwogfQogICAgIAogdm9pZCBQYXN0ZWJvYXJkOjp3cml0ZVNl
bGVjdGlvbihSYW5nZSogc2VsZWN0ZWRSYW5nZSwgYm9vbCBjYW5TbWFydENvcHlPckRlbGV0ZSwg
RnJhbWUqIGZyYW1lKQogewotICAgIFBhc3RlYm9hcmQ6OndyaXRlU2VsZWN0aW9uKG1fcGFzdGVi
b2FyZC5nZXQoKSwgMCwgc2VsZWN0ZWRSYW5nZSwgY2FuU21hcnRDb3B5T3JEZWxldGUsIGZyYW1l
KTsKLX0KLQotdm9pZCBQYXN0ZWJvYXJkOjp3cml0ZVBsYWluVGV4dChjb25zdCBTdHJpbmcmIHRl
eHQpCi17Ci0gICAgaWYgKCFXZWJBcmNoaXZlUGJvYXJkVHlwZSkKLSAgICAgICAgUGFzdGVib2Fy
ZDo6Z2VuZXJhbFBhc3RlYm9hcmQoKTsgLy8gSW5pdGlhbGl6ZXMgcGFzdGVib2FyZCB0eXBlcy4K
LQotICAgIE5TQXJyYXkgKnR5cGVzID0gW05TQXJyYXkgYXJyYXlXaXRoT2JqZWN0Ok5TU3RyaW5n
UGJvYXJkVHlwZV07Ci0gICAgTlNQYXN0ZWJvYXJkICpwYXN0ZWJvYXJkID0gbV9wYXN0ZWJvYXJk
LmdldCgpOwotICAgIFtwYXN0ZWJvYXJkIGRlY2xhcmVUeXBlczp0eXBlcyBvd25lcjpuaWxdOwot
Ci0gICAgW3Bhc3RlYm9hcmQgc2V0U3RyaW5nOnRleHQgZm9yVHlwZTpOU1N0cmluZ1Bib2FyZFR5
cGVdOworICAgIHdyaXRlU2VsZWN0aW9uRm9yVHlwZXMobmlsLCBzZWxlY3RlZFJhbmdlLCBjYW5T
bWFydENvcHlPckRlbGV0ZSwgZnJhbWUpOwogfQogCi12b2lkIFBhc3RlYm9hcmQ6OndyaXRlVVJM
KE5TUGFzdGVib2FyZCogcGFzdGVib2FyZCwgTlNBcnJheSogdHlwZXMsIGNvbnN0IEtVUkwmIHVy
bCwgY29uc3QgU3RyaW5nJiB0aXRsZVN0ciwgRnJhbWUqIGZyYW1lKQordm9pZCBQYXN0ZWJvYXJk
Ojp3cml0ZVVSTEZvclR5cGVzKE5TQXJyYXkqIHR5cGVzLCBjb25zdCBLVVJMJiB1cmwsIGNvbnN0
IFN0cmluZyYgdGl0bGVTdHIsIEZyYW1lKiBmcmFtZSkKIHsKICAgICBpZiAoIVdlYkFyY2hpdmVQ
Ym9hcmRUeXBlKQogICAgICAgICBQYXN0ZWJvYXJkOjpnZW5lcmFsUGFzdGVib2FyZCgpOyAvLyBJ
bml0aWFsaXplcyBwYXN0ZWJvYXJkIHR5cGVzLgogICAgCiAgICAgaWYgKCF0eXBlcykgewogICAg
ICAgICB0eXBlcyA9IHdyaXRhYmxlVHlwZXNGb3JVUkwoKTsKLSAgICAgICAgW3Bhc3RlYm9hcmQg
ZGVjbGFyZVR5cGVzOnR5cGVzIG93bmVyOm5pbF07CisgICAgICAgIFttX3Bhc3RlYm9hcmQuZ2V0
KCkgZGVjbGFyZVR5cGVzOnR5cGVzIG93bmVyOm5pbF07CiAgICAgfQogICAgIAogICAgIEFTU0VS
VCghdXJsLmlzRW1wdHkoKSk7CkBAIC0yNDYsMjMgKzIzMywyMyBAQCB2b2lkIFBhc3RlYm9hcmQ6
OndyaXRlVVJMKE5TUGFzdGVib2FyZCogCiAgICAgfQogICAgICAgICAKICAgICBpZiAoW3R5cGVz
IGNvbnRhaW5zT2JqZWN0OldlYlVSTHNXaXRoVGl0bGVzUGJvYXJkVHlwZV0pCi0gICAgICAgIFtw
YXN0ZWJvYXJkIHNldFByb3BlcnR5TGlzdDpbTlNBcnJheSBhcnJheVdpdGhPYmplY3RzOltOU0Fy
cmF5IGFycmF5V2l0aE9iamVjdDp1c2VyVmlzaWJsZVN0cmluZ10sIAorICAgICAgICBbbV9wYXN0
ZWJvYXJkLmdldCgpIHNldFByb3BlcnR5TGlzdDpbTlNBcnJheSBhcnJheVdpdGhPYmplY3RzOltO
U0FycmF5IGFycmF5V2l0aE9iamVjdDp1c2VyVmlzaWJsZVN0cmluZ10sIAogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFtOU0FycmF5IGFycmF5V2l0aE9iamVjdDooTlNTdHJp
bmcqKXRpdGxlU3RyLnN0cmlwV2hpdGVTcGFjZSgpXSwgCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgbmlsXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvclR5cGU6
V2ViVVJMc1dpdGhUaXRsZXNQYm9hcmRUeXBlXTsKICAgICBpZiAoW3R5cGVzIGNvbnRhaW5zT2Jq
ZWN0Ok5TVVJMUGJvYXJkVHlwZV0pCi0gICAgICAgIFtjb2NvYVVSTCB3cml0ZVRvUGFzdGVib2Fy
ZDpwYXN0ZWJvYXJkXTsKKyAgICAgICAgW2NvY29hVVJMIHdyaXRlVG9QYXN0ZWJvYXJkOm1fcGFz
dGVib2FyZC5nZXQoKV07CiAgICAgaWYgKFt0eXBlcyBjb250YWluc09iamVjdDpXZWJVUkxQYm9h
cmRUeXBlXSkKLSAgICAgICAgW3Bhc3RlYm9hcmQgc2V0U3RyaW5nOnVzZXJWaXNpYmxlU3RyaW5n
IGZvclR5cGU6V2ViVVJMUGJvYXJkVHlwZV07CisgICAgICAgIFttX3Bhc3RlYm9hcmQuZ2V0KCkg
c2V0U3RyaW5nOnVzZXJWaXNpYmxlU3RyaW5nIGZvclR5cGU6V2ViVVJMUGJvYXJkVHlwZV07CiAg
ICAgaWYgKFt0eXBlcyBjb250YWluc09iamVjdDpXZWJVUkxOYW1lUGJvYXJkVHlwZV0pCi0gICAg
ICAgIFtwYXN0ZWJvYXJkIHNldFN0cmluZzp0aXRsZSBmb3JUeXBlOldlYlVSTE5hbWVQYm9hcmRU
eXBlXTsKKyAgICAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBzZXRTdHJpbmc6dGl0bGUgZm9yVHlw
ZTpXZWJVUkxOYW1lUGJvYXJkVHlwZV07CiAgICAgaWYgKFt0eXBlcyBjb250YWluc09iamVjdDpO
U1N0cmluZ1Bib2FyZFR5cGVdKQotICAgICAgICBbcGFzdGVib2FyZCBzZXRTdHJpbmc6dXNlclZp
c2libGVTdHJpbmcgZm9yVHlwZTpOU1N0cmluZ1Bib2FyZFR5cGVdOworICAgICAgICBbbV9wYXN0
ZWJvYXJkLmdldCgpIHNldFN0cmluZzp1c2VyVmlzaWJsZVN0cmluZyBmb3JUeXBlOk5TU3RyaW5n
UGJvYXJkVHlwZV07CiB9CiAgICAgCiB2b2lkIFBhc3RlYm9hcmQ6OndyaXRlVVJMKGNvbnN0IEtV
UkwmIHVybCwgY29uc3QgU3RyaW5nJiB0aXRsZVN0ciwgRnJhbWUqIGZyYW1lKQogewotICAgIFBh
c3RlYm9hcmQ6OndyaXRlVVJMKG1fcGFzdGVib2FyZC5nZXQoKSwgbmlsLCB1cmwsIHRpdGxlU3Ry
LCBmcmFtZSk7CisgICAgd3JpdGVVUkxGb3JUeXBlcyhuaWwsIHVybCwgdGl0bGVTdHIsIGZyYW1l
KTsKIH0KIAogc3RhdGljIE5TRmlsZVdyYXBwZXIqIGZpbGVXcmFwcGVyRm9ySW1hZ2UoQ2FjaGVk
UmVzb3VyY2UqIHJlc291cmNlLCBOU1VSTCAqdXJsKQpAQCAtMzA4LDcgKzI5NSw3IEBAIHZvaWQg
UGFzdGVib2FyZDo6d3JpdGVJbWFnZShOb2RlKiBub2RlLCAKIAogICAgIE5TQXJyYXkqIHR5cGVz
ID0gd3JpdGFibGVUeXBlc0ZvckltYWdlKCk7CiAgICAgW21fcGFzdGVib2FyZC5nZXQoKSBkZWNs
YXJlVHlwZXM6dHlwZXMgb3duZXI6bmlsXTsKLSAgICB3cml0ZVVSTChtX3Bhc3RlYm9hcmQuZ2V0
KCksIHR5cGVzLCBjb2NvYVVSTCwgbnNTdHJpbmdOaWxJZkVtcHR5KHRpdGxlKSwgZnJhbWUpOwor
ICAgIHdyaXRlVVJMRm9yVHlwZXModHlwZXMsIGNvY29hVVJMLCBuc1N0cmluZ05pbElmRW1wdHko
dGl0bGUpLCBmcmFtZSk7CiAgICAgCiAgICAgSW1hZ2UqIGltYWdlID0gY2FjaGVkSW1hZ2UtPmlt
YWdlRm9yUmVuZGVyZXIocmVuZGVyZXIpOwogICAgIEFTU0VSVChpbWFnZSk7Cg==
</data>
<flag name="review"
          id="125648"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>