<?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>102348</bug_id>
          
          <creation_ts>2012-11-15 01:02:43 -0800</creation_ts>
          <short_desc>[V8] Remove IsSubType() from CodeGeneratorV8.pm</short_desc>
          <delta_ts>2012-11-16 06:00:31 -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>WebCore JavaScript</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="Kentaro Hara">haraken</reporter>
          <assigned_to name="Kentaro Hara">haraken</assigned_to>
          <cc>abarth</cc>
    
    <cc>japhet</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>767803</commentid>
    <comment_count>0</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 01:02:43 -0800</bug_when>
    <thetext>CodeGenerator.pm has IsStrictSubType(). CodeGeneratorV8.pm should use it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767804</commentid>
    <comment_count>1</comment_count>
      <attachid>174367</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 01:04:28 -0800</bug_when>
    <thetext>Created attachment 174367
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768136</commentid>
    <comment_count>2</comment_count>
      <attachid>174367</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2012-11-15 08:55:48 -0800</bug_when>
    <thetext>Comment on attachment 174367
Patch

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

&gt; Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:1422
&gt; -    my $eventTarget = $dataNode-&gt;extendedAttributes-&gt;{&quot;EventTarget&quot;} || $codeGenerator-&gt;IsStrictSubtype($dataNode, &quot;EventTarget&quot;);
&gt; +    my $eventTarget = $dataNode-&gt;extendedAttributes-&gt;{&quot;EventTarget&quot;} || $codeGenerator-&gt;IsStrictSubType($dataNode, &quot;EventTarget&quot;);

Why not change this to call IsSubType since it&apos;s using that pattern anyway?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768646</commentid>
    <comment_count>3</comment_count>
      <attachid>174551</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 16:29:02 -0800</bug_when>
    <thetext>Created attachment 174551
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768675</commentid>
    <comment_count>4</comment_count>
      <attachid>174551</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-15 16:45:41 -0800</bug_when>
    <thetext>Comment on attachment 174551
patch for landing

Rejecting attachment 174551 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
 #10 succeeded at 1250 (offset 1 line).
Hunk #11 succeeded at 1309 (offset 1 line).
Hunk #12 succeeded at 1562 (offset 1 line).
Hunk #13 succeeded at 2509 (offset 1 line).
Hunk #14 succeeded at 3496 (offset 1 line).
Hunk #15 succeeded at 3513 (offset 1 line).
1 out of 15 hunks FAILED -- saving rejects to file Source/WebCore/bindings/scripts/CodeGeneratorV8.pm.rej

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--force&apos;]&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue

Full output: http://queues.webkit.org/results/14848580</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768793</commentid>
    <comment_count>5</comment_count>
      <attachid>174581</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 18:13:01 -0800</bug_when>
    <thetext>Created attachment 174581
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768851</commentid>
    <comment_count>6</comment_count>
      <attachid>174581</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-15 19:41:37 -0800</bug_when>
    <thetext>Comment on attachment 174581
patch for landing

Clearing flags on attachment: 174581

Committed r134881: &lt;http://trac.webkit.org/changeset/134881&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768852</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-15 19:41:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768924</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-15 21:51:04 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 174581 [details])
&gt; Clearing flags on attachment: 174581
&gt; 
&gt; Committed r134881: &lt;http://trac.webkit.org/changeset/134881&gt;

It broke http/tests/appcache tests on JSC platforms:
- EFL: http://build.webkit.org/builders/EFL%20Linux%2064-bit%20Release%20WK2/builds/216
- Qt: http://build.webkit.org/builders/Qt%20Linux%20Release/builds/54634</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768927</commentid>
    <comment_count>9</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 21:57:45 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #6)
&gt; &gt; (From update of attachment 174581 [details] [details])
&gt; &gt; Clearing flags on attachment: 174581
&gt; &gt; 
&gt; &gt; Committed r134881: &lt;http://trac.webkit.org/changeset/134881&gt;
&gt; 
&gt; It broke http/tests/appcache tests on JSC platforms:
&gt; - EFL: http://build.webkit.org/builders/EFL%20Linux%2064-bit%20Release%20WK2/builds/216
&gt; - Qt: http://build.webkit.org/builders/Qt%20Linux%20Release/builds/54634

hmm... I don&apos;t think the patch causes the failure. Either way now I&apos;m looking into another failure and have no time to fix it. Let me revert the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768929</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-15 21:59:57 -0800</bug_when>
    <thetext>I&apos;m sure if it is the culprit. 

- r134880 - http://build.webkit.sed.hu/builders/x86-32%20Linux%20Qt%20Release%20NRWT/builds/23663
- r134881 - http://build.webkit.sed.hu/builders/x86-32%20Linux%20Qt%20Release%20NRWT/builds/23664</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768930</commentid>
    <comment_count>11</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 21:59:58 -0800</bug_when>
    <thetext>Reverted r134881 for reason:

http/tests/appcache tests on JSC platforms are broken

Committed r134893: &lt;http://trac.webkit.org/changeset/134893&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768932</commentid>
    <comment_count>12</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-15 22:03:32 -0800</bug_when>
    <thetext>Thanks! For now reverted the culprit. Will take a detailed look later.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769140</commentid>
    <comment_count>13</comment_count>
      <attachid>174651</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2012-11-16 05:18:28 -0800</bug_when>
    <thetext>Created attachment 174651
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769173</commentid>
    <comment_count>14</comment_count>
      <attachid>174651</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-16 06:00:26 -0800</bug_when>
    <thetext>Comment on attachment 174651
patch for landing

Clearing flags on attachment: 174651

Committed r134940: &lt;http://trac.webkit.org/changeset/134940&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>769174</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-16 06:00:31 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174367</attachid>
            <date>2012-11-15 01:04:28 -0800</date>
            <delta_ts>2012-11-15 16:28:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102348-20121115180226.patch</filename>
            <type>text/plain</type>
            <size>12244</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0NzQ2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2E2N2Y2ZmYwM2QwNWM4
