<?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>98949</bug_id>
          
          <creation_ts>2012-10-10 13:10:19 -0700</creation_ts>
          <short_desc>IndexedDB: setTimeout in layout tests causes flakiness in multiprocess ports</short_desc>
          <delta_ts>2012-10-16 09:52:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Joshua Bell">jsbell</reporter>
          <assigned_to name="Joshua Bell">jsbell</assigned_to>
          <cc>alecflett</cc>
    
    <cc>dgrogan</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>739240</commentid>
    <comment_count>0</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-10 13:10:19 -0700</bug_when>
    <thetext>IndexedDB: setTimeout in layout tests causes flakiness in multiprocess ports</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739242</commentid>
    <comment_count>1</comment_count>
      <attachid>168059</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-10 13:12:59 -0700</bug_when>
    <thetext>Created attachment 168059
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739244</commentid>
    <comment_count>2</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-10 13:15:14 -0700</bug_when>
    <thetext>NOTE: WIP - intversion-close-between-events.html hasn&apos;t been fixed yet. It&apos;s unclear if that test is really testing anything distinct from intversion-close-in-oncomplete.html and intversion-close-in-upgradeneeded.html other than the race condition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742579</commentid>
    <comment_count>3</comment_count>
      <attachid>168806</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-15 16:34:47 -0700</bug_when>
    <thetext>Created attachment 168806
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742580</commentid>
    <comment_count>4</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-15 16:35:21 -0700</bug_when>
    <thetext>dgrogan@ - please take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742594</commentid>
    <comment_count>5</comment_count>
      <attachid>168806</attachid>
    <who name="David Grogan">dgrogan</who>
    <bug_when>2012-10-15 16:59:06 -0700</bug_when>
    <thetext>Comment on attachment 168806
Patch

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

LGTM

Thanks for fixing these

