<?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>77614</bug_id>
          
          <creation_ts>2012-02-02 00:55:59 -0800</creation_ts>
          <short_desc>NULL ptr in WebCore::Range::processAncestorsAndTheirSiblings</short_desc>
          <delta_ts>2013-07-15 23:54:44 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows Vista</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>HasReduction</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Berend-Jan Wever">skylined</reporter>
          <assigned_to name="Yuta Kitamura">yutak</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>rniwa</cc>
    
    <cc>sam</cc>
    
    <cc>yutak</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>547719</commentid>
    <comment_count>0</comment_count>
    <who name="Berend-Jan Wever">skylined</who>
    <bug_when>2012-02-02 00:55:59 -0800</bug_when>
    <thetext>Chromium: http://code.google.com/p/chromium/issues/detail?id=112427
Detailed report: https://cluster-fuzz.appspot.com/testcase?key=17443217

Fuzzer: Bj_doc_fuzzer

Crash Type: UNKNOWN
Crash Address: 0x000000000026
Crash State:
  - crash stack -
  WebCore::Range::processAncestorsAndTheirSiblings
  WebCore::Range::processContents
  WebCore::Range::deleteContents
  
Regressed: https://cluster-fuzz.appspot.com/revisions?range=108839:108881

Minimized Testcase (0.97 Kb): https://cluster-fuzz.appspot.com/download/AMIfv95ceK8J7bne4cv4iUyHvS6W5Dm-Lg_ZCryRU2Y42ayuWg6nWS3qKv0A1aj2WSdRHboY3FKGUuNs6YNK6wPyxBjL16K7Ni7ew9n6iM_dyvpEhsjBEWjBJsxY6X5xq2-j2qmgBeDqaRfLk17tLBcPV45QJChXEQ</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>547738</commentid>
    <comment_count>1</comment_count>
      <attachid>125099</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-02-02 01:53:37 -0800</bug_when>
    <thetext>Created attachment 125099
reduction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>906025</commentid>
    <comment_count>2</comment_count>
      <attachid>206046</attachid>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2013-07-03 19:32:07 -0700</bug_when>
    <thetext>Created attachment 206046
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>906652</commentid>
    <comment_count>3</comment_count>
      <attachid>206046</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-07-07 18:39:02 -0700</bug_when>
    <thetext>Comment on attachment 206046
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=206046&amp;action=review

&gt; Source/WebCore/ChangeLog:15
&gt; +        of the range since mutation observers can change the state of the range.

You mean mutation events?  Mutation observes are never called synchronously.

&gt; Source/WebCore/dom/Range.cpp:755
&gt; +    originalStart.clear();
&gt; +    originalEnd.clear();
&gt; +

It doesn&apos;t seem right/necessary to clear these ranges here.

&gt; LayoutTests/fast/dom/Range/resources/detach-range-during-deletecontents-iframe.xhtml:8
&gt; +var f = function ()

Why don&apos;t we just do:
function f()
instead?
Also, please give it a more descriptive name.