ODQ1Y2M0MmRmNTA4YTViZmRkZTk5MWFjMi4uOGY5ZDQ2NTgxODFkNDhlZWUzYjM0ZjFlYmJkMjdj
YThmMzVlNzgzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTExLTE1ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIFJlbW92ZSBJ
c1N1YlR5cGUoKSBmcm9tIENvZGVHZW5lcmF0b3JWOC5wbQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyMzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ29kZUdlbmVyYXRvci5wbSBoYXMgSXNTdHJpY3RT
dWJUeXBlKCkuIENvZGVHZW5lcmF0b3JWOC5wbSBzaG91bGQgdXNlIGl0LgorCisgICAgICAgIE5v
IHRlc3RzLiBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAgICAgICAgKiBiaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3IucG06CisgICAgICAgIChJc1N1YlR5cGUpOgorICAgICAgICAoSXNT
dHJpY3RTdWJUeXBlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbToKKyAgICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb24pOgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtOgorICAgICAgICAoR2VuZXJhdGVIZWFkZXIp
OgorICAgICAgICAoR2V0SW50ZXJuYWxGaWVsZHMpOgorICAgICAgICAoR2VuZXJhdGVOb3JtYWxB
dHRyR2V0dGVyKToKKyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0clNldHRlcik6CisgICAgICAg
IChHZW5lcmF0ZUZ1bmN0aW9uQ2FsbGJhY2spOgorICAgICAgICAoR2VuZXJhdGVJbXBsZW1lbnRh
dGlvbkluZGV4ZXIpOgorICAgICAgICAoR2VuZXJhdGVUb1Y4Q29udmVydGVycyk6CisKIDIwMTIt
MTEtMTQgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
Tm90IHJldmlld2VkOiBmaXhpbmcgaW5zcGVjdG9yIHRlc3RzIHVuZGVyIFF0LgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCmluZGV4IGMwMTFk
NDA0NDVhY2E5MDFiNDE5MjA0ZmUzN2FjMWFlNmJhNzNjM2YuLjdmMzk1NmE3N2Q3OGQ0Y2E0MzZm
MmI3YzI2YzU2YzlhNTI2Y2Q0MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3IucG0KQEAgLTY5OCw3ICs2OTgsMTYgQEAgc3ViIEdldFZpc2li
bGVJbnRlcmZhY2VOYW1lCiAgICAgcmV0dXJuICRpbnRlcmZhY2VOYW1lID8gJGludGVyZmFjZU5h
bWUgOiAkZGF0YU5vZGUtPm5hbWU7CiB9CiAKLXN1YiBJc1N0cmljdFN1YnR5cGUKK3N1YiBJc1N1
YlR5cGUKK3sKKyAgICBteSAkb2JqZWN0ID0gc2hpZnQ7CisgICAgbXkgJGRhdGFOb2RlID0gc2hp
ZnQ7CisgICAgbXkgJGludGVyZmFjZU5hbWUgPSBzaGlmdDsKKworICAgIHJldHVybiAkaW50ZXJm
YWNlTmFtZSBlcSAkZGF0YU5vZGUtPm5hbWUgfHwgJG9iamVjdC0+SXNTdHJpY3RTdWJUeXBlKCRk
YXRhTm9kZSwgJGludGVyZmFjZU5hbWUpOworfQorCitzdWIgSXNTdHJpY3RTdWJUeXBlCiB7CiAg
ICAgbXkgJG9iamVjdCA9IHNoaWZ0OwogICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0g
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRl
eCA0MGQ2NzlkYTZmMThjYjY5YzdkMGM4MDU4ZjQ3MjU3MDFiM2FkYTQ5Li5kMGU1OTUzMzhhNGEw
YTJiNWNkOGRjZjkwYjBiNGM3MDU1NjhjMTBlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMTQxOSw3ICsxNDE5LDcgQEAg
c3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBteSAkaGFzUGFyZW50ID0gJGhhc0xlZ2Fj
eVBhcmVudCB8fCAkaGFzUmVhbFBhcmVudDsKICAgICBteSAkcGFyZW50Q2xhc3NOYW1lID0gR2V0
UGFyZW50Q2xhc3NOYW1lKCRkYXRhTm9kZSk7CiAgICAgbXkgJHZpc2libGVJbnRlcmZhY2VOYW1l
ID0gJGNvZGVHZW5lcmF0b3ItPkdldFZpc2libGVJbnRlcmZhY2VOYW1lKCRkYXRhTm9kZSk7Ci0g
ICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZl
bnRUYXJnZXQifSB8fCAkY29kZUdlbmVyYXRvci0+SXNTdHJpY3RTdWJ0eXBlKCRkYXRhTm9kZSwg
IkV2ZW50VGFyZ2V0Iik7CisgICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGRhdGFOb2RlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8fCAkY29kZUdlbmVyYXRvci0+SXNTdHJpY3RT
dWJUeXBlKCRkYXRhTm9kZSwgIkV2ZW50VGFyZ2V0Iik7CiAgICAgbXkgJG5lZWRzTWFya0NoaWxk
cmVuID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSlNDdXN0b21NYXJrRnVuY3Rp
b24ifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFdmVudFRhcmdldCJ9IHx8
ICRkYXRhTm9kZS0+bmFtZSBlcSAiRXZlbnRUYXJnZXQiOwogCiAgICAgIyAtIEFkZCBkZWZhdWx0
IGhlYWRlciB0ZW1wbGF0ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L0NvZGVHZW5lcmF0b3JWOC5wbQppbmRleCBmZGJiM2FmZGIyZmFmOTczYTBmNDFlNzYyYjczYmIw
NjY5MTk4OTQyLi5hN2E1NGQ1MTQxNjhlNWZmZDVkZjRjYTlhMmY1NWYwZWI3MDU0YTc4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5w
bQpAQCAtNDYsOCArNDYsNiBAQCBteSBAaW1wbENvbnRlbnREZWNscyA9ICgpOwogbXkgJWltcGxJ
bmNsdWRlcyA9ICgpOwogbXkgJWhlYWRlckluY2x1ZGVzID0gKCk7CiAKLW15IEBhbGxQYXJlbnRz
ID0gKCk7Ci0KICMgRGVmYXVsdCAuaCB0ZW1wbGF0ZQogbXkgJGhlYWRlclRlbXBsYXRlID0gPDwg
IkVPRiI7CiAvKgpAQCAtMjkwLDExICsyODgsMTIgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAg
bXkgJGNsYXNzTmFtZSA9ICJWOCRpbnRlcmZhY2VOYW1lIjsKIAogICAgICMgQ29weSBjb250ZW50
cyBvZiBwYXJlbnQgY2xhc3NlcyBleGNlcHQgdGhlIGZpcnN0IHBhcmVudC4KLSAgICAkY29kZUdl
bmVyYXRvci0+QWRkTWV0aG9kc0NvbnN0YW50c0FuZEF0dHJpYnV0ZXNGcm9tUGFyZW50Q2xhc3Nl
cygkZGF0YU5vZGUsIFxAYWxsUGFyZW50cywgMSk7CisgICAgbXkgQHBhcmVudHM7CisgICAgJGNv
ZGVHZW5lcmF0b3ItPkFkZE1ldGhvZHNDb25zdGFudHNBbmRBdHRyaWJ1dGVzRnJvbVBhcmVudENs
YXNzZXMoJGRhdGFOb2RlLCBcQHBhcmVudHMsIDEpOwogICAgICRjb2RlR2VuZXJhdG9yLT5MaW5r
T3ZlcmxvYWRlZEZ1bmN0aW9ucygkZGF0YU5vZGUpOwogCiAgICAgIyBFbnN1cmUgdGhlIElzRE9N
Tm9kZVR5cGUgZnVuY3Rpb24gaXMgaW4gc3luYy4KLSAgICBkaWUoIklzRE9NTm9kZVR5cGUgaXMg
b3V0IG9mIGRhdGUgd2l0aCByZXNwZWN0IHRvICRpbnRlcmZhY2VOYW1lIikgaWYgSXNET01Ob2Rl
VHlwZSgkaW50ZXJmYWNlTmFtZSkgIT0gSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpOworICAgIGRp
ZSgiSXNET01Ob2RlVHlwZSBpcyBvdXQgb2YgZGF0ZSB3aXRoIHJlc3BlY3QgdG8gJGludGVyZmFj
ZU5hbWUiKSBpZiBJc0RPTU5vZGVUeXBlKCRpbnRlcmZhY2VOYW1lKSAhPSAkY29kZUdlbmVyYXRv
ci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKTsKIAogICAgIG15ICRoYXNEZXBlbmRlbnRM
aWZldGltZSA9ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlY4RGVwZW5kZW50TGlm
ZXRpbWUifSB8fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJBY3RpdmVET01PYmpl
Y3QifQogICAgICAgICAgfHwgR2V0R2VuZXJhdGVJc1JlYWNoYWJsZSgkZGF0YU5vZGUpIHx8ICRj
bGFzc05hbWUgPX4gL1NWRy87CkBAIC01MzYsNyArNTM1LDcgQEAgRU5ECiAKICAgICBteSAkY3Vz
dG9tV3JhcCA9ICEhKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkN1c3RvbVRvSlNP
YmplY3QifSBvciAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJWOEN1c3RvbVRvSlNP
YmplY3QifSk7CiAgICAgaWYgKCRub1RvVjgpIHsKLSAgICAgICAgZGllICJDYW4ndCBzdXBwcmVz
cyB0b1Y4IGZvciBzdWJjbGFzc1xuIiBpZiBAYWxsUGFyZW50czsKKyAgICAgICAgZGllICJDYW4n
dCBzdXBwcmVzcyB0b1Y4IGZvciBzdWJjbGFzc1xuIiBpZiBAcGFyZW50czsKICAgICB9IGVsc2lm
ICgkbm9XcmFwKSB7CiAgICAgICAgIGRpZSAiTXVzdCBoYXZlIGN1c3RvbSB0b1Y4XG4iIGlmICEk
Y3VzdG9tV3JhcDsKICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgPDxFTkQpOwpAQCAtNTUw
LDcgKzU0OSw3IEBAIGlubGluZSB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOEZhc3QoJHtuYXRp
dmVUeXBlfSogaW1wbCwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mCiBFTkQKICAgICB9IGVsc2Ugewog
Ci0gICAgICAgIG15ICRnZXRDYWNoZWRXcmFwcGVyID0gSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUp
ID8gIlY4RE9NV3JhcHBlcjo6Z2V0Q2FjaGVkV3JhcHBlcihpbXBsKSIgOiAiRE9NRGF0YVN0b3Jl
OjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbCkiOworICAgICAgICBteSAkZ2V0Q2FjaGVkV3Jh
cHBlciA9ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpID8gIlY4
RE9NV3JhcHBlcjo6Z2V0Q2FjaGVkV3JhcHBlcihpbXBsKSIgOiAiRE9NRGF0YVN0b3JlOjpjdXJy
ZW50KGlzb2xhdGUpLT5nZXQoaW1wbCkiOwogICAgICAgICBteSAkY3JlYXRlV3JhcHBlckNhbGwg
PSAkY3VzdG9tV3JhcCA/ICIke2NsYXNzTmFtZX06OndyYXAiIDogIiR7Y2xhc3NOYW1lfTo6Y3Jl
YXRlV3JhcHBlciI7CiAKICAgICAgICAgaWYgKCRjdXN0b21XcmFwKSB7CkBAIC01OTIsNyArNTkx
LDcgQEAgaW5saW5lIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4KCR7bmF0aXZlVHlwZX0qIGlt
cGwsIHY4OjpIYW5kbGU8djg6Ok9iamVjdD4gY3IKICAgICByZXR1cm4gd3JhcChpbXBsLCBjcmVh
dGlvbkNvbnRleHQsIGlzb2xhdGUpOwogfQogRU5ECi0gICAgICAgIGlmIChJc05vZGVTdWJUeXBl
KCRkYXRhTm9kZSkpIHsKKyAgICAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRh
dGFOb2RlLCAiTm9kZSIpKSB7CiAgICAgICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCA8PEVO
RCk7CiAKIGlubGluZSB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOEZhc3QoJHtuYXRpdmVUeXBl
fSogaW1wbCwgY29uc3Qgdjg6OkFjY2Vzc29ySW5mbyYgaW5mbywgTm9kZSogaG9sZGVyKQpAQCAt
NjQxLDExICs2NDAsMTEgQEAgc3ViIEdldEludGVybmFsRmllbGRzCiAgICAgIyBzbyBzcGVjaWFs
LWNhc2UgQWJzdHJhY3RXb3JrZXIgYW5kIFdvcmtlckNvbnRleHQgdG8gaW5jbHVkZSBhbGwgc3Vi
LXR5cGVzLgogICAgICMgRXZlbnQgbGlzdGVuZXJzIG9uIERPTSBub2RlcyBhcmUgZXhwbGljaXRs
eSBzdXBwb3J0ZWQgaW4gdGhlIEdDIGNvbnRyb2xsZXIuCiAgICAgIyBGSVhNRTogU2ltcGxpZnkg
dGhpcyB3aGVuIGFsbCBFdmVudFRhcmdldHMgYXJlIHN1YnR5cGVzIG9mIEV2ZW50VGFyZ2V0Lgot
ICAgIGlmICghSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpCisgICAgaWYgKCEkY29kZUdlbmVyYXRv
ci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKQogICAgICAgICAmJiAoJGRhdGFOb2RlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifQogICAgICAgICAgICAgfHwgJGRhdGFO
b2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiSXNXb3JrZXJDb250ZXh0In0KLSAgICAgICAgICAg
IHx8IElzU3ViVHlwZSgkZGF0YU5vZGUsICJBYnN0cmFjdFdvcmtlciIpCi0gICAgICAgICAgICB8
fCBJc1N1YlR5cGUoJGRhdGFOb2RlLCAiRXZlbnRUYXJnZXQiKSkpIHsKKyAgICAgICAgICAgIHx8
ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiQWJzdHJhY3RXb3JrZXIiKQor
ICAgICAgICAgICAgfHwgJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJFdmVu
dFRhcmdldCIpKSkgewogICAgICAgICBwdXNoKEBjdXN0b21JbnRlcm5hbEZpZWxkcywgImV2ZW50
TGlzdGVuZXJDYWNoZUluZGV4Iik7CiAgICAgfQogCkBAIC03NzEsMjQgKzc3MCw2IEBAIHN1YiBH
ZW5lcmF0ZUhlYWRlckN1c3RvbUNhbGwKICAgICB9CiB9CiAKLXN1YiBJc1N1YlR5cGUKLXsKLSAg
ICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKLSAgICBteSAkcGFyZW50VHlwZSA9IHNoaWZ0OwotICAg
IHJldHVybiAxIGlmICgkZGF0YU5vZGUtPm5hbWUgZXEgJHBhcmVudFR5cGUpOwotICAgIGZvcmVh
Y2ggKEBhbGxQYXJlbnRzKSB7Ci0gICAgICAgIG15ICRwYXJlbnQgPSAkY29kZUdlbmVyYXRvci0+
U3RyaXBNb2R1bGUoJF8pOwotICAgICAgICByZXR1cm4gMSBpZiAkcGFyZW50IGVxICRwYXJlbnRU
eXBlOwotICAgIH0KLSAgICByZXR1cm4gMDsKLX0KLQotc3ViIElzTm9kZVN1YlR5cGUKLXsKLSAg
ICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKLSAgICByZXR1cm4gSXNTdWJUeXBlKCRkYXRhTm9kZSwg
Ik5vZGUiKTsKLX0KLQogc3ViIElzVmlzaWJsZUFjcm9zc09yaWdpbnMKIHsKICAgICBteSAkZGF0
YU5vZGUgPSBzaGlmdDsKQEAgLTk2Nyw3ICs5NDgsNyBAQCBFTkQKICAgICB9IGVsc2UgewogICAg
ICAgICBteSAkcmVmbGVjdCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1
dGVzLT57IlJlZmxlY3QifTsKICAgICAgICAgbXkgJHVybCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVy
ZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlVSTCJ9OwotICAgICAgICBpZiAoJGdldHRlclN0cmlu
Z1VzZXNJbXAgJiYgJHJlZmxlY3QgJiYgISR1cmwgJiYgSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUp
ICYmICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJUeXBlKSkgeworICAgICAgICBp
ZiAoJGdldHRlclN0cmluZ1VzZXNJbXAgJiYgJHJlZmxlY3QgJiYgISR1cmwgJiYgJGNvZGVHZW5l
cmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIikgJiYgJGNvZGVHZW5lcmF0b3ItPklz
U3RyaW5nVHlwZSgkYXR0clR5cGUpKSB7CiAgICAgICAgICAgICAjIEdlbmVyYXRlIHN1cGVyLWNv
bXBhY3QgY2FsbCBmb3IgcmVndWxhciBhdHRyaWJ1dGUgZ2V0dGVyOgogICAgICAgICAgICAgbXkg
JGNvbnRlbnRBdHRyaWJ1dGVOYW1lID0gJHJlZmxlY3QgZXEgIlZBTFVFX0lTX01JU1NJTkciID8g
bGMgJGF0dHJOYW1lIDogJHJlZmxlY3Q7CiAgICAgICAgICAgICBteSAkbmFtZXNwYWNlID0gJGNv
ZGVHZW5lcmF0b3ItPk5hbWVzcGFjZUZvckF0dHJpYnV0ZU5hbWUoJGludGVyZmFjZU5hbWUsICRj
b250ZW50QXR0cmlidXRlTmFtZSk7CkBAIC0xMDYxLDcgKzEwNDIsNyBAQCBFTkQKICAgICAjIFNw
ZWNpYWwgY2FzZSBmb3IgcmVhZG9ubHkgb3IgUmVwbGFjZWFibGUgYXR0cmlidXRlcyAod2l0aCBh
IGZldyBleGNlcHRpb25zKS4gVGhpcyBhdHRlbXB0cyB0byBlbnN1cmUgdGhhdCBKUyB3cmFwcGVy
cyBkb24ndCBnZXQKICAgICAjIGdhcmJhZ2UtY29sbGVjdGVkIHByZW1hdHVyZWx5IHdoZW4gdGhl
aXIgbGlmZXRpbWUgaXMgc3Ryb25nbHkgdGllZCB0byB0aGVpciBvd25lci4gV2UgYWNjb21wbGlz
aCB0aGlzIGJ5IGluc2VydGluZyBhIHJlZmVyZW5jZSB0bwogICAgICMgdGhlIG5ld2x5IGNyZWF0
ZWQgd3JhcHBlciBpbnRvIGFuIGludGVybmFsIGZpZWxkIG9mIHRoZSBob2xkZXIgb2JqZWN0Lgot
ICAgIGlmICghSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpICYmICRhdHRyTmFtZSBuZSAic2VsZiIg
JiYgSXNXcmFwcGVyVHlwZSgkcmV0dXJuVHlwZSkgJiYgKElzUmVhZG9ubHkoJGF0dHJpYnV0ZSkg
fHwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFi
bGUifSB8fCAkYXR0ck5hbWUgZXEgImxvY2F0aW9uIikKKyAgICBpZiAoISRjb2RlR2VuZXJhdG9y
LT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpICYmICRhdHRyTmFtZSBuZSAic2VsZiIgJiYg
SXNXcmFwcGVyVHlwZSgkcmV0dXJuVHlwZSkgJiYgKElzUmVhZG9ubHkoJGF0dHJpYnV0ZSkgfHwg
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFibGUi
fSB8fCAkYXR0ck5hbWUgZXEgImxvY2F0aW9uIikKICAgICAgICAgJiYgJHJldHVyblR5cGUgbmUg
IkV2ZW50VGFyZ2V0IiAmJiAkcmV0dXJuVHlwZSBuZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIiAm
JiAkcmV0dXJuVHlwZSBuZSAiRE9NV2luZG93IiAKICAgICAgICAgJiYgJHJldHVyblR5cGUgbmUg
Ik1lc3NhZ2VQb3J0QXJyYXkiCiAgICAgICAgICYmICRyZXR1cm5UeXBlICF+IC9TVkcvICYmICRy
ZXR1cm5UeXBlICF+IC9IVE1MLyAmJiAhSXNET01Ob2RlVHlwZSgkcmV0dXJuVHlwZSkpIHsKQEAg
LTEyNTAsNyArMTIzMSw3IEBAIEVORAogICAgIH0gZWxzZSB7CiAgICAgICAgIG15ICRhdHRyVHlw
ZSA9IEdldFR5cGVGcm9tU2lnbmF0dXJlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSk7CiAgICAgICAg
IG15ICRyZWZsZWN0ID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMt
PnsiUmVmbGVjdCJ9OwotICAgICAgICBpZiAoJHJlZmxlY3QgJiYgSXNOb2RlU3ViVHlwZSgkZGF0
YU5vZGUpICYmICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJUeXBlKSkgeworICAg
ICAgICBpZiAoJHJlZmxlY3QgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUs
ICJOb2RlIikgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgkYXR0clR5cGUpKSB7CiAg
ICAgICAgICAgICAjIEdlbmVyYXRlIHN1cGVyLWNvbXBhY3QgY2FsbCBmb3IgcmVndWxhciBhdHRy
aWJ1dGUgc2V0dGVyOgogICAgICAgICAgICAgbXkgJGNvbnRlbnRBdHRyaWJ1dGVOYW1lID0gJHJl
ZmxlY3QgZXEgIlZBTFVFX0lTX01JU1NJTkciID8gbGMgJGF0dHJOYW1lIDogJHJlZmxlY3Q7CiAg
ICAgICAgICAgICBteSAkbmFtZXNwYWNlID0gJGNvZGVHZW5lcmF0b3ItPk5hbWVzcGFjZUZvckF0
dHJpYnV0ZU5hbWUoJGludGVyZmFjZU5hbWUsICRjb250ZW50QXR0cmlidXRlTmFtZSk7CkBAIC0x
MzA5LDcgKzEyOTAsNyBAQCBFTkQKICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+
dHlwZSBlcSAiRXZlbnRMaXN0ZW5lciIpIHsKICAgICAgICAgICAgIG15ICRpbXBsU2V0dGVyRnVu
Y3Rpb25OYW1lID0gJGNvZGVHZW5lcmF0b3ItPldLX3VjZmlyc3QoJGF0dHJOYW1lKTsKICAgICAg
ICAgICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJWOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5oIik7Ci0g
ICAgICAgICAgICBpZiAoIUlzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSkgeworICAgICAgICAgICAg
aWYgKCEkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSkgewogICAg
ICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50RGVjbHMsICIgICAgdHJhbnNmZXJIaWRkZW5E
ZXBlbmRlbmN5KGluZm8uSG9sZGVyKCksIGltcC0+JGF0dHJOYW1lKCksIHZhbHVlLCBWOCR7aW50
ZXJmYWNlTmFtZX06OmV2ZW50TGlzdGVuZXJDYWNoZUluZGV4KTtcbiIpOwogICAgICAgICAgICAg
fQogICAgICAgICAgICAgaWYgKCRpbnRlcmZhY2VOYW1lIGVxICJXb3JrZXJDb250ZXh0IiBhbmQg
JGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5uYW1lIGVxICJvbmVycm9yIikgewpAQCAtMTU2MiwxMCAr
MTU0MywxMCBAQCBzdWIgR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrCiAgICAgIyBidXQgdGhleSBh
cmUgZXh0cmVtZWx5IGNvbnNpc3RlbnQgYWNyb3NzIHRoZSB2YXJpb3VzIGNsYXNzZXMgdGhhdCB0
YWtlIGV2ZW50IGxpc3RlbmVycywKICAgICAjIHNvIHdlIGNhbiBnZW5lcmF0ZSB0aGVtIGFzIGEg
InNwZWNpYWwgY2FzZSIuCiAgICAgaWYgKCRuYW1lIGVxICJhZGRFdmVudExpc3RlbmVyIikgewot
ICAgICAgICBHZW5lcmF0ZUV2ZW50TGlzdGVuZXJDYWxsYmFjaygkaW50ZXJmYWNlTmFtZSwgIUlz
Tm9kZVN1YlR5cGUoJGRhdGFOb2RlKSwgImFkZCIpOworICAgICAgICBHZW5lcmF0ZUV2ZW50TGlz
dGVuZXJDYWxsYmFjaygkaW50ZXJmYWNlTmFtZSwgISRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUo
JGRhdGFOb2RlLCAiTm9kZSIpLCAiYWRkIik7CiAgICAgICAgIHJldHVybjsKICAgICB9IGVsc2lm
ICgkbmFtZSBlcSAicmVtb3ZlRXZlbnRMaXN0ZW5lciIpIHsKLSAgICAgICAgR2VuZXJhdGVFdmVu
dExpc3RlbmVyQ2FsbGJhY2soJGludGVyZmFjZU5hbWUsICFJc05vZGVTdWJUeXBlKCRkYXRhTm9k
ZSksICJyZW1vdmUiKTsKKyAgICAgICAgR2VuZXJhdGVFdmVudExpc3RlbmVyQ2FsbGJhY2soJGlu
dGVyZmFjZU5hbWUsICEkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUi
KSwgInJlbW92ZSIpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCkBAIC0yNTA5LDcgKzI0OTAs
NyBAQCBzdWIgR2VuZXJhdGVJbXBsZW1lbnRhdGlvbkluZGV4ZXIKICAgICAgICAgfQogICAgIH0K
IAotICAgIG15ICRoYXNFbnVtZXJhdG9yID0gISRpc1NwZWNpYWxDYXNlICYmIElzTm9kZVN1YlR5
cGUoJGRhdGFOb2RlKTsKKyAgICBteSAkaGFzRW51bWVyYXRvciA9ICEkaXNTcGVjaWFsQ2FzZSAm
JiAkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKTsKIAogICAgICMg
RklYTUU6IEZpbmQgYSB3YXkgdG8gbm90IGhhdmUgdG8gc3BlY2lhbC1jYXNlIEhUTUxPcHRpb25z
Q29sbGVjdGlvbi4KICAgICBpZiAoJGludGVyZmFjZU5hbWUgZXEgIkhUTUxPcHRpb25zQ29sbGVj
dGlvbiIpIHsKQEAgLTM0OTYsNyArMzQ3Nyw3IEBAIHN1YiBHZW5lcmF0ZVRvVjhDb252ZXJ0ZXJz
CiAKICAgICBteSAkY3JlYXRlV3JhcHBlckFyZ3VtZW50VHlwZSA9IEdldFBhc3NSZWZQdHJUeXBl
KCRuYXRpdmVUeXBlKTsKICAgICBteSAkYmFzZVR5cGUgPSBCYXNlSW50ZXJmYWNlTmFtZSgkZGF0
YU5vZGUpOwotICAgIG15ICRnZXRDYWNoZWRXcmFwcGVyID0gSXNOb2RlU3ViVHlwZSgkZGF0YU5v
ZGUpID8gIlY4RE9NV3JhcHBlcjo6Z2V0Q2FjaGVkV3JhcHBlcihpbXBsLmdldCgpKSIgOiAiRE9N
RGF0YVN0b3JlOjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbC5nZXQoKSkiOworICAgIG15ICRn
ZXRDYWNoZWRXcmFwcGVyID0gJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJO
b2RlIikgPyAiVjhET01XcmFwcGVyOjpnZXRDYWNoZWRXcmFwcGVyKGltcGwuZ2V0KCkpIiA6ICJE
T01EYXRhU3RvcmU6OmN1cnJlbnQoaXNvbGF0ZSktPmdldChpbXBsLmdldCgpKSI7CiAKICAgICBw
dXNoKEBpbXBsQ29udGVudCwgPDxFTkQpOwogCkBAIC0zNTEzLDcgKzM0OTQsNyBAQCBFTkQKIAog
ICAgIEFkZFRvSW1wbEluY2x1ZGVzKCJGcmFtZS5oIik7CiAKLSAgICBpZiAoSXNTdWJUeXBlKCRk
YXRhTm9kZSwgIkRvY3VtZW50IikpIHsKKyAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlw
ZSgkZGF0YU5vZGUsICJEb2N1bWVudCIpKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8
PEVORCk7CiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGltcGwtPmZyYW1lKCkpIHsKICAgICAgICAg
aWYgKGZyYW1lLT5zY3JpcHQoKS0+aW5pdGlhbGl6ZU1haW5Xb3JsZCgpKSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174551</attachid>
            <date>2012-11-15 16:29:02 -0800</date>
            <delta_ts>2012-11-15 18:12:58 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-102348-20121116092658.patch</filename>
            <type>text/plain</type>
            <size>12197</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0ODQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTkzOWM5NjBlMWU2ZDQ1