&gt; LayoutTests/storage/indexeddb/resources/intversion-close-between-events.js:66
&gt; +    if (!didCallCloseDB) {

We should probably test the other order also, if didCallCloseDB then evalAndExpectException(&quot;db.transaction(...)&quot;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742617</commentid>
    <comment_count>6</comment_count>
      <attachid>168812</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-15 17:24:09 -0700</bug_when>
    <thetext>Created attachment 168812
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742639</commentid>
    <comment_count>7</comment_count>
      <attachid>168812</attachid>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-15 17:34:27 -0700</bug_when>
    <thetext>Comment on attachment 168812
Patch

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

&gt; LayoutTests/fast/js/resources/js-test-pre.js:148
&gt; +function evalAndLog(_a, _quiet)

The _quiet is so that if the text being eval&apos;d is something like &quot;quiet += 1&quot; it doesn&apos;t collide.

(Maybe we should change these functions to use an indirect eval?)

&gt; LayoutTests/fast/js/resources/js-test-pre.js:-530
&gt; -                

This was actually a line full of space characters. I just deleted the line rather than fight with my editor that likes to delete trailing whitespace.

&gt; LayoutTests/storage/indexeddb/mozilla/resources/create-index-unique.js:-41
&gt; -    index = evalAndLog(&quot;index = objectStore.createIndex(indexName, indexKeyPath, { unique: true });&quot;, &quot;IDBDatabaseException.CONSTRAINT_ERR&quot;);

Bogus second argument now being treated as |quiet|. I couldn&apos;t find any other examples in layout tests, but may have missed some.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>742640</commentid>
    <comment_count>8</comment_count>
    <who name="Joshua Bell">jsbell</who>
    <bug_when>2012-10-15 17:34:49 -0700</bug_when>
    <thetext>tony@ - r?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743223</commentid>
    <comment_count>9</comment_count>
      <attachid>168812</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-16 09:52:30 -0700</bug_when>
    <thetext>Comment on attachment 168812
Patch

Clearing flags on attachment: 168812

Committed r131466: &lt;http://trac.webkit.org/changeset/131466&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>743224</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-10-16 09:52:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168059</attachid>
            <date>2012-10-10 13:12:59 -0700</date>
            <delta_ts>2012-10-15 16:34:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98949-20121010131158.patch</filename>
            <type>text/plain</type>
            <size>11900</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwODQ4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDljZGRmMzY2N2U0M2E1ZTM4ODU5
ZTk0MDNkOTE1MTM5Zjc0YzEwMC4uYTIxYzI0ZGU5NjBmODU1NWU4MDczYzI5YTZhNDg2ZGZhODZh
MTM2NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEyLTEwLTEwICBKb3NodWEgQmVsbCAgPGpz
YmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5kZXhlZERCOiBzZXRUaW1lb3V0IGluIGxh
eW91dCB0ZXN0cyBjYXVzZXMgZmxha2luZXNzIGluIG11bHRpcHJvY2VzcyBwb3J0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg5NDkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBtdWx0aXByb2Nlc3Mg
cG9ydHMgd2l0aCBhc3luY2hyb25vdXMgSVBDLCBldmVudHMgYW5kIHRpbWVycyBtYXkgcmFjZSBj
YXVzaW5nIHNjcmlwdAorICAgICAgICBjYWxsYmFja3MgdG8gZXhlY3V0ZSBpbiBkaWZmZXJlbnQg
b3JkZXJzLgorCisgICAgICAgIEVsaW1pbmF0ZSB0aGUgdXNlcyBvZiBzZXRUaW1lb3V0KCkgd2hl
cmUgdGhlIGludGVudCBpcyB0byBoYXZlIGNvZGUgZGVsYXllZCBidXQgbWF5CisgICAgICAgIHJh
Y2Ugd2l0aCBhIHBlbmRpbmcgZXZlbnQuCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9k
ZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2lu
ZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2Ut
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNl
LWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFn
ZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQuanM6CisgICAgICAg
ICh0ZXN0LnJlcXVlc3Qub25zdWNjZXNzLm9wZW5PblN1Y2Nlc3MuaC5vbnZlcnNpb25jaGFuZ2Up
OgorICAgICAgICAodGVzdC5yZXF1ZXN0Lm9uc3VjY2Vzcy5vcGVuT25TdWNjZXNzLnJlcXVlc3Qu
b25ibG9ja2VkKToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRl
ZGF0YWJhc2UtZGVsYXllZC1ieS1vcGVuLWFuZC12ZXJzaW9uY2hhbmdlLmpzOgorICAgICAgICAo
dGVzdC5yZXF1ZXN0Lm9uc3VjY2Vzcy5vcGVuT25TdWNjZXNzLmgub252ZXJzaW9uY2hhbmdlKToK
KyAgICAgICAgKHRlc3QucmVxdWVzdC5vbnN1Y2Nlc3Mub3Blbk9uU3VjY2Vzcy5yZXF1ZXN0Lm9u
YmxvY2tlZCk6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRh
dGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS5qczoKKyAgICAgICAgKHRlc3QucmVxdWVz
dC5vbnN1Y2Nlc3Mub3Blbk9uU3VjY2Vzcy5oLm9udmVyc2lvbmNoYW5nZSk6CisgICAgICAgICh0
ZXN0LnJlcXVlc3Qub25zdWNjZXNzLm9wZW5PblN1Y2Nlc3MucmVxdWVzdC5vbnN1Y2Nlc3MuaDJP
cGVuT25TdWNjZXNzLnJlcXVlc3Qub25ibG9ja2VkKToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4
ZWRkYi9yZXNvdXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzOgorICAgICAgICAodGVzdC5yZXF1
ZXN0Lm9uc3VjY2Vzcy5oMU9wZW5PblN1Y2Nlc3MucmVxdWVzdC5vbnN1Y2Nlc3MuaDJPcGVuT25T
dWNjZXNzLmgyLm9udmVyc2lvbmNoYW5nZSk6CisgICAgICAgICh0ZXN0LnJlcXVlc3Qub25zdWNj
ZXNzLmgxT3Blbk9uU3VjY2Vzcy5yZXF1ZXN0Lm9uc3VjY2Vzcy5oMk9wZW5PblN1Y2Nlc3MucmVx
dWVzdC5vbmJsb2NrZWQpOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3NldHZlcnNpb24t
YmxvY2tlZC1leHBlY3RlZC50eHQ6CisKIDIwMTItMTAtMDkgIEtlbnQgVGFtdXJhICA8dGtlbnRA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIFN1Yi1maWVsZHMgaW4gaW5wdXRbdHlwZT10aW1lXSBz
aG91bGQgbm90IGJlIGZvY3VzYWJsZSBpZiB0aGUgaW5wdXQgaXMgZGlzYWJsZWQgb3IgcmVhZC1v
bmx5CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkYXRh
YmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CmluZGV4IDFkNzM2YTdhMjYwN2Zi
MTk1N2JjNGU5MzA2MzNlMmRkMzkzNTAxMTAuLjAyMzYzNTBkMDFmN2I2NTQ4MDcwMDEwODhlMTVj
OTQxNTRmMThjMGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2Rl
bGV0ZWRhdGFiYXNlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0xNiwx
MiArMTYsOSBAQCBpbmRleGVkREIuZGVsZXRlRGF0YWJhc2UoZGJuYW1lKQogb25WZXJzaW9uQ2hh
bmdlKCk6CiBvbGQgPSAxCiBuZXcgPSAiIgotc2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlCiAK
IGRlbGV0ZURhdGFiYXNlT25CbG9ja2VkKCk6CiBibG9ja2VkRXZlbnRGaXJlZCA9IHRydWUKLQot
dGltZW91dENhbGxiYWNrKCk6CiBoLmNsb3NlKCkKIAogZGVsZXRlRGF0YWJhc2VPblN1Y2Nlc3Mo
KToKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFi
YXNlLWRlbGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4t
YW5kLXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0CmluZGV4IGM1YThhNzhmMGM1NzA0NWI4MDVk
YmQ3YWYzNWU3NTQyNmJmMmNjNGMuLjdlYWNjMTc1MDFhZDk2Yzg0OGZkNTkzZWIyZmMwMTY0NWMw
NTk0OTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRh
dGFiYXNlLWRlbGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1i
eS1vcGVuLWFuZC12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dApAQCAtMjQsMTEgKzI0LDggQEAg
dmVyc2lvbkNoYW5nZUNvbXBsZXRlID0gdHJ1ZQogb25WZXJzaW9uQ2hhbmdlKCk6CiBvbGQgPSAi
MSIKIG5ldyA9ICIiCi1zY2hlZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UKIAogZGVsZXRlRGF0YWJh
c2VPbkJsb2NrZWQoKToKLQotdGltZW91dENhbGxiYWNrKCk6CiBoLmNsb3NlKCkKIAogZGVsZXRl
RGF0YWJhc2VPblN1Y2Nlc3MoKToKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVk
LWJ5LXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0CmluZGV4IGI4ZmUwNjQxNWY3MWVlOWVhMzBk
MDlmMmI2Nzc3MDExNDYxOGM0ZWYuLjBmM2JkZGQ5YjQ0ZWVhYjdjYjNkMjU1YzEyNmZlODczNzJi
YzUzMzkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRh
dGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS12ZXJzaW9u
Y2hhbmdlLWV4cGVjdGVkLnR4dApAQCAtMzksMTIgKzM5LDkgQEAgdmVyc2lvbkNoYW5nZUNvbXBs
ZXRlID0gdHJ1ZQogb25WZXJzaW9uQ2hhbmdlKCk6CiBvbGQgPSAiMSIKIG5ldyA9ICIiCi1zY2hl
ZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UKIAogZGVsZXRlRGF0YWJhc2VPbkJsb2NrZWQoKToKIGRl
bGV0ZURhdGFiYXNlQmxvY2tlZEV2ZW50RmlyZWQgPSB0cnVlCi0KLXRpbWVvdXRDYWxsYmFjaygp
OgogaC5jbG9zZSgpCiAKIGRlbGV0ZURhdGFiYXNlT25TdWNjZXNzKCk6CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtYmxv
Y2tlZC5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxldGVk
YXRhYmFzZS1ibG9ja2VkLmpzCmluZGV4IGNiMThhMjYxNzc1N2U2MjgwZDM0OGRiMmRmODI0Nzg5
ZjZkNDUzNmQuLjFkOTlhMGNjOGZjNjE2YTc0MzQyNWI2OWEzZDFlNzVlYTE2NTAyMDcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxldGVkYXRh
YmFzZS1ibG9ja2VkLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291
cmNlcy9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLmpzCkBAIC0yMiwyNSArMjIsMTQgQEAgZnVuY3Rp
b24gdGVzdCgpIHsKICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CiAgICAgICAgICAgICBkZWJ1
Zygib2xkID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50LnRhcmdldC52ZXJzaW9uKSk7CiAgICAg
ICAgICAgICBkZWJ1ZygibmV3ID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50LnZlcnNpb24pKTsK
LQotICAgICAgICAgICAgZGVidWcoInNjaGVkdWxpbmcgdGltZW91dCB0byBjbG9zZSIpOwotICAg
ICAgICAgICAgLy8gVGhpcyBzZXRUaW1lb3V0KCkgaXMgdXNlZCB0byBtb3ZlIHRoZSBjbG9zZSBj
YWxsIG91dHNpZGUgb2YgdGhlIGV2ZW50IGRpc3BhdGNoCi0gICAgICAgICAgICAvLyBjYWxsYmFj
ay4gUGVyIHNwZWMsIGEgYmxvY2tlZCBldmVudCBzaG91bGQgb25seSBmaXJlIGlmIGNvbm5lY3Rp
b25zIGFyZSBzdGlsbAotICAgICAgICAgICAgLy8gb3BlbiBhZnRlciB0aGUgdmVyc2lvbmNoYW5n
ZSBldmVudCBkaXNwYXRjaCBpcyBjb21wbGV0ZS4KLSAgICAgICAgICAgIC8vIEZJWE1FOiBUaGVy
ZSBpcyBwb3RlbnRpYWwgZm9yIHRlc3QgZmxha2luZXNzIGluIHRoZSB0aW1pbmcgYmV0d2VlbiB3
aGVuIHRoZQotICAgICAgICAgICAgLy8gdGltZW91dCBydW5zIGFuZCB3aGVuIHRoZSBibG9ja2Vk
IGV2ZW50IGlzIGRpc3BhdGNoZWQuIE1vdmUgdGhlIGNsb3NlIGNhbGwKLSAgICAgICAgICAgIC8v
IGludG8gb3IgYWZ0ZXIgdGhlIGJsb2NrZWQgZXZlbnQgaGFuZGxlci4KLSAgICAgICAgICAgIHNl
dFRpbWVvdXQoZnVuY3Rpb24gdGltZW91dENhbGxiYWNrKCkgewotICAgICAgICAgICAgICAgIHBy
ZWFtYmxlKCk7Ci0gICAgICAgICAgICAgICAgZXZhbEFuZExvZygiaC5jbG9zZSgpIik7Ci0gICAg
ICAgICAgICB9LCAwKTsKLSAgICAgICAgfTsKKyAgICAgICB9OwogCiAgICAgICAgIHJlcXVlc3Qg
PSBldmFsQW5kTG9nKCJpbmRleGVkREIuZGVsZXRlRGF0YWJhc2UoZGJuYW1lKSIpOwogICAgICAg
ICByZXF1ZXN0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKICAgICAgICAgcmVx
dWVzdC5vbmJsb2NrZWQgPSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uQmxvY2tlZChldnQpIHsK
ICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CiAgICAgICAgICAgICBldmFsQW5kTG9nKCJibG9j
a2VkRXZlbnRGaXJlZCA9IHRydWUiKTsKKyAgICAgICAgICAgIGV2YWxBbmRMb2coImguY2xvc2Uo
KSIpOwogICAgICAgICB9OwogICAgICAgICByZXF1ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9uIGRl
bGV0ZURhdGFiYXNlT25TdWNjZXNzKGV2dCkgewogICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxl
dGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UuanMgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1i
eS1vcGVuLWFuZC12ZXJzaW9uY2hhbmdlLmpzCmluZGV4IDlhY2NmNWQ1ZTQzZWQ3YjVjYzljYjk1
MDdjNzhlNzM4YmI2YzcyOGYuLjhkZDk2YWU4ZWE1MzdjOGZmOTY5ZjQ2NjdlZDFjMDU2NDdiOTM5
MjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9k
ZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UuanMKKysrIGIv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRl
bGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS5qcwpAQCAtMjMsMTggKzIzLDYgQEAgZnVu
Y3Rpb24gdGVzdCgpIHsKICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CiAgICAgICAgICAgICBk
ZWJ1Zygib2xkID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50LnRhcmdldC52ZXJzaW9uKSk7CiAg
ICAgICAgICAgICBkZWJ1ZygibmV3ID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50LnZlcnNpb24p
KTsKLQotICAgICAgICAgICAgZGVidWcoInNjaGVkdWxpbmcgdGltZW91dCB0byBjbG9zZSIpOwot
ICAgICAgICAgICAgLy8gVGhpcyBzZXRUaW1lb3V0KCkgaXMgdXNlZCB0byBtb3ZlIHRoZSBjbG9z
ZSBjYWxsIG91dHNpZGUgb2YgdGhlIGV2ZW50IGRpc3BhdGNoCi0gICAgICAgICAgICAvLyBjYWxs
YmFjay4gUGVyIHNwZWMsIGEgYmxvY2tlZCBldmVudCBzaG91bGQgb25seSBmaXJlIGlmIGNvbm5l
Y3Rpb25zIGFyZSBzdGlsbAotICAgICAgICAgICAgLy8gb3BlbiBhZnRlciB0aGUgdmVyc2lvbmNo
YW5nZSBldmVudCBkaXNwYXRjaCBpcyBjb21wbGV0ZS4KLSAgICAgICAgICAgIC8vIEZJWE1FOiBU
aGVyZSBpcyBwb3RlbnRpYWwgZm9yIHRlc3QgZmxha2luZXNzIGluIHRoZSB0aW1pbmcgYmV0d2Vl
biB3aGVuIHRoZQotICAgICAgICAgICAgLy8gdGltZW91dCBydW5zIGFuZCB3aGVuIHRoZSBibG9j
a2VkIGV2ZW50IGlzIGRpc3BhdGNoZWQuIE1vdmUgdGhlIGNsb3NlIGNhbGwKLSAgICAgICAgICAg
IC8vIGludG8gb3IgYWZ0ZXIgdGhlIGJsb2NrZWQgZXZlbnQgaGFuZGxlci4KLSAgICAgICAgICAg
IHNldFRpbWVvdXQoZnVuY3Rpb24gdGltZW91dENhbGxiYWNrKCkgewotICAgICAgICAgICAgICAg
IHByZWFtYmxlKCk7Ci0gICAgICAgICAgICAgICAgZXZhbEFuZExvZygiaC5jbG9zZSgpIik7Ci0g
ICAgICAgICAgICB9LCAwKTsKICAgICAgICAgfTsKIAogICAgICAgICByZXF1ZXN0ID0gZXZhbEFu
ZExvZygiaC5zZXRWZXJzaW9uKFN0cmluZyh2ZXIrKykpIik7CkBAIC01NSw2ICs0Myw4IEBAIGZ1
bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgIHJlcXVlc3Qub25lcnJvciA9IHVuZXhwZWN0ZWRFcnJv
ckNhbGxiYWNrOwogICAgICAgICByZXF1ZXN0Lm9uYmxvY2tlZCA9IGZ1bmN0aW9uIGRlbGV0ZURh
dGFiYXNlT25CbG9ja2VkKGV2dCkgewogICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKKworICAg
ICAgICAgICAgZXZhbEFuZExvZygiaC5jbG9zZSgpIik7CiAgICAgICAgIH07CiAgICAgICAgIHJl
cXVlc3Qub25zdWNjZXNzID0gZnVuY3Rpb24gZGVsZXRlRGF0YWJhc2VPblN1Y2Nlc3MoZXZ0KSB7
CiAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lv
bmNoYW5nZS5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxl
dGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UuanMKaW5kZXggZDYxYmUxODk4NzA2
Y2MyNTIwNDdkM2IzZjI4YmQzNTU4ZTA3ZDdhNC4uOTZlYzcwYmY0Zjg3MWFkMzZhNWZiNWYxZmVl
ODViZGNjZDhhNDg0NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
cmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS5qcworKysg
Yi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2Ut
ZGVsYXllZC1ieS12ZXJzaW9uY2hhbmdlLmpzCkBAIC0yNiwxOCArMjYsNiBAQCBmdW5jdGlvbiB0
ZXN0KCkgewogICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKICAgICAgICAgICAgIGRlYnVnKCJv
bGQgPSAiICsgSlNPTi5zdHJpbmdpZnkoZXZlbnQudGFyZ2V0LnZlcnNpb24pKTsKICAgICAgICAg
ICAgIGRlYnVnKCJuZXcgPSAiICsgSlNPTi5zdHJpbmdpZnkoZXZlbnQudmVyc2lvbikpOwotCi0g
ICAgICAgICAgICBkZWJ1Zygic2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlIik7Ci0gICAgICAg
ICAgICAvLyBUaGlzIHNldFRpbWVvdXQoKSBpcyB1c2VkIHRvIG1vdmUgdGhlIGNsb3NlIGNhbGwg
b3V0c2lkZSBvZiB0aGUgZXZlbnQgZGlzcGF0Y2gKLSAgICAgICAgICAgIC8vIGNhbGxiYWNrLiBQ
ZXIgc3BlYywgYSBibG9ja2VkIGV2ZW50IHNob3VsZCBvbmx5IGZpcmUgaWYgY29ubmVjdGlvbnMg
YXJlIHN0aWxsCi0gICAgICAgICAgICAvLyBvcGVuIGFmdGVyIHRoZSB2ZXJzaW9uY2hhbmdlIGV2
ZW50IGRpc3BhdGNoIGlzIGNvbXBsZXRlLgotICAgICAgICAgICAgLy8gRklYTUU6IFRoZXJlIGlz
IHBvdGVudGlhbCBmb3IgdGVzdCBmbGFraW5lc3MgaW4gdGhlIHRpbWluZyBiZXR3ZWVuIHdoZW4g
dGhlCi0gICAgICAgICAgICAvLyB0aW1lb3V0IHJ1bnMgYW5kIHdoZW4gdGhlIGJsb2NrZWQgZXZl
bnQgaXMgZGlzcGF0Y2hlZC4gTW92ZSB0aGUgY2xvc2UgY2FsbAotICAgICAgICAgICAgLy8gaW50
byBvciBhZnRlciB0aGUgYmxvY2tlZCBldmVudCBoYW5kbGVyLgotICAgICAgICAgICAgc2V0VGlt
ZW91dChmdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7Ci0gICAgICAgICAgICAgICAgcHJlYW1i
bGUoKTsKLSAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJoLmNsb3NlKCkiKTsKLSAgICAgICAg
ICAgIH0sIDApOwogICAgICAgICB9OwogCiAgICAgICAgIHJlcXVlc3QgPSBldmFsQW5kTG9nKCJp
bmRleGVkREIub3BlbihkYm5hbWUpIik7CkBAIC05Myw2ICs4MSw4IEBAIGZ1bmN0aW9uIHRlc3Qo
KSB7CiAgICAgICAgICAgICByZXF1ZXN0Lm9uYmxvY2tlZCA9IGZ1bmN0aW9uIGRlbGV0ZURhdGFi
YXNlT25CbG9ja2VkKGV2dCkgewogICAgICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CiAgICAg
ICAgICAgICAgICAgZXZhbEFuZExvZygiZGVsZXRlRGF0YWJhc2VCbG9ja2VkRXZlbnRGaXJlZCA9
IHRydWUiKTsKKworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImguY2xvc2UoKSIpOwogICAg
ICAgICAgICAgfTsKICAgICAgICAgICAgIHJlcXVlc3Qub25zdWNjZXNzID0gZnVuY3Rpb24gZGVs
ZXRlRGF0YWJhc2VPblN1Y2Nlc3MoZXZ0KSB7CiAgICAgICAgICAgICAgICAgcHJlYW1ibGUoZXZ0
KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9z
ZXR2ZXJzaW9uLWJsb2NrZWQuanMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNv
dXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzCmluZGV4IDQ0YjdmNzRiMDE3ZDNmYTAxNTBmMzNl
YjJkZDQ3ZDI0YzkyNDFhMmYuLjExMDQ5OTI0YzYzOWZmMTRmODZkMzIyMWRkOWZlNmYyZTVmYTRj
ZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9z
ZXR2ZXJzaW9uLWJsb2NrZWQuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
cmVzb3VyY2VzL3NldHZlcnNpb24tYmxvY2tlZC5qcwpAQCAtMzIsMTggKzMyLDYgQEAgZnVuY3Rp
b24gdGVzdCgpIHsKICAgICAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwogICAgICAgICAgICAg
ICAgIGRlYnVnKCJvbGQgPSAiICsgSlNPTi5zdHJpbmdpZnkoZXZlbnQudGFyZ2V0LnZlcnNpb24p
KTsKICAgICAgICAgICAgICAgICBkZWJ1ZygibmV3ID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50
LnZlcnNpb24pKTsKLQotICAgICAgICAgICAgICAgIGRlYnVnKCJzY2hlZHVsaW5nIHRpbWVvdXQg
dG8gY2xvc2UgaDIiKTsKLSAgICAgICAgICAgICAgICAvLyBUaGlzIHNldFRpbWVvdXQoKSBpcyB1
c2VkIHRvIG1vdmUgdGhlIGNsb3NlIGNhbGwgb3V0c2lkZSBvZiB0aGUgZXZlbnQgZGlzcGF0Y2gK
LSAgICAgICAgICAgICAgICAvLyBjYWxsYmFjay4gUGVyIHNwZWMsIGEgYmxvY2tlZCBldmVudCBz
aG91bGQgb25seSBmaXJlIGlmIGNvbm5lY3Rpb25zIGFyZSBzdGlsbAotICAgICAgICAgICAgICAg
IC8vIG9wZW4gYWZ0ZXIgdGhlIHZlcnNpb25jaGFuZ2UgZXZlbnQgZGlzcGF0Y2ggaXMgY29tcGxl
dGUuCi0gICAgICAgICAgICAgICAgLy8gRklYTUU6IFRoZXJlIGlzIHBvdGVudGlhbCBmb3IgdGVz
dCBmbGFraW5lc3MgaW4gdGhlIHRpbWluZyBiZXR3ZWVuIHdoZW4gdGhlCi0gICAgICAgICAgICAg
ICAgLy8gdGltZW91dCBydW5zIGFuZCB3aGVuIHRoZSBibG9ja2VkIGV2ZW50IGlzIGRpc3BhdGNo
ZWQuIE1vdmUgdGhlIGNsb3NlIGNhbGwKLSAgICAgICAgICAgICAgICAvLyBpbnRvIG9yIGFmdGVy
IHRoZSBibG9ja2VkIGV2ZW50IGhhbmRsZXIuCi0gICAgICAgICAgICAgICAgc2V0VGltZW91dChm
dW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7Ci0gICAgICAgICAgICAgICAgICAgIHByZWFtYmxl
KCk7Ci0gICAgICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImgyLmNsb3NlKCkiKTsKLSAgICAg
ICAgICAgICAgICB9LCAwKTsKICAgICAgICAgICAgIH07CiAKICAgICAgICAgICAgIHJlcXVlc3Qg
PSBldmFsQW5kTG9nKCJoMS5zZXRWZXJzaW9uKFN0cmluZyh2ZXIrKykpIik7CkBAIC01MSw2ICsz
OSw3IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgICAgICByZXF1ZXN0Lm9uYmxvY2tlZCA9
IGZ1bmN0aW9uIGgxU2V0VmVyc2lvbk9uQmxvY2tlZChldnQpIHsKICAgICAgICAgICAgICAgICBw
cmVhbWJsZShldnQpOwogICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImJsb2NrZWRFdmVudEZp
cmVkID0gdHJ1ZSIpOworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImgyLmNsb3NlKCkiKTsK
ICAgICAgICAgICAgIH07CiAgICAgICAgICAgICByZXF1ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9u
IGgxU2V0VmVyc2lvbk9uU3VjY2VzcyhldnQpIHsKICAgICAgICAgICAgICAgICBwcmVhbWJsZShl
dnQpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lv
bi1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Nl
dHZlcnNpb24tYmxvY2tlZC1leHBlY3RlZC50eHQKaW5kZXggNDRlYjUxYTRiNTU3NjUzZGVhZDI4
YTNkZDAwNWZiZWE1YmIzNDAyMi4uZTA5ZTdkZDFjZDIyZDhlMTA0MGExODY4NmE5MjIyNzZmMjUw
Mjc5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lv
bi1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9zZXR2ZXJzaW9uLWJsb2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0yMiwxMiArMjIsOSBAQCBoMS5z
ZXRWZXJzaW9uKFN0cmluZyh2ZXIrKykpCiBoMk9uVmVyc2lvbkNoYW5nZSgpOgogb2xkID0gMQog
bmV3ID0gIjEiCi1zY2hlZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UgaDIKIAogaDFTZXRWZXJzaW9u
T25CbG9ja2VkKCk6CiBibG9ja2VkRXZlbnRGaXJlZCA9IHRydWUKLQotdGltZW91dENhbGxiYWNr
KCk6CiBoMi5jbG9zZSgpCiAKIGgxU2V0VmVyc2lvbk9uU3VjY2VzcygpOgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168806</attachid>
            <date>2012-10-15 16:34:47 -0700</date>
            <delta_ts>2012-10-15 17:24:07 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98949-20121015163338.patch</filename>
            <type>text/plain</type>
            <size>18083</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMzU4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjc4Y2I2ZGRkYWI3ZDkxODcwYTA2
NGUwZTcwNjMxMjVkYjAwYWU4Ni4uYWU5MTIwMGVkODAzNWNkYWU3MWFjZjkyODA5MTEzNzUzY2Jl
ZmViOCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEyLTEwLTE1ICBKb3NodWEgQmVsbCAgPGpz
YmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5kZXhlZERCOiBzZXRUaW1lb3V0IGluIGxh
eW91dCB0ZXN0cyBjYXVzZXMgZmxha2luZXNzIGluIG11bHRpcHJvY2VzcyBwb3J0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg5NDkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBtdWx0aXByb2Nlc3Mg
cG9ydHMgd2l0aCBhc3luY2hyb25vdXMgSVBDLCBldmVudHMgYW5kIHRpbWVycyBtYXkgcmFjZSBj
YXVzaW5nIHNjcmlwdAorICAgICAgICBjYWxsYmFja3MgdG8gZXhlY3V0ZSBpbiBkaWZmZXJlbnQg
b3JkZXJzLgorCisgICAgICAgIEVsaW1pbmF0ZSB0aGUgdXNlcyBvZiBzZXRUaW1lb3V0KCkgd2hl
cmUgdGhlIGludGVudCBpcyB0byBoYXZlIGNvZGUgZGVsYXllZCBidXQgbWF5CisgICAgICAgIHJh
Y2Ugd2l0aCBhIHBlbmRpbmcgZXZlbnQuCisKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9k
ZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2lu
ZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2Ut
ZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNl
LWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFn
ZS9pbmRleGVkZGIvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVuLWV2ZW50cy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWJs
b2NrZWQuanM6IFJlbW92ZSBzZXRUaW1lb3V0LgorICAgICAgICAodGVzdC5yZXF1ZXN0Lm9uc3Vj
Y2Vzcy5vcGVuT25TdWNjZXNzLmgub252ZXJzaW9uY2hhbmdlKToKKyAgICAgICAgKHRlc3QucmVx
dWVzdC5vbnN1Y2Nlc3Mub3Blbk9uU3VjY2Vzcy5yZXF1ZXN0Lm9uYmxvY2tlZCk6CisgICAgICAg
ICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnkt
b3Blbi1hbmQtdmVyc2lvbmNoYW5nZS5qczogUmVtb3ZlIHNldFRpbWVvdXQuCisgICAgICAgICh0
ZXN0LnJlcXVlc3Qub25zdWNjZXNzLm9wZW5PblN1Y2Nlc3MuaC5vbnZlcnNpb25jaGFuZ2UpOgor
ICAgICAgICAodGVzdC5yZXF1ZXN0Lm9uc3VjY2Vzcy5vcGVuT25TdWNjZXNzLnJlcXVlc3Qub25i
bG9ja2VkKToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0
YWJhc2UtZGVsYXllZC1ieS12ZXJzaW9uY2hhbmdlLmpzOiBSZW1vdmUgc2V0VGltZW91dC4KKyAg
ICAgICAgKHRlc3QucmVxdWVzdC5vbnN1Y2Nlc3Mub3Blbk9uU3VjY2Vzcy5oLm9udmVyc2lvbmNo
YW5nZSk6CisgICAgICAgICh0ZXN0LnJlcXVlc3Qub25zdWNjZXNzLm9wZW5PblN1Y2Nlc3MucmVx
dWVzdC5vbnN1Y2Nlc3MuaDJPcGVuT25TdWNjZXNzLnJlcXVlc3Qub25ibG9ja2VkKToKKyAgICAg
ICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVu
LWV2ZW50cy5qczogVGVzdCB3YXMgaW50ZW5kZWQgdG8gY2FsbCBkYi5jbG9zZSgpCisgICAgICAg
IGJldHdlZW4gImNvbXBsZXRlIiBhbmQgInN1Y2Nlc3MiIGJ1dCBpbiBzaW5nbGUgcHJvY2VzcyBw
b3J0cyB0aGlzIGlzIG5vdCBwb3NzaWJsZSwgYW5kIGluIG11bHRpLXByb2Nlc3MKKyAgICAgICAg
cG9ydHMgaXMgbm90IHJlbGlhYmxlLiBUbyBtYWtlIHRoZSB0ZXN0IG5vdCBmbGFreSBhbmQgd2F0
Y2ggb3V0IGZvciByZWdyZXNzaW9ucyBpbiB0aGlzIGVkZ2UgY2FzZSwgaXQKKyAgICAgICAgaXMg
Y2hhbmdlZCB0byBoYXZlIG1pbmltYWwgbG9nZ2luZy4KKyAgICAgICAgKGRlbGV0ZVN1Y2Nlc3Mp
OgorICAgICAgICAodXBncmFkZU5lZWRlZC50cmFuc2FjdGlvbi5vbmNvbXBsZXRlKToKKyAgICAg
ICAgKHVwZ3JhZGVOZWVkZWQpOgorICAgICAgICAoY2xvc2VEQik6CisgICAgICAgIChvcGVuU3Vj
Y2Vzcyk6CisgICAgICAgIChjaGVja0ZpbmlzaGVkKToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4
ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1pbi1vbmNvbXBsZXRlLmpzOiBMb2cgb24g
ZXJyb3IgcmF0aGVyIHRoYW4gdGltaW5nIG91dC4KKyAgICAgICAgKGRlbGV0ZVN1Y2Nlc3MpOgor
ICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zZXR2ZXJzaW9uLWJsb2NrZWQu
anM6IFJlbW92ZWQgc2V0VGltZW91dC4KKyAgICAgICAgKHRlc3QucmVxdWVzdC5vbnN1Y2Nlc3Mu
aDFPcGVuT25TdWNjZXNzLnJlcXVlc3Qub25zdWNjZXNzLmgyT3Blbk9uU3VjY2Vzcy5oMi5vbnZl
cnNpb25jaGFuZ2UpOgorICAgICAgICAodGVzdC5yZXF1ZXN0Lm9uc3VjY2Vzcy5oMU9wZW5PblN1
Y2Nlc3MucmVxdWVzdC5vbnN1Y2Nlc3MuaDJPcGVuT25TdWNjZXNzLnJlcXVlc3Qub25ibG9ja2Vk
KToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9zZXR2ZXJzaW9uLWJsb2NrZWQtZXhwZWN0
ZWQudHh0OgorCiAyMDEyLTEwLTE1ICBFbWlsIEEgRWtsdW5kICA8ZWFlQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZlcnQgcm91bmRpbmcgY2hhbmdlIGluIFJlbmRlclRhYmxlOjpwYWludE9i
amVjdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0
YWJhc2UtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAppbmRleCAxZDczNmE3YTI2MDdm
YjE5NTdiYzRlOTMwNjMzZTJkZDM5MzUwMTEwLi4wMjM2MzUwZDAxZjdiNjU0ODA3MDAxMDg4ZTE1
Yzk0MTU0ZjE4YzBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9k
ZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApAQCAtMTYs
MTIgKzE2LDkgQEAgaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGRibmFtZSkKIG9uVmVyc2lvbkNo
YW5nZSgpOgogb2xkID0gMQogbmV3ID0gIiIKLXNjaGVkdWxpbmcgdGltZW91dCB0byBjbG9zZQog
CiBkZWxldGVEYXRhYmFzZU9uQmxvY2tlZCgpOgogYmxvY2tlZEV2ZW50RmlyZWQgPSB0cnVlCi0K
LXRpbWVvdXRDYWxsYmFjaygpOgogaC5jbG9zZSgpCiAKIGRlbGV0ZURhdGFiYXNlT25TdWNjZXNz
KCk6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkYXRh
YmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS1vcGVu
LWFuZC12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dAppbmRleCBjNWE4YTc4ZjBjNTcwNDViODA1
ZGJkN2FmMzVlNzU0MjZiZjJjYzRjLi43ZWFjYzE3NTAxYWQ5NmM4NDhmZDU5M2ViMmZjMDE2NDVj
MDU5NDkwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVk
YXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQt
Ynktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTI0LDExICsyNCw4IEBA
IHZlcnNpb25DaGFuZ2VDb21wbGV0ZSA9IHRydWUKIG9uVmVyc2lvbkNoYW5nZSgpOgogb2xkID0g
IjEiCiBuZXcgPSAiIgotc2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlCiAKIGRlbGV0ZURhdGFi
YXNlT25CbG9ja2VkKCk6Ci0KLXRpbWVvdXRDYWxsYmFjaygpOgogaC5jbG9zZSgpCiAKIGRlbGV0
ZURhdGFiYXNlT25TdWNjZXNzKCk6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQu
dHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXll
ZC1ieS12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dAppbmRleCBiOGZlMDY0MTVmNzFlZTllYTMw
ZDA5ZjJiNjc3NzAxMTQ2MThjNGVmLi4wZjNiZGRkOWI0NGVlYWI3Y2IzZDI1NWMxMjZmZTg3Mzcy
YmM1MzM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVk
YXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lv
bmNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTM5LDEyICszOSw5IEBAIHZlcnNpb25DaGFuZ2VDb21w
bGV0ZSA9IHRydWUKIG9uVmVyc2lvbkNoYW5nZSgpOgogb2xkID0gIjEiCiBuZXcgPSAiIgotc2No
ZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlCiAKIGRlbGV0ZURhdGFiYXNlT25CbG9ja2VkKCk6CiBk
ZWxldGVEYXRhYmFzZUJsb2NrZWRFdmVudEZpcmVkID0gdHJ1ZQotCi10aW1lb3V0Q2FsbGJhY2so
KToKIGguY2xvc2UoKQogCiBkZWxldGVEYXRhYmFzZU9uU3VjY2VzcygpOgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVuLWV2
ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJz
aW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCA1NTFmOGQ4NmViNmU3
NzZkZTYzMTg4YTlhYTAzMTM1MDA4ZWNiNmY2Li5iMGVlMjZjZjMyMTBjZDhiZmEyM2ZiOTFkYWQz
Nzk0NjFhMTc3ZDQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9p
bnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLWV4
cGVjdGVkLnR4dApAQCAtNyw4ICs3LDkgQEAgaW5kZXhlZERCID0gc2VsZi5pbmRleGVkREIgfHwg
c2VsZi53ZWJraXRJbmRleGVkREIgfHwgc2VsZi5tb3pJbmRleGVkREIgfHwgc2VsZi4KIAogZGJu
YW1lID0gImludHZlcnNpb24tY2xvc2UtYmV0d2Vlbi1ldmVudHMuaHRtbCIKIGluZGV4ZWREQi5k
ZWxldGVEYXRhYmFzZShkYm5hbWUpCi1yZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCA3
KQogCitkZWxldGVTdWNjZXNzKCk6CityZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCA3
KQogCiB1cGdyYWRlTmVlZGVkKCk6CiBkYiA9IGV2ZW50LnRhcmdldC5yZXN1bHQKQEAgLTE2LDIx
ICsxNywyMyBAQCBQQVNTIGV2ZW50Lm5ld1ZlcnNpb24gaXMgNwogZGIuY3JlYXRlT2JqZWN0U3Rv
cmUoJ29iamVjdHN0b3JlJykKIHRyYW5zYWN0aW9uID0gZXZlbnQudGFyZ2V0LnRyYW5zYWN0aW9u
CiAKLXRyYW5zYWN0aW9uLm9uY29tcGxldGU6Cit0cmFuc2FjdGlvbkNvbXBsZXRlKCk6CiBzYXdU
cmFuc2FjdGlvbkNvbXBsZXRlID0gdHJ1ZQorCitOb3cgdHJ5IGFuZCBjbG9zZSB0aGUgZGF0YWJh
c2UgYWZ0ZXIgb25jb21wbGV0ZSBidXQgYmVmb3JlIG9uc3VjY2Vzcy4KK1RoaXMgd2lsbCBub3Qg
aGFwcGVuIGluIHNpbmdsZSBwcm9jZXNzIHBvcnRzLiBJbiBtdWx0aS1wcm9jZXNzIHBvcnRzCitp
dCBtYXkgYW5kIGlzIGZpbmU7IGJ1dCBmbGFreSBjcmFzaGVzIHdvdWxkIGluZGljYXRlIGEgcmVn
cmVzc2lvbi4KKwogc2V0VGltZW91dChjbG9zZURCLCAwKQogCi1vcGVuU3VjY2VzcygpOgotUEFT
UyBkaWRDYWxsQ2xvc2VEQiBpcyBmYWxzZQorY2hlY2tGaW5pc2hlZCgpOgorTm90IGRvbmUgeWV0
Li4uCisKK2NoZWNrRmluaXNoZWQoKToKK1BBU1MgZGlkQ2FsbENsb3NlREIgaXMgdHJ1ZQogUEFT
UyBzYXdUcmFuc2FjdGlvbkNvbXBsZXRlIGlzIHRydWUKLWRiID0gZXZlbnQudGFyZ2V0LnJlc3Vs
dAogUEFTUyBkYi52ZXJzaW9uIGlzIDcKIFBBU1MgZGIub2JqZWN0U3RvcmVOYW1lcy5sZW5ndGgg
aXMgMQotZGIudHJhbnNhY3Rpb24oZGIub2JqZWN0U3RvcmVOYW1lcykKLQotY2xvc2VEQigpOgot
ZGlkQ2FsbENsb3NlREIgPSB0cnVlCi1kYi5jbG9zZSgpCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNl
ZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLmpzIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQu
anMKaW5kZXggY2IxOGEyNjE3NzU3ZTYyODBkMzQ4ZGIyZGY4MjQ3ODlmNmQ0NTM2ZC4uMWQ5OWEw
Y2M4ZmM2MTZhNzQzNDI1YjY5YTNkMWU3NWVhMTY1MDIwNyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQuanMK
KysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFi
YXNlLWJsb2NrZWQuanMKQEAgLTIyLDI1ICsyMiwxNCBAQCBmdW5jdGlvbiB0ZXN0KCkgewogICAg
ICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKICAgICAgICAgICAgIGRlYnVnKCJvbGQgPSAiICsgSlNP
Ti5zdHJpbmdpZnkoZXZlbnQudGFyZ2V0LnZlcnNpb24pKTsKICAgICAgICAgICAgIGRlYnVnKCJu
ZXcgPSAiICsgSlNPTi5zdHJpbmdpZnkoZXZlbnQudmVyc2lvbikpOwotCi0gICAgICAgICAgICBk
ZWJ1Zygic2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlIik7Ci0gICAgICAgICAgICAvLyBUaGlz
IHNldFRpbWVvdXQoKSBpcyB1c2VkIHRvIG1vdmUgdGhlIGNsb3NlIGNhbGwgb3V0c2lkZSBvZiB0
aGUgZXZlbnQgZGlzcGF0Y2gKLSAgICAgICAgICAgIC8vIGNhbGxiYWNrLiBQZXIgc3BlYywgYSBi
bG9ja2VkIGV2ZW50IHNob3VsZCBvbmx5IGZpcmUgaWYgY29ubmVjdGlvbnMgYXJlIHN0aWxsCi0g
ICAgICAgICAgICAvLyBvcGVuIGFmdGVyIHRoZSB2ZXJzaW9uY2hhbmdlIGV2ZW50IGRpc3BhdGNo
IGlzIGNvbXBsZXRlLgotICAgICAgICAgICAgLy8gRklYTUU6IFRoZXJlIGlzIHBvdGVudGlhbCBm
b3IgdGVzdCBmbGFraW5lc3MgaW4gdGhlIHRpbWluZyBiZXR3ZWVuIHdoZW4gdGhlCi0gICAgICAg
ICAgICAvLyB0aW1lb3V0IHJ1bnMgYW5kIHdoZW4gdGhlIGJsb2NrZWQgZXZlbnQgaXMgZGlzcGF0
Y2hlZC4gTW92ZSB0aGUgY2xvc2UgY2FsbAotICAgICAgICAgICAgLy8gaW50byBvciBhZnRlciB0
aGUgYmxvY2tlZCBldmVudCBoYW5kbGVyLgotICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlv
biB0aW1lb3V0Q2FsbGJhY2soKSB7Ci0gICAgICAgICAgICAgICAgcHJlYW1ibGUoKTsKLSAgICAg
ICAgICAgICAgICBldmFsQW5kTG9nKCJoLmNsb3NlKCkiKTsKLSAgICAgICAgICAgIH0sIDApOwot
ICAgICAgICB9OworICAgICAgIH07CiAKICAgICAgICAgcmVxdWVzdCA9IGV2YWxBbmRMb2coImlu
ZGV4ZWREQi5kZWxldGVEYXRhYmFzZShkYm5hbWUpIik7CiAgICAgICAgIHJlcXVlc3Qub25lcnJv
ciA9IHVuZXhwZWN0ZWRFcnJvckNhbGxiYWNrOwogICAgICAgICByZXF1ZXN0Lm9uYmxvY2tlZCA9
IGZ1bmN0aW9uIGRlbGV0ZURhdGFiYXNlT25CbG9ja2VkKGV2dCkgewogICAgICAgICAgICAgcHJl
YW1ibGUoZXZ0KTsKICAgICAgICAgICAgIGV2YWxBbmRMb2coImJsb2NrZWRFdmVudEZpcmVkID0g
dHJ1ZSIpOworICAgICAgICAgICAgZXZhbEFuZExvZygiaC5jbG9zZSgpIik7CiAgICAgICAgIH07
CiAgICAgICAgIHJlcXVlc3Qub25zdWNjZXNzID0gZnVuY3Rpb24gZGVsZXRlRGF0YWJhc2VPblN1
Y2Nlc3MoZXZ0KSB7CiAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5
ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNp
b25jaGFuZ2UuanMKaW5kZXggOWFjY2Y1ZDVlNDNlZDdiNWNjOWNiOTUwN2M3OGU3MzhiYjZjNzI4
Zi4uOGRkOTZhZThlYTUzN2M4ZmY5NjlmNDY2N2VkMWMwNTY0N2I5MzkyNyAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRl
bGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS5qcworKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS1vcGVuLWFu
ZC12ZXJzaW9uY2hhbmdlLmpzCkBAIC0yMywxOCArMjMsNiBAQCBmdW5jdGlvbiB0ZXN0KCkgewog
ICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKICAgICAgICAgICAgIGRlYnVnKCJvbGQgPSAiICsg
SlNPTi5zdHJpbmdpZnkoZXZlbnQudGFyZ2V0LnZlcnNpb24pKTsKICAgICAgICAgICAgIGRlYnVn
KCJuZXcgPSAiICsgSlNPTi5zdHJpbmdpZnkoZXZlbnQudmVyc2lvbikpOwotCi0gICAgICAgICAg
ICBkZWJ1Zygic2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlIik7Ci0gICAgICAgICAgICAvLyBU
aGlzIHNldFRpbWVvdXQoKSBpcyB1c2VkIHRvIG1vdmUgdGhlIGNsb3NlIGNhbGwgb3V0c2lkZSBv
ZiB0aGUgZXZlbnQgZGlzcGF0Y2gKLSAgICAgICAgICAgIC8vIGNhbGxiYWNrLiBQZXIgc3BlYywg
YSBibG9ja2VkIGV2ZW50IHNob3VsZCBvbmx5IGZpcmUgaWYgY29ubmVjdGlvbnMgYXJlIHN0aWxs
Ci0gICAgICAgICAgICAvLyBvcGVuIGFmdGVyIHRoZSB2ZXJzaW9uY2hhbmdlIGV2ZW50IGRpc3Bh
dGNoIGlzIGNvbXBsZXRlLgotICAgICAgICAgICAgLy8gRklYTUU6IFRoZXJlIGlzIHBvdGVudGlh
bCBmb3IgdGVzdCBmbGFraW5lc3MgaW4gdGhlIHRpbWluZyBiZXR3ZWVuIHdoZW4gdGhlCi0gICAg
ICAgICAgICAvLyB0aW1lb3V0IHJ1bnMgYW5kIHdoZW4gdGhlIGJsb2NrZWQgZXZlbnQgaXMgZGlz
cGF0Y2hlZC4gTW92ZSB0aGUgY2xvc2UgY2FsbAotICAgICAgICAgICAgLy8gaW50byBvciBhZnRl
ciB0aGUgYmxvY2tlZCBldmVudCBoYW5kbGVyLgotICAgICAgICAgICAgc2V0VGltZW91dChmdW5j
dGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7Ci0gICAgICAgICAgICAgICAgcHJlYW1ibGUoKTsKLSAg
ICAgICAgICAgICAgICBldmFsQW5kTG9nKCJoLmNsb3NlKCkiKTsKLSAgICAgICAgICAgIH0sIDAp
OwogICAgICAgICB9OwogCiAgICAgICAgIHJlcXVlc3QgPSBldmFsQW5kTG9nKCJoLnNldFZlcnNp
b24oU3RyaW5nKHZlcisrKSkiKTsKQEAgLTU1LDYgKzQzLDggQEAgZnVuY3Rpb24gdGVzdCgpIHsK
ICAgICAgICAgcmVxdWVzdC5vbmVycm9yID0gdW5leHBlY3RlZEVycm9yQ2FsbGJhY2s7CiAgICAg
ICAgIHJlcXVlc3Qub25ibG9ja2VkID0gZnVuY3Rpb24gZGVsZXRlRGF0YWJhc2VPbkJsb2NrZWQo
ZXZ0KSB7CiAgICAgICAgICAgICBwcmVhbWJsZShldnQpOworCisgICAgICAgICAgICBldmFsQW5k
TG9nKCJoLmNsb3NlKCkiKTsKICAgICAgICAgfTsKICAgICAgICAgcmVxdWVzdC5vbnN1Y2Nlc3Mg
PSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uU3VjY2VzcyhldnQpIHsKICAgICAgICAgICAgIHBy
ZWFtYmxlKGV2dCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9y
ZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS12ZXJzaW9uY2hhbmdlLmpzIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5
ZWQtYnktdmVyc2lvbmNoYW5nZS5qcwppbmRleCBkNjFiZTE4OTg3MDZjYzI1MjA0N2QzYjNmMjhi
ZDM1NThlMDdkN2E0Li45NmVjNzBiZjRmODcxYWQzNmE1ZmI1ZjFmZWU4NWJkY2NkOGE0ODQ3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRl
ZGF0YWJhc2UtZGVsYXllZC1ieS12ZXJzaW9uY2hhbmdlLmpzCisrKyBiL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNp
b25jaGFuZ2UuanMKQEAgLTI2LDE4ICsyNiw2IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAg
ICAgICBwcmVhbWJsZShldnQpOwogICAgICAgICAgICAgZGVidWcoIm9sZCA9ICIgKyBKU09OLnN0
cmluZ2lmeShldmVudC50YXJnZXQudmVyc2lvbikpOwogICAgICAgICAgICAgZGVidWcoIm5ldyA9
ICIgKyBKU09OLnN0cmluZ2lmeShldmVudC52ZXJzaW9uKSk7Ci0KLSAgICAgICAgICAgIGRlYnVn
KCJzY2hlZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UiKTsKLSAgICAgICAgICAgIC8vIFRoaXMgc2V0
VGltZW91dCgpIGlzIHVzZWQgdG8gbW92ZSB0aGUgY2xvc2UgY2FsbCBvdXRzaWRlIG9mIHRoZSBl
dmVudCBkaXNwYXRjaAotICAgICAgICAgICAgLy8gY2FsbGJhY2suIFBlciBzcGVjLCBhIGJsb2Nr
ZWQgZXZlbnQgc2hvdWxkIG9ubHkgZmlyZSBpZiBjb25uZWN0aW9ucyBhcmUgc3RpbGwKLSAgICAg
ICAgICAgIC8vIG9wZW4gYWZ0ZXIgdGhlIHZlcnNpb25jaGFuZ2UgZXZlbnQgZGlzcGF0Y2ggaXMg
Y29tcGxldGUuCi0gICAgICAgICAgICAvLyBGSVhNRTogVGhlcmUgaXMgcG90ZW50aWFsIGZvciB0
ZXN0IGZsYWtpbmVzcyBpbiB0aGUgdGltaW5nIGJldHdlZW4gd2hlbiB0aGUKLSAgICAgICAgICAg
IC8vIHRpbWVvdXQgcnVucyBhbmQgd2hlbiB0aGUgYmxvY2tlZCBldmVudCBpcyBkaXNwYXRjaGVk
LiBNb3ZlIHRoZSBjbG9zZSBjYWxsCi0gICAgICAgICAgICAvLyBpbnRvIG9yIGFmdGVyIHRoZSBi
bG9ja2VkIGV2ZW50IGhhbmRsZXIuCi0gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uIHRp
bWVvdXRDYWxsYmFjaygpIHsKLSAgICAgICAgICAgICAgICBwcmVhbWJsZSgpOwotICAgICAgICAg
ICAgICAgIGV2YWxBbmRMb2coImguY2xvc2UoKSIpOwotICAgICAgICAgICAgfSwgMCk7CiAgICAg
ICAgIH07CiAKICAgICAgICAgcmVxdWVzdCA9IGV2YWxBbmRMb2coImluZGV4ZWREQi5vcGVuKGRi
bmFtZSkiKTsKQEAgLTkzLDYgKzgxLDggQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgICAg
IHJlcXVlc3Qub25ibG9ja2VkID0gZnVuY3Rpb24gZGVsZXRlRGF0YWJhc2VPbkJsb2NrZWQoZXZ0
KSB7CiAgICAgICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKICAgICAgICAgICAgICAgICBldmFs
QW5kTG9nKCJkZWxldGVEYXRhYmFzZUJsb2NrZWRFdmVudEZpcmVkID0gdHJ1ZSIpOworCisgICAg
ICAgICAgICAgICAgZXZhbEFuZExvZygiaC5jbG9zZSgpIik7CiAgICAgICAgICAgICB9OwogICAg
ICAgICAgICAgcmVxdWVzdC5vbnN1Y2Nlc3MgPSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uU3Vj
Y2VzcyhldnQpIHsKICAgICAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tY2xvc2Ut
YmV0d2Vlbi1ldmVudHMuanMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJj
ZXMvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVuLWV2ZW50cy5qcwppbmRleCA3NDNkMjBhYTJjZjBh
ZDllZTU5YTAzMGMzN2I5N2FlMzU1ZmRjOTEwLi5kN2JhNzNmZTQ3YTNiMTc2MTA0OTM1YTEyNGU4
YjVjZjkzZmFjZjkyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9y
ZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVuLWV2ZW50cy5qcworKysgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVu
LWV2ZW50cy5qcwpAQCAtMTYsNTggKzE2LDc5IEBAIGZ1bmN0aW9uIHRlc3QoKQogfQogCiBmdW5j
dGlvbiBkZWxldGVTdWNjZXNzKGV2dCkgeworICAgIHByZWFtYmxlKGV2dCk7CisKICAgICBldmFs
QW5kTG9nKCJyZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJuYW1lLCA3KSIpOwogICAgIHJlcXVl
c3Qub25zdWNjZXNzID0gb3BlblN1Y2Nlc3M7CiAgICAgcmVxdWVzdC5vbnVwZ3JhZGVuZWVkZWQg
PSB1cGdyYWRlTmVlZGVkOwogICAgIHJlcXVlc3Qub25ibG9ja2VkID0gdW5leHBlY3RlZEJsb2Nr
ZWRDYWxsYmFjazsKLSAgICBkZWJ1ZygiIik7CisgICAgcmVxdWVzdC5vbmVycm9yID0gdW5leHBl
Y3RlZEVycm9yQ2FsbGJhY2s7CiB9CiAKIHZhciBzYXdUcmFuc2FjdGlvbkNvbXBsZXRlID0gZmFs
c2U7CiBmdW5jdGlvbiB1cGdyYWRlTmVlZGVkKGV2dCkKIHsKLSAgICBldmVudCA9IGV2dDsKLSAg
ICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoInVwZ3JhZGVOZWVkZWQoKToiKTsKKyAgICBwcmVhbWJs
ZShldnQpOwogICAgIGV2YWxBbmRMb2coImRiID0gZXZlbnQudGFyZ2V0LnJlc3VsdCIpOwogICAg
IHNob3VsZEJlKCJldmVudC5uZXdWZXJzaW9uIiwgIjciKTsKICAgICBldmFsQW5kTG9nKCJkYi5j
cmVhdGVPYmplY3RTdG9yZSgnb2JqZWN0c3RvcmUnKSIpOwogCiAgICAgZXZhbEFuZExvZygidHJh
bnNhY3Rpb24gPSBldmVudC50YXJnZXQudHJhbnNhY3Rpb24iKTsKICAgICB0cmFuc2FjdGlvbi5v
bmFib3J0ID0gdW5leHBlY3RlZEFib3J0Q2FsbGJhY2s7Ci0gICAgdHJhbnNhY3Rpb24ub25jb21w
bGV0ZSA9IGZ1bmN0aW9uKCkgewotICAgICAgICBkZWJ1ZygiIik7Ci0gICAgICAgIGRlYnVnKCJ0
cmFuc2FjdGlvbi5vbmNvbXBsZXRlOiIpOworICAgIHRyYW5zYWN0aW9uLm9uY29tcGxldGUgPSBm
dW5jdGlvbiB0cmFuc2FjdGlvbkNvbXBsZXRlKGV2dCkgeworICAgICAgICBwcmVhbWJsZShldnQp
OwogICAgICAgICBldmFsQW5kTG9nKCJzYXdUcmFuc2FjdGlvbkNvbXBsZXRlID0gdHJ1ZSIpOwor
CisgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgZGVidWcoIk5vdyB0cnkgYW5kIGNsb3NlIHRo
ZSBkYXRhYmFzZSBhZnRlciBvbmNvbXBsZXRlIGJ1dCBiZWZvcmUgb25zdWNjZXNzLiIpOworICAg
ICAgICBkZWJ1ZygiVGhpcyB3aWxsIG5vdCBoYXBwZW4gaW4gc2luZ2xlIHByb2Nlc3MgcG9ydHMu
IEluIG11bHRpLXByb2Nlc3MgcG9ydHMiKTsKKyAgICAgICAgZGVidWcoIml0IG1heSBhbmQgaXMg
ZmluZTsgYnV0IGZsYWt5IGNyYXNoZXMgd291bGQgaW5kaWNhdGUgYSByZWdyZXNzaW9uLiIpOwor
ICAgICAgICBkZWJ1ZygiIik7CisKICAgICAgICAgZXZhbEFuZExvZygic2V0VGltZW91dChjbG9z
ZURCLCAwKSIpOwotICAgIH0KKyAgICB9OwogfQogCiB2YXIgZGlkQ2FsbENsb3NlREIgPSBmYWxz
ZTsKK3ZhciBkaWRHZXRPcGVuU3VjY2VzcyA9IGZhbHNlOworCiBmdW5jdGlvbiBjbG9zZURCKCkK
IHsKLSAgICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoImNsb3NlREIoKToiKTsKLSAgICBldmFsQW5k
TG9nKCJkaWRDYWxsQ2xvc2VEQiA9IHRydWUiKTsKLSAgICBldmFsQW5kTG9nKCJkYi5jbG9zZSgp
Iik7Ci0gICAgZmluaXNoSlNUZXN0KCk7CisgICAgZGIuY2xvc2UoKTsKKyAgICBkaWRDYWxsQ2xv
c2VEQiA9IHRydWU7CisgICAgY2hlY2tGaW5pc2hlZCgpOwogfQogCiBmdW5jdGlvbiBvcGVuU3Vj
Y2VzcyhldnQpCiB7Ci0gICAgZXZlbnQgPSBldnQ7Ci0gICAgZGVidWcoIiIpOwotICAgIGRlYnVn
KCJvcGVuU3VjY2VzcygpOiIpOwotICAgIHNob3VsZEJlRmFsc2UoImRpZENhbGxDbG9zZURCIik7
Ci0gICAgc2hvdWxkQmVUcnVlKCJzYXdUcmFuc2FjdGlvbkNvbXBsZXRlIik7Ci0gICAgZGIgPSBl
dmFsQW5kTG9nKCJkYiA9IGV2ZW50LnRhcmdldC5yZXN1bHQiKTsKLSAgICBzaG91bGRCZSgnZGIu
dmVyc2lvbicsICI3Iik7Ci0gICAgaWYgKGRiLnZlcnNpb24gIT09IDcpIHsKLSAgICAgICAgZmlu
aXNoSlNUZXN0KCk7CisgICAgZGlkR2V0T3BlblN1Y2Nlc3MgPSB0cnVlOworCisgICAgaWYgKCFk
aWRDYWxsQ2xvc2VEQikgeworICAgICAgICB0cnkgeworICAgICAgICAgICAgZGIudHJhbnNhY3Rp
b24oZGIub2JqZWN0U3RvcmVOYW1lcyk7CisgICAgICAgIH0gY2F0Y2ggKGUpIHsKKyAgICAgICAg
ICAgIHRlc3RGYWlsZWQoIkNvdWxkIG5vdCBjYWxsIGRiLnRyYW5zYWN0aW9uIGluIHN1Y2NjZXNz
IGhhbmRsZXIiKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIGNoZWNrRmluaXNoZWQoKTsKK30K
KworZnVuY3Rpb24gY2hlY2tGaW5pc2hlZCgpCit7CisgICAgcHJlYW1ibGUoKTsKKworICAgIGlm
ICghZGlkQ2FsbENsb3NlREIgfHwgIWRpZEdldE9wZW5TdWNjZXNzKSB7CisgICAgICAgIGRlYnVn
KCJOb3QgZG9uZSB5ZXQuLi4iKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KKworICAgIHNob3Vs
ZEJlVHJ1ZSgiZGlkQ2FsbENsb3NlREIiKTsKKyAgICBzaG91bGRCZVRydWUoInNhd1RyYW5zYWN0
aW9uQ29tcGxldGUiKTsKKyAgICBzaG91bGRCZSgnZGIudmVyc2lvbicsICI3Iik7CiAgICAgc2hv
dWxkQmUoImRiLm9iamVjdFN0b3JlTmFtZXMubGVuZ3RoIiwgIjEiKTsKLSAgICBldmFsQW5kTG9n
KCJkYi50cmFuc2FjdGlvbihkYi5vYmplY3RTdG9yZU5hbWVzKSIpOworCisgICAgZmluaXNoSlNU
ZXN0KCk7CiB9CiAKIHRlc3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5k
ZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWNsb3NlLWluLW9uY29tcGxldGUuanMgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1pbi1v
bmNvbXBsZXRlLmpzCmluZGV4IDc4NDRhNTdkNGEzYjkxOGMxMThjMWFjNWFjZDAwOTY4MWExZGNm
OTYuLjQ1YzAwYTIzOWM2MzRlY2U3ZDAwMTU1NzFiNWJlZTU2NTM4YWNmYmQgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWNsb3Nl
LWluLW9uY29tcGxldGUuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVz
b3VyY2VzL2ludHZlcnNpb24tY2xvc2UtaW4tb25jb21wbGV0ZS5qcwpAQCAtMjAsNiArMjAsNyBA
QCBmdW5jdGlvbiBkZWxldGVTdWNjZXNzKGV2dCkgewogICAgIHJlcXVlc3Qub25zdWNjZXNzID0g
b3BlblN1Y2Nlc3M7CiAgICAgcmVxdWVzdC5vbnVwZ3JhZGVuZWVkZWQgPSB1cGdyYWRlTmVlZGVk
OwogICAgIHJlcXVlc3Qub25ibG9ja2VkID0gdW5leHBlY3RlZEJsb2NrZWRDYWxsYmFjazsKKyAg
ICByZXF1ZXN0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKIH0KIAogdmFyIHNh
d1RyYW5zYWN0aW9uQ29tcGxldGUgPSBmYWxzZTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zZXR2ZXJzaW9uLWJsb2NrZWQuanMgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzCmlu
ZGV4IDQ0YjdmNzRiMDE3ZDNmYTAxNTBmMzNlYjJkZDQ3ZDI0YzkyNDFhMmYuLjExMDQ5OTI0YzYz
OWZmMTRmODZkMzIyMWRkOWZlNmYyZTVmYTRjZGQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zZXR2ZXJzaW9uLWJsb2NrZWQuanMKKysrIGIvTGF5
b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL3NldHZlcnNpb24tYmxvY2tlZC5q
cwpAQCAtMzIsMTggKzMyLDYgQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgICAgICAgICBw
cmVhbWJsZShldnQpOwogICAgICAgICAgICAgICAgIGRlYnVnKCJvbGQgPSAiICsgSlNPTi5zdHJp
bmdpZnkoZXZlbnQudGFyZ2V0LnZlcnNpb24pKTsKICAgICAgICAgICAgICAgICBkZWJ1ZygibmV3
ID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50LnZlcnNpb24pKTsKLQotICAgICAgICAgICAgICAg
IGRlYnVnKCJzY2hlZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UgaDIiKTsKLSAgICAgICAgICAgICAg
ICAvLyBUaGlzIHNldFRpbWVvdXQoKSBpcyB1c2VkIHRvIG1vdmUgdGhlIGNsb3NlIGNhbGwgb3V0
c2lkZSBvZiB0aGUgZXZlbnQgZGlzcGF0Y2gKLSAgICAgICAgICAgICAgICAvLyBjYWxsYmFjay4g
UGVyIHNwZWMsIGEgYmxvY2tlZCBldmVudCBzaG91bGQgb25seSBmaXJlIGlmIGNvbm5lY3Rpb25z
IGFyZSBzdGlsbAotICAgICAgICAgICAgICAgIC8vIG9wZW4gYWZ0ZXIgdGhlIHZlcnNpb25jaGFu
Z2UgZXZlbnQgZGlzcGF0Y2ggaXMgY29tcGxldGUuCi0gICAgICAgICAgICAgICAgLy8gRklYTUU6
IFRoZXJlIGlzIHBvdGVudGlhbCBmb3IgdGVzdCBmbGFraW5lc3MgaW4gdGhlIHRpbWluZyBiZXR3
ZWVuIHdoZW4gdGhlCi0gICAgICAgICAgICAgICAgLy8gdGltZW91dCBydW5zIGFuZCB3aGVuIHRo
ZSBibG9ja2VkIGV2ZW50IGlzIGRpc3BhdGNoZWQuIE1vdmUgdGhlIGNsb3NlIGNhbGwKLSAgICAg
ICAgICAgICAgICAvLyBpbnRvIG9yIGFmdGVyIHRoZSBibG9ja2VkIGV2ZW50IGhhbmRsZXIuCi0g
ICAgICAgICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiB0aW1lb3V0Q2FsbGJhY2soKSB7Ci0g
ICAgICAgICAgICAgICAgICAgIHByZWFtYmxlKCk7Ci0gICAgICAgICAgICAgICAgICAgIGV2YWxB
bmRMb2coImgyLmNsb3NlKCkiKTsKLSAgICAgICAgICAgICAgICB9LCAwKTsKICAgICAgICAgICAg
IH07CiAKICAgICAgICAgICAgIHJlcXVlc3QgPSBldmFsQW5kTG9nKCJoMS5zZXRWZXJzaW9uKFN0
cmluZyh2ZXIrKykpIik7CkBAIC01MSw2ICszOSw3IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAg
ICAgICAgICByZXF1ZXN0Lm9uYmxvY2tlZCA9IGZ1bmN0aW9uIGgxU2V0VmVyc2lvbk9uQmxvY2tl
ZChldnQpIHsKICAgICAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwogICAgICAgICAgICAgICAg
IGV2YWxBbmRMb2coImJsb2NrZWRFdmVudEZpcmVkID0gdHJ1ZSIpOworICAgICAgICAgICAgICAg
IGV2YWxBbmRMb2coImgyLmNsb3NlKCkiKTsKICAgICAgICAgICAgIH07CiAgICAgICAgICAgICBy
ZXF1ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9uIGgxU2V0VmVyc2lvbk9uU3VjY2VzcyhldnQpIHsK
ICAgICAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lvbi1ibG9ja2VkLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3NldHZlcnNpb24tYmxvY2tlZC1leHBlY3RlZC50eHQK
aW5kZXggNDRlYjUxYTRiNTU3NjUzZGVhZDI4YTNkZDAwNWZiZWE1YmIzNDAyMi4uZTA5ZTdkZDFj
ZDIyZDhlMTA0MGExODY4NmE5MjIyNzZmMjUwMjc5NSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lvbi1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9zZXR2ZXJzaW9uLWJsb2NrZWQtZXhwZWN0ZWQu
dHh0CkBAIC0yMiwxMiArMjIsOSBAQCBoMS5zZXRWZXJzaW9uKFN0cmluZyh2ZXIrKykpCiBoMk9u
VmVyc2lvbkNoYW5nZSgpOgogb2xkID0gMQogbmV3ID0gIjEiCi1zY2hlZHVsaW5nIHRpbWVvdXQg
dG8gY2xvc2UgaDIKIAogaDFTZXRWZXJzaW9uT25CbG9ja2VkKCk6CiBibG9ja2VkRXZlbnRGaXJl
ZCA9IHRydWUKLQotdGltZW91dENhbGxiYWNrKCk6CiBoMi5jbG9zZSgpCiAKIGgxU2V0VmVyc2lv
bk9uU3VjY2VzcygpOgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168812</attachid>
            <date>2012-10-15 17:24:09 -0700</date>
            <delta_ts>2012-10-16 09:52:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98949-20121015172259.patch</filename>
            <type>text/plain</type>
            <size>21461</size>
            <attacher name="Joshua Bell">jsbell</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMzU4CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjc4Y2I2ZGRkYWI3ZDkxODcwYTA2
NGUwZTcwNjMxMjVkYjAwYWU4Ni4uMzMwZGNhOGFmZTQxZTJiZDQ5ZjVhZWNlNmI0MjQwNjBhMTli
YWIzZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDEyLTEwLTE1ICBKb3NodWEgQmVsbCAgPGpz
YmVsbEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW5kZXhlZERCOiBzZXRUaW1lb3V0IGluIGxh
eW91dCB0ZXN0cyBjYXVzZXMgZmxha2luZXNzIGluIG11bHRpcHJvY2VzcyBwb3J0cworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg5NDkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBtdWx0aXByb2Nlc3Mg
cG9ydHMgd2l0aCBhc3luY2hyb25vdXMgSVBDLCBldmVudHMgYW5kIHRpbWVycyBtYXkgcmFjZSBj
YXVzaW5nIHNjcmlwdAorICAgICAgICBjYWxsYmFja3MgdG8gZXhlY3V0ZSBpbiBkaWZmZXJlbnQg
b3JkZXJzLgorCisgICAgICAgIEVsaW1pbmF0ZSB0aGUgdXNlcyBvZiBzZXRUaW1lb3V0KCkgd2hl
cmUgdGhlIGludGVudCBpcyB0byBoYXZlIGNvZGUgZGVsYXllZCBidXQgbWF5CisgICAgICAgIHJh
Y2Ugd2l0aCBhIHBlbmRpbmcgZXZlbnQuCisKKyAgICAgICAgKiBmYXN0L2pzL3Jlc291cmNlcy9q
cy10ZXN0LXByZS5qczoKKyAgICAgICAgKGV2YWxBbmRMb2cpIEFkZGVkIHF1aWV0IGZsYWcuCisg
ICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtYmxvY2tlZC1leHBlY3Rl
ZC50eHQ6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXll
ZC1ieS1vcGVuLWFuZC12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9y
YWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UtZXhw
ZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2ludHZlcnNpb24tY2xvc2Ut
YmV0d2Vlbi1ldmVudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRi
L3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLmpzOiBSZW1vdmUgc2V0VGltZW91dC4K
KyAgICAgICAgKHRlc3QucmVxdWVzdC5vbnN1Y2Nlc3Mub3Blbk9uU3VjY2Vzcy5oLm9udmVyc2lv
bmNoYW5nZSk6CisgICAgICAgICh0ZXN0LnJlcXVlc3Qub25zdWNjZXNzLm9wZW5PblN1Y2Nlc3Mu
cmVxdWVzdC5vbmJsb2NrZWQpOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNl
cy9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UuanM6IFJl
bW92ZSBzZXRUaW1lb3V0LgorICAgICAgICAodGVzdC5yZXF1ZXN0Lm9uc3VjY2Vzcy5vcGVuT25T
dWNjZXNzLmgub252ZXJzaW9uY2hhbmdlKToKKyAgICAgICAgKHRlc3QucmVxdWVzdC5vbnN1Y2Nl
c3Mub3Blbk9uU3VjY2Vzcy5yZXF1ZXN0Lm9uYmxvY2tlZCk6CisgICAgICAgICogc3RvcmFnZS9p
bmRleGVkZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5n
ZS5qczogUmVtb3ZlIHNldFRpbWVvdXQuCisgICAgICAgICh0ZXN0LnJlcXVlc3Qub25zdWNjZXNz
Lm9wZW5PblN1Y2Nlc3MuaC5vbnZlcnNpb25jaGFuZ2UpOgorICAgICAgICAodGVzdC5yZXF1ZXN0
Lm9uc3VjY2Vzcy5vcGVuT25TdWNjZXNzLnJlcXVlc3Qub25zdWNjZXNzLmgyT3Blbk9uU3VjY2Vz
cy5yZXF1ZXN0Lm9uYmxvY2tlZCk6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3Vy
Y2VzL2ludHZlcnNpb24tY2xvc2UtYmV0d2Vlbi1ldmVudHMuanM6IFRlc3Qgd2FzIGludGVuZGVk
IHRvIGNhbGwgZGIuY2xvc2UoKQorICAgICAgICBiZXR3ZWVuICJjb21wbGV0ZSIgYW5kICJzdWNj
ZXNzIiBidXQgaW4gc2luZ2xlIHByb2Nlc3MgcG9ydHMgdGhpcyBpcyBub3QgcG9zc2libGUsIGFu
ZCBpbiBtdWx0aS1wcm9jZXNzCisgICAgICAgIHBvcnRzIGlzIG5vdCByZWxpYWJsZS4gVG8gbWFr
ZSB0aGUgdGVzdCBub3QgZmxha3kgYW5kIHdhdGNoIG91dCBmb3IgcmVncmVzc2lvbnMgaW4gdGhp
cyBlZGdlIGNhc2UsIGl0CisgICAgICAgIGlzIGNoYW5nZWQgdG8gaGF2ZSBtaW5pbWFsIGxvZ2dp
bmcuCisgICAgICAgIChkZWxldGVTdWNjZXNzKToKKyAgICAgICAgKHVwZ3JhZGVOZWVkZWQudHJh
bnNhY3Rpb24ub25jb21wbGV0ZSk6CisgICAgICAgICh1cGdyYWRlTmVlZGVkKToKKyAgICAgICAg
KGNsb3NlREIpOgorICAgICAgICAob3BlblN1Y2Nlc3MpOgorICAgICAgICAoY2hlY2tGaW5pc2hl
ZCk6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tY2xv
c2UtaW4tb25jb21wbGV0ZS5qczogTG9nIG9uIGVycm9yIHJhdGhlciB0aGFuIHRpbWluZyBvdXQu
CisgICAgICAgIChkZWxldGVTdWNjZXNzKToKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9y
ZXNvdXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzOiBSZW1vdmVkIHNldFRpbWVvdXQuCisgICAg
ICAgICh0ZXN0LnJlcXVlc3Qub25zdWNjZXNzLmgxT3Blbk9uU3VjY2Vzcy5yZXF1ZXN0Lm9uc3Vj
Y2Vzcy5oMk9wZW5PblN1Y2Nlc3MuaDIub252ZXJzaW9uY2hhbmdlKToKKyAgICAgICAgKHRlc3Qu
cmVxdWVzdC5vbnN1Y2Nlc3MuaDFPcGVuT25TdWNjZXNzLnJlcXVlc3Qub25zdWNjZXNzLmgyT3Bl
bk9uU3VjY2Vzcy5yZXF1ZXN0Lm9uYmxvY2tlZCk6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL3NoYXJlZC5qczoKKyAgICAgICAgKGV2YWxBbmRFeHBlY3RFeGNlcHRpb24p
IEFkZGVkIHF1aWV0IGZsYWcuCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lv
bi1ibG9ja2VkLWV4cGVjdGVkLnR4dDoKKwogMjAxMi0xMC0xNSAgRW1pbCBBIEVrbHVuZCAgPGVh
ZUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2ZXJ0IHJvdW5kaW5nIGNoYW5nZSBpbiBSZW5k
ZXJUYWJsZTo6cGFpbnRPYmplY3QKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvanMvcmVz
b3VyY2VzL2pzLXRlc3QtcHJlLmpzIGIvTGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvanMt
dGVzdC1wcmUuanMKaW5kZXggZjRmNTAyZjAwZGI2NDFkMDBhMmUyY2E5YzJjMjQxYmY5YTkyZWNh
MC4uMjZjMGM1ZWVlYzM1NWQzYzIzNDZjY2UxZDI4MTg2MzAwZjY5ZjUxOCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMKKysrIGIvTGF5b3V0
VGVzdHMvZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMKQEAgLTE0NSwxMyArMTQ1LDE0
IEBAIGZ1bmN0aW9uIHN0cmluZ2lmeSh2KQogICAgIGVsc2UgcmV0dXJuICIiICsgdjsKIH0KIAot
ZnVuY3Rpb24gZXZhbEFuZExvZyhfYSkKK2Z1bmN0aW9uIGV2YWxBbmRMb2coX2EsIF9xdWlldCkK
IHsKICAgaWYgKHR5cGVvZiBfYSAhPSAic3RyaW5nIikKICAgICBkZWJ1ZygiV0FSTjogdHJ5QW5k
TG9nKCkgZXhwZWN0cyBhIHN0cmluZyBhcmd1bWVudCIpOwogCiAgIC8vIExvZyBmaXJzdCBpbiBj
YXNlIHRoaW5ncyBnbyBob3JyaWJseSB3cm9uZyBvciB0aGlzIGNhdXNlcyBhIHN5bmMgZXZlbnQu
Ci0gIGRlYnVnKF9hKTsKKyAgaWYgKCFfcXVpZXQpCisgICAgZGVidWcoX2EpOwogCiAgIHZhciBf
YXY7CiAgIHRyeSB7CkBAIC01MjcsNyArNTI4LDYgQEAgaWYgKGlzV29ya2VyKCkpIHsKICAgICAg
ICAgICAgIHdvcmtlclBvcnQgPSBlLnBvcnRzWzBdOwogICAgICAgICAgICAgd29ya2VyUG9ydC5v
bm1lc3NhZ2UgPSBmdW5jdGlvbihldmVudCkKICAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAg
ICAKICAgICAgICAgICAgICAgICB2YXIgY29sb24gPSBldmVudC5kYXRhLmluZGV4T2YoIjoiKTsK
ICAgICAgICAgICAgICAgICBpZiAoY29sb24gPT0gLTEpIHsKICAgICAgICAgICAgICAgICAgICAg
dGVzdEZhaWxlZCgiVW5yZWNvZ25pemVkIG1lc3NhZ2UgdG8gc2hhcmVkIHdvcmtlcjogIiArIGV2
ZW50LmRhdGEpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVs
ZXRlZGF0YWJhc2UtYmxvY2tlZC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAppbmRleCAxZDczNmE3
YTI2MDdmYjE5NTdiYzRlOTMwNjMzZTJkZDM5MzUwMTEwLi4wMjM2MzUwZDAxZjdiNjU0ODA3MDAx
MDg4ZTE1Yzk0MTU0ZjE4YzBmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1ibG9ja2VkLWV4cGVjdGVkLnR4dApA
QCAtMTYsMTIgKzE2LDkgQEAgaW5kZXhlZERCLmRlbGV0ZURhdGFiYXNlKGRibmFtZSkKIG9uVmVy
c2lvbkNoYW5nZSgpOgogb2xkID0gMQogbmV3ID0gIiIKLXNjaGVkdWxpbmcgdGltZW91dCB0byBj
bG9zZQogCiBkZWxldGVEYXRhYmFzZU9uQmxvY2tlZCgpOgogYmxvY2tlZEV2ZW50RmlyZWQgPSB0
cnVlCi0KLXRpbWVvdXRDYWxsYmFjaygpOgogaC5jbG9zZSgpCiAKIGRlbGV0ZURhdGFiYXNlT25T
dWNjZXNzKCk6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kZWxl
dGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1i
eS1vcGVuLWFuZC12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dAppbmRleCBjNWE4YTc4ZjBjNTcw
NDViODA1ZGJkN2FmMzVlNzU0MjZiZjJjYzRjLi43ZWFjYzE3NTAxYWQ5NmM4NDhmZDU5M2ViMmZj
MDE2NDVjMDU5NDkwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9k
ZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWRl
bGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTI0LDExICsy
NCw4IEBAIHZlcnNpb25DaGFuZ2VDb21wbGV0ZSA9IHRydWUKIG9uVmVyc2lvbkNoYW5nZSgpOgog
b2xkID0gIjEiCiBuZXcgPSAiIgotc2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlCiAKIGRlbGV0
ZURhdGFiYXNlT25CbG9ja2VkKCk6Ci0KLXRpbWVvdXRDYWxsYmFjaygpOgogaC5jbG9zZSgpCiAK
IGRlbGV0ZURhdGFiYXNlT25TdWNjZXNzKCk6CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGVsZXRlZGF0YWJhc2Ut
ZGVsYXllZC1ieS12ZXJzaW9uY2hhbmdlLWV4cGVjdGVkLnR4dAppbmRleCBiOGZlMDY0MTVmNzFl
ZTllYTMwZDA5ZjJiNjc3NzAxMTQ2MThjNGVmLi4wZjNiZGRkOWI0NGVlYWI3Y2IzZDI1NWMxMjZm
ZTg3MzcyYmM1MzM5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9k
ZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnkt
dmVyc2lvbmNoYW5nZS1leHBlY3RlZC50eHQKQEAgLTM5LDEyICszOSw5IEBAIHZlcnNpb25DaGFu
Z2VDb21wbGV0ZSA9IHRydWUKIG9uVmVyc2lvbkNoYW5nZSgpOgogb2xkID0gIjEiCiBuZXcgPSAi
Igotc2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlCiAKIGRlbGV0ZURhdGFiYXNlT25CbG9ja2Vk
KCk6CiBkZWxldGVEYXRhYmFzZUJsb2NrZWRFdmVudEZpcmVkID0gdHJ1ZQotCi10aW1lb3V0Q2Fs
bGJhY2soKToKIGguY2xvc2UoKQogCiBkZWxldGVEYXRhYmFzZU9uU3VjY2VzcygpOgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW50dmVyc2lvbi1jbG9zZS1iZXR3
ZWVuLWV2ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9p
bnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLWV4cGVjdGVkLnR4dAppbmRleCA1NTFmOGQ4
NmViNmU3NzZkZTYzMTg4YTlhYTAzMTM1MDA4ZWNiNmY2Li5iMGVlMjZjZjMyMTBjZDhiZmEyM2Zi
OTFkYWQzNzk0NjFhMTc3ZDQ1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9pbnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLWV4cGVjdGVkLnR4dAorKysgYi9M
YXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9pbnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZl
bnRzLWV4cGVjdGVkLnR4dApAQCAtNyw4ICs3LDkgQEAgaW5kZXhlZERCID0gc2VsZi5pbmRleGVk
REIgfHwgc2VsZi53ZWJraXRJbmRleGVkREIgfHwgc2VsZi5tb3pJbmRleGVkREIgfHwgc2VsZi4K
IAogZGJuYW1lID0gImludHZlcnNpb24tY2xvc2UtYmV0d2Vlbi1ldmVudHMuaHRtbCIKIGluZGV4
ZWREQi5kZWxldGVEYXRhYmFzZShkYm5hbWUpCi1yZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJu
YW1lLCA3KQogCitkZWxldGVTdWNjZXNzKCk6CityZXF1ZXN0ID0gaW5kZXhlZERCLm9wZW4oZGJu
YW1lLCA3KQogCiB1cGdyYWRlTmVlZGVkKCk6CiBkYiA9IGV2ZW50LnRhcmdldC5yZXN1bHQKQEAg
LTE2LDIxICsxNywyMyBAQCBQQVNTIGV2ZW50Lm5ld1ZlcnNpb24gaXMgNwogZGIuY3JlYXRlT2Jq
ZWN0U3RvcmUoJ29iamVjdHN0b3JlJykKIHRyYW5zYWN0aW9uID0gZXZlbnQudGFyZ2V0LnRyYW5z
YWN0aW9uCiAKLXRyYW5zYWN0aW9uLm9uY29tcGxldGU6Cit0cmFuc2FjdGlvbkNvbXBsZXRlKCk6
CiBzYXdUcmFuc2FjdGlvbkNvbXBsZXRlID0gdHJ1ZQorCitOb3cgdHJ5IGFuZCBjbG9zZSB0aGUg
ZGF0YWJhc2UgYWZ0ZXIgb25jb21wbGV0ZSBidXQgYmVmb3JlIG9uc3VjY2Vzcy4KK1RoaXMgd2ls
bCBub3QgaGFwcGVuIGluIHNpbmdsZSBwcm9jZXNzIHBvcnRzLiBJbiBtdWx0aS1wcm9jZXNzIHBv
cnRzCitpdCBtYXkgYW5kIGlzIGZpbmU7IGJ1dCBmbGFreSBjcmFzaGVzIHdvdWxkIGluZGljYXRl
IGEgcmVncmVzc2lvbi4KKwogc2V0VGltZW91dChjbG9zZURCLCAwKQogCi1vcGVuU3VjY2Vzcygp
OgotUEFTUyBkaWRDYWxsQ2xvc2VEQiBpcyBmYWxzZQorY2hlY2tGaW5pc2hlZCgpOgorTm90IGRv
bmUgeWV0Li4uCisKK2NoZWNrRmluaXNoZWQoKToKK1BBU1MgZGlkQ2FsbENsb3NlREIgaXMgdHJ1
ZQogUEFTUyBzYXdUcmFuc2FjdGlvbkNvbXBsZXRlIGlzIHRydWUKLWRiID0gZXZlbnQudGFyZ2V0
LnJlc3VsdAogUEFTUyBkYi52ZXJzaW9uIGlzIDcKIFBBU1MgZGIub2JqZWN0U3RvcmVOYW1lcy5s
ZW5ndGggaXMgMQotZGIudHJhbnNhY3Rpb24oZGIub2JqZWN0U3RvcmVOYW1lcykKLQotY2xvc2VE
QigpOgotZGlkQ2FsbENsb3NlREIgPSB0cnVlCi1kYi5jbG9zZSgpCiBQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvcmVzb3VyY2VzL2NyZWF0ZS1pbmRleC11bmlxdWUu
anMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9tb3ppbGxhL3Jlc291cmNlcy9jcmVh
dGUtaW5kZXgtdW5pcXVlLmpzCmluZGV4IGU2YTBlMTljNTMxYzFkZTM0NzgzMWU3YjAyOTQzOTcy
MWNiMGI2MzEuLjBkNzQxMGM5N2MzZmE5YzlmYzc0ZmM1NGYzOTVlYjZlMzBhN2RlNjggMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvcmVzb3VyY2VzL2Ny
ZWF0ZS1pbmRleC11bmlxdWUuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
bW96aWxsYS9yZXNvdXJjZXMvY3JlYXRlLWluZGV4LXVuaXF1ZS5qcwpAQCAtMzgsNyArMzgsNyBA
QCBmdW5jdGlvbiBjcmVhdGVBbmRWZXJpZnlJbmRleCgpCiAKICAgICBpbmRleE5hbWUgPSAiMSI7
CiAgICAgaW5kZXhLZXlQYXRoID0gInVuaXF1ZV92YWx1ZSI7Ci0gICAgaW5kZXggPSBldmFsQW5k
TG9nKCJpbmRleCA9IG9iamVjdFN0b3JlLmNyZWF0ZUluZGV4KGluZGV4TmFtZSwgaW5kZXhLZXlQ
YXRoLCB7IHVuaXF1ZTogdHJ1ZSB9KTsiLCAiSURCRGF0YWJhc2VFeGNlcHRpb24uQ09OU1RSQUlO
VF9FUlIiKTsKKyAgICBpbmRleCA9IGV2YWxBbmRMb2coImluZGV4ID0gb2JqZWN0U3RvcmUuY3Jl
YXRlSW5kZXgoaW5kZXhOYW1lLCBpbmRleEtleVBhdGgsIHsgdW5pcXVlOiB0cnVlIH0pOyIpOwog
ICAgIHNob3VsZEJlKCJpbmRleC5uYW1lIiwgImluZGV4TmFtZSIpOwogICAgIHNob3VsZEJlKCJp
bmRleC5rZXlQYXRoIiwgImluZGV4S2V5UGF0aCIpOwogICAgIHNob3VsZEJlKCJpbmRleC51bmlx
dWUiLCAidHJ1ZSIpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
cmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWJsb2NrZWQuanMgYi9MYXlvdXRUZXN0cy9zdG9yYWdl
L2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtYmxvY2tlZC5qcwppbmRleCBjYjE4
YTI2MTc3NTdlNjI4MGQzNDhkYjJkZjgyNDc4OWY2ZDQ1MzZkLi4xZDk5YTBjYzhmYzYxNmE3NDM0
MjViNjlhM2QxZTc1ZWExNjUwMjA3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtYmxvY2tlZC5qcworKysgYi9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtYmxvY2tlZC5q
cwpAQCAtMjIsMjUgKzIyLDE0IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgICAgICBwcmVh
bWJsZShldnQpOwogICAgICAgICAgICAgZGVidWcoIm9sZCA9ICIgKyBKU09OLnN0cmluZ2lmeShl
dmVudC50YXJnZXQudmVyc2lvbikpOwogICAgICAgICAgICAgZGVidWcoIm5ldyA9ICIgKyBKU09O
LnN0cmluZ2lmeShldmVudC52ZXJzaW9uKSk7Ci0KLSAgICAgICAgICAgIGRlYnVnKCJzY2hlZHVs
aW5nIHRpbWVvdXQgdG8gY2xvc2UiKTsKLSAgICAgICAgICAgIC8vIFRoaXMgc2V0VGltZW91dCgp
IGlzIHVzZWQgdG8gbW92ZSB0aGUgY2xvc2UgY2FsbCBvdXRzaWRlIG9mIHRoZSBldmVudCBkaXNw
YXRjaAotICAgICAgICAgICAgLy8gY2FsbGJhY2suIFBlciBzcGVjLCBhIGJsb2NrZWQgZXZlbnQg
c2hvdWxkIG9ubHkgZmlyZSBpZiBjb25uZWN0aW9ucyBhcmUgc3RpbGwKLSAgICAgICAgICAgIC8v
IG9wZW4gYWZ0ZXIgdGhlIHZlcnNpb25jaGFuZ2UgZXZlbnQgZGlzcGF0Y2ggaXMgY29tcGxldGUu
Ci0gICAgICAgICAgICAvLyBGSVhNRTogVGhlcmUgaXMgcG90ZW50aWFsIGZvciB0ZXN0IGZsYWtp
bmVzcyBpbiB0aGUgdGltaW5nIGJldHdlZW4gd2hlbiB0aGUKLSAgICAgICAgICAgIC8vIHRpbWVv
dXQgcnVucyBhbmQgd2hlbiB0aGUgYmxvY2tlZCBldmVudCBpcyBkaXNwYXRjaGVkLiBNb3ZlIHRo
ZSBjbG9zZSBjYWxsCi0gICAgICAgICAgICAvLyBpbnRvIG9yIGFmdGVyIHRoZSBibG9ja2VkIGV2
ZW50IGhhbmRsZXIuCi0gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uIHRpbWVvdXRDYWxs
YmFjaygpIHsKLSAgICAgICAgICAgICAgICBwcmVhbWJsZSgpOwotICAgICAgICAgICAgICAgIGV2
YWxBbmRMb2coImguY2xvc2UoKSIpOwotICAgICAgICAgICAgfSwgMCk7Ci0gICAgICAgIH07Cisg
ICAgICAgfTsKIAogICAgICAgICByZXF1ZXN0ID0gZXZhbEFuZExvZygiaW5kZXhlZERCLmRlbGV0
ZURhdGFiYXNlKGRibmFtZSkiKTsKICAgICAgICAgcmVxdWVzdC5vbmVycm9yID0gdW5leHBlY3Rl
ZEVycm9yQ2FsbGJhY2s7CiAgICAgICAgIHJlcXVlc3Qub25ibG9ja2VkID0gZnVuY3Rpb24gZGVs
ZXRlRGF0YWJhc2VPbkJsb2NrZWQoZXZ0KSB7CiAgICAgICAgICAgICBwcmVhbWJsZShldnQpOwog
ICAgICAgICAgICAgZXZhbEFuZExvZygiYmxvY2tlZEV2ZW50RmlyZWQgPSB0cnVlIik7CisgICAg
ICAgICAgICBldmFsQW5kTG9nKCJoLmNsb3NlKCkiKTsKICAgICAgICAgfTsKICAgICAgICAgcmVx
dWVzdC5vbnN1Y2Nlc3MgPSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uU3VjY2VzcyhldnQpIHsK
ICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS1vcGVuLWFu
ZC12ZXJzaW9uY2hhbmdlLmpzIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3Vy
Y2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktb3Blbi1hbmQtdmVyc2lvbmNoYW5nZS5qcwpp
bmRleCA5YWNjZjVkNWU0M2VkN2I1Y2M5Y2I5NTA3Yzc4ZTczOGJiNmM3MjhmLi44ZGQ5NmFlOGVh
NTM3YzhmZjk2OWY0NjY3ZWQxYzA1NjQ3YjkzOTI3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS1vcGVu
LWFuZC12ZXJzaW9uY2hhbmdlLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1kZWxheWVkLWJ5LW9wZW4tYW5kLXZlcnNpb25jaGFu
Z2UuanMKQEAgLTIzLDE4ICsyMyw2IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgICAgICBw
cmVhbWJsZShldnQpOwogICAgICAgICAgICAgZGVidWcoIm9sZCA9ICIgKyBKU09OLnN0cmluZ2lm
eShldmVudC50YXJnZXQudmVyc2lvbikpOwogICAgICAgICAgICAgZGVidWcoIm5ldyA9ICIgKyBK
U09OLnN0cmluZ2lmeShldmVudC52ZXJzaW9uKSk7Ci0KLSAgICAgICAgICAgIGRlYnVnKCJzY2hl
ZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UiKTsKLSAgICAgICAgICAgIC8vIFRoaXMgc2V0VGltZW91
dCgpIGlzIHVzZWQgdG8gbW92ZSB0aGUgY2xvc2UgY2FsbCBvdXRzaWRlIG9mIHRoZSBldmVudCBk
aXNwYXRjaAotICAgICAgICAgICAgLy8gY2FsbGJhY2suIFBlciBzcGVjLCBhIGJsb2NrZWQgZXZl
bnQgc2hvdWxkIG9ubHkgZmlyZSBpZiBjb25uZWN0aW9ucyBhcmUgc3RpbGwKLSAgICAgICAgICAg
IC8vIG9wZW4gYWZ0ZXIgdGhlIHZlcnNpb25jaGFuZ2UgZXZlbnQgZGlzcGF0Y2ggaXMgY29tcGxl
dGUuCi0gICAgICAgICAgICAvLyBGSVhNRTogVGhlcmUgaXMgcG90ZW50aWFsIGZvciB0ZXN0IGZs
YWtpbmVzcyBpbiB0aGUgdGltaW5nIGJldHdlZW4gd2hlbiB0aGUKLSAgICAgICAgICAgIC8vIHRp
bWVvdXQgcnVucyBhbmQgd2hlbiB0aGUgYmxvY2tlZCBldmVudCBpcyBkaXNwYXRjaGVkLiBNb3Zl
IHRoZSBjbG9zZSBjYWxsCi0gICAgICAgICAgICAvLyBpbnRvIG9yIGFmdGVyIHRoZSBibG9ja2Vk
IGV2ZW50IGhhbmRsZXIuCi0gICAgICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uIHRpbWVvdXRD
YWxsYmFjaygpIHsKLSAgICAgICAgICAgICAgICBwcmVhbWJsZSgpOwotICAgICAgICAgICAgICAg
IGV2YWxBbmRMb2coImguY2xvc2UoKSIpOwotICAgICAgICAgICAgfSwgMCk7CiAgICAgICAgIH07
CiAKICAgICAgICAgcmVxdWVzdCA9IGV2YWxBbmRMb2coImguc2V0VmVyc2lvbihTdHJpbmcodmVy
KyspKSIpOwpAQCAtNTUsNiArNDMsOCBAQCBmdW5jdGlvbiB0ZXN0KCkgewogICAgICAgICByZXF1
ZXN0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKICAgICAgICAgcmVxdWVzdC5v
bmJsb2NrZWQgPSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uQmxvY2tlZChldnQpIHsKICAgICAg
ICAgICAgIHByZWFtYmxlKGV2dCk7CisKKyAgICAgICAgICAgIGV2YWxBbmRMb2coImguY2xvc2Uo
KSIpOwogICAgICAgICB9OwogICAgICAgICByZXF1ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9uIGRl
bGV0ZURhdGFiYXNlT25TdWNjZXNzKGV2dCkgewogICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxl
dGVkYXRhYmFzZS1kZWxheWVkLWJ5LXZlcnNpb25jaGFuZ2UuanMgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvZGVsZXRlZGF0YWJhc2UtZGVsYXllZC1ieS12ZXJzaW9u
Y2hhbmdlLmpzCmluZGV4IGQ2MWJlMTg5ODcwNmNjMjUyMDQ3ZDNiM2YyOGJkMzU1OGUwN2Q3YTQu
Ljk2ZWM3MGJmNGY4NzFhZDM2YTVmYjVmMWZlZTg1YmRjY2Q4YTQ4NDcgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9kZWxldGVkYXRhYmFzZS1kZWxh
eWVkLWJ5LXZlcnNpb25jaGFuZ2UuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVk
ZGIvcmVzb3VyY2VzL2RlbGV0ZWRhdGFiYXNlLWRlbGF5ZWQtYnktdmVyc2lvbmNoYW5nZS5qcwpA
QCAtMjYsMTggKzI2LDYgQEAgZnVuY3Rpb24gdGVzdCgpIHsKICAgICAgICAgICAgIHByZWFtYmxl
KGV2dCk7CiAgICAgICAgICAgICBkZWJ1Zygib2xkID0gIiArIEpTT04uc3RyaW5naWZ5KGV2ZW50
LnRhcmdldC52ZXJzaW9uKSk7CiAgICAgICAgICAgICBkZWJ1ZygibmV3ID0gIiArIEpTT04uc3Ry
aW5naWZ5KGV2ZW50LnZlcnNpb24pKTsKLQotICAgICAgICAgICAgZGVidWcoInNjaGVkdWxpbmcg
dGltZW91dCB0byBjbG9zZSIpOwotICAgICAgICAgICAgLy8gVGhpcyBzZXRUaW1lb3V0KCkgaXMg
dXNlZCB0byBtb3ZlIHRoZSBjbG9zZSBjYWxsIG91dHNpZGUgb2YgdGhlIGV2ZW50IGRpc3BhdGNo
Ci0gICAgICAgICAgICAvLyBjYWxsYmFjay4gUGVyIHNwZWMsIGEgYmxvY2tlZCBldmVudCBzaG91
bGQgb25seSBmaXJlIGlmIGNvbm5lY3Rpb25zIGFyZSBzdGlsbAotICAgICAgICAgICAgLy8gb3Bl
biBhZnRlciB0aGUgdmVyc2lvbmNoYW5nZSBldmVudCBkaXNwYXRjaCBpcyBjb21wbGV0ZS4KLSAg
ICAgICAgICAgIC8vIEZJWE1FOiBUaGVyZSBpcyBwb3RlbnRpYWwgZm9yIHRlc3QgZmxha2luZXNz
IGluIHRoZSB0aW1pbmcgYmV0d2VlbiB3aGVuIHRoZQotICAgICAgICAgICAgLy8gdGltZW91dCBy
dW5zIGFuZCB3aGVuIHRoZSBibG9ja2VkIGV2ZW50IGlzIGRpc3BhdGNoZWQuIE1vdmUgdGhlIGNs
b3NlIGNhbGwKLSAgICAgICAgICAgIC8vIGludG8gb3IgYWZ0ZXIgdGhlIGJsb2NrZWQgZXZlbnQg
aGFuZGxlci4KLSAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gdGltZW91dENhbGxiYWNr
KCkgewotICAgICAgICAgICAgICAgIHByZWFtYmxlKCk7Ci0gICAgICAgICAgICAgICAgZXZhbEFu
ZExvZygiaC5jbG9zZSgpIik7Ci0gICAgICAgICAgICB9LCAwKTsKICAgICAgICAgfTsKIAogICAg
ICAgICByZXF1ZXN0ID0gZXZhbEFuZExvZygiaW5kZXhlZERCLm9wZW4oZGJuYW1lKSIpOwpAQCAt
OTMsNiArODEsOCBAQCBmdW5jdGlvbiB0ZXN0KCkgewogICAgICAgICAgICAgcmVxdWVzdC5vbmJs
b2NrZWQgPSBmdW5jdGlvbiBkZWxldGVEYXRhYmFzZU9uQmxvY2tlZChldnQpIHsKICAgICAgICAg
ICAgICAgICBwcmVhbWJsZShldnQpOwogICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImRlbGV0
ZURhdGFiYXNlQmxvY2tlZEV2ZW50RmlyZWQgPSB0cnVlIik7CisKKyAgICAgICAgICAgICAgICBl
dmFsQW5kTG9nKCJoLmNsb3NlKCkiKTsKICAgICAgICAgICAgIH07CiAgICAgICAgICAgICByZXF1
ZXN0Lm9uc3VjY2VzcyA9IGZ1bmN0aW9uIGRlbGV0ZURhdGFiYXNlT25TdWNjZXNzKGV2dCkgewog
ICAgICAgICAgICAgICAgIHByZWFtYmxlKGV2dCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9z
dG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1iZXR3ZWVuLWV2ZW50
cy5qcyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9u
LWNsb3NlLWJldHdlZW4tZXZlbnRzLmpzCmluZGV4IDc0M2QyMGFhMmNmMGFkOWVlNTlhMDMwYzM3
Yjk3YWUzNTVmZGM5MTAuLjc5NTgwNjNmNjEwMTAzYzYzYWQwY2U1NTkyMDY5YWE2N2Y5MmEzMmUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2
ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3Jlc291cmNlcy9pbnR2ZXJzaW9uLWNsb3NlLWJldHdlZW4tZXZlbnRzLmpzCkBA
IC0xNiw1OCArMTYsNzggQEAgZnVuY3Rpb24gdGVzdCgpCiB9CiAKIGZ1bmN0aW9uIGRlbGV0ZVN1
Y2Nlc3MoZXZ0KSB7CisgICAgcHJlYW1ibGUoZXZ0KTsKKwogICAgIGV2YWxBbmRMb2coInJlcXVl
c3QgPSBpbmRleGVkREIub3BlbihkYm5hbWUsIDcpIik7CiAgICAgcmVxdWVzdC5vbnN1Y2Nlc3Mg
PSBvcGVuU3VjY2VzczsKICAgICByZXF1ZXN0Lm9udXBncmFkZW5lZWRlZCA9IHVwZ3JhZGVOZWVk
ZWQ7CiAgICAgcmVxdWVzdC5vbmJsb2NrZWQgPSB1bmV4cGVjdGVkQmxvY2tlZENhbGxiYWNrOwot
ICAgIGRlYnVnKCIiKTsKKyAgICByZXF1ZXN0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxs
YmFjazsKIH0KIAogdmFyIHNhd1RyYW5zYWN0aW9uQ29tcGxldGUgPSBmYWxzZTsKIGZ1bmN0aW9u
IHVwZ3JhZGVOZWVkZWQoZXZ0KQogewotICAgIGV2ZW50ID0gZXZ0OwotICAgIGRlYnVnKCIiKTsK
LSAgICBkZWJ1ZygidXBncmFkZU5lZWRlZCgpOiIpOworICAgIHByZWFtYmxlKGV2dCk7CiAgICAg
ZXZhbEFuZExvZygiZGIgPSBldmVudC50YXJnZXQucmVzdWx0Iik7CiAgICAgc2hvdWxkQmUoImV2
ZW50Lm5ld1ZlcnNpb24iLCAiNyIpOwogICAgIGV2YWxBbmRMb2coImRiLmNyZWF0ZU9iamVjdFN0
b3JlKCdvYmplY3RzdG9yZScpIik7CiAKICAgICBldmFsQW5kTG9nKCJ0cmFuc2FjdGlvbiA9IGV2
ZW50LnRhcmdldC50cmFuc2FjdGlvbiIpOwogICAgIHRyYW5zYWN0aW9uLm9uYWJvcnQgPSB1bmV4
cGVjdGVkQWJvcnRDYWxsYmFjazsKLSAgICB0cmFuc2FjdGlvbi5vbmNvbXBsZXRlID0gZnVuY3Rp
b24oKSB7Ci0gICAgICAgIGRlYnVnKCIiKTsKLSAgICAgICAgZGVidWcoInRyYW5zYWN0aW9uLm9u
Y29tcGxldGU6Iik7CisgICAgdHJhbnNhY3Rpb24ub25jb21wbGV0ZSA9IGZ1bmN0aW9uIHRyYW5z
YWN0aW9uQ29tcGxldGUoZXZ0KSB7CisgICAgICAgIHByZWFtYmxlKGV2dCk7CiAgICAgICAgIGV2
YWxBbmRMb2coInNhd1RyYW5zYWN0aW9uQ29tcGxldGUgPSB0cnVlIik7CisKKyAgICAgICAgZGVi
dWcoIiIpOworICAgICAgICBkZWJ1ZygiTm93IHRyeSBhbmQgY2xvc2UgdGhlIGRhdGFiYXNlIGFm
dGVyIG9uY29tcGxldGUgYnV0IGJlZm9yZSBvbnN1Y2Nlc3MuIik7CisgICAgICAgIGRlYnVnKCJU
aGlzIHdpbGwgbm90IGhhcHBlbiBpbiBzaW5nbGUgcHJvY2VzcyBwb3J0cy4gSW4gbXVsdGktcHJv
Y2VzcyBwb3J0cyIpOworICAgICAgICBkZWJ1ZygiaXQgbWF5IGFuZCBpcyBmaW5lOyBidXQgZmxh
a3kgY3Jhc2hlcyB3b3VsZCBpbmRpY2F0ZSBhIHJlZ3Jlc3Npb24uIik7CisgICAgICAgIGRlYnVn
KCIiKTsKKwogICAgICAgICBldmFsQW5kTG9nKCJzZXRUaW1lb3V0KGNsb3NlREIsIDApIik7Ci0g
ICAgfQorICAgIH07CiB9CiAKIHZhciBkaWRDYWxsQ2xvc2VEQiA9IGZhbHNlOwordmFyIGRpZEdl
dE9wZW5TdWNjZXNzID0gZmFsc2U7CisKIGZ1bmN0aW9uIGNsb3NlREIoKQogewotICAgIGRlYnVn
KCIiKTsKLSAgICBkZWJ1ZygiY2xvc2VEQigpOiIpOwotICAgIGV2YWxBbmRMb2coImRpZENhbGxD
bG9zZURCID0gdHJ1ZSIpOwotICAgIGV2YWxBbmRMb2coImRiLmNsb3NlKCkiKTsKLSAgICBmaW5p
c2hKU1Rlc3QoKTsKKyAgICBkYi5jbG9zZSgpOworICAgIGRpZENhbGxDbG9zZURCID0gdHJ1ZTsK
KyAgICBjaGVja0ZpbmlzaGVkKCk7CiB9CiAKIGZ1bmN0aW9uIG9wZW5TdWNjZXNzKGV2dCkKIHsK
LSAgICBldmVudCA9IGV2dDsKLSAgICBkZWJ1ZygiIik7Ci0gICAgZGVidWcoIm9wZW5TdWNjZXNz
KCk6Iik7Ci0gICAgc2hvdWxkQmVGYWxzZSgiZGlkQ2FsbENsb3NlREIiKTsKLSAgICBzaG91bGRC
ZVRydWUoInNhd1RyYW5zYWN0aW9uQ29tcGxldGUiKTsKLSAgICBkYiA9IGV2YWxBbmRMb2coImRi
ID0gZXZlbnQudGFyZ2V0LnJlc3VsdCIpOwotICAgIHNob3VsZEJlKCdkYi52ZXJzaW9uJywgIjci
KTsKLSAgICBpZiAoZGIudmVyc2lvbiAhPT0gNykgewotICAgICAgICBmaW5pc2hKU1Rlc3QoKTsK
KyAgICBkaWRHZXRPcGVuU3VjY2VzcyA9IHRydWU7CisKKyAgICB2YXIgcXVpZXQgPSB0cnVlOwor
ICAgIGlmIChkaWRDYWxsQ2xvc2VEQikgeworICAgICAgICBldmFsQW5kRXhwZWN0RXhjZXB0aW9u
KCJkYi50cmFuc2FjdGlvbihkYi5vYmplY3RTdG9yZU5hbWVzKSIsICJET01FeGNlcHRpb24uSU5W
QUxJRF9TVEFURV9FUlIiLCAiJ0ludmFsaWRTdGF0ZUVycm9yJyIsIHF1aWV0KTsKKyAgICB9IGVs
c2UgeworICAgICAgICBldmFsQW5kTG9nKCJkYi50cmFuc2FjdGlvbihkYi5vYmplY3RTdG9yZU5h
bWVzKSIsIHF1aWV0KTsKKyAgICB9CisKKyAgICBjaGVja0ZpbmlzaGVkKCk7Cit9CisKK2Z1bmN0
aW9uIGNoZWNrRmluaXNoZWQoKQoreworICAgIHByZWFtYmxlKCk7CisKKyAgICBpZiAoIWRpZENh
bGxDbG9zZURCIHx8ICFkaWRHZXRPcGVuU3VjY2VzcykgeworICAgICAgICBkZWJ1ZygiTm90IGRv
bmUgeWV0Li4uIik7CiAgICAgICAgIHJldHVybjsKICAgICB9CisKKyAgICBzaG91bGRCZVRydWUo
ImRpZENhbGxDbG9zZURCIik7CisgICAgc2hvdWxkQmVUcnVlKCJzYXdUcmFuc2FjdGlvbkNvbXBs
ZXRlIik7CisgICAgc2hvdWxkQmUoJ2RiLnZlcnNpb24nLCAiNyIpOwogICAgIHNob3VsZEJlKCJk
Yi5vYmplY3RTdG9yZU5hbWVzLmxlbmd0aCIsICIxIik7Ci0gICAgZXZhbEFuZExvZygiZGIudHJh
bnNhY3Rpb24oZGIub2JqZWN0U3RvcmVOYW1lcykiKTsKKworICAgIGZpbmlzaEpTVGVzdCgpOwog
fQogCiB0ZXN0KCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9y
ZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1pbi1vbmNvbXBsZXRlLmpzIGIvTGF5b3V0VGVzdHMv
c3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL2ludHZlcnNpb24tY2xvc2UtaW4tb25jb21wbGV0
ZS5qcwppbmRleCA3ODQ0YTU3ZDRhM2I5MThjMTE4YzFhYzVhY2QwMDk2ODFhMWRjZjk2Li40NWMw
MGEyMzljNjM0ZWNlN2QwMDE1NTcxYjViZWU1NjUzOGFjZmJkIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9yZXNvdXJjZXMvaW50dmVyc2lvbi1jbG9zZS1pbi1vbmNv
bXBsZXRlLmpzCisrKyBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9p
bnR2ZXJzaW9uLWNsb3NlLWluLW9uY29tcGxldGUuanMKQEAgLTIwLDYgKzIwLDcgQEAgZnVuY3Rp
b24gZGVsZXRlU3VjY2VzcyhldnQpIHsKICAgICByZXF1ZXN0Lm9uc3VjY2VzcyA9IG9wZW5TdWNj
ZXNzOwogICAgIHJlcXVlc3Qub251cGdyYWRlbmVlZGVkID0gdXBncmFkZU5lZWRlZDsKICAgICBy
ZXF1ZXN0Lm9uYmxvY2tlZCA9IHVuZXhwZWN0ZWRCbG9ja2VkQ2FsbGJhY2s7CisgICAgcmVxdWVz
dC5vbmVycm9yID0gdW5leHBlY3RlZEVycm9yQ2FsbGJhY2s7CiB9CiAKIHZhciBzYXdUcmFuc2Fj
dGlvbkNvbXBsZXRlID0gZmFsc2U7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9yZXNvdXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzIGIvTGF5b3V0VGVzdHMvc3Rv
cmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL3NldHZlcnNpb24tYmxvY2tlZC5qcwppbmRleCA0NGI3
Zjc0YjAxN2QzZmEwMTUwZjMzZWIyZGQ0N2QyNGM5MjQxYTJmLi4xMTA0OTkyNGM2MzlmZjE0Zjg2
ZDMyMjFkZDlmZTZmMmU1ZmE0Y2RkIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2lu
ZGV4ZWRkYi9yZXNvdXJjZXMvc2V0dmVyc2lvbi1ibG9ja2VkLmpzCisrKyBiL0xheW91dFRlc3Rz
L3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zZXR2ZXJzaW9uLWJsb2NrZWQuanMKQEAgLTMy
LDE4ICszMiw2IEBAIGZ1bmN0aW9uIHRlc3QoKSB7CiAgICAgICAgICAgICAgICAgcHJlYW1ibGUo
ZXZ0KTsKICAgICAgICAgICAgICAgICBkZWJ1Zygib2xkID0gIiArIEpTT04uc3RyaW5naWZ5KGV2
ZW50LnRhcmdldC52ZXJzaW9uKSk7CiAgICAgICAgICAgICAgICAgZGVidWcoIm5ldyA9ICIgKyBK
U09OLnN0cmluZ2lmeShldmVudC52ZXJzaW9uKSk7Ci0KLSAgICAgICAgICAgICAgICBkZWJ1Zygi
c2NoZWR1bGluZyB0aW1lb3V0IHRvIGNsb3NlIGgyIik7Ci0gICAgICAgICAgICAgICAgLy8gVGhp
cyBzZXRUaW1lb3V0KCkgaXMgdXNlZCB0byBtb3ZlIHRoZSBjbG9zZSBjYWxsIG91dHNpZGUgb2Yg
dGhlIGV2ZW50IGRpc3BhdGNoCi0gICAgICAgICAgICAgICAgLy8gY2FsbGJhY2suIFBlciBzcGVj
LCBhIGJsb2NrZWQgZXZlbnQgc2hvdWxkIG9ubHkgZmlyZSBpZiBjb25uZWN0aW9ucyBhcmUgc3Rp
bGwKLSAgICAgICAgICAgICAgICAvLyBvcGVuIGFmdGVyIHRoZSB2ZXJzaW9uY2hhbmdlIGV2ZW50
IGRpc3BhdGNoIGlzIGNvbXBsZXRlLgotICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBUaGVyZSBp
cyBwb3RlbnRpYWwgZm9yIHRlc3QgZmxha2luZXNzIGluIHRoZSB0aW1pbmcgYmV0d2VlbiB3aGVu
IHRoZQotICAgICAgICAgICAgICAgIC8vIHRpbWVvdXQgcnVucyBhbmQgd2hlbiB0aGUgYmxvY2tl
ZCBldmVudCBpcyBkaXNwYXRjaGVkLiBNb3ZlIHRoZSBjbG9zZSBjYWxsCi0gICAgICAgICAgICAg
ICAgLy8gaW50byBvciBhZnRlciB0aGUgYmxvY2tlZCBldmVudCBoYW5kbGVyLgotICAgICAgICAg
ICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gdGltZW91dENhbGxiYWNrKCkgewotICAgICAgICAg
ICAgICAgICAgICBwcmVhbWJsZSgpOwotICAgICAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJo
Mi5jbG9zZSgpIik7Ci0gICAgICAgICAgICAgICAgfSwgMCk7CiAgICAgICAgICAgICB9OwogCiAg
ICAgICAgICAgICByZXF1ZXN0ID0gZXZhbEFuZExvZygiaDEuc2V0VmVyc2lvbihTdHJpbmcodmVy
KyspKSIpOwpAQCAtNTEsNiArMzksNyBAQCBmdW5jdGlvbiB0ZXN0KCkgewogICAgICAgICAgICAg
cmVxdWVzdC5vbmJsb2NrZWQgPSBmdW5jdGlvbiBoMVNldFZlcnNpb25PbkJsb2NrZWQoZXZ0KSB7
CiAgICAgICAgICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKICAgICAgICAgICAgICAgICBldmFsQW5k
TG9nKCJibG9ja2VkRXZlbnRGaXJlZCA9IHRydWUiKTsKKyAgICAgICAgICAgICAgICBldmFsQW5k
TG9nKCJoMi5jbG9zZSgpIik7CiAgICAgICAgICAgICB9OwogICAgICAgICAgICAgcmVxdWVzdC5v
bnN1Y2Nlc3MgPSBmdW5jdGlvbiBoMVNldFZlcnNpb25PblN1Y2Nlc3MoZXZ0KSB7CiAgICAgICAg
ICAgICAgICAgcHJlYW1ibGUoZXZ0KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL3Jlc291cmNlcy9zaGFyZWQuanMgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4
ZWRkYi9yZXNvdXJjZXMvc2hhcmVkLmpzCmluZGV4IGI4MDE0M2JmN2RiZDU2NzI1ZDZiOTI1MThj
N2U1Y2U4YmY2YzE1MDUuLmFiMDg2NGZhNmRhYmY0MzE2ZjI0ODY1YzY0NTIwNDg2ZTI4MzU5YzMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3Jlc291cmNlcy9zaGFy
ZWQuanMKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvcmVzb3VyY2VzL3NoYXJl
ZC5qcwpAQCAtODIsMTkgKzgyLDIxIEBAIGZ1bmN0aW9uIHVuZXhwZWN0ZWRWZXJzaW9uQ2hhbmdl
Q2FsbGJhY2soKQogICAgIGZpbmlzaEpTVGVzdCgpOwogfQogCi1mdW5jdGlvbiBldmFsQW5kRXhw
ZWN0RXhjZXB0aW9uKGNtZCwgZXhjZXB0aW9uQ29kZSwgZXhjZXB0aW9uTmFtZSkKK2Z1bmN0aW9u
IGV2YWxBbmRFeHBlY3RFeGNlcHRpb24oY21kLCBleGNlcHRpb25Db2RlLCBleGNlcHRpb25OYW1l
LCBfcXVpZXQpCiB7Ci0gICAgZGVidWcoIkV4cGVjdGluZyBleGNlcHRpb24gZnJvbSAiICsgY21k
KTsKKyAgICBpZiAoIV9xdWlldCkKKyAgICAgICAgZGVidWcoIkV4cGVjdGluZyBleGNlcHRpb24g
ZnJvbSAiICsgY21kKTsKICAgICB0cnkgewogICAgICAgICBldmFsKGNtZCk7CiAgICAgICAgIHRl
c3RGYWlsZWQoIk5vIGV4Y2VwdGlvbiB0aHJvd24hIFNob3VsZCBoYXZlIGJlZW4gIiArIGV4Y2Vw
dGlvbkNvZGUpOwogICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgY29kZSA9IGUuY29kZTsKLSAg
ICAgICAgdGVzdFBhc3NlZCgiRXhjZXB0aW9uIHdhcyB0aHJvd24uIik7Ci0gICAgICAgIHNob3Vs
ZEJlKCJjb2RlIiwgZXhjZXB0aW9uQ29kZSk7CisgICAgICAgIGlmICghX3F1aWV0KQorICAgICAg
ICAgICAgdGVzdFBhc3NlZCgiRXhjZXB0aW9uIHdhcyB0aHJvd24uIik7CisgICAgICAgIHNob3Vs
ZEJlKCJjb2RlIiwgZXhjZXB0aW9uQ29kZSwgX3F1aWV0KTsKICAgICAgICAgaWYgKGV4Y2VwdGlv
bk5hbWUpIHsKICAgICAgICAgICAgIGVuYW1lID0gZS5uYW1lOwotICAgICAgICAgICAgc2hvdWxk
QmUoImVuYW1lIiwgZXhjZXB0aW9uTmFtZSk7CisgICAgICAgICAgICBzaG91bGRCZSgiZW5hbWUi
LCBleGNlcHRpb25OYW1lLCBfcXVpZXQpOwogICAgICAgICB9CiAgICAgfQogfQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lvbi1ibG9ja2VkLWV4cGVj
dGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL3NldHZlcnNpb24tYmxvY2tl
ZC1leHBlY3RlZC50eHQKaW5kZXggNDRlYjUxYTRiNTU3NjUzZGVhZDI4YTNkZDAwNWZiZWE1YmIz
NDAyMi4uZTA5ZTdkZDFjZDIyZDhlMTA0MGExODY4NmE5MjIyNzZmMjUwMjc5NSAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvc2V0dmVyc2lvbi1ibG9ja2VkLWV4cGVj
dGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9zZXR2ZXJzaW9uLWJs
b2NrZWQtZXhwZWN0ZWQudHh0CkBAIC0yMiwxMiArMjIsOSBAQCBoMS5zZXRWZXJzaW9uKFN0cmlu
Zyh2ZXIrKykpCiBoMk9uVmVyc2lvbkNoYW5nZSgpOgogb2xkID0gMQogbmV3ID0gIjEiCi1zY2hl
ZHVsaW5nIHRpbWVvdXQgdG8gY2xvc2UgaDIKIAogaDFTZXRWZXJzaW9uT25CbG9ja2VkKCk6CiBi
bG9ja2VkRXZlbnRGaXJlZCA9IHRydWUKLQotdGltZW91dENhbGxiYWNrKCk6CiBoMi5jbG9zZSgp
CiAKIGgxU2V0VmVyc2lvbk9uU3VjY2VzcygpOgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>