&gt; LayoutTests/fast/dom/Range/resources/detach-range-during-deletecontents-iframe.xhtml:16
&gt; +var g = function ()
&gt; +{

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907003</commentid>
    <comment_count>4</comment_count>
      <attachid>206293</attachid>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2013-07-08 23:12:37 -0700</bug_when>
    <thetext>Created attachment 206293
Patch v2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>907004</commentid>
    <comment_count>5</comment_count>
      <attachid>206046</attachid>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2013-07-08 23:15:34 -0700</bug_when>
    <thetext>Comment on attachment 206046
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=206046&amp;action=review

&gt;&gt; Source/WebCore/ChangeLog:15
&gt;&gt; +        of the range since mutation observers can change the state of the range.
&gt; 
&gt; You mean mutation events?  Mutation observes are never called synchronously.

You are right. Fixed.

&gt;&gt; Source/WebCore/dom/Range.cpp:755
&gt;&gt; +
&gt; 
&gt; It doesn&apos;t seem right/necessary to clear these ranges here.

Removed.

&gt;&gt; LayoutTests/fast/dom/Range/resources/detach-range-during-deletecontents-iframe.xhtml:8
&gt;&gt; +var f = function ()
&gt; 
&gt; Why don&apos;t we just do:
&gt; function f()
&gt; instead?
&gt; Also, please give it a more descriptive name.

Fixed.

&gt;&gt; LayoutTests/fast/dom/Range/resources/detach-range-during-deletecontents-iframe.xhtml:16
&gt;&gt; +{
&gt; 
&gt; Ditto.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>908657</commentid>
    <comment_count>6</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-07-15 21:24:11 -0700</bug_when>
    <thetext>Could you land a patch for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>908658</commentid>
    <comment_count>7</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2013-07-15 21:24:35 -0700</bug_when>
    <thetext>The patch got landed in https://chromium.googlesource.com/chromium/blink/+/0c1f35bf0bd7df75db2b862efc883b1ae418c453 for Blink.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>908693</commentid>
    <comment_count>8</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2013-07-15 23:34:18 -0700</bug_when>
    <thetext>Sorry for delay, I just cq+&apos;ed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>908701</commentid>
    <comment_count>9</comment_count>
      <attachid>206293</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-15 23:54:41 -0700</bug_when>
    <thetext>Comment on attachment 206293
Patch v2

Clearing flags on attachment: 206293

Committed r152707: &lt;http://trac.webkit.org/changeset/152707&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>908702</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-07-15 23:54:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>125099</attachid>
            <date>2012-02-02 01:53:37 -0800</date>
            <delta_ts>2012-02-02 01:53:37 -0800</delta_ts>
            <desc>reduction</desc>
            <filename>bug77614.xhtml</filename>
            <type>application/xhtml+xml</type>
            <size>463</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1s
Ij4KPHNjcmlwdD4KPCFbQ0RBVEFbCgp2YXIgcmFuZ2UgPSBudWxsOwp2YXIgZiA9IGZ1bmN0aW9u
ICgpIHsKICByYW5nZSA9IGRvY3VtZW50LmNyZWF0ZVJhbmdlKCk7CiAgcmFuZ2UuZXhwYW5kKCJz
ZW50ZW5jZSIpOwogIHJhbmdlLmRlbGV0ZUNvbnRlbnRzKCkKfQp2YXIgZyA9IGZ1bmN0aW9uICgp
IHsgcmFuZ2UuZGV0YWNoKCk7IH0KCnZhciBmaXJzdENhbGwgPSB0cnVlOwpkb2N1bWVudC5hZGRF
dmVudExpc3RlbmVyKCJET01TdWJ0cmVlTW9kaWZpZWQiLCBmdW5jdGlvbiAoKSB7CiAgICBpZiAo
Zmlyc3RDYWxsKSB7CiAgICAgICAgZmlyc3RDYWxsID0gZmFsc2U7CiAgICAgICAgZigpOwogICAg
fSBlbHNlCiAgICAgICAgZygpOwp9LCB0cnVlKTsKCnNldFRpbWVvdXQoZiwgMCk7CgpdXT4KPC9z
Y3JpcHQ+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206046</attachid>
            <date>2013-07-03 19:32:07 -0700</date>
            <delta_ts>2013-07-08 23:15:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77614-20130704113000.patch</filename>
            <type>text/plain</type>
            <size>10913</size>
            <attacher name="Yuta Kitamura">yutak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUyMzg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGJlMDg4NmEyNzVmYjY0
MTNkY2Q4NDk4MGY0YTFiOGY4ZjIxMDg2Mi4uNzE0YjRkM2NkZDdiYmU2YzE4ZjY1NTk1ZWE3MDUx
OTM0ZTIzNDQzZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA3LTAzICBZdXRh
IEtpdGFtdXJhICA8eXV0YWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEZpeCBhIGNyYXNoIGlu
IFJhbmdlOjpwcm9jZXNzQ29udGVudHMoKS4KKworICAgICAgICBOVUxMIHB0ciBpbiBXZWJDb3Jl
OjpSYW5nZTo6cHJvY2Vzc0FuY2VzdG9yc0FuZFRoZWlyU2libGluZ3MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3NjE0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjaGFuZ2UgaXMgcG9ydGVkIGZy
b20gQmxpbmsgcmV2aXNpb24gMTUzNDgzOgorICAgICAgICBodHRwczovL3NyYy5jaHJvbWl1bS5v
cmcvdmlld3ZjL2JsaW5rP3JldmlzaW9uPTE1MzQ4MyZ2aWV3PXJldmlzaW9uCisKKyAgICAgICAg
VGhpcyBjcmFzaCBjYW4gYmUgaW5pdGlhdGVkIGJ5IGNhbGxpbmcgUmFuZ2UuZGV0YWNoKCkgd2hp
bGUgZGVsZXRlQ29udGVudHMoKQorICAgICAgICBpcyBwcm9jZXNzaW5nIHRoZSBzYW1lIHJhbmdl
LiBSYW5nZTo6cHJvY2Vzc0NvbnRlbnRzKCkgc2hvdWxkIHNhdmUgdGhlIHN0YXRlCisgICAgICAg
IG9mIHRoZSByYW5nZSBzaW5jZSBtdXRhdGlvbiBvYnNlcnZlcnMgY2FuIGNoYW5nZSB0aGUgc3Rh
dGUgb2YgdGhlIHJhbmdlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvZG9tL1JhbmdlL2RldGFjaC1y
YW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMuaHRtbAorCisgICAgICAgICogZG9tL1JhbmdlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlOjpwcm9jZXNzQ29udGVudHMpOgorICAgICAgICAq
IGRvbS9SYW5nZUJvdW5kYXJ5UG9pbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlQm91bmRh
cnlQb2ludDo6UmFuZ2VCb3VuZGFyeVBvaW50KToKKwogMjAxMy0wNy0wMyAgQnJlbnQgRnVsZ2hh
bSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2luZG93c10gVW5yZXZpZXdlZCBi
dWlsZCBjb3JyZWN0aW9uIGFmdGVyIHIxNTI4My4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9SYW5nZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCmluZGV4IGM2NWY2
OGE5ZDkyODA4MzEyMjlmMTc3MjcxMmQ4OWI3ZTZlZDBiMmIuLjNkODFjNzcxN2YyZDVlMDkzMjE4
ODhkODE4YWVlZjA4NzljYmUxOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5n
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1JhbmdlLmNwcApAQCAtNjkzLDkgKzY5Mywx
MyBAQCBQYXNzUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IFJhbmdlOjpwcm9jZXNzQ29udGVudHMo
QWN0aW9uVHlwZSBhY3Rpb24sIEV4Y2VwdGlvbgogICAgICAgICByZXR1cm4gZnJhZ21lbnQ7CiAg
ICAgfQogCisgICAgLy8gU2luY2UgbXV0YXRpb24gb2JzZXJ2ZXJzIGNhbiBtb2RpZnkgdGhlIHJh
bmdlIGR1cmluZyB0aGUgcHJvY2VzcywgdGhlIGJvdW5kYXJ5IHBvaW50cyBuZWVkIHRvIGJlIHNh
dmVkLgorICAgIFJhbmdlQm91bmRhcnlQb2ludCBvcmlnaW5hbFN0YXJ0KG1fc3RhcnQpOworICAg
IFJhbmdlQm91bmRhcnlQb2ludCBvcmlnaW5hbEVuZChtX2VuZCk7CisKICAgICAvLyB3aGF0IGlz
IHRoZSBoaWdoZXN0IG5vZGUgdGhhdCBwYXJ0aWFsbHkgc2VsZWN0cyB0aGUgc3RhcnQgLyBlbmQg
b2YgdGhlIHJhbmdlPwotICAgIFJlZlB0cjxOb2RlPiBwYXJ0aWFsU3RhcnQgPSBoaWdoZXN0QW5j
ZXN0b3JVbmRlckNvbW1vblJvb3QobV9zdGFydC5jb250YWluZXIoKSwgY29tbW9uUm9vdC5nZXQo
KSk7Ci0gICAgUmVmUHRyPE5vZGU+IHBhcnRpYWxFbmQgPSBoaWdoZXN0QW5jZXN0b3JVbmRlckNv
bW1vblJvb3QobV9lbmQuY29udGFpbmVyKCksIGNvbW1vblJvb3QuZ2V0KCkpOworICAgIFJlZlB0
cjxOb2RlPiBwYXJ0aWFsU3RhcnQgPSBoaWdoZXN0QW5jZXN0b3JVbmRlckNvbW1vblJvb3Qob3Jp
Z2luYWxTdGFydC5jb250YWluZXIoKSwgY29tbW9uUm9vdC5nZXQoKSk7CisgICAgUmVmUHRyPE5v
ZGU+IHBhcnRpYWxFbmQgPSBoaWdoZXN0QW5jZXN0b3JVbmRlckNvbW1vblJvb3Qob3JpZ2luYWxF
bmQuY29udGFpbmVyKCksIGNvbW1vblJvb3QuZ2V0KCkpOwogCiAgICAgLy8gU3RhcnQgYW5kIGVu
ZCBjb250YWluZXJzIGFyZSBkaWZmZXJlbnQuCiAgICAgLy8gVGhlcmUgYXJlIHRocmVlIHBvc3Np
YmlsaXRpZXMgaGVyZToKQEAgLTcxOCwyMiArNzIyLDIyIEBAIFBhc3NSZWZQdHI8RG9jdW1lbnRG
cmFnbWVudD4gUmFuZ2U6OnByb2Nlc3NDb250ZW50cyhBY3Rpb25UeXBlIGFjdGlvbiwgRXhjZXB0
aW9uCiAgICAgLy8gYWZ0ZXIgYW55IERPTSBtdXRhdGlvbiBldmVudCwgYXQgdmFyaW91cyBzdGFn
ZXMgYmVsb3cuIFNlZSB3ZWJraXQgYnVnIDYwMzUwLgogCiAgICAgUmVmUHRyPE5vZGU+IGxlZnRD
b250ZW50czsKLSAgICBpZiAobV9zdGFydC5jb250YWluZXIoKSAhPSBjb21tb25Sb290ICYmIGNv
bW1vblJvb3QtPmNvbnRhaW5zKG1fc3RhcnQuY29udGFpbmVyKCkpKSB7Ci0gICAgICAgIGxlZnRD
b250ZW50cyA9IHByb2Nlc3NDb250ZW50c0JldHdlZW5PZmZzZXRzKGFjdGlvbiwgMCwgbV9zdGFy
dC5jb250YWluZXIoKSwgbV9zdGFydC5vZmZzZXQoKSwgbGVuZ3RoT2ZDb250ZW50c0luTm9kZSht
X3N0YXJ0LmNvbnRhaW5lcigpKSwgZWMpOwotICAgICAgICBsZWZ0Q29udGVudHMgPSBwcm9jZXNz
QW5jZXN0b3JzQW5kVGhlaXJTaWJsaW5ncyhhY3Rpb24sIG1fc3RhcnQuY29udGFpbmVyKCksIFBy
b2Nlc3NDb250ZW50c0ZvcndhcmQsIGxlZnRDb250ZW50cywgY29tbW9uUm9vdC5nZXQoKSwgZWMp
OworICAgIGlmIChvcmlnaW5hbFN0YXJ0LmNvbnRhaW5lcigpICE9IGNvbW1vblJvb3QgJiYgY29t
bW9uUm9vdC0+Y29udGFpbnMob3JpZ2luYWxTdGFydC5jb250YWluZXIoKSkpIHsKKyAgICAgICAg
bGVmdENvbnRlbnRzID0gcHJvY2Vzc0NvbnRlbnRzQmV0d2Vlbk9mZnNldHMoYWN0aW9uLCAwLCBv
cmlnaW5hbFN0YXJ0LmNvbnRhaW5lcigpLCBvcmlnaW5hbFN0YXJ0Lm9mZnNldCgpLCBsZW5ndGhP
ZkNvbnRlbnRzSW5Ob2RlKG9yaWdpbmFsU3RhcnQuY29udGFpbmVyKCkpLCBlYyk7CisgICAgICAg
IGxlZnRDb250ZW50cyA9IHByb2Nlc3NBbmNlc3RvcnNBbmRUaGVpclNpYmxpbmdzKGFjdGlvbiwg
b3JpZ2luYWxTdGFydC5jb250YWluZXIoKSwgUHJvY2Vzc0NvbnRlbnRzRm9yd2FyZCwgbGVmdENv
bnRlbnRzLCBjb21tb25Sb290LmdldCgpLCBlYyk7CiAgICAgfQogCiAgICAgUmVmUHRyPE5vZGU+
IHJpZ2h0Q29udGVudHM7Ci0gICAgaWYgKG1fZW5kLmNvbnRhaW5lcigpICE9IGNvbW1vblJvb3Qg
JiYgY29tbW9uUm9vdC0+Y29udGFpbnMobV9lbmQuY29udGFpbmVyKCkpKSB7Ci0gICAgICAgIHJp
Z2h0Q29udGVudHMgPSBwcm9jZXNzQ29udGVudHNCZXR3ZWVuT2Zmc2V0cyhhY3Rpb24sIDAsIG1f
ZW5kLmNvbnRhaW5lcigpLCAwLCBtX2VuZC5vZmZzZXQoKSwgZWMpOwotICAgICAgICByaWdodENv
bnRlbnRzID0gcHJvY2Vzc0FuY2VzdG9yc0FuZFRoZWlyU2libGluZ3MoYWN0aW9uLCBtX2VuZC5j
b250YWluZXIoKSwgUHJvY2Vzc0NvbnRlbnRzQmFja3dhcmQsIHJpZ2h0Q29udGVudHMsIGNvbW1v
blJvb3QuZ2V0KCksIGVjKTsKKyAgICBpZiAobV9lbmQuY29udGFpbmVyKCkgIT0gY29tbW9uUm9v
dCAmJiBjb21tb25Sb290LT5jb250YWlucyhvcmlnaW5hbEVuZC5jb250YWluZXIoKSkpIHsKKyAg
ICAgICAgcmlnaHRDb250ZW50cyA9IHByb2Nlc3NDb250ZW50c0JldHdlZW5PZmZzZXRzKGFjdGlv
biwgMCwgb3JpZ2luYWxFbmQuY29udGFpbmVyKCksIDAsIG9yaWdpbmFsRW5kLm9mZnNldCgpLCBl
Yyk7CisgICAgICAgIHJpZ2h0Q29udGVudHMgPSBwcm9jZXNzQW5jZXN0b3JzQW5kVGhlaXJTaWJs
aW5ncyhhY3Rpb24sIG9yaWdpbmFsRW5kLmNvbnRhaW5lcigpLCBQcm9jZXNzQ29udGVudHNCYWNr
d2FyZCwgcmlnaHRDb250ZW50cywgY29tbW9uUm9vdC5nZXQoKSwgZWMpOwogICAgIH0KIAogICAg
IC8vIGRlbGV0ZSBhbGwgY2hpbGRyZW4gb2YgY29tbW9uUm9vdCBiZXR3ZWVuIHRoZSBzdGFydCBh
bmQgZW5kIGNvbnRhaW5lcgotICAgIFJlZlB0cjxOb2RlPiBwcm9jZXNzU3RhcnQgPSBjaGlsZE9m
Q29tbW9uUm9vdEJlZm9yZU9mZnNldChtX3N0YXJ0LmNvbnRhaW5lcigpLCBtX3N0YXJ0Lm9mZnNl
dCgpLCBjb21tb25Sb290LmdldCgpKTsKLSAgICBpZiAocHJvY2Vzc1N0YXJ0ICYmIG1fc3RhcnQu
Y29udGFpbmVyKCkgIT0gY29tbW9uUm9vdCkgLy8gcHJvY2Vzc1N0YXJ0IGNvbnRhaW5zIG5vZGVz
IGJlZm9yZSBtX3N0YXJ0LgorICAgIFJlZlB0cjxOb2RlPiBwcm9jZXNzU3RhcnQgPSBjaGlsZE9m
Q29tbW9uUm9vdEJlZm9yZU9mZnNldChvcmlnaW5hbFN0YXJ0LmNvbnRhaW5lcigpLCBvcmlnaW5h
bFN0YXJ0Lm9mZnNldCgpLCBjb21tb25Sb290LmdldCgpKTsKKyAgICBpZiAocHJvY2Vzc1N0YXJ0
ICYmIG9yaWdpbmFsU3RhcnQuY29udGFpbmVyKCkgIT0gY29tbW9uUm9vdCkgLy8gcHJvY2Vzc1N0
YXJ0IGNvbnRhaW5zIG5vZGVzIGJlZm9yZSBtX3N0YXJ0LgogICAgICAgICBwcm9jZXNzU3RhcnQg
PSBwcm9jZXNzU3RhcnQtPm5leHRTaWJsaW5nKCk7Ci0gICAgUmVmUHRyPE5vZGU+IHByb2Nlc3NF
bmQgPSBjaGlsZE9mQ29tbW9uUm9vdEJlZm9yZU9mZnNldChtX2VuZC5jb250YWluZXIoKSwgbV9l
bmQub2Zmc2V0KCksIGNvbW1vblJvb3QuZ2V0KCkpOworICAgIFJlZlB0cjxOb2RlPiBwcm9jZXNz
RW5kID0gY2hpbGRPZkNvbW1vblJvb3RCZWZvcmVPZmZzZXQob3JpZ2luYWxFbmQuY29udGFpbmVy
KCksIG9yaWdpbmFsRW5kLm9mZnNldCgpLCBjb21tb25Sb290LmdldCgpKTsKIAogICAgIC8vIENv
bGxhcHNlIHRoZSByYW5nZSwgbWFraW5nIHN1cmUgdGhhdCB0aGUgcmVzdWx0IGlzIG5vdCB3aXRo
aW4gYSBub2RlIHRoYXQgd2FzIHBhcnRpYWxseSBzZWxlY3RlZC4KICAgICBpZiAoYWN0aW9uID09
IEVYVFJBQ1RfQ09OVEVOVFMgfHwgYWN0aW9uID09IERFTEVURV9DT05URU5UUykgewpAQCAtNzQ2
LDYgKzc1MCw5IEBAIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gUmFuZ2U6OnByb2Nlc3ND
b250ZW50cyhBY3Rpb25UeXBlIGFjdGlvbiwgRXhjZXB0aW9uCiAgICAgICAgIG1fZW5kID0gbV9z
dGFydDsKICAgICB9CiAKKyAgICBvcmlnaW5hbFN0YXJ0LmNsZWFyKCk7CisgICAgb3JpZ2luYWxF
bmQuY2xlYXIoKTsKKwogICAgIC8vIE5vdyBhZGQgbGVmdENvbnRlbnRzLCBzdHVmZiBpbiBiZXR3
ZWVuLCBhbmQgcmlnaHRDb250ZW50cyB0byB0aGUgZnJhZ21lbnQKICAgICAvLyAob3IganVzdCBk
ZWxldGUgdGhlIHN0dWZmIGluIGJldHdlZW4pCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9SYW5nZUJvdW5kYXJ5UG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZUJvdW5k
YXJ5UG9pbnQuaAppbmRleCAxMTdiYzkzNTc5YjgyZTI5NDNjY2Y3ZDQwZjhhNzJkYTlkYThkNGM1
Li45OTI1MDE5OGFmMGY3Y2M0OTVlZDgxNDhkOWNlMjIzODJhNDVmZDk2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vUmFuZ2VCb3VuZGFyeVBvaW50LmgKKysrIGIvU291cmNlL1dlYkNv
cmUvZG9tL1JhbmdlQm91bmRhcnlQb2ludC5oCkBAIC0zNSw2ICszNSw4IEBAIGNsYXNzIFJhbmdl
Qm91bmRhcnlQb2ludCB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgUmFuZ2VCb3VuZGFyeVBvaW50
KFBhc3NSZWZQdHI8Tm9kZT4gY29udGFpbmVyKTsKIAorICAgIGV4cGxpY2l0IFJhbmdlQm91bmRh
cnlQb2ludChjb25zdCBSYW5nZUJvdW5kYXJ5UG9pbnQmKTsKKwogICAgIGNvbnN0IFBvc2l0aW9u
IHRvUG9zaXRpb24oKSBjb25zdDsKIAogICAgIE5vZGUqIGNvbnRhaW5lcigpIGNvbnN0OwpAQCAt
NTYsNyArNTgsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGludCBp
bnZhbGlkT2Zmc2V0ID0gLTE7Ci0gICAgCisKICAgICBSZWZQdHI8Tm9kZT4gbV9jb250YWluZXJO
b2RlOwogICAgIG11dGFibGUgaW50IG1fb2Zmc2V0SW5Db250YWluZXI7CiAgICAgUmVmUHRyPE5v
ZGU+IG1fY2hpbGRCZWZvcmVCb3VuZGFyeTsKQEAgLTcwLDYgKzcyLDEzIEBAIGlubGluZSBSYW5n
ZUJvdW5kYXJ5UG9pbnQ6OlJhbmdlQm91bmRhcnlQb2ludChQYXNzUmVmUHRyPE5vZGU+IGNvbnRh
aW5lcikKICAgICBBU1NFUlQobV9jb250YWluZXJOb2RlKTsKIH0KIAoraW5saW5lIFJhbmdlQm91
bmRhcnlQb2ludDo6UmFuZ2VCb3VuZGFyeVBvaW50KGNvbnN0IFJhbmdlQm91bmRhcnlQb2ludCYg
b3RoZXIpCisgICAgOiBtX2NvbnRhaW5lck5vZGUob3RoZXIuY29udGFpbmVyKCkpCisgICAgLCBt
X29mZnNldEluQ29udGFpbmVyKG90aGVyLm9mZnNldCgpKQorICAgICwgbV9jaGlsZEJlZm9yZUJv
dW5kYXJ5KG90aGVyLmNoaWxkQmVmb3JlKCkpCit7Cit9CisKIGlubGluZSBOb2RlKiBSYW5nZUJv
dW5kYXJ5UG9pbnQ6OmNvbnRhaW5lcigpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fY29udGFpbmVy
Tm9kZS5nZXQoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBlZjUyMGJkYWE4MzNlNDg1NTRlMDhmZDNmNTA4OGU0OTk1ZTll
YmJkLi5iOTA1ZmEyZWUwYjdmMDQ1ZWRmMDViNWE2ZWY3NjgwNDFhZWE5NTQ0IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMTMtMDctMDMgIFl1dGEgS2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5v
cmc+CisKKyAgICAgICAgTlVMTCBwdHIgaW4gV2ViQ29yZTo6UmFuZ2U6OnByb2Nlc3NBbmNlc3Rv
cnNBbmRUaGVpclNpYmxpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD03NzYxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFRoaXMgY2hhbmdlIGlzIHBvcnRlZCBmcm9tIEJsaW5rIHJldmlzaW9uIDE1MzQ4
MzoKKyAgICAgICAgaHR0cHM6Ly9zcmMuY2hyb21pdW0ub3JnL3ZpZXd2Yy9ibGluaz9yZXZpc2lv
bj0xNTM0ODMmdmlldz1yZXZpc2lvbgorCisgICAgICAgICogZmFzdC9kb20vUmFuZ2UvZGV0YWNo
LXJhbmdlLWR1cmluZy1kZWxldGVjb250ZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGZhc3QvZG9tL1JhbmdlL2RldGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMuaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9kb20vUmFuZ2UvcmVzb3VyY2VzL2RldGFjaC1yYW5n
ZS1kdXJpbmctZGVsZXRlY29udGVudHMtaWZyYW1lLnhodG1sOiBBZGRlZC4KKwogMjAxMy0wNy0w
MyAgU2ltb24gUGVuYSAgPHNpbW9uLnBlbmFAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgV2ViVGV4
dENoZWNrZXJDbGllbnQgZG9lc24ndCBpbml0aWFsaXplIG91dHB1dCBhcmd1bWVudHMuCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRl
bGV0ZWNvbnRlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1JhbmdlL2Rl
dGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljg1ZDFkMzVhNTBhMzUxNWViMGZkYjhmMzA0OWY3ZTYzMGM4MTUwZjkKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0
ZWNvbnRlbnRzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDExIEBACitDT05TT0xFIE1FU1NBR0U6
IGxpbmUgMTI6IEludmFsaWRTdGF0ZUVycm9yOiBET00gRXhjZXB0aW9uIDExOiBBbiBhdHRlbXB0
IHdhcyBtYWRlIHRvIHVzZSBhbiBvYmplY3QgdGhhdCBpcyBub3QsIG9yIGlzIG5vIGxvbmdlciwg
dXNhYmxlLgorRGV0YWNoaW5nIGEgUmFuZ2Ugd2hpbGUgZGVsZXRlQ29udGVudHMoKSBpcyBydW5u
aW5nIHNob3VsZCBub3QgY2F1c2UgYSBjcmFzaC4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2Vl
IGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUi
LgorCisKK1BBU1MgVGhlIGJyb3dzZXIgZGlkIG5vdCBjcmFzaC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9SYW5nZS9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLmh0bWwg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNv
bnRlbnRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDA2NThmNDVkYjdhYjAxMzUwYjMxMjdhM2FiYzZmOWI2
YzAzYWZmNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1JhbmdlL2Rl
dGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMuaHRtbApAQCAtMCwwICsxLDI2IEBACis8
IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlw
dD4KK2Rlc2NyaXB0aW9uKCdEZXRhY2hpbmcgYSBSYW5nZSB3aGlsZSBkZWxldGVDb250ZW50cygp
IGlzIHJ1bm5pbmcgc2hvdWxkIG5vdCBjYXVzZSBhIGNyYXNoLicpOworCit3aW5kb3cuanNUZXN0
SXNBc3luYyA9IHRydWU7CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdtZXNzYWdlJywgZnVu
Y3Rpb24gKGV2ZW50KSB7CisgICAgaWYgKGV2ZW50LmRhdGEgPT09ICdkb25lJykgeworICAgICAg
ICB0ZXN0UGFzc2VkKCdUaGUgYnJvd3NlciBkaWQgbm90IGNyYXNoLicpOworICAgICAgICBkb2N1
bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlmcmFtZSk7CisgICAgICAgIGZpbmlzaEpTVGVzdCgpOwor
ICAgIH0KK30sIGZhbHNlKTsKKwordmFyIGlmcmFtZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2lmcmFtZScpOworaWZyYW1lLnNyYyA9ICdyZXNvdXJjZXMvZGV0YWNoLXJhbmdlLWR1cmluZy1k
ZWxldGVjb250ZW50cy1pZnJhbWUueGh0bWwnOworZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChp
ZnJhbWUpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3Vy
Y2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9yZXNvdXJjZXMvZGV0YWNoLXJhbmdlLWR1cmluZy1kZWxl
dGVjb250ZW50cy1pZnJhbWUueGh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9yZXNv
dXJjZXMvZGV0YWNoLXJhbmdlLWR1cmluZy1kZWxldGVjb250ZW50cy1pZnJhbWUueGh0bWwKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uN2M0Yjg0MzY3NzBkZjBjNTYxNWRjOTFmNmQ5YzhlOTE2NmRmNjYzNQotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL1JhbmdlL3Jlc291cmNlcy9kZXRhY2gt
cmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLWlmcmFtZS54aHRtbApAQCAtMCwwICsxLDQyIEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzwhLS0gVGhpcyBmaWxlIGlzIGludGVudGlvbmFsbHkgbWFsZm9y
bWVkLiAtLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4KKzxz
Y3JpcHQ+Cis8IVtDREFUQVsKK3ZhciBkb25lID0gZmFsc2U7Cit2YXIgcmFuZ2UgPSBudWxsOwor
dmFyIGYgPSBmdW5jdGlvbiAoKQoreworICAgIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2Uo
KTsKKyAgICByYW5nZS5leHBhbmQoInNlbnRlbmNlIik7CisgICAgcmFuZ2UuZGVsZXRlQ29udGVu
dHMoKTsKK307Cit2YXIgcmVwZWF0ID0gMDsKK3ZhciBnID0gZnVuY3Rpb24gKCkKK3sKKyAgICBp
ZiAoZG9uZSkKKyAgICAgICAgcmV0dXJuOworICAgICsrcmVwZWF0OworICAgIGlmIChyZXBlYXQg
Pj0gMikgeworICAgICAgICBkb25lID0gdHJ1ZTsKKyAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZl
bnRMaXN0ZW5lcigiRE9NU3VidHJlZU1vZGlmaWVkIiwgbGlzdGVuZXIsIHRydWUpOworICAgICAg
ICB3aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKCJkb25lIiwgIioiKTsKKyAgICAgICAgcmV0dXJu
OworICAgIH0KKyAgICByYW5nZS5kZXRhY2goKTsKK307CisKK3ZhciBmaXJzdENhbGwgPSB0cnVl
OworZnVuY3Rpb24gbGlzdGVuZXIoKQoreworICAgIGlmIChmaXJzdENhbGwpIHsKKyAgICAgICAg
Zmlyc3RDYWxsID0gZmFsc2U7CisgICAgICAgIGYoKTsKKyAgICB9IGVsc2UKKyAgICAgICAgZygp
OworfQorZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiRE9NU3VidHJlZU1vZGlmaWVkIiwgbGlz
dGVuZXIsIHRydWUpOworCitkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01Db250ZW50TG9h
ZGVkIiwgZik7CitdXT4KKzwvc2NyaXB0Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>206293</attachid>
            <date>2013-07-08 23:12:37 -0700</date>
            <delta_ts>2013-07-15 23:54:41 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-77614-20130709151024.patch</filename>
            <type>text/plain</type>
            <size>10703</size>
            <attacher name="Yuta Kitamura">yutak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUyNDM4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTU3YTE5OWIyNzI0NzNl
ZDZjMjIxNGVmY2FjYzMzZTJkYjkyMWJlZi4uNzFiZDBiZTMzN2NiNzk1YWE3MzQ0M2ZlNGNjYjM2
Zjc0Y2YyYTMxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA3LTA5ICBZdXRh
IEtpdGFtdXJhICA8eXV0YWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEZpeCBhIGNyYXNoIGlu
IFJhbmdlOjpwcm9jZXNzQ29udGVudHMoKS4KKworICAgICAgICBOVUxMIHB0ciBpbiBXZWJDb3Jl
OjpSYW5nZTo6cHJvY2Vzc0FuY2VzdG9yc0FuZFRoZWlyU2libGluZ3MKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3NjE0CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjaGFuZ2UgaXMgcG9ydGVkIGZy
b20gQmxpbmsgcmV2aXNpb24gMTUzNDgzOgorICAgICAgICBodHRwczovL3NyYy5jaHJvbWl1bS5v
cmcvdmlld3ZjL2JsaW5rP3JldmlzaW9uPTE1MzQ4MyZ2aWV3PXJldmlzaW9uCisKKyAgICAgICAg
VGhpcyBjcmFzaCBjYW4gYmUgaW5pdGlhdGVkIGJ5IGNhbGxpbmcgUmFuZ2UuZGV0YWNoKCkgd2hp
bGUgZGVsZXRlQ29udGVudHMoKQorICAgICAgICBpcyBwcm9jZXNzaW5nIHRoZSBzYW1lIHJhbmdl
LiBSYW5nZTo6cHJvY2Vzc0NvbnRlbnRzKCkgc2hvdWxkIHNhdmUgdGhlIHN0YXRlCisgICAgICAg
IG9mIHRoZSByYW5nZSBzaW5jZSBtdXRhdGlvbiBldmVudHMgY2FuIGNoYW5nZSB0aGUgc3RhdGUg
b2YgdGhlIHJhbmdlLgorCisgICAgICAgIFRlc3Q6IGZhc3QvZG9tL1JhbmdlL2RldGFjaC1yYW5n
ZS1kdXJpbmctZGVsZXRlY29udGVudHMuaHRtbAorCisgICAgICAgICogZG9tL1JhbmdlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJhbmdlOjpwcm9jZXNzQ29udGVudHMpOgorICAgICAgICAqIGRv
bS9SYW5nZUJvdW5kYXJ5UG9pbnQuaDoKKyAgICAgICAgKFdlYkNvcmU6OlJhbmdlQm91bmRhcnlQ
b2ludDo6UmFuZ2VCb3VuZGFyeVBvaW50KToKKwogMjAxMy0wNy0wNiAgUm9iIEJ1aXMgIDxyYnVp
c0ByaW0uY29tPgogCiAgICAgICAgIGNyZWF0ZUVsZW1lbnQoImltYWdlIikgY3JlYXRlcyBhbiBI
VE1MSW1hZ2VFbGVtZW50LCBhbHRob3VnaCB0aGlzIGhhY2sgc2hvdWxkIGV4aXN0IGluIHBhcnNl
ciBvbmx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvZG9tL1JhbmdlLmNwcAppbmRleCBjNjVmNjhhOWQ5MjgwODMxMjI5ZjE3NzI3MTJk
ODliN2U2ZWQwYjJiLi5mYjA5YTVlZGRjYmNjZGY4MGZiODYzMDFlMzRiNDU5NTE1NjRkM2FkIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vUmFuZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2RvbS9SYW5nZS5jcHAKQEAgLTY5Myw5ICs2OTMsMTMgQEAgUGFzc1JlZlB0cjxEb2N1bWVu
dEZyYWdtZW50PiBSYW5nZTo6cHJvY2Vzc0NvbnRlbnRzKEFjdGlvblR5cGUgYWN0aW9uLCBFeGNl
cHRpb24KICAgICAgICAgcmV0dXJuIGZyYWdtZW50OwogICAgIH0KIAorICAgIC8vIFNpbmNlIG11
dGF0aW9uIGV2ZW50cyBjYW4gbW9kaWZ5IHRoZSByYW5nZSBkdXJpbmcgdGhlIHByb2Nlc3MsIHRo
ZSBib3VuZGFyeSBwb2ludHMgbmVlZCB0byBiZSBzYXZlZC4KKyAgICBSYW5nZUJvdW5kYXJ5UG9p
bnQgb3JpZ2luYWxTdGFydChtX3N0YXJ0KTsKKyAgICBSYW5nZUJvdW5kYXJ5UG9pbnQgb3JpZ2lu
YWxFbmQobV9lbmQpOworCiAgICAgLy8gd2hhdCBpcyB0aGUgaGlnaGVzdCBub2RlIHRoYXQgcGFy
dGlhbGx5IHNlbGVjdHMgdGhlIHN0YXJ0IC8gZW5kIG9mIHRoZSByYW5nZT8KLSAgICBSZWZQdHI8
Tm9kZT4gcGFydGlhbFN0YXJ0ID0gaGlnaGVzdEFuY2VzdG9yVW5kZXJDb21tb25Sb290KG1fc3Rh
cnQuY29udGFpbmVyKCksIGNvbW1vblJvb3QuZ2V0KCkpOwotICAgIFJlZlB0cjxOb2RlPiBwYXJ0
aWFsRW5kID0gaGlnaGVzdEFuY2VzdG9yVW5kZXJDb21tb25Sb290KG1fZW5kLmNvbnRhaW5lcigp
LCBjb21tb25Sb290LmdldCgpKTsKKyAgICBSZWZQdHI8Tm9kZT4gcGFydGlhbFN0YXJ0ID0gaGln
aGVzdEFuY2VzdG9yVW5kZXJDb21tb25Sb290KG9yaWdpbmFsU3RhcnQuY29udGFpbmVyKCksIGNv
bW1vblJvb3QuZ2V0KCkpOworICAgIFJlZlB0cjxOb2RlPiBwYXJ0aWFsRW5kID0gaGlnaGVzdEFu
Y2VzdG9yVW5kZXJDb21tb25Sb290KG9yaWdpbmFsRW5kLmNvbnRhaW5lcigpLCBjb21tb25Sb290
LmdldCgpKTsKIAogICAgIC8vIFN0YXJ0IGFuZCBlbmQgY29udGFpbmVycyBhcmUgZGlmZmVyZW50
LgogICAgIC8vIFRoZXJlIGFyZSB0aHJlZSBwb3NzaWJpbGl0aWVzIGhlcmU6CkBAIC03MTgsMjIg
KzcyMiwyMiBAQCBQYXNzUmVmUHRyPERvY3VtZW50RnJhZ21lbnQ+IFJhbmdlOjpwcm9jZXNzQ29u
dGVudHMoQWN0aW9uVHlwZSBhY3Rpb24sIEV4Y2VwdGlvbgogICAgIC8vIGFmdGVyIGFueSBET00g
bXV0YXRpb24gZXZlbnQsIGF0IHZhcmlvdXMgc3RhZ2VzIGJlbG93LiBTZWUgd2Via2l0IGJ1ZyA2
MDM1MC4KIAogICAgIFJlZlB0cjxOb2RlPiBsZWZ0Q29udGVudHM7Ci0gICAgaWYgKG1fc3RhcnQu
Y29udGFpbmVyKCkgIT0gY29tbW9uUm9vdCAmJiBjb21tb25Sb290LT5jb250YWlucyhtX3N0YXJ0
LmNvbnRhaW5lcigpKSkgewotICAgICAgICBsZWZ0Q29udGVudHMgPSBwcm9jZXNzQ29udGVudHNC
ZXR3ZWVuT2Zmc2V0cyhhY3Rpb24sIDAsIG1fc3RhcnQuY29udGFpbmVyKCksIG1fc3RhcnQub2Zm
c2V0KCksIGxlbmd0aE9mQ29udGVudHNJbk5vZGUobV9zdGFydC5jb250YWluZXIoKSksIGVjKTsK
LSAgICAgICAgbGVmdENvbnRlbnRzID0gcHJvY2Vzc0FuY2VzdG9yc0FuZFRoZWlyU2libGluZ3Mo
YWN0aW9uLCBtX3N0YXJ0LmNvbnRhaW5lcigpLCBQcm9jZXNzQ29udGVudHNGb3J3YXJkLCBsZWZ0
Q29udGVudHMsIGNvbW1vblJvb3QuZ2V0KCksIGVjKTsKKyAgICBpZiAob3JpZ2luYWxTdGFydC5j
b250YWluZXIoKSAhPSBjb21tb25Sb290ICYmIGNvbW1vblJvb3QtPmNvbnRhaW5zKG9yaWdpbmFs
U3RhcnQuY29udGFpbmVyKCkpKSB7CisgICAgICAgIGxlZnRDb250ZW50cyA9IHByb2Nlc3NDb250
ZW50c0JldHdlZW5PZmZzZXRzKGFjdGlvbiwgMCwgb3JpZ2luYWxTdGFydC5jb250YWluZXIoKSwg
b3JpZ2luYWxTdGFydC5vZmZzZXQoKSwgbGVuZ3RoT2ZDb250ZW50c0luTm9kZShvcmlnaW5hbFN0
YXJ0LmNvbnRhaW5lcigpKSwgZWMpOworICAgICAgICBsZWZ0Q29udGVudHMgPSBwcm9jZXNzQW5j
ZXN0b3JzQW5kVGhlaXJTaWJsaW5ncyhhY3Rpb24sIG9yaWdpbmFsU3RhcnQuY29udGFpbmVyKCks
IFByb2Nlc3NDb250ZW50c0ZvcndhcmQsIGxlZnRDb250ZW50cywgY29tbW9uUm9vdC5nZXQoKSwg
ZWMpOwogICAgIH0KIAogICAgIFJlZlB0cjxOb2RlPiByaWdodENvbnRlbnRzOwotICAgIGlmICht
X2VuZC5jb250YWluZXIoKSAhPSBjb21tb25Sb290ICYmIGNvbW1vblJvb3QtPmNvbnRhaW5zKG1f
ZW5kLmNvbnRhaW5lcigpKSkgewotICAgICAgICByaWdodENvbnRlbnRzID0gcHJvY2Vzc0NvbnRl
bnRzQmV0d2Vlbk9mZnNldHMoYWN0aW9uLCAwLCBtX2VuZC5jb250YWluZXIoKSwgMCwgbV9lbmQu
b2Zmc2V0KCksIGVjKTsKLSAgICAgICAgcmlnaHRDb250ZW50cyA9IHByb2Nlc3NBbmNlc3RvcnNB
bmRUaGVpclNpYmxpbmdzKGFjdGlvbiwgbV9lbmQuY29udGFpbmVyKCksIFByb2Nlc3NDb250ZW50
c0JhY2t3YXJkLCByaWdodENvbnRlbnRzLCBjb21tb25Sb290LmdldCgpLCBlYyk7CisgICAgaWYg
KG1fZW5kLmNvbnRhaW5lcigpICE9IGNvbW1vblJvb3QgJiYgY29tbW9uUm9vdC0+Y29udGFpbnMo
b3JpZ2luYWxFbmQuY29udGFpbmVyKCkpKSB7CisgICAgICAgIHJpZ2h0Q29udGVudHMgPSBwcm9j
ZXNzQ29udGVudHNCZXR3ZWVuT2Zmc2V0cyhhY3Rpb24sIDAsIG9yaWdpbmFsRW5kLmNvbnRhaW5l
cigpLCAwLCBvcmlnaW5hbEVuZC5vZmZzZXQoKSwgZWMpOworICAgICAgICByaWdodENvbnRlbnRz
ID0gcHJvY2Vzc0FuY2VzdG9yc0FuZFRoZWlyU2libGluZ3MoYWN0aW9uLCBvcmlnaW5hbEVuZC5j
b250YWluZXIoKSwgUHJvY2Vzc0NvbnRlbnRzQmFja3dhcmQsIHJpZ2h0Q29udGVudHMsIGNvbW1v
blJvb3QuZ2V0KCksIGVjKTsKICAgICB9CiAKICAgICAvLyBkZWxldGUgYWxsIGNoaWxkcmVuIG9m
IGNvbW1vblJvb3QgYmV0d2VlbiB0aGUgc3RhcnQgYW5kIGVuZCBjb250YWluZXIKLSAgICBSZWZQ
dHI8Tm9kZT4gcHJvY2Vzc1N0YXJ0ID0gY2hpbGRPZkNvbW1vblJvb3RCZWZvcmVPZmZzZXQobV9z
dGFydC5jb250YWluZXIoKSwgbV9zdGFydC5vZmZzZXQoKSwgY29tbW9uUm9vdC5nZXQoKSk7Ci0g
ICAgaWYgKHByb2Nlc3NTdGFydCAmJiBtX3N0YXJ0LmNvbnRhaW5lcigpICE9IGNvbW1vblJvb3Qp
IC8vIHByb2Nlc3NTdGFydCBjb250YWlucyBub2RlcyBiZWZvcmUgbV9zdGFydC4KKyAgICBSZWZQ
dHI8Tm9kZT4gcHJvY2Vzc1N0YXJ0ID0gY2hpbGRPZkNvbW1vblJvb3RCZWZvcmVPZmZzZXQob3Jp
Z2luYWxTdGFydC5jb250YWluZXIoKSwgb3JpZ2luYWxTdGFydC5vZmZzZXQoKSwgY29tbW9uUm9v
dC5nZXQoKSk7CisgICAgaWYgKHByb2Nlc3NTdGFydCAmJiBvcmlnaW5hbFN0YXJ0LmNvbnRhaW5l
cigpICE9IGNvbW1vblJvb3QpIC8vIHByb2Nlc3NTdGFydCBjb250YWlucyBub2RlcyBiZWZvcmUg
bV9zdGFydC4KICAgICAgICAgcHJvY2Vzc1N0YXJ0ID0gcHJvY2Vzc1N0YXJ0LT5uZXh0U2libGlu
ZygpOwotICAgIFJlZlB0cjxOb2RlPiBwcm9jZXNzRW5kID0gY2hpbGRPZkNvbW1vblJvb3RCZWZv
cmVPZmZzZXQobV9lbmQuY29udGFpbmVyKCksIG1fZW5kLm9mZnNldCgpLCBjb21tb25Sb290Lmdl
dCgpKTsKKyAgICBSZWZQdHI8Tm9kZT4gcHJvY2Vzc0VuZCA9IGNoaWxkT2ZDb21tb25Sb290QmVm
b3JlT2Zmc2V0KG9yaWdpbmFsRW5kLmNvbnRhaW5lcigpLCBvcmlnaW5hbEVuZC5vZmZzZXQoKSwg
Y29tbW9uUm9vdC5nZXQoKSk7CiAKICAgICAvLyBDb2xsYXBzZSB0aGUgcmFuZ2UsIG1ha2luZyBz
dXJlIHRoYXQgdGhlIHJlc3VsdCBpcyBub3Qgd2l0aGluIGEgbm9kZSB0aGF0IHdhcyBwYXJ0aWFs
bHkgc2VsZWN0ZWQuCiAgICAgaWYgKGFjdGlvbiA9PSBFWFRSQUNUX0NPTlRFTlRTIHx8IGFjdGlv
biA9PSBERUxFVEVfQ09OVEVOVFMpIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9S
YW5nZUJvdW5kYXJ5UG9pbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9SYW5nZUJvdW5kYXJ5UG9p
bnQuaAppbmRleCAxMTdiYzkzNTc5YjgyZTI5NDNjY2Y3ZDQwZjhhNzJkYTlkYThkNGM1Li45OTI1
MDE5OGFmMGY3Y2M0OTVlZDgxNDhkOWNlMjIzODJhNDVmZDk2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9kb20vUmFuZ2VCb3VuZGFyeVBvaW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1JhbmdlQm91bmRhcnlQb2ludC5oCkBAIC0zNSw2ICszNSw4IEBAIGNsYXNzIFJhbmdlQm91bmRh
cnlQb2ludCB7CiBwdWJsaWM6CiAgICAgZXhwbGljaXQgUmFuZ2VCb3VuZGFyeVBvaW50KFBhc3NS
ZWZQdHI8Tm9kZT4gY29udGFpbmVyKTsKIAorICAgIGV4cGxpY2l0IFJhbmdlQm91bmRhcnlQb2lu
dChjb25zdCBSYW5nZUJvdW5kYXJ5UG9pbnQmKTsKKwogICAgIGNvbnN0IFBvc2l0aW9uIHRvUG9z
aXRpb24oKSBjb25zdDsKIAogICAgIE5vZGUqIGNvbnRhaW5lcigpIGNvbnN0OwpAQCAtNTYsNyAr
NTgsNyBAQCBwdWJsaWM6CiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IGludCBpbnZhbGlk
T2Zmc2V0ID0gLTE7Ci0gICAgCisKICAgICBSZWZQdHI8Tm9kZT4gbV9jb250YWluZXJOb2RlOwog
ICAgIG11dGFibGUgaW50IG1fb2Zmc2V0SW5Db250YWluZXI7CiAgICAgUmVmUHRyPE5vZGU+IG1f
Y2hpbGRCZWZvcmVCb3VuZGFyeTsKQEAgLTcwLDYgKzcyLDEzIEBAIGlubGluZSBSYW5nZUJvdW5k
YXJ5UG9pbnQ6OlJhbmdlQm91bmRhcnlQb2ludChQYXNzUmVmUHRyPE5vZGU+IGNvbnRhaW5lcikK
ICAgICBBU1NFUlQobV9jb250YWluZXJOb2RlKTsKIH0KIAoraW5saW5lIFJhbmdlQm91bmRhcnlQ
b2ludDo6UmFuZ2VCb3VuZGFyeVBvaW50KGNvbnN0IFJhbmdlQm91bmRhcnlQb2ludCYgb3RoZXIp
CisgICAgOiBtX2NvbnRhaW5lck5vZGUob3RoZXIuY29udGFpbmVyKCkpCisgICAgLCBtX29mZnNl
dEluQ29udGFpbmVyKG90aGVyLm9mZnNldCgpKQorICAgICwgbV9jaGlsZEJlZm9yZUJvdW5kYXJ5
KG90aGVyLmNoaWxkQmVmb3JlKCkpCit7Cit9CisKIGlubGluZSBOb2RlKiBSYW5nZUJvdW5kYXJ5
UG9pbnQ6OmNvbnRhaW5lcigpIGNvbnN0CiB7CiAgICAgcmV0dXJuIG1fY29udGFpbmVyTm9kZS5n
ZXQoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCAzZjQ0YmU4OWNlMTIzZTMyZGZiZDIyOTVlN2Y0ZWQxMzY4YjRjNzVmLi40
NjllZmFjZWI5ODFiOGMyM2U5MTY3NTUzZTBkZjIzODBiNDYxMTU3IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMTMtMDctMDkgIFl1dGEgS2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5vcmc+CisK
KyAgICAgICAgTlVMTCBwdHIgaW4gV2ViQ29yZTo6UmFuZ2U6OnByb2Nlc3NBbmNlc3RvcnNBbmRU
aGVpclNpYmxpbmdzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD03NzYxNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFRoaXMgY2hhbmdlIGlzIHBvcnRlZCBmcm9tIEJsaW5rIHJldmlzaW9uIDE1MzQ4MzoKKyAg
ICAgICAgaHR0cHM6Ly9zcmMuY2hyb21pdW0ub3JnL3ZpZXd2Yy9ibGluaz9yZXZpc2lvbj0xNTM0
ODMmdmlldz1yZXZpc2lvbgorCisgICAgICAgICogZmFzdC9kb20vUmFuZ2UvZGV0YWNoLXJhbmdl
LWR1cmluZy1kZWxldGVjb250ZW50cy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZh
c3QvZG9tL1JhbmdlL2RldGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMuaHRtbDogQWRk
ZWQuCisgICAgICAgICogZmFzdC9kb20vUmFuZ2UvcmVzb3VyY2VzL2RldGFjaC1yYW5nZS1kdXJp
bmctZGVsZXRlY29udGVudHMtaWZyYW1lLnhodG1sOiBBZGRlZC4KKwogMjAxMy0wNy0wNiAgUm9i
IEJ1aXMgIDxyYnVpc0ByaW0uY29tPgogCiAgICAgICAgIGNyZWF0ZUVsZW1lbnQoImltYWdlIikg
Y3JlYXRlcyBhbiBIVE1MSW1hZ2VFbGVtZW50LCBhbHRob3VnaCB0aGlzIGhhY2sgc2hvdWxkIGV4
aXN0IGluIHBhcnNlciBvbmx5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5n
ZS9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1JhbmdlL2RldGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMt
ZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1ZDFkMzVhNTBhMzUxNWViMGZkYjhmMzA0OWY3ZTYz
MGM4MTUwZjkKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9k
ZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLWV4cGVjdGVkLnR4dApAQCAtMCwwICsx
LDExIEBACitDT05TT0xFIE1FU1NBR0U6IGxpbmUgMTI6IEludmFsaWRTdGF0ZUVycm9yOiBET00g
RXhjZXB0aW9uIDExOiBBbiBhdHRlbXB0IHdhcyBtYWRlIHRvIHVzZSBhbiBvYmplY3QgdGhhdCBp
cyBub3QsIG9yIGlzIG5vIGxvbmdlciwgdXNhYmxlLgorRGV0YWNoaW5nIGEgUmFuZ2Ugd2hpbGUg
ZGVsZXRlQ29udGVudHMoKSBpcyBydW5uaW5nIHNob3VsZCBub3QgY2F1c2UgYSBjcmFzaC4KKwor
T24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9s
bG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisKK1BBU1MgVGhlIGJyb3dzZXIgZGlkIG5vdCBj
cmFzaC4KK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQor
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9kZXRhY2gtcmFuZ2UtZHVy
aW5nLWRlbGV0ZWNvbnRlbnRzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9kZXRh
Y2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQK
aW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNDA2NThmNDVk
YjdhYjAxMzUwYjMxMjdhM2FiYzZmOWI2YzAzYWZmNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL1JhbmdlL2RldGFjaC1yYW5nZS1kdXJpbmctZGVsZXRlY29udGVudHMu
aHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8
c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4K
KzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdEZXRhY2hpbmcgYSBSYW5n
ZSB3aGlsZSBkZWxldGVDb250ZW50cygpIGlzIHJ1bm5pbmcgc2hvdWxkIG5vdCBjYXVzZSBhIGNy
YXNoLicpOworCit3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7CisKK3dpbmRvdy5hZGRFdmVu
dExpc3RlbmVyKCdtZXNzYWdlJywgZnVuY3Rpb24gKGV2ZW50KSB7CisgICAgaWYgKGV2ZW50LmRh
dGEgPT09ICdkb25lJykgeworICAgICAgICB0ZXN0UGFzc2VkKCdUaGUgYnJvd3NlciBkaWQgbm90
IGNyYXNoLicpOworICAgICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGlmcmFtZSk7Cisg
ICAgICAgIGZpbmlzaEpTVGVzdCgpOworICAgIH0KK30sIGZhbHNlKTsKKwordmFyIGlmcmFtZSA9
IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2lmcmFtZScpOworaWZyYW1lLnNyYyA9ICdyZXNvdXJj
ZXMvZGV0YWNoLXJhbmdlLWR1cmluZy1kZWxldGVjb250ZW50cy1pZnJhbWUueGh0bWwnOworZG9j
dW1lbnQuYm9keS5hcHBlbmRDaGlsZChpZnJhbWUpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8
L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9SYW5nZS9yZXNvdXJjZXMv
ZGV0YWNoLXJhbmdlLWR1cmluZy1kZWxldGVjb250ZW50cy1pZnJhbWUueGh0bWwgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9SYW5nZS9yZXNvdXJjZXMvZGV0YWNoLXJhbmdlLWR1cmluZy1kZWxldGVj
b250ZW50cy1pZnJhbWUueGh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjlhNDQ1OTliMzljMDk4NjFjZjU4Njcx
NTRjYjVhY2EzZTM4NzExYwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L1JhbmdlL3Jlc291cmNlcy9kZXRhY2gtcmFuZ2UtZHVyaW5nLWRlbGV0ZWNvbnRlbnRzLWlmcmFt
ZS54aHRtbApAQCAtMCwwICsxLDQyIEBACis8IURPQ1RZUEUgaHRtbD4KKzwhLS0gVGhpcyBmaWxl
IGlzIGludGVudGlvbmFsbHkgbWFsZm9ybWVkLiAtLT4KKzxodG1sIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8xOTk5L3hodG1sIj4KKzxzY3JpcHQ+Cis8IVtDREFUQVsKK3ZhciBkb25lID0gZmFs
c2U7Cit2YXIgcmFuZ2UgPSBudWxsOworZnVuY3Rpb24gZXhwYW5kQW5kRGVsZXRlUmFuZ2UoKQor
eworICAgIHJhbmdlID0gZG9jdW1lbnQuY3JlYXRlUmFuZ2UoKTsKKyAgICByYW5nZS5leHBhbmQo
InNlbnRlbmNlIik7CisgICAgcmFuZ2UuZGVsZXRlQ29udGVudHMoKTsKK30KK3ZhciByZXBlYXQg
PSAwOworZnVuY3Rpb24gZGV0YWNoKCkKK3sKKyAgICBpZiAoZG9uZSkKKyAgICAgICAgcmV0dXJu
OworICAgICsrcmVwZWF0OworICAgIGlmIChyZXBlYXQgPj0gMikgeworICAgICAgICBkb25lID0g
dHJ1ZTsKKyAgICAgICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiRE9NU3VidHJlZU1v
ZGlmaWVkIiwgbGlzdGVuZXIsIHRydWUpOworICAgICAgICB3aW5kb3cucGFyZW50LnBvc3RNZXNz
YWdlKCJkb25lIiwgIioiKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKyAgICByYW5nZS5kZXRh
Y2goKTsKK30KKwordmFyIGZpcnN0Q2FsbCA9IHRydWU7CitmdW5jdGlvbiBsaXN0ZW5lcigpCit7
CisgICAgaWYgKGZpcnN0Q2FsbCkgeworICAgICAgICBmaXJzdENhbGwgPSBmYWxzZTsKKyAgICAg
ICAgZXhwYW5kQW5kRGVsZXRlUmFuZ2UoKTsKKyAgICB9IGVsc2UKKyAgICAgICAgZGV0YWNoKCk7
Cit9Citkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJET01TdWJ0cmVlTW9kaWZpZWQiLCBsaXN0
ZW5lciwgdHJ1ZSk7CisKK2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2Fk
ZWQiLCBleHBhbmRBbmREZWxldGVSYW5nZSk7CitdXT4KKzwvc2NyaXB0Pgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>