NGY2NjFmYzBlN2M5Y2NlYmE2MTQ1MjgzYS4uOTYzOTYwZjdiOTFlMWQyYmYyMDlmMzhkYzcwODgw
ZDg3ZmNkZmVhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTExLTE1ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIFJlbW92ZSBJ
c1N1YlR5cGUoKSBmcm9tIENvZGVHZW5lcmF0b3JWOC5wbQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyMzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWRhbSBCYXJ0aC4KKworICAgICAgICBDb2RlR2VuZXJhdG9yLnBtIGhhcyBJc1N0cmljdFN1YlR5
cGUoKS4gQ29kZUdlbmVyYXRvclY4LnBtIHNob3VsZCB1c2UgaXQuCisKKyAgICAgICAgTm8gdGVz
dHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvci5wbToKKyAgICAgICAgKElzU3ViVHlwZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToK
KyAgICAgICAgKEdlbmVyYXRlSGVhZGVyKToKKyAgICAgICAgKEdldEludGVybmFsRmllbGRzKToK
KyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0ckdldHRlcik6CisgICAgICAgIChHZW5lcmF0ZU5v
cm1hbEF0dHJTZXR0ZXIpOgorICAgICAgICAoR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrKToKKyAg
ICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb25JbmRleGVyKToKKyAgICAgICAgKEdlbmVyYXRl
VG9WOENvbnZlcnRlcnMpOgorCiAyMDEyLTExLTE1ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFz
ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEVuc3VyZSB0aGF0IHNjcm9sbGJhciBsYXllcnMgc2hv
dyBkZWJ1ZyBib3JkZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3IucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3IucG0KaW5kZXggYzAxMWQ0MDQ0NWFjYTkwMWI0MTkyMDRmZTM3YWMxYWU2YmE3
M2MzZi4uOTM0OWMyNGFjYmY3MDZiZThlODJhODRkMjVjNjQ1MGVkOTU4ZjhiMiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yLnBtCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQpAQCAtNjk4
LDEzICs2OTgsMTQgQEAgc3ViIEdldFZpc2libGVJbnRlcmZhY2VOYW1lCiAgICAgcmV0dXJuICRp
bnRlcmZhY2VOYW1lID8gJGludGVyZmFjZU5hbWUgOiAkZGF0YU5vZGUtPm5hbWU7CiB9CiAKLXN1
YiBJc1N0cmljdFN1YnR5cGUKK3N1YiBJc1N1YlR5cGUKIHsKICAgICBteSAkb2JqZWN0ID0gc2hp
ZnQ7CiAgICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7CiAgICAgbXkgJGludGVyZmFjZU5hbWUgPSBz
aGlmdDsKICAgICBteSAkZm91bmQgPSAwOwogCisgICAgcmV0dXJuIDEgaWYgJGludGVyZmFjZU5h
bWUgZXEgJGRhdGFOb2RlLT5uYW1lOwogICAgICRvYmplY3QtPkZvckFsbFBhcmVudHMoJGRhdGFO
b2RlLCBzdWIgewogICAgICAgICBteSAkaW50ZXJmYWNlID0gc2hpZnQ7CiAgICAgICAgIGlmICgk
b2JqZWN0LT5TdHJpcE1vZHVsZSgkaW50ZXJmYWNlLT5uYW1lKSBlcSAkaW50ZXJmYWNlTmFtZSkg
ewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JK
Uy5wbQppbmRleCA0MGQ2NzlkYTZmMThjYjY5YzdkMGM4MDU4ZjQ3MjU3MDFiM2FkYTQ5Li4wY2E5
ODU5YTAwN2Y2ZmU2YzVhOWIzZDQzMjY3NTZiMGNjYTRlN2ViIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMTQxOSw3ICsx
NDE5LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICBteSAkaGFzUGFyZW50ID0g
JGhhc0xlZ2FjeVBhcmVudCB8fCAkaGFzUmVhbFBhcmVudDsKICAgICBteSAkcGFyZW50Q2xhc3NO
YW1lID0gR2V0UGFyZW50Q2xhc3NOYW1lKCRkYXRhTm9kZSk7CiAgICAgbXkgJHZpc2libGVJbnRl
cmZhY2VOYW1lID0gJGNvZGVHZW5lcmF0b3ItPkdldFZpc2libGVJbnRlcmZhY2VOYW1lKCRkYXRh
Tm9kZSk7Ci0gICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0
ZXMtPnsiRXZlbnRUYXJnZXQifSB8fCAkY29kZUdlbmVyYXRvci0+SXNTdHJpY3RTdWJ0eXBlKCRk
YXRhTm9kZSwgIkV2ZW50VGFyZ2V0Iik7CisgICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGNvZGVHZW5l
cmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJFdmVudFRhcmdldCIpOwogICAgIG15ICRuZWVk
c01hcmtDaGlsZHJlbiA9ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9t
TWFya0Z1bmN0aW9uIn0gfHwgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRU
YXJnZXQifSB8fCAkZGF0YU5vZGUtPm5hbWUgZXEgIkV2ZW50VGFyZ2V0IjsKIAogICAgICMgLSBB
ZGQgZGVmYXVsdCBoZWFkZXIgdGVtcGxhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KaW5kZXggZTczYzMxOWY0Mzc0ZGI3YmIwYjFh
MGNmOWM2NTJiNDE2NmIxNTY0MC4uNGRiZThjMDM4M2U4MThmZGE3YzFkZjQ4NjBjNGE4YjdmYzkx
NGVjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yVjgucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yVjgucG0KQEAgLTQ2LDggKzQ2LDYgQEAgbXkgQGltcGxDb250ZW50RGVjbHMgPSAoKTsK
IG15ICVpbXBsSW5jbHVkZXMgPSAoKTsKIG15ICVoZWFkZXJJbmNsdWRlcyA9ICgpOwogCi1teSBA
YWxsUGFyZW50cyA9ICgpOwotCiAjIERlZmF1bHQgLmggdGVtcGxhdGUKIG15ICRoZWFkZXJUZW1w
bGF0ZSA9IDw8ICJFT0YiOwogLyoKQEAgLTI5MCwxMSArMjg4LDEyIEBAIHN1YiBHZW5lcmF0ZUhl
YWRlcgogICAgIG15ICRjbGFzc05hbWUgPSAiVjgkaW50ZXJmYWNlTmFtZSI7CiAKICAgICAjIENv
cHkgY29udGVudHMgb2YgcGFyZW50IGNsYXNzZXMgZXhjZXB0IHRoZSBmaXJzdCBwYXJlbnQuCi0g
ICAgJGNvZGVHZW5lcmF0b3ItPkFkZE1ldGhvZHNDb25zdGFudHNBbmRBdHRyaWJ1dGVzRnJvbVBh
cmVudENsYXNzZXMoJGRhdGFOb2RlLCBcQGFsbFBhcmVudHMsIDEpOworICAgIG15IEBwYXJlbnRz
OworICAgICRjb2RlR2VuZXJhdG9yLT5BZGRNZXRob2RzQ29uc3RhbnRzQW5kQXR0cmlidXRlc0Zy
b21QYXJlbnRDbGFzc2VzKCRkYXRhTm9kZSwgXEBwYXJlbnRzLCAxKTsKICAgICAkY29kZUdlbmVy
YXRvci0+TGlua092ZXJsb2FkZWRGdW5jdGlvbnMoJGRhdGFOb2RlKTsKIAogICAgICMgRW5zdXJl
IHRoZSBJc0RPTU5vZGVUeXBlIGZ1bmN0aW9uIGlzIGluIHN5bmMuCi0gICAgZGllKCJJc0RPTU5v
ZGVUeXBlIGlzIG91dCBvZiBkYXRlIHdpdGggcmVzcGVjdCB0byAkaW50ZXJmYWNlTmFtZSIpIGlm
IElzRE9NTm9kZVR5cGUoJGludGVyZmFjZU5hbWUpICE9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2Rl
KTsKKyAgICBkaWUoIklzRE9NTm9kZVR5cGUgaXMgb3V0IG9mIGRhdGUgd2l0aCByZXNwZWN0IHRv
ICRpbnRlcmZhY2VOYW1lIikgaWYgSXNET01Ob2RlVHlwZSgkaW50ZXJmYWNlTmFtZSkgIT0gJGNv
ZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIik7CiAKICAgICBteSAkaGFz
RGVwZW5kZW50TGlmZXRpbWUgPSAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJWOERl
cGVuZGVudExpZmV0aW1lIn0gfHwgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQWN0
aXZlRE9NT2JqZWN0In0KICAgICAgICAgIHx8IEdldEdlbmVyYXRlSXNSZWFjaGFibGUoJGRhdGFO
b2RlKSB8fCAkY2xhc3NOYW1lID1+IC9TVkcvOwpAQCAtNTM2LDcgKzUzNSw3IEBAIEVORAogCiAg
ICAgbXkgJGN1c3RvbVdyYXAgPSAhISgkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJD
dXN0b21Ub0pTT2JqZWN0In0gb3IgJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiVjhD
dXN0b21Ub0pTT2JqZWN0In0pOwogICAgIGlmICgkbm9Ub1Y4KSB7Ci0gICAgICAgIGRpZSAiQ2Fu
J3Qgc3VwcHJlc3MgdG9WOCBmb3Igc3ViY2xhc3NcbiIgaWYgQGFsbFBhcmVudHM7CisgICAgICAg
IGRpZSAiQ2FuJ3Qgc3VwcHJlc3MgdG9WOCBmb3Igc3ViY2xhc3NcbiIgaWYgQHBhcmVudHM7CiAg
ICAgfSBlbHNpZiAoJG5vV3JhcCkgewogICAgICAgICBkaWUgIk11c3QgaGF2ZSBjdXN0b20gdG9W
OFxuIiBpZiAhJGN1c3RvbVdyYXA7CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIDw8RU5E
KTsKQEAgLTU1MCw3ICs1NDksNyBAQCBpbmxpbmUgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjhG
YXN0KCR7bmF0aXZlVHlwZX0qIGltcGwsIGNvbnN0IHY4OjpBY2Nlc3NvckluZgogRU5ECiAgICAg
fSBlbHNlIHsKIAotICAgICAgICBteSAkZ2V0Q2FjaGVkV3JhcHBlciA9IElzTm9kZVN1YlR5cGUo
JGRhdGFOb2RlKSA/ICJWOERPTVdyYXBwZXI6OmdldENhY2hlZFdyYXBwZXIoaW1wbCkiIDogIkRP
TURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwpIjsKKyAgICAgICAgbXkgJGdl
dENhY2hlZFdyYXBwZXIgPSAkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5v
ZGUiKSA/ICJWOERPTVdyYXBwZXI6OmdldENhY2hlZFdyYXBwZXIoaW1wbCkiIDogIkRPTURhdGFT
dG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwpIjsKICAgICAgICAgbXkgJGNyZWF0ZVdy
YXBwZXJDYWxsID0gJGN1c3RvbVdyYXAgPyAiJHtjbGFzc05hbWV9Ojp3cmFwIiA6ICIke2NsYXNz
TmFtZX06OmNyZWF0ZVdyYXBwZXIiOwogCiAgICAgICAgIGlmICgkY3VzdG9tV3JhcCkgewpAQCAt
NTkyLDcgKzU5MSw3IEBAIGlubGluZSB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOCgke25hdGl2
ZVR5cGV9KiBpbXBsLCB2ODo6SGFuZGxlPHY4OjpPYmplY3Q+IGNyCiAgICAgcmV0dXJuIHdyYXAo
aW1wbCwgY3JlYXRpb25Db250ZXh0LCBpc29sYXRlKTsKIH0KIEVORAotICAgICAgICBpZiAoSXNO
b2RlU3ViVHlwZSgkZGF0YU5vZGUpKSB7CisgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+SXNT
dWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSkgewogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29u
dGVudCwgPDxFTkQpOwogCiBpbmxpbmUgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjhGYXN0KCR7
bmF0aXZlVHlwZX0qIGltcGwsIGNvbnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8sIE5vZGUqIGhv
bGRlcikKQEAgLTY0MSwxMSArNjQwLDExIEBAIHN1YiBHZXRJbnRlcm5hbEZpZWxkcwogICAgICMg
c28gc3BlY2lhbC1jYXNlIEFic3RyYWN0V29ya2VyIGFuZCBXb3JrZXJDb250ZXh0IHRvIGluY2x1
ZGUgYWxsIHN1Yi10eXBlcy4KICAgICAjIEV2ZW50IGxpc3RlbmVycyBvbiBET00gbm9kZXMgYXJl
IGV4cGxpY2l0bHkgc3VwcG9ydGVkIGluIHRoZSBHQyBjb250cm9sbGVyLgogICAgICMgRklYTUU6
IFNpbXBsaWZ5IHRoaXMgd2hlbiBhbGwgRXZlbnRUYXJnZXRzIGFyZSBzdWJ0eXBlcyBvZiBFdmVu
dFRhcmdldC4KLSAgICBpZiAoIUlzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKQorICAgIGlmICghJGNv
ZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIikKICAgICAgICAgJiYgKCRk
YXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkV2ZW50VGFyZ2V0In0KICAgICAgICAgICAg
IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IklzV29ya2VyQ29udGV4dCJ9Ci0g
ICAgICAgICAgICB8fCBJc1N1YlR5cGUoJGRhdGFOb2RlLCAiQWJzdHJhY3RXb3JrZXIiKQotICAg
ICAgICAgICAgfHwgSXNTdWJUeXBlKCRkYXRhTm9kZSwgIkV2ZW50VGFyZ2V0IikpKSB7CisgICAg
ICAgICAgICB8fCAkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIkFic3RyYWN0
V29ya2VyIikKKyAgICAgICAgICAgIHx8ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFO
b2RlLCAiRXZlbnRUYXJnZXQiKSkpIHsKICAgICAgICAgcHVzaChAY3VzdG9tSW50ZXJuYWxGaWVs
ZHMsICJldmVudExpc3RlbmVyQ2FjaGVJbmRleCIpOwogICAgIH0KIApAQCAtNzcxLDI0ICs3NzAs
NiBAQCBzdWIgR2VuZXJhdGVIZWFkZXJDdXN0b21DYWxsCiAgICAgfQogfQogCi1zdWIgSXNTdWJU
eXBlCi17Ci0gICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7Ci0gICAgbXkgJHBhcmVudFR5cGUgPSBz
aGlmdDsKLSAgICByZXR1cm4gMSBpZiAoJGRhdGFOb2RlLT5uYW1lIGVxICRwYXJlbnRUeXBlKTsK
LSAgICBmb3JlYWNoIChAYWxsUGFyZW50cykgewotICAgICAgICBteSAkcGFyZW50ID0gJGNvZGVH
ZW5lcmF0b3ItPlN0cmlwTW9kdWxlKCRfKTsKLSAgICAgICAgcmV0dXJuIDEgaWYgJHBhcmVudCBl
cSAkcGFyZW50VHlwZTsKLSAgICB9Ci0gICAgcmV0dXJuIDA7Ci19Ci0KLXN1YiBJc05vZGVTdWJU
eXBlCi17Ci0gICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7Ci0gICAgcmV0dXJuIElzU3ViVHlwZSgk
ZGF0YU5vZGUsICJOb2RlIik7Ci19Ci0KIHN1YiBJc1Zpc2libGVBY3Jvc3NPcmlnaW5zCiB7CiAg
ICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7CkBAIC05NjcsNyArOTQ4LDcgQEAgRU5ECiAgICAgfSBl
bHNlIHsKICAgICAgICAgbXkgJHJlZmxlY3QgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVu
ZGVkQXR0cmlidXRlcy0+eyJSZWZsZWN0In07CiAgICAgICAgIG15ICR1cmwgPSAkYXR0cmlidXRl
LT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJVUkwifTsKLSAgICAgICAgaWYgKCRn
ZXR0ZXJTdHJpbmdVc2VzSW1wICYmICRyZWZsZWN0ICYmICEkdXJsICYmIElzTm9kZVN1YlR5cGUo
JGRhdGFOb2RlKSAmJiAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCRhdHRyVHlwZSkpIHsK
KyAgICAgICAgaWYgKCRnZXR0ZXJTdHJpbmdVc2VzSW1wICYmICRyZWZsZWN0ICYmICEkdXJsICYm
ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpICYmICRjb2RlR2Vu
ZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJUeXBlKSkgewogICAgICAgICAgICAgIyBHZW5lcmF0
ZSBzdXBlci1jb21wYWN0IGNhbGwgZm9yIHJlZ3VsYXIgYXR0cmlidXRlIGdldHRlcjoKICAgICAg
ICAgICAgIG15ICRjb250ZW50QXR0cmlidXRlTmFtZSA9ICRyZWZsZWN0IGVxICJWQUxVRV9JU19N
SVNTSU5HIiA/IGxjICRhdHRyTmFtZSA6ICRyZWZsZWN0OwogICAgICAgICAgICAgbXkgJG5hbWVz
cGFjZSA9ICRjb2RlR2VuZXJhdG9yLT5OYW1lc3BhY2VGb3JBdHRyaWJ1dGVOYW1lKCRpbnRlcmZh
Y2VOYW1lLCAkY29udGVudEF0dHJpYnV0ZU5hbWUpOwpAQCAtMTA2MSw3ICsxMDQyLDcgQEAgRU5E
CiAgICAgIyBTcGVjaWFsIGNhc2UgZm9yIHJlYWRvbmx5IG9yIFJlcGxhY2VhYmxlIGF0dHJpYnV0
ZXMgKHdpdGggYSBmZXcgZXhjZXB0aW9ucykuIFRoaXMgYXR0ZW1wdHMgdG8gZW5zdXJlIHRoYXQg
SlMgd3JhcHBlcnMgZG9uJ3QgZ2V0CiAgICAgIyBnYXJiYWdlLWNvbGxlY3RlZCBwcmVtYXR1cmVs
eSB3aGVuIHRoZWlyIGxpZmV0aW1lIGlzIHN0cm9uZ2x5IHRpZWQgdG8gdGhlaXIgb3duZXIuIFdl
IGFjY29tcGxpc2ggdGhpcyBieSBpbnNlcnRpbmcgYSByZWZlcmVuY2UgdG8KICAgICAjIHRoZSBu
ZXdseSBjcmVhdGVkIHdyYXBwZXIgaW50byBhbiBpbnRlcm5hbCBmaWVsZCBvZiB0aGUgaG9sZGVy
IG9iamVjdC4KLSAgICBpZiAoIUlzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSAmJiAkYXR0ck5hbWUg
bmUgInNlbGYiICYmIElzV3JhcHBlclR5cGUoJHJldHVyblR5cGUpICYmIChJc1JlYWRvbmx5KCRh
dHRyaWJ1dGUpIHx8ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57
IlJlcGxhY2VhYmxlIn0gfHwgJGF0dHJOYW1lIGVxICJsb2NhdGlvbiIpCisgICAgaWYgKCEkY29k
ZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSAmJiAkYXR0ck5hbWUgbmUg
InNlbGYiICYmIElzV3JhcHBlclR5cGUoJHJldHVyblR5cGUpICYmIChJc1JlYWRvbmx5KCRhdHRy
aWJ1dGUpIHx8ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJl
cGxhY2VhYmxlIn0gfHwgJGF0dHJOYW1lIGVxICJsb2NhdGlvbiIpCiAgICAgICAgICYmICRyZXR1
cm5UeXBlIG5lICJFdmVudFRhcmdldCIgJiYgJHJldHVyblR5cGUgbmUgIlNlcmlhbGl6ZWRTY3Jp
cHRWYWx1ZSIgJiYgJHJldHVyblR5cGUgbmUgIkRPTVdpbmRvdyIgCiAgICAgICAgICYmICRyZXR1
cm5UeXBlIG5lICJNZXNzYWdlUG9ydEFycmF5IgogICAgICAgICAmJiAkcmV0dXJuVHlwZSAhfiAv
U1ZHLyAmJiAkcmV0dXJuVHlwZSAhfiAvSFRNTC8gJiYgIUlzRE9NTm9kZVR5cGUoJHJldHVyblR5
cGUpKSB7CkBAIC0xMjUwLDcgKzEyMzEsNyBAQCBFTkQKICAgICB9IGVsc2UgewogICAgICAgICBt
eSAkYXR0clR5cGUgPSBHZXRUeXBlRnJvbVNpZ25hdHVyZSgkYXR0cmlidXRlLT5zaWduYXR1cmUp
OwogICAgICAgICBteSAkcmVmbGVjdCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRB
dHRyaWJ1dGVzLT57IlJlZmxlY3QifTsKLSAgICAgICAgaWYgKCRyZWZsZWN0ICYmIElzTm9kZVN1
YlR5cGUoJGRhdGFOb2RlKSAmJiAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCRhdHRyVHlw
ZSkpIHsKKyAgICAgICAgaWYgKCRyZWZsZWN0ICYmICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUo
JGRhdGFOb2RlLCAiTm9kZSIpICYmICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJU
eXBlKSkgewogICAgICAgICAgICAgIyBHZW5lcmF0ZSBzdXBlci1jb21wYWN0IGNhbGwgZm9yIHJl
Z3VsYXIgYXR0cmlidXRlIHNldHRlcjoKICAgICAgICAgICAgIG15ICRjb250ZW50QXR0cmlidXRl
TmFtZSA9ICRyZWZsZWN0IGVxICJWQUxVRV9JU19NSVNTSU5HIiA/IGxjICRhdHRyTmFtZSA6ICRy
ZWZsZWN0OwogICAgICAgICAgICAgbXkgJG5hbWVzcGFjZSA9ICRjb2RlR2VuZXJhdG9yLT5OYW1l
c3BhY2VGb3JBdHRyaWJ1dGVOYW1lKCRpbnRlcmZhY2VOYW1lLCAkY29udGVudEF0dHJpYnV0ZU5h
bWUpOwpAQCAtMTMwOSw3ICsxMjkwLDcgQEAgRU5ECiAgICAgICAgIGlmICgkYXR0cmlidXRlLT5z
aWduYXR1cmUtPnR5cGUgZXEgIkV2ZW50TGlzdGVuZXIiKSB7CiAgICAgICAgICAgICBteSAkaW1w
bFNldHRlckZ1bmN0aW9uTmFtZSA9ICRjb2RlR2VuZXJhdG9yLT5XS191Y2ZpcnN0KCRhdHRyTmFt
ZSk7CiAgICAgICAgICAgICBBZGRUb0ltcGxJbmNsdWRlcygiVjhBYnN0cmFjdEV2ZW50TGlzdGVu
ZXIuaCIpOwotICAgICAgICAgICAgaWYgKCFJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSkpIHsKKyAg
ICAgICAgICAgIGlmICghJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2Rl
IikpIHsKICAgICAgICAgICAgICAgICBwdXNoKEBpbXBsQ29udGVudERlY2xzLCAiICAgIHRyYW5z
ZmVySGlkZGVuRGVwZW5kZW5jeShpbmZvLkhvbGRlcigpLCBpbXAtPiRhdHRyTmFtZSgpLCB2YWx1
ZSwgVjgke2ludGVyZmFjZU5hbWV9OjpldmVudExpc3RlbmVyQ2FjaGVJbmRleCk7XG4iKTsKICAg
ICAgICAgICAgIH0KICAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlTmFtZSBlcSAiV29ya2VyQ29u
dGV4dCIgYW5kICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSBlcSAib25lcnJvciIpIHsKQEAg
LTE1NjIsMTAgKzE1NDMsMTAgQEAgc3ViIEdlbmVyYXRlRnVuY3Rpb25DYWxsYmFjawogICAgICMg
YnV0IHRoZXkgYXJlIGV4dHJlbWVseSBjb25zaXN0ZW50IGFjcm9zcyB0aGUgdmFyaW91cyBjbGFz
c2VzIHRoYXQgdGFrZSBldmVudCBsaXN0ZW5lcnMsCiAgICAgIyBzbyB3ZSBjYW4gZ2VuZXJhdGUg
dGhlbSBhcyBhICJzcGVjaWFsIGNhc2UiLgogICAgIGlmICgkbmFtZSBlcSAiYWRkRXZlbnRMaXN0
ZW5lciIpIHsKLSAgICAgICAgR2VuZXJhdGVFdmVudExpc3RlbmVyQ2FsbGJhY2soJGludGVyZmFj
ZU5hbWUsICFJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSksICJhZGQiKTsKKyAgICAgICAgR2VuZXJh
dGVFdmVudExpc3RlbmVyQ2FsbGJhY2soJGludGVyZmFjZU5hbWUsICEkY29kZUdlbmVyYXRvci0+
SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSwgImFkZCIpOwogICAgICAgICByZXR1cm47CiAg
ICAgfSBlbHNpZiAoJG5hbWUgZXEgInJlbW92ZUV2ZW50TGlzdGVuZXIiKSB7Ci0gICAgICAgIEdl
bmVyYXRlRXZlbnRMaXN0ZW5lckNhbGxiYWNrKCRpbnRlcmZhY2VOYW1lLCAhSXNOb2RlU3ViVHlw
ZSgkZGF0YU5vZGUpLCAicmVtb3ZlIik7CisgICAgICAgIEdlbmVyYXRlRXZlbnRMaXN0ZW5lckNh
bGxiYWNrKCRpbnRlcmZhY2VOYW1lLCAhJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5v
ZGUsICJOb2RlIiksICJyZW1vdmUiKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIApAQCAtMjUw
OSw3ICsyNDkwLDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb25JbmRleGVyCiAgICAgICAg
IH0KICAgICB9CiAKLSAgICBteSAkaGFzRW51bWVyYXRvciA9ICEkaXNTcGVjaWFsQ2FzZSAmJiBJ
c05vZGVTdWJUeXBlKCRkYXRhTm9kZSk7CisgICAgbXkgJGhhc0VudW1lcmF0b3IgPSAhJGlzU3Bl
Y2lhbENhc2UgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIik7
CiAKICAgICAjIEZJWE1FOiBGaW5kIGEgd2F5IHRvIG5vdCBoYXZlIHRvIHNwZWNpYWwtY2FzZSBI
VE1MT3B0aW9uc0NvbGxlY3Rpb24uCiAgICAgaWYgKCRpbnRlcmZhY2VOYW1lIGVxICJIVE1MT3B0
aW9uc0NvbGxlY3Rpb24iKSB7CkBAIC0zNDk2LDcgKzM0NzcsNyBAQCBzdWIgR2VuZXJhdGVUb1Y4
Q29udmVydGVycwogCiAgICAgbXkgJGNyZWF0ZVdyYXBwZXJBcmd1bWVudFR5cGUgPSBHZXRQYXNz
UmVmUHRyVHlwZSgkbmF0aXZlVHlwZSk7CiAgICAgbXkgJGJhc2VUeXBlID0gQmFzZUludGVyZmFj
ZU5hbWUoJGRhdGFOb2RlKTsKLSAgICBteSAkZ2V0Q2FjaGVkV3JhcHBlciA9IElzTm9kZVN1YlR5
cGUoJGRhdGFOb2RlKSA/ICJWOERPTVdyYXBwZXI6OmdldENhY2hlZFdyYXBwZXIoaW1wbC5nZXQo
KSkiIDogIkRPTURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwuZ2V0KCkpIjsK
KyAgICBteSAkZ2V0Q2FjaGVkV3JhcHBlciA9ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRh
dGFOb2RlLCAiTm9kZSIpID8gIlY4RE9NV3JhcHBlcjo6Z2V0Q2FjaGVkV3JhcHBlcihpbXBsLmdl
dCgpKSIgOiAiRE9NRGF0YVN0b3JlOjpjdXJyZW50KGlzb2xhdGUpLT5nZXQoaW1wbC5nZXQoKSki
OwogCiAgICAgcHVzaChAaW1wbENvbnRlbnQsIDw8RU5EKTsKIApAQCAtMzUxMyw3ICszNDk0LDcg
QEAgRU5ECiAKICAgICBBZGRUb0ltcGxJbmNsdWRlcygiRnJhbWUuaCIpOwogCi0gICAgaWYgKElz
U3ViVHlwZSgkZGF0YU5vZGUsICJEb2N1bWVudCIpKSB7CisgICAgaWYgKCRjb2RlR2VuZXJhdG9y
LT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiRG9jdW1lbnQiKSkgewogICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgPDxFTkQpOwogICAgIGlmIChGcmFtZSogZnJhbWUgPSBpbXBsLT5mcmFtZSgpKSB7
CiAgICAgICAgIGlmIChmcmFtZS0+c2NyaXB0KCktPmluaXRpYWxpemVNYWluV29ybGQoKSkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174581</attachid>
            <date>2012-11-15 18:13:01 -0800</date>
            <delta_ts>2012-11-16 05:18:25 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-102348-20121116111058.patch</filename>
            <type>text/plain</type>
            <size>12147</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0ODcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODMxODc1MjQ5OGFjZjQw
ZTE1YWQzZWIxYjJiNjk3YmI4YmY2ZDZhMC4uNDc3ZjU1NTczZmI4ZTMzODM2MDZkNjZmMTI3NGFk
NmEzNmVhOWU2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTExLTE1ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIFJlbW92ZSBJ
c1N1YlR5cGUoKSBmcm9tIENvZGVHZW5lcmF0b3JWOC5wbQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyMzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWRhbSBCYXJ0aC4KKworICAgICAgICBDb2RlR2VuZXJhdG9yLnBtIGhhcyBJc1N0cmljdFN1YlR5
cGUoKS4gQ29kZUdlbmVyYXRvclY4LnBtIHNob3VsZCB1c2UgaXQuCisKKyAgICAgICAgTm8gdGVz
dHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvci5wbToKKyAgICAgICAgKElzU3ViVHlwZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToK
KyAgICAgICAgKEdlbmVyYXRlSGVhZGVyKToKKyAgICAgICAgKEdldEludGVybmFsRmllbGRzKToK
KyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0ckdldHRlcik6CisgICAgICAgIChHZW5lcmF0ZU5v
cm1hbEF0dHJTZXR0ZXIpOgorICAgICAgICAoR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrKToKKyAg
ICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb25JbmRleGVyKToKKyAgICAgICAgKEdlbmVyYXRl
VG9WOENvbnZlcnRlcnMpOgorCiAyMDEyLTExLTE1ICBYaW5nbmFuIFdhbmcgIDx4aW5nbmFuLndh
bmdAaW50ZWwuY29tPgogCiAgICAgICAgIE9wdGltaXplIHRoZSBtdWx0aXBseS1hZGQgaW4gQmlx
dWFkLmNwcDo6cHJvY2VzcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9yLnBtCmluZGV4IDgzM2U4Mjg1MDJiMzNkN2Q2NjQ2OTY5NjEwNGMxNWNkZGFm
YmE0NDYuLmZmZTEzMjgwMzcwZGFlY2ZmZjUzZTk2YTQ0ZTNhODY5MDYyYWU3NzUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG0KQEAgLTY5
MCwxMyArNjkwLDE0IEBAIHN1YiBHZXRWaXNpYmxlSW50ZXJmYWNlTmFtZQogICAgIHJldHVybiAk
aW50ZXJmYWNlTmFtZSA/ICRpbnRlcmZhY2VOYW1lIDogJGRhdGFOb2RlLT5uYW1lOwogfQogCi1z
dWIgSXNTdHJpY3RTdWJ0eXBlCitzdWIgSXNTdWJUeXBlCiB7CiAgICAgbXkgJG9iamVjdCA9IHNo
aWZ0OwogICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwogICAgIG15ICRpbnRlcmZhY2VOYW1lID0g
c2hpZnQ7CiAgICAgbXkgJGZvdW5kID0gMDsKIAorICAgIHJldHVybiAxIGlmICRpbnRlcmZhY2VO
YW1lIGVxICRkYXRhTm9kZS0+bmFtZTsKICAgICAkb2JqZWN0LT5Gb3JBbGxQYXJlbnRzKCRkYXRh
Tm9kZSwgc3ViIHsKICAgICAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwogICAgICAgICBpZiAo
JGludGVyZmFjZS0+bmFtZSBlcSAkaW50ZXJmYWNlTmFtZSkgewpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBlYTlmNzk5ZGQ1
ODkyYzU0NzUzMTk1MGQwZDIxY2ZmYzIyYjQ3ODlhLi5mNTA0MmExZjEwN2M3Mzg3MDZlOWJjYWRi
MWNiODZjNDA3MjYyZmMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQpAQCAtMTQxOSw3ICsxNDE5LDcgQEAgc3ViIEdlbmVyYXRl
SW1wbGVtZW50YXRpb24KICAgICBteSAkaGFzUGFyZW50ID0gJGhhc0xlZ2FjeVBhcmVudCB8fCAk
aGFzUmVhbFBhcmVudDsKICAgICBteSAkcGFyZW50Q2xhc3NOYW1lID0gR2V0UGFyZW50Q2xhc3NO
YW1lKCRkYXRhTm9kZSk7CiAgICAgbXkgJHZpc2libGVJbnRlcmZhY2VOYW1lID0gJGNvZGVHZW5l
cmF0b3ItPkdldFZpc2libGVJbnRlcmZhY2VOYW1lKCRkYXRhTm9kZSk7Ci0gICAgbXkgJGV2ZW50
VGFyZ2V0ID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8
fCAkY29kZUdlbmVyYXRvci0+SXNTdHJpY3RTdWJ0eXBlKCRkYXRhTm9kZSwgIkV2ZW50VGFyZ2V0
Iik7CisgICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0
YU5vZGUsICJFdmVudFRhcmdldCIpOwogICAgIG15ICRuZWVkc01hcmtDaGlsZHJlbiA9ICRkYXRh
Tm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkpTQ3VzdG9tTWFya0Z1bmN0aW9uIn0gfHwgJGRh
dGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8fCAkZGF0YU5vZGUt
Pm5hbWUgZXEgIkV2ZW50VGFyZ2V0IjsKIAogICAgICMgLSBBZGQgZGVmYXVsdCBoZWFkZXIgdGVt
cGxhdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvclY4LnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9yVjgucG0KaW5kZXggZTg2MWEwMmYwN2Y5ZGQwNmE2MTU2MjIzZDFhODViOWI2NWRhNTNiOS4u
MTIxZGUwZTk3OTUyMDIwMDkwMTBmYjUwY2ZmYTU2YjFlZGEzNGNmNSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvU291
cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KQEAgLTQ2LDgg
KzQ2LDYgQEAgbXkgQGltcGxDb250ZW50RGVjbHMgPSAoKTsKIG15ICVpbXBsSW5jbHVkZXMgPSAo
KTsKIG15ICVoZWFkZXJJbmNsdWRlcyA9ICgpOwogCi1teSBAYWxsUGFyZW50cyA9ICgpOwotCiAj
IERlZmF1bHQgLmggdGVtcGxhdGUKIG15ICRoZWFkZXJUZW1wbGF0ZSA9IDw8ICJFT0YiOwogLyoK
QEAgLTI5MSwxMSArMjg5LDEyIEBAIHN1YiBHZW5lcmF0ZUhlYWRlcgogICAgIG15ICRjbGFzc05h
bWUgPSAiVjgkaW50ZXJmYWNlTmFtZSI7CiAKICAgICAjIENvcHkgY29udGVudHMgb2YgcGFyZW50
IGNsYXNzZXMgZXhjZXB0IHRoZSBmaXJzdCBwYXJlbnQuCi0gICAgJGNvZGVHZW5lcmF0b3ItPkFk
ZE1ldGhvZHNDb25zdGFudHNBbmRBdHRyaWJ1dGVzRnJvbVBhcmVudENsYXNzZXMoJGRhdGFOb2Rl
LCBcQGFsbFBhcmVudHMsIDEpOworICAgIG15IEBwYXJlbnRzOworICAgICRjb2RlR2VuZXJhdG9y
LT5BZGRNZXRob2RzQ29uc3RhbnRzQW5kQXR0cmlidXRlc0Zyb21QYXJlbnRDbGFzc2VzKCRkYXRh
Tm9kZSwgXEBwYXJlbnRzLCAxKTsKICAgICAkY29kZUdlbmVyYXRvci0+TGlua092ZXJsb2FkZWRG
dW5jdGlvbnMoJGRhdGFOb2RlKTsKIAogICAgICMgRW5zdXJlIHRoZSBJc0RPTU5vZGVUeXBlIGZ1
bmN0aW9uIGlzIGluIHN5bmMuCi0gICAgZGllKCJJc0RPTU5vZGVUeXBlIGlzIG91dCBvZiBkYXRl
IHdpdGggcmVzcGVjdCB0byAkaW50ZXJmYWNlTmFtZSIpIGlmIElzRE9NTm9kZVR5cGUoJGludGVy
ZmFjZU5hbWUpICE9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKTsKKyAgICBkaWUoIklzRE9NTm9k
ZVR5cGUgaXMgb3V0IG9mIGRhdGUgd2l0aCByZXNwZWN0IHRvICRpbnRlcmZhY2VOYW1lIikgaWYg
SXNET01Ob2RlVHlwZSgkaW50ZXJmYWNlTmFtZSkgIT0gJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlw
ZSgkZGF0YU5vZGUsICJOb2RlIik7CiAKICAgICBteSAkaGFzRGVwZW5kZW50TGlmZXRpbWUgPSAk
ZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJWOERlcGVuZGVudExpZmV0aW1lIn0gfHwg
JGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQWN0aXZlRE9NT2JqZWN0In0KICAgICAg
ICAgIHx8IEdldEdlbmVyYXRlSXNSZWFjaGFibGUoJGRhdGFOb2RlKSB8fCAkY2xhc3NOYW1lID1+
IC9TVkcvOwpAQCAtNTM3LDcgKzUzNiw3IEBAIEVORAogCiAgICAgbXkgJGN1c3RvbVdyYXAgPSAh
ISgkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJDdXN0b21Ub0pTT2JqZWN0In0gb3Ig
JGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiVjhDdXN0b21Ub0pTT2JqZWN0In0pOwog
ICAgIGlmICgkbm9Ub1Y4KSB7Ci0gICAgICAgIGRpZSAiQ2FuJ3Qgc3VwcHJlc3MgdG9WOCBmb3Ig
c3ViY2xhc3NcbiIgaWYgQGFsbFBhcmVudHM7CisgICAgICAgIGRpZSAiQ2FuJ3Qgc3VwcHJlc3Mg
dG9WOCBmb3Igc3ViY2xhc3NcbiIgaWYgQHBhcmVudHM7CiAgICAgfSBlbHNpZiAoJG5vV3JhcCkg
ewogICAgICAgICBkaWUgIk11c3QgaGF2ZSBjdXN0b20gdG9WOFxuIiBpZiAhJGN1c3RvbVdyYXA7
CiAgICAgICAgIHB1c2goQGhlYWRlckNvbnRlbnQsIDw8RU5EKTsKQEAgLTU1MSw3ICs1NTAsNyBA
QCBpbmxpbmUgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjhGYXN0KCR7bmF0aXZlVHlwZX0qIGlt
cGwsIGNvbnN0IHY4OjpBY2Nlc3NvckluZgogRU5ECiAgICAgfSBlbHNlIHsKIAotICAgICAgICBt
eSAkZ2V0Q2FjaGVkV3JhcHBlciA9IElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKSA/ICJWOERPTVdy
YXBwZXI6OmdldENhY2hlZFdyYXBwZXIoaW1wbCkiIDogIkRPTURhdGFTdG9yZTo6Y3VycmVudChp
c29sYXRlKS0+Z2V0KGltcGwpIjsKKyAgICAgICAgbXkgJGdldENhY2hlZFdyYXBwZXIgPSAkY29k
ZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSA/ICJWOERPTVdyYXBwZXI6
OmdldENhY2hlZFdyYXBwZXIoaW1wbCkiIDogIkRPTURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRl
KS0+Z2V0KGltcGwpIjsKICAgICAgICAgbXkgJGNyZWF0ZVdyYXBwZXJDYWxsID0gJGN1c3RvbVdy
YXAgPyAiJHtjbGFzc05hbWV9Ojp3cmFwIiA6ICIke2NsYXNzTmFtZX06OmNyZWF0ZVdyYXBwZXIi
OwogCiAgICAgICAgIGlmICgkY3VzdG9tV3JhcCkgewpAQCAtNTkzLDcgKzU5Miw3IEBAIGlubGlu
ZSB2ODo6SGFuZGxlPHY4OjpWYWx1ZT4gdG9WOCgke25hdGl2ZVR5cGV9KiBpbXBsLCB2ODo6SGFu
ZGxlPHY4OjpPYmplY3Q+IGNyCiAgICAgcmV0dXJuIHdyYXAoaW1wbCwgY3JlYXRpb25Db250ZXh0
LCBpc29sYXRlKTsKIH0KIEVORAotICAgICAgICBpZiAoSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUp
KSB7CisgICAgICAgIGlmICgkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5v
ZGUiKSkgewogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29udGVudCwgPDxFTkQpOwogCiBpbmxp
bmUgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjhGYXN0KCR7bmF0aXZlVHlwZX0qIGltcGwsIGNv
bnN0IHY4OjpBY2Nlc3NvckluZm8mIGluZm8sIE5vZGUqIGhvbGRlcikKQEAgLTY0MiwxMSArNjQx
LDExIEBAIHN1YiBHZXRJbnRlcm5hbEZpZWxkcwogICAgICMgc28gc3BlY2lhbC1jYXNlIEFic3Ry
YWN0V29ya2VyIGFuZCBXb3JrZXJDb250ZXh0IHRvIGluY2x1ZGUgYWxsIHN1Yi10eXBlcy4KICAg
ICAjIEV2ZW50IGxpc3RlbmVycyBvbiBET00gbm9kZXMgYXJlIGV4cGxpY2l0bHkgc3VwcG9ydGVk
IGluIHRoZSBHQyBjb250cm9sbGVyLgogICAgICMgRklYTUU6IFNpbXBsaWZ5IHRoaXMgd2hlbiBh
bGwgRXZlbnRUYXJnZXRzIGFyZSBzdWJ0eXBlcyBvZiBFdmVudFRhcmdldC4KLSAgICBpZiAoIUlz
Tm9kZVN1YlR5cGUoJGRhdGFOb2RlKQorICAgIGlmICghJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlw
ZSgkZGF0YU5vZGUsICJOb2RlIikKICAgICAgICAgJiYgKCRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRy
aWJ1dGVzLT57IkV2ZW50VGFyZ2V0In0KICAgICAgICAgICAgIHx8ICRkYXRhTm9kZS0+ZXh0ZW5k
ZWRBdHRyaWJ1dGVzLT57IklzV29ya2VyQ29udGV4dCJ9Ci0gICAgICAgICAgICB8fCBJc1N1YlR5
cGUoJGRhdGFOb2RlLCAiQWJzdHJhY3RXb3JrZXIiKQotICAgICAgICAgICAgfHwgSXNTdWJUeXBl
KCRkYXRhTm9kZSwgIkV2ZW50VGFyZ2V0IikpKSB7CisgICAgICAgICAgICB8fCAkY29kZUdlbmVy
YXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIkFic3RyYWN0V29ya2VyIikKKyAgICAgICAgICAg
IHx8ICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiRXZlbnRUYXJnZXQiKSkp
IHsKICAgICAgICAgcHVzaChAY3VzdG9tSW50ZXJuYWxGaWVsZHMsICJldmVudExpc3RlbmVyQ2Fj
aGVJbmRleCIpOwogICAgIH0KIApAQCAtNzcyLDI0ICs3NzEsNiBAQCBzdWIgR2VuZXJhdGVIZWFk
ZXJDdXN0b21DYWxsCiAgICAgfQogfQogCi1zdWIgSXNTdWJUeXBlCi17Ci0gICAgbXkgJGRhdGFO
b2RlID0gc2hpZnQ7Ci0gICAgbXkgJHBhcmVudFR5cGUgPSBzaGlmdDsKLSAgICByZXR1cm4gMSBp
ZiAoJGRhdGFOb2RlLT5uYW1lIGVxICRwYXJlbnRUeXBlKTsKLSAgICBmb3JlYWNoIChAYWxsUGFy
ZW50cykgewotICAgICAgICBteSAkcGFyZW50ID0gJF87Ci0gICAgICAgIHJldHVybiAxIGlmICRw
YXJlbnQgZXEgJHBhcmVudFR5cGU7Ci0gICAgfQotICAgIHJldHVybiAwOwotfQotCi1zdWIgSXNO
b2RlU3ViVHlwZQotewotICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwotICAgIHJldHVybiBJc1N1
YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpOwotfQotCiBzdWIgSXNWaXNpYmxlQWNyb3NzT3JpZ2lu
cwogewogICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwpAQCAtOTY4LDcgKzk0OSw3IEBAIEVORAog
ICAgIH0gZWxzZSB7CiAgICAgICAgIG15ICRyZWZsZWN0ID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVmbGVjdCJ9OwogICAgICAgICBteSAkdXJsID0gJGF0
dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiVVJMIn07Ci0gICAgICAg
IGlmICgkZ2V0dGVyU3RyaW5nVXNlc0ltcCAmJiAkcmVmbGVjdCAmJiAhJHVybCAmJiBJc05vZGVT
dWJUeXBlKCRkYXRhTm9kZSkgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgkYXR0clR5
cGUpKSB7CisgICAgICAgIGlmICgkZ2V0dGVyU3RyaW5nVXNlc0ltcCAmJiAkcmVmbGVjdCAmJiAh
JHVybCAmJiAkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSAmJiAk
Y29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCRhdHRyVHlwZSkpIHsKICAgICAgICAgICAgICMg
R2VuZXJhdGUgc3VwZXItY29tcGFjdCBjYWxsIGZvciByZWd1bGFyIGF0dHJpYnV0ZSBnZXR0ZXI6
CiAgICAgICAgICAgICBteSAkY29udGVudEF0dHJpYnV0ZU5hbWUgPSAkcmVmbGVjdCBlcSAiVkFM
VUVfSVNfTUlTU0lORyIgPyBsYyAkYXR0ck5hbWUgOiAkcmVmbGVjdDsKICAgICAgICAgICAgIG15
ICRuYW1lc3BhY2UgPSAkY29kZUdlbmVyYXRvci0+TmFtZXNwYWNlRm9yQXR0cmlidXRlTmFtZSgk
aW50ZXJmYWNlTmFtZSwgJGNvbnRlbnRBdHRyaWJ1dGVOYW1lKTsKQEAgLTEwNjIsNyArMTA0Myw3
IEBAIEVORAogICAgICMgU3BlY2lhbCBjYXNlIGZvciByZWFkb25seSBvciBSZXBsYWNlYWJsZSBh
dHRyaWJ1dGVzICh3aXRoIGEgZmV3IGV4Y2VwdGlvbnMpLiBUaGlzIGF0dGVtcHRzIHRvIGVuc3Vy
ZSB0aGF0IEpTIHdyYXBwZXJzIGRvbid0IGdldAogICAgICMgZ2FyYmFnZS1jb2xsZWN0ZWQgcHJl
bWF0dXJlbHkgd2hlbiB0aGVpciBsaWZldGltZSBpcyBzdHJvbmdseSB0aWVkIHRvIHRoZWlyIG93
bmVyLiBXZSBhY2NvbXBsaXNoIHRoaXMgYnkgaW5zZXJ0aW5nIGEgcmVmZXJlbmNlIHRvCiAgICAg
IyB0aGUgbmV3bHkgY3JlYXRlZCB3cmFwcGVyIGludG8gYW4gaW50ZXJuYWwgZmllbGQgb2YgdGhl
IGhvbGRlciBvYmplY3QuCi0gICAgaWYgKCFJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSkgJiYgJGF0
dHJOYW1lIG5lICJzZWxmIiAmJiBJc1dyYXBwZXJUeXBlKCRyZXR1cm5UeXBlKSAmJiAoSXNSZWFk
b25seSgkYXR0cmlidXRlKSB8fCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmli
dXRlcy0+eyJSZXBsYWNlYWJsZSJ9IHx8ICRhdHRyTmFtZSBlcSAibG9jYXRpb24iKQorICAgIGlm
ICghJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIikgJiYgJGF0dHJO
YW1lIG5lICJzZWxmIiAmJiBJc1dyYXBwZXJUeXBlKCRyZXR1cm5UeXBlKSAmJiAoSXNSZWFkb25s
eSgkYXR0cmlidXRlKSB8fCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRl
cy0+eyJSZXBsYWNlYWJsZSJ9IHx8ICRhdHRyTmFtZSBlcSAibG9jYXRpb24iKQogICAgICAgICAm
JiAkcmV0dXJuVHlwZSBuZSAiRXZlbnRUYXJnZXQiICYmICRyZXR1cm5UeXBlIG5lICJTZXJpYWxp
emVkU2NyaXB0VmFsdWUiICYmICRyZXR1cm5UeXBlIG5lICJET01XaW5kb3ciIAogICAgICAgICAm
JiAkcmV0dXJuVHlwZSBuZSAiTWVzc2FnZVBvcnRBcnJheSIKICAgICAgICAgJiYgJHJldHVyblR5
cGUgIX4gL1NWRy8gJiYgJHJldHVyblR5cGUgIX4gL0hUTUwvICYmICFJc0RPTU5vZGVUeXBlKCRy
ZXR1cm5UeXBlKSkgewpAQCAtMTI1MSw3ICsxMjMyLDcgQEAgRU5ECiAgICAgfSBlbHNlIHsKICAg
ICAgICAgbXkgJGF0dHJUeXBlID0gR2V0VHlwZUZyb21TaWduYXR1cmUoJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlKTsKICAgICAgICAgbXkgJHJlZmxlY3QgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4
dGVuZGVkQXR0cmlidXRlcy0+eyJSZWZsZWN0In07Ci0gICAgICAgIGlmICgkcmVmbGVjdCAmJiBJ
c05vZGVTdWJUeXBlKCRkYXRhTm9kZSkgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgk
YXR0clR5cGUpKSB7CisgICAgICAgIGlmICgkcmVmbGVjdCAmJiAkY29kZUdlbmVyYXRvci0+SXNT
dWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSAmJiAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBl
KCRhdHRyVHlwZSkpIHsKICAgICAgICAgICAgICMgR2VuZXJhdGUgc3VwZXItY29tcGFjdCBjYWxs
IGZvciByZWd1bGFyIGF0dHJpYnV0ZSBzZXR0ZXI6CiAgICAgICAgICAgICBteSAkY29udGVudEF0
dHJpYnV0ZU5hbWUgPSAkcmVmbGVjdCBlcSAiVkFMVUVfSVNfTUlTU0lORyIgPyBsYyAkYXR0ck5h
bWUgOiAkcmVmbGVjdDsKICAgICAgICAgICAgIG15ICRuYW1lc3BhY2UgPSAkY29kZUdlbmVyYXRv
ci0+TmFtZXNwYWNlRm9yQXR0cmlidXRlTmFtZSgkaW50ZXJmYWNlTmFtZSwgJGNvbnRlbnRBdHRy
aWJ1dGVOYW1lKTsKQEAgLTEzMTAsNyArMTI5MSw3IEBAIEVORAogICAgICAgICBpZiAoJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT50eXBlIGVxICJFdmVudExpc3RlbmVyIikgewogICAgICAgICAgICAg
bXkgJGltcGxTZXR0ZXJGdW5jdGlvbk5hbWUgPSAkY29kZUdlbmVyYXRvci0+V0tfdWNmaXJzdCgk
YXR0ck5hbWUpOwogICAgICAgICAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIlY4QWJzdHJhY3RFdmVu
dExpc3RlbmVyLmgiKTsKLSAgICAgICAgICAgIGlmICghSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUp
KSB7CisgICAgICAgICAgICBpZiAoISRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2Rl
LCAiTm9kZSIpKSB7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnREZWNscywgIiAg
ICB0cmFuc2ZlckhpZGRlbkRlcGVuZGVuY3koaW5mby5Ib2xkZXIoKSwgaW1wLT4kYXR0ck5hbWUo
KSwgdmFsdWUsIFY4JHtpbnRlcmZhY2VOYW1lfTo6ZXZlbnRMaXN0ZW5lckNhY2hlSW5kZXgpO1xu
Iik7CiAgICAgICAgICAgICB9CiAgICAgICAgICAgICBpZiAoJGludGVyZmFjZU5hbWUgZXEgIldv
cmtlckNvbnRleHQiIGFuZCAkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUgZXEgIm9uZXJyb3Ii
KSB7CkBAIC0xNTYzLDEwICsxNTQ0LDEwIEBAIHN1YiBHZW5lcmF0ZUZ1bmN0aW9uQ2FsbGJhY2sK
ICAgICAjIGJ1dCB0aGV5IGFyZSBleHRyZW1lbHkgY29uc2lzdGVudCBhY3Jvc3MgdGhlIHZhcmlv
dXMgY2xhc3NlcyB0aGF0IHRha2UgZXZlbnQgbGlzdGVuZXJzLAogICAgICMgc28gd2UgY2FuIGdl
bmVyYXRlIHRoZW0gYXMgYSAic3BlY2lhbCBjYXNlIi4KICAgICBpZiAoJG5hbWUgZXEgImFkZEV2
ZW50TGlzdGVuZXIiKSB7Ci0gICAgICAgIEdlbmVyYXRlRXZlbnRMaXN0ZW5lckNhbGxiYWNrKCRp
bnRlcmZhY2VOYW1lLCAhSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpLCAiYWRkIik7CisgICAgICAg
IEdlbmVyYXRlRXZlbnRMaXN0ZW5lckNhbGxiYWNrKCRpbnRlcmZhY2VOYW1lLCAhJGNvZGVHZW5l
cmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIiksICJhZGQiKTsKICAgICAgICAgcmV0
dXJuOwogICAgIH0gZWxzaWYgKCRuYW1lIGVxICJyZW1vdmVFdmVudExpc3RlbmVyIikgewotICAg
ICAgICBHZW5lcmF0ZUV2ZW50TGlzdGVuZXJDYWxsYmFjaygkaW50ZXJmYWNlTmFtZSwgIUlzTm9k
ZVN1YlR5cGUoJGRhdGFOb2RlKSwgInJlbW92ZSIpOworICAgICAgICBHZW5lcmF0ZUV2ZW50TGlz
dGVuZXJDYWxsYmFjaygkaW50ZXJmYWNlTmFtZSwgISRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUo
JGRhdGFOb2RlLCAiTm9kZSIpLCAicmVtb3ZlIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAK
QEAgLTI1MTAsNyArMjQ5MSw3IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uSW5kZXhlcgog
ICAgICAgICB9CiAgICAgfQogCi0gICAgbXkgJGhhc0VudW1lcmF0b3IgPSAhJGlzU3BlY2lhbENh
c2UgJiYgSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpOworICAgIG15ICRoYXNFbnVtZXJhdG9yID0g
ISRpc1NwZWNpYWxDYXNlICYmICRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAi
Tm9kZSIpOwogCiAgICAgIyBGSVhNRTogRmluZCBhIHdheSB0byBub3QgaGF2ZSB0byBzcGVjaWFs
LWNhc2UgSFRNTE9wdGlvbnNDb2xsZWN0aW9uLgogICAgIGlmICgkaW50ZXJmYWNlTmFtZSBlcSAi
SFRNTE9wdGlvbnNDb2xsZWN0aW9uIikgewpAQCAtMzQ5Nyw3ICszNDc4LDcgQEAgc3ViIEdlbmVy
YXRlVG9WOENvbnZlcnRlcnMKIAogICAgIG15ICRjcmVhdGVXcmFwcGVyQXJndW1lbnRUeXBlID0g
R2V0UGFzc1JlZlB0clR5cGUoJG5hdGl2ZVR5cGUpOwogICAgIG15ICRiYXNlVHlwZSA9IEJhc2VJ
bnRlcmZhY2VOYW1lKCRkYXRhTm9kZSk7Ci0gICAgbXkgJGdldENhY2hlZFdyYXBwZXIgPSBJc05v
ZGVTdWJUeXBlKCRkYXRhTm9kZSkgPyAiVjhET01XcmFwcGVyOjpnZXRDYWNoZWRXcmFwcGVyKGlt
cGwuZ2V0KCkpIiA6ICJET01EYXRhU3RvcmU6OmN1cnJlbnQoaXNvbGF0ZSktPmdldChpbXBsLmdl
dCgpKSI7CisgICAgbXkgJGdldENhY2hlZFdyYXBwZXIgPSAkY29kZUdlbmVyYXRvci0+SXNTdWJU
eXBlKCRkYXRhTm9kZSwgIk5vZGUiKSA/ICJWOERPTVdyYXBwZXI6OmdldENhY2hlZFdyYXBwZXIo
aW1wbC5nZXQoKSkiIDogIkRPTURhdGFTdG9yZTo6Y3VycmVudChpc29sYXRlKS0+Z2V0KGltcGwu
Z2V0KCkpIjsKIAogICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CiAKQEAgLTM1MTQsNyAr
MzQ5NSw3IEBAIEVORAogCiAgICAgQWRkVG9JbXBsSW5jbHVkZXMoIkZyYW1lLmgiKTsKIAotICAg
IGlmIChJc1N1YlR5cGUoJGRhdGFOb2RlLCAiRG9jdW1lbnQiKSkgeworICAgIGlmICgkY29kZUdl
bmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIkRvY3VtZW50IikpIHsKICAgICAgICAgcHVz
aChAaW1wbENvbnRlbnQsIDw8RU5EKTsKICAgICBpZiAoRnJhbWUqIGZyYW1lID0gaW1wbC0+ZnJh
bWUoKSkgewogICAgICAgICBpZiAoZnJhbWUtPnNjcmlwdCgpLT5pbml0aWFsaXplTWFpbldvcmxk
KCkpIHsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174651</attachid>
            <date>2012-11-16 05:18:28 -0800</date>
            <delta_ts>2012-11-16 06:00:26 -0800</delta_ts>
            <desc>patch for landing</desc>
            <filename>bug-102348-20121116221624.patch</filename>
            <type>text/plain</type>
            <size>12223</size>
            <attacher name="Kentaro Hara">haraken</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0OTMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzRkMjE3MDkxZGI1YTgw
YzhkN2Q0MjhhYzczODhiZDcxYWM4MDg3Zi4uMmFkNDU0MWRiYWUxMzEwZmY3N2I3NDdlZTYxYWJi
MGZkMWZhYTg0YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTExLTE1ICBLZW50
YXJvIEhhcmEgIDxoYXJha2VuQGNocm9taXVtLm9yZz4KKworICAgICAgICBbVjhdIFJlbW92ZSBJ
c1N1YlR5cGUoKSBmcm9tIENvZGVHZW5lcmF0b3JWOC5wbQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyMzQ4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
QWRhbSBCYXJ0aC4KKworICAgICAgICBDb2RlR2VuZXJhdG9yLnBtIGhhcyBJc1N0cmljdFN1YlR5
cGUoKS4gQ29kZUdlbmVyYXRvclY4LnBtIHNob3VsZCB1c2UgaXQuCisKKyAgICAgICAgTm8gdGVz
dHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvci5wbToKKyAgICAgICAgKElzU3ViVHlwZSk6CisgICAgICAgICogYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgIChHZW5lcmF0ZUltcGxlbWVu
dGF0aW9uKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbToK
KyAgICAgICAgKEdlbmVyYXRlSGVhZGVyKToKKyAgICAgICAgKEdldEludGVybmFsRmllbGRzKToK
KyAgICAgICAgKEdlbmVyYXRlTm9ybWFsQXR0ckdldHRlcik6CisgICAgICAgIChHZW5lcmF0ZU5v
cm1hbEF0dHJTZXR0ZXIpOgorICAgICAgICAoR2VuZXJhdGVGdW5jdGlvbkNhbGxiYWNrKToKKyAg
ICAgICAgKEdlbmVyYXRlSW1wbGVtZW50YXRpb25JbmRleGVyKToKKyAgICAgICAgKEdlbmVyYXRl
VG9WOENvbnZlcnRlcnMpOgorCiAyMDEyLTExLTE2ICBTaGVyaWZmIEJvdCAgPHdlYmtpdC5yZXZp
ZXcuYm90QGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5nIG91dCByMTM0
Njk0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9y
LnBtCmluZGV4IDgzM2U4Mjg1MDJiMzNkN2Q2NjQ2OTY5NjEwNGMxNWNkZGFmYmE0NDYuLmZmZTEz
MjgwMzcwZGFlY2ZmZjUzZTk2YTQ0ZTNhODY5MDYyYWU3NzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG0KQEAgLTY5MCwxMyArNjkwLDE0
IEBAIHN1YiBHZXRWaXNpYmxlSW50ZXJmYWNlTmFtZQogICAgIHJldHVybiAkaW50ZXJmYWNlTmFt
ZSA/ICRpbnRlcmZhY2VOYW1lIDogJGRhdGFOb2RlLT5uYW1lOwogfQogCi1zdWIgSXNTdHJpY3RT
dWJ0eXBlCitzdWIgSXNTdWJUeXBlCiB7CiAgICAgbXkgJG9iamVjdCA9IHNoaWZ0OwogICAgIG15
ICRkYXRhTm9kZSA9IHNoaWZ0OwogICAgIG15ICRpbnRlcmZhY2VOYW1lID0gc2hpZnQ7CiAgICAg
bXkgJGZvdW5kID0gMDsKIAorICAgIHJldHVybiAxIGlmICRpbnRlcmZhY2VOYW1lIGVxICRkYXRh
Tm9kZS0+bmFtZTsKICAgICAkb2JqZWN0LT5Gb3JBbGxQYXJlbnRzKCRkYXRhTm9kZSwgc3ViIHsK
ICAgICAgICAgbXkgJGludGVyZmFjZSA9IHNoaWZ0OwogICAgICAgICBpZiAoJGludGVyZmFjZS0+
bmFtZSBlcSAkaW50ZXJmYWNlTmFtZSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0gYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbQppbmRleCBmNTM5NzZhOGRjMTY5YTAzZmRlNGNi
YTI4NmZmYzNjMDA1NzJmMmVjLi4xMzdlMzdiMWZiNjU1ZDcxZTVlODBmYTM0NzFlMjg0MjM0OTgw
NTRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbQpAQCAtMTQxOSw3ICsxNDE5LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRp
b24KICAgICBteSAkaGFzUGFyZW50ID0gJGhhc0xlZ2FjeVBhcmVudCB8fCAkaGFzUmVhbFBhcmVu
dDsKICAgICBteSAkcGFyZW50Q2xhc3NOYW1lID0gR2V0UGFyZW50Q2xhc3NOYW1lKCRkYXRhTm9k
ZSk7CiAgICAgbXkgJHZpc2libGVJbnRlcmZhY2VOYW1lID0gJGNvZGVHZW5lcmF0b3ItPkdldFZp
c2libGVJbnRlcmZhY2VOYW1lKCRkYXRhTm9kZSk7Ci0gICAgbXkgJGV2ZW50VGFyZ2V0ID0gJGRh
dGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJnZXQifSB8fCAkY29kZUdlbmVy
YXRvci0+SXNTdHJpY3RTdWJ0eXBlKCRkYXRhTm9kZSwgIkV2ZW50VGFyZ2V0Iik7CisgICAgbXkg
JGV2ZW50VGFyZ2V0ID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXZlbnRUYXJn
ZXQifSB8fCAoJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJFdmVudFRhcmdl
dCIpICYmICRkYXRhTm9kZS0+bmFtZSBuZSAiRXZlbnRUYXJnZXQiKTsKICAgICBteSAkbmVlZHNN
YXJrQ2hpbGRyZW4gPSAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJKU0N1c3RvbU1h
cmtGdW5jdGlvbiJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkV2ZW50VGFy
Z2V0In0gfHwgJGRhdGFOb2RlLT5uYW1lIGVxICJFdmVudFRhcmdldCI7CiAKICAgICAjIC0gQWRk
IGRlZmF1bHQgaGVhZGVyIHRlbXBsYXRlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvclY4LnBtCmluZGV4IDQ0NzA5MDg4NmZlNzRlOWQzMWUzYWEz
NTMzOWVhY2EzODdjN2MxMjYuLmYxZjk0MDEzYjI2ZWU4ODFkMGRhYmY0MWE4OWMyZjYzMTcyZjk2
NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvclY4LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvclY4LnBtCkBAIC00Niw4ICs0Niw2IEBAIG15IEBpbXBsQ29udGVudERlY2xzID0gKCk7CiBt
eSAlaW1wbEluY2x1ZGVzID0gKCk7CiBteSAlaGVhZGVySW5jbHVkZXMgPSAoKTsKIAotbXkgQGFs
bFBhcmVudHMgPSAoKTsKLQogIyBEZWZhdWx0IC5oIHRlbXBsYXRlCiBteSAkaGVhZGVyVGVtcGxh
dGUgPSA8PCAiRU9GIjsKIC8qCkBAIC0yOTEsMTEgKzI4OSwxMiBAQCBzdWIgR2VuZXJhdGVIZWFk
ZXIKICAgICBteSAkY2xhc3NOYW1lID0gIlY4JGludGVyZmFjZU5hbWUiOwogCiAgICAgIyBDb3B5
IGNvbnRlbnRzIG9mIHBhcmVudCBjbGFzc2VzIGV4Y2VwdCB0aGUgZmlyc3QgcGFyZW50LgotICAg
ICRjb2RlR2VuZXJhdG9yLT5BZGRNZXRob2RzQ29uc3RhbnRzQW5kQXR0cmlidXRlc0Zyb21QYXJl
bnRDbGFzc2VzKCRkYXRhTm9kZSwgXEBhbGxQYXJlbnRzLCAxKTsKKyAgICBteSBAcGFyZW50czsK
KyAgICAkY29kZUdlbmVyYXRvci0+QWRkTWV0aG9kc0NvbnN0YW50c0FuZEF0dHJpYnV0ZXNGcm9t
UGFyZW50Q2xhc3NlcygkZGF0YU5vZGUsIFxAcGFyZW50cywgMSk7CiAgICAgJGNvZGVHZW5lcmF0
b3ItPkxpbmtPdmVybG9hZGVkRnVuY3Rpb25zKCRkYXRhTm9kZSk7CiAKICAgICAjIEVuc3VyZSB0
aGUgSXNET01Ob2RlVHlwZSBmdW5jdGlvbiBpcyBpbiBzeW5jLgotICAgIGRpZSgiSXNET01Ob2Rl
VHlwZSBpcyBvdXQgb2YgZGF0ZSB3aXRoIHJlc3BlY3QgdG8gJGludGVyZmFjZU5hbWUiKSBpZiBJ
c0RPTU5vZGVUeXBlKCRpbnRlcmZhY2VOYW1lKSAhPSBJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSk7
CisgICAgZGllKCJJc0RPTU5vZGVUeXBlIGlzIG91dCBvZiBkYXRlIHdpdGggcmVzcGVjdCB0byAk
aW50ZXJmYWNlTmFtZSIpIGlmIElzRE9NTm9kZVR5cGUoJGludGVyZmFjZU5hbWUpICE9ICRjb2Rl
R2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpOwogCiAgICAgbXkgJGhhc0Rl
cGVuZGVudExpZmV0aW1lID0gJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiVjhEZXBl
bmRlbnRMaWZldGltZSJ9IHx8ICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IkFjdGl2
ZURPTU9iamVjdCJ9CiAgICAgICAgICB8fCBHZXRHZW5lcmF0ZUlzUmVhY2hhYmxlKCRkYXRhTm9k
ZSkgfHwgJGNsYXNzTmFtZSA9fiAvU1ZHLzsKQEAgLTUzNyw3ICs1MzYsNyBAQCBFTkQKIAogICAg
IG15ICRjdXN0b21XcmFwID0gISEoJGRhdGFOb2RlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3Vz
dG9tVG9KU09iamVjdCJ9IG9yICRkYXRhTm9kZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlY4Q3Vz
dG9tVG9KU09iamVjdCJ9KTsKICAgICBpZiAoJG5vVG9WOCkgewotICAgICAgICBkaWUgIkNhbid0
IHN1cHByZXNzIHRvVjggZm9yIHN1YmNsYXNzXG4iIGlmIEBhbGxQYXJlbnRzOworICAgICAgICBk
aWUgIkNhbid0IHN1cHByZXNzIHRvVjggZm9yIHN1YmNsYXNzXG4iIGlmIEBwYXJlbnRzOwogICAg
IH0gZWxzaWYgKCRub1dyYXApIHsKICAgICAgICAgZGllICJNdXN0IGhhdmUgY3VzdG9tIHRvVjhc
biIgaWYgISRjdXN0b21XcmFwOwogICAgICAgICBwdXNoKEBoZWFkZXJDb250ZW50LCA8PEVORCk7
CkBAIC01NTEsNyArNTUwLDcgQEAgaW5saW5lIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4RmFz
dCgke25hdGl2ZVR5cGV9KiBpbXBsLCBjb25zdCB2ODo6QWNjZXNzb3JJbmYKIEVORAogICAgIH0g
ZWxzZSB7CiAKLSAgICAgICAgbXkgJGdldENhY2hlZFdyYXBwZXIgPSBJc05vZGVTdWJUeXBlKCRk
YXRhTm9kZSkgPyAiVjhET01XcmFwcGVyOjpnZXRDYWNoZWRXcmFwcGVyKGltcGwpIiA6ICJET01E
YXRhU3RvcmU6OmN1cnJlbnQoaXNvbGF0ZSktPmdldChpbXBsKSI7CisgICAgICAgIG15ICRnZXRD
YWNoZWRXcmFwcGVyID0gJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2Rl
IikgPyAiVjhET01XcmFwcGVyOjpnZXRDYWNoZWRXcmFwcGVyKGltcGwpIiA6ICJET01EYXRhU3Rv
cmU6OmN1cnJlbnQoaXNvbGF0ZSktPmdldChpbXBsKSI7CiAgICAgICAgIG15ICRjcmVhdGVXcmFw
cGVyQ2FsbCA9ICRjdXN0b21XcmFwID8gIiR7Y2xhc3NOYW1lfTo6d3JhcCIgOiAiJHtjbGFzc05h
bWV9OjpjcmVhdGVXcmFwcGVyIjsKIAogICAgICAgICBpZiAoJGN1c3RvbVdyYXApIHsKQEAgLTU5
Myw3ICs1OTIsNyBAQCBpbmxpbmUgdjg6OkhhbmRsZTx2ODo6VmFsdWU+IHRvVjgoJHtuYXRpdmVU
eXBlfSogaW1wbCwgdjg6OkhhbmRsZTx2ODo6T2JqZWN0PiBjcgogICAgIHJldHVybiB3cmFwKGlt
cGwsIGNyZWF0aW9uQ29udGV4dCwgaXNvbGF0ZSk7CiB9CiBFTkQKLSAgICAgICAgaWYgKElzTm9k
ZVN1YlR5cGUoJGRhdGFOb2RlKSkgeworICAgICAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzU3Vi
VHlwZSgkZGF0YU5vZGUsICJOb2RlIikpIHsKICAgICAgICAgICAgIHB1c2goQGhlYWRlckNvbnRl
bnQsIDw8RU5EKTsKIAogaW5saW5lIHY4OjpIYW5kbGU8djg6OlZhbHVlPiB0b1Y4RmFzdCgke25h
dGl2ZVR5cGV9KiBpbXBsLCBjb25zdCB2ODo6QWNjZXNzb3JJbmZvJiBpbmZvLCBOb2RlKiBob2xk
ZXIpCkBAIC02NDIsMTEgKzY0MSwxMSBAQCBzdWIgR2V0SW50ZXJuYWxGaWVsZHMKICAgICAjIHNv
IHNwZWNpYWwtY2FzZSBBYnN0cmFjdFdvcmtlciBhbmQgV29ya2VyQ29udGV4dCB0byBpbmNsdWRl
IGFsbCBzdWItdHlwZXMuCiAgICAgIyBFdmVudCBsaXN0ZW5lcnMgb24gRE9NIG5vZGVzIGFyZSBl
eHBsaWNpdGx5IHN1cHBvcnRlZCBpbiB0aGUgR0MgY29udHJvbGxlci4KICAgICAjIEZJWE1FOiBT
aW1wbGlmeSB0aGlzIHdoZW4gYWxsIEV2ZW50VGFyZ2V0cyBhcmUgc3VidHlwZXMgb2YgRXZlbnRU
YXJnZXQuCi0gICAgaWYgKCFJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSkKKyAgICBpZiAoISRjb2Rl
R2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpCiAgICAgICAgICYmICgkZGF0
YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJFdmVudFRhcmdldCJ9CiAgICAgICAgICAgICB8
fCAkZGF0YU5vZGUtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJJc1dvcmtlckNvbnRleHQifQotICAg
ICAgICAgICAgfHwgSXNTdWJUeXBlKCRkYXRhTm9kZSwgIkFic3RyYWN0V29ya2VyIikKLSAgICAg
ICAgICAgIHx8IElzU3ViVHlwZSgkZGF0YU5vZGUsICJFdmVudFRhcmdldCIpKSkgeworICAgICAg
ICAgICAgfHwgJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJBYnN0cmFjdFdv
cmtlciIpCisgICAgICAgICAgICB8fCAkY29kZUdlbmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9k
ZSwgIkV2ZW50VGFyZ2V0IikpKSB7CiAgICAgICAgIHB1c2goQGN1c3RvbUludGVybmFsRmllbGRz
LCAiZXZlbnRMaXN0ZW5lckNhY2hlSW5kZXgiKTsKICAgICB9CiAKQEAgLTc3MiwyNCArNzcxLDYg
QEAgc3ViIEdlbmVyYXRlSGVhZGVyQ3VzdG9tQ2FsbAogICAgIH0KIH0KIAotc3ViIElzU3ViVHlw
ZQotewotICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwotICAgIG15ICRwYXJlbnRUeXBlID0gc2hp
ZnQ7Ci0gICAgcmV0dXJuIDEgaWYgKCRkYXRhTm9kZS0+bmFtZSBlcSAkcGFyZW50VHlwZSk7Ci0g
ICAgZm9yZWFjaCAoQGFsbFBhcmVudHMpIHsKLSAgICAgICAgbXkgJHBhcmVudCA9ICRfOwotICAg
ICAgICByZXR1cm4gMSBpZiAkcGFyZW50IGVxICRwYXJlbnRUeXBlOwotICAgIH0KLSAgICByZXR1
cm4gMDsKLX0KLQotc3ViIElzTm9kZVN1YlR5cGUKLXsKLSAgICBteSAkZGF0YU5vZGUgPSBzaGlm
dDsKLSAgICByZXR1cm4gSXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKTsKLX0KLQogc3ViIElz
VmlzaWJsZUFjcm9zc09yaWdpbnMKIHsKICAgICBteSAkZGF0YU5vZGUgPSBzaGlmdDsKQEAgLTk2
OCw3ICs5NDksNyBAQCBFTkQKICAgICB9IGVsc2UgewogICAgICAgICBteSAkcmVmbGVjdCA9ICRh
dHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVzLT57IlJlZmxlY3QifTsKICAg
ICAgICAgbXkgJHVybCA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IlVSTCJ9OwotICAgICAgICBpZiAoJGdldHRlclN0cmluZ1VzZXNJbXAgJiYgJHJlZmxlY3Qg
JiYgISR1cmwgJiYgSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpICYmICRjb2RlR2VuZXJhdG9yLT5J
c1N0cmluZ1R5cGUoJGF0dHJUeXBlKSkgeworICAgICAgICBpZiAoJGdldHRlclN0cmluZ1VzZXNJ
bXAgJiYgJHJlZmxlY3QgJiYgISR1cmwgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0
YU5vZGUsICJOb2RlIikgJiYgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgkYXR0clR5cGUp
KSB7CiAgICAgICAgICAgICAjIEdlbmVyYXRlIHN1cGVyLWNvbXBhY3QgY2FsbCBmb3IgcmVndWxh
ciBhdHRyaWJ1dGUgZ2V0dGVyOgogICAgICAgICAgICAgbXkgJGNvbnRlbnRBdHRyaWJ1dGVOYW1l
ID0gJHJlZmxlY3QgZXEgIlZBTFVFX0lTX01JU1NJTkciID8gbGMgJGF0dHJOYW1lIDogJHJlZmxl
Y3Q7CiAgICAgICAgICAgICBteSAkbmFtZXNwYWNlID0gJGNvZGVHZW5lcmF0b3ItPk5hbWVzcGFj
ZUZvckF0dHJpYnV0ZU5hbWUoJGludGVyZmFjZU5hbWUsICRjb250ZW50QXR0cmlidXRlTmFtZSk7
CkBAIC0xMDYyLDcgKzEwNDMsNyBAQCBFTkQKICAgICAjIFNwZWNpYWwgY2FzZSBmb3IgcmVhZG9u
bHkgb3IgUmVwbGFjZWFibGUgYXR0cmlidXRlcyAod2l0aCBhIGZldyBleGNlcHRpb25zKS4gVGhp
cyBhdHRlbXB0cyB0byBlbnN1cmUgdGhhdCBKUyB3cmFwcGVycyBkb24ndCBnZXQKICAgICAjIGdh
cmJhZ2UtY29sbGVjdGVkIHByZW1hdHVyZWx5IHdoZW4gdGhlaXIgbGlmZXRpbWUgaXMgc3Ryb25n
bHkgdGllZCB0byB0aGVpciBvd25lci4gV2UgYWNjb21wbGlzaCB0aGlzIGJ5IGluc2VydGluZyBh
IHJlZmVyZW5jZSB0bwogICAgICMgdGhlIG5ld2x5IGNyZWF0ZWQgd3JhcHBlciBpbnRvIGFuIGlu
dGVybmFsIGZpZWxkIG9mIHRoZSBob2xkZXIgb2JqZWN0LgotICAgIGlmICghSXNOb2RlU3ViVHlw
ZSgkZGF0YU5vZGUpICYmICRhdHRyTmFtZSBuZSAic2VsZiIgJiYgSXNXcmFwcGVyVHlwZSgkcmV0
dXJuVHlwZSkgJiYgKElzUmVhZG9ubHkoJGF0dHJpYnV0ZSkgfHwgJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFibGUifSB8fCAkYXR0ck5hbWUgZXEg
ImxvY2F0aW9uIikKKyAgICBpZiAoISRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2Rl
LCAiTm9kZSIpICYmICRhdHRyTmFtZSBuZSAic2VsZiIgJiYgSXNXcmFwcGVyVHlwZSgkcmV0dXJu
VHlwZSkgJiYgKElzUmVhZG9ubHkoJGF0dHJpYnV0ZSkgfHwgJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVwbGFjZWFibGUifSB8fCAkYXR0ck5hbWUgZXEgImxv
Y2F0aW9uIikKICAgICAgICAgJiYgJHJldHVyblR5cGUgbmUgIkV2ZW50VGFyZ2V0IiAmJiAkcmV0
dXJuVHlwZSBuZSAiU2VyaWFsaXplZFNjcmlwdFZhbHVlIiAmJiAkcmV0dXJuVHlwZSBuZSAiRE9N
V2luZG93IiAKICAgICAgICAgJiYgJHJldHVyblR5cGUgbmUgIk1lc3NhZ2VQb3J0QXJyYXkiCiAg
ICAgICAgICYmICRyZXR1cm5UeXBlICF+IC9TVkcvICYmICRyZXR1cm5UeXBlICF+IC9IVE1MLyAm
JiAhSXNET01Ob2RlVHlwZSgkcmV0dXJuVHlwZSkpIHsKQEAgLTEyNTEsNyArMTIzMiw3IEBAIEVO
RAogICAgIH0gZWxzZSB7CiAgICAgICAgIG15ICRhdHRyVHlwZSA9IEdldFR5cGVGcm9tU2lnbmF0
dXJlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZSk7CiAgICAgICAgIG15ICRyZWZsZWN0ID0gJGF0dHJp
YnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiUmVmbGVjdCJ9OwotICAgICAg
ICBpZiAoJHJlZmxlY3QgJiYgSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpICYmICRjb2RlR2VuZXJh
dG9yLT5Jc1N0cmluZ1R5cGUoJGF0dHJUeXBlKSkgeworICAgICAgICBpZiAoJHJlZmxlY3QgJiYg
JGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIikgJiYgJGNvZGVHZW5l
cmF0b3ItPklzU3RyaW5nVHlwZSgkYXR0clR5cGUpKSB7CiAgICAgICAgICAgICAjIEdlbmVyYXRl
IHN1cGVyLWNvbXBhY3QgY2FsbCBmb3IgcmVndWxhciBhdHRyaWJ1dGUgc2V0dGVyOgogICAgICAg
ICAgICAgbXkgJGNvbnRlbnRBdHRyaWJ1dGVOYW1lID0gJHJlZmxlY3QgZXEgIlZBTFVFX0lTX01J
U1NJTkciID8gbGMgJGF0dHJOYW1lIDogJHJlZmxlY3Q7CiAgICAgICAgICAgICBteSAkbmFtZXNw
YWNlID0gJGNvZGVHZW5lcmF0b3ItPk5hbWVzcGFjZUZvckF0dHJpYnV0ZU5hbWUoJGludGVyZmFj
ZU5hbWUsICRjb250ZW50QXR0cmlidXRlTmFtZSk7CkBAIC0xMzEwLDcgKzEyOTEsNyBAQCBFTkQK
ICAgICAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSBlcSAiRXZlbnRMaXN0ZW5l
ciIpIHsKICAgICAgICAgICAgIG15ICRpbXBsU2V0dGVyRnVuY3Rpb25OYW1lID0gJGNvZGVHZW5l
cmF0b3ItPldLX3VjZmlyc3QoJGF0dHJOYW1lKTsKICAgICAgICAgICAgIEFkZFRvSW1wbEluY2x1
ZGVzKCJWOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5oIik7Ci0gICAgICAgICAgICBpZiAoIUlzTm9k
ZVN1YlR5cGUoJGRhdGFOb2RlKSkgeworICAgICAgICAgICAgaWYgKCEkY29kZUdlbmVyYXRvci0+
SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSkgewogICAgICAgICAgICAgICAgIHB1c2goQGlt
cGxDb250ZW50RGVjbHMsICIgICAgdHJhbnNmZXJIaWRkZW5EZXBlbmRlbmN5KGluZm8uSG9sZGVy
KCksIGltcC0+JGF0dHJOYW1lKCksIHZhbHVlLCBWOCR7aW50ZXJmYWNlTmFtZX06OmV2ZW50TGlz
dGVuZXJDYWNoZUluZGV4KTtcbiIpOwogICAgICAgICAgICAgfQogICAgICAgICAgICAgaWYgKCRp
bnRlcmZhY2VOYW1lIGVxICJXb3JrZXJDb250ZXh0IiBhbmQgJGF0dHJpYnV0ZS0+c2lnbmF0dXJl
LT5uYW1lIGVxICJvbmVycm9yIikgewpAQCAtMTU2MywxMCArMTU0NCwxMCBAQCBzdWIgR2VuZXJh
dGVGdW5jdGlvbkNhbGxiYWNrCiAgICAgIyBidXQgdGhleSBhcmUgZXh0cmVtZWx5IGNvbnNpc3Rl
bnQgYWNyb3NzIHRoZSB2YXJpb3VzIGNsYXNzZXMgdGhhdCB0YWtlIGV2ZW50IGxpc3RlbmVycywK
ICAgICAjIHNvIHdlIGNhbiBnZW5lcmF0ZSB0aGVtIGFzIGEgInNwZWNpYWwgY2FzZSIuCiAgICAg
aWYgKCRuYW1lIGVxICJhZGRFdmVudExpc3RlbmVyIikgewotICAgICAgICBHZW5lcmF0ZUV2ZW50
TGlzdGVuZXJDYWxsYmFjaygkaW50ZXJmYWNlTmFtZSwgIUlzTm9kZVN1YlR5cGUoJGRhdGFOb2Rl
KSwgImFkZCIpOworICAgICAgICBHZW5lcmF0ZUV2ZW50TGlzdGVuZXJDYWxsYmFjaygkaW50ZXJm
YWNlTmFtZSwgISRjb2RlR2VuZXJhdG9yLT5Jc1N1YlR5cGUoJGRhdGFOb2RlLCAiTm9kZSIpLCAi
YWRkIik7CiAgICAgICAgIHJldHVybjsKICAgICB9IGVsc2lmICgkbmFtZSBlcSAicmVtb3ZlRXZl
bnRMaXN0ZW5lciIpIHsKLSAgICAgICAgR2VuZXJhdGVFdmVudExpc3RlbmVyQ2FsbGJhY2soJGlu
dGVyZmFjZU5hbWUsICFJc05vZGVTdWJUeXBlKCRkYXRhTm9kZSksICJyZW1vdmUiKTsKKyAgICAg
ICAgR2VuZXJhdGVFdmVudExpc3RlbmVyQ2FsbGJhY2soJGludGVyZmFjZU5hbWUsICEkY29kZUdl
bmVyYXRvci0+SXNTdWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKSwgInJlbW92ZSIpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQogCkBAIC0yNTAzLDcgKzI0ODQsNyBAQCBzdWIgR2VuZXJhdGVJbXBs
ZW1lbnRhdGlvbkluZGV4ZXIKICAgICAgICAgfQogICAgIH0KIAotICAgIG15ICRoYXNFbnVtZXJh
dG9yID0gISRpc1NwZWNpYWxDYXNlICYmIElzTm9kZVN1YlR5cGUoJGRhdGFOb2RlKTsKKyAgICBt
eSAkaGFzRW51bWVyYXRvciA9ICEkaXNTcGVjaWFsQ2FzZSAmJiAkY29kZUdlbmVyYXRvci0+SXNT
dWJUeXBlKCRkYXRhTm9kZSwgIk5vZGUiKTsKIAogICAgICMgRklYTUU6IEZpbmQgYSB3YXkgdG8g
bm90IGhhdmUgdG8gc3BlY2lhbC1jYXNlIEhUTUxPcHRpb25zQ29sbGVjdGlvbi4KICAgICBpZiAo
JGludGVyZmFjZU5hbWUgZXEgIkhUTUxPcHRpb25zQ29sbGVjdGlvbiIpIHsKQEAgLTM0OTAsNyAr
MzQ3MSw3IEBAIHN1YiBHZW5lcmF0ZVRvVjhDb252ZXJ0ZXJzCiAKICAgICBteSAkY3JlYXRlV3Jh
cHBlckFyZ3VtZW50VHlwZSA9IEdldFBhc3NSZWZQdHJUeXBlKCRuYXRpdmVUeXBlKTsKICAgICBt
eSAkYmFzZVR5cGUgPSBCYXNlSW50ZXJmYWNlTmFtZSgkZGF0YU5vZGUpOwotICAgIG15ICRnZXRD
YWNoZWRXcmFwcGVyID0gSXNOb2RlU3ViVHlwZSgkZGF0YU5vZGUpID8gIlY4RE9NV3JhcHBlcjo6
Z2V0Q2FjaGVkV3JhcHBlcihpbXBsLmdldCgpKSIgOiAiRE9NRGF0YVN0b3JlOjpjdXJyZW50KGlz
b2xhdGUpLT5nZXQoaW1wbC5nZXQoKSkiOworICAgIG15ICRnZXRDYWNoZWRXcmFwcGVyID0gJGNv
ZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJOb2RlIikgPyAiVjhET01XcmFwcGVy
OjpnZXRDYWNoZWRXcmFwcGVyKGltcGwuZ2V0KCkpIiA6ICJET01EYXRhU3RvcmU6OmN1cnJlbnQo
aXNvbGF0ZSktPmdldChpbXBsLmdldCgpKSI7CiAKICAgICBwdXNoKEBpbXBsQ29udGVudCwgPDxF
TkQpOwogCkBAIC0zNTA3LDcgKzM0ODgsNyBAQCBFTkQKIAogICAgIEFkZFRvSW1wbEluY2x1ZGVz
KCJGcmFtZS5oIik7CiAKLSAgICBpZiAoSXNTdWJUeXBlKCRkYXRhTm9kZSwgIkRvY3VtZW50Iikp
IHsKKyAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzU3ViVHlwZSgkZGF0YU5vZGUsICJEb2N1bWVu
dCIpKSB7CiAgICAgICAgIHB1c2goQGltcGxDb250ZW50LCA8PEVORCk7CiAgICAgaWYgKEZyYW1l
KiBmcmFtZSA9IGltcGwtPmZyYW1lKCkpIHsKICAgICAgICAgaWYgKGZyYW1lLT5zY3JpcHQoKS0+
aW5pdGlhbGl6ZU1haW5Xb3JsZCgpKSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>