<?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>104346</bug_id>
          
          <creation_ts>2012-12-06 23:27:45 -0800</creation_ts>
          <short_desc>[Shadow DOM] registering InsertionPoints to ShadowRoot should work out of document tree.</short_desc>
          <delta_ts>2012-12-11 23:23:39 -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>DOM</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>
          
          <blocked>104218</blocked>
    
    <blocked>104345</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Shinya Kawanaka">shinyak</reporter>
          <assigned_to name="Shinya Kawanaka">shinyak</assigned_to>
          <cc>ojan.autocc</cc>
    
    <cc>webcomponents-bugzilla</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>785674</commentid>
    <comment_count>0</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-06 23:27:45 -0800</bug_when>
    <thetext>Since they are not working out of document tree, ensureDistribution() out of document tree also does not work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785691</commentid>
    <comment_count>1</comment_count>
      <attachid>178169</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-07 00:12:01 -0800</bug_when>
    <thetext>Created attachment 178169
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785694</commentid>
    <comment_count>2</comment_count>
      <attachid>178170</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-07 00:17:27 -0800</bug_when>
    <thetext>Created attachment 178170
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785723</commentid>
    <comment_count>3</comment_count>
      <attachid>178170</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-07 01:07:48 -0800</bug_when>
    <thetext>Comment on attachment 178170
Patch

I found this is wrong.
removedFrom() can be called many times (from different TreeScope).
We have to check treeScope() when unregistering InsertionPoints.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785732</commentid>
    <comment_count>4</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-07 01:18:39 -0800</bug_when>
    <thetext>We also have to add some ASSERT that the same InsertionPoint is not registered many times. Maybe checking treeScope() only is not enough.

This is a bit complicated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>785735</commentid>
    <comment_count>5</comment_count>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-07 01:20:10 -0800</bug_when>
    <thetext>We also have to add insertedInto/removedFrom are called many times.
It might be worth considering we introduce isInShadowTree flag in InsertionPoint...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789142</commentid>
    <comment_count>6</comment_count>
      <attachid>178954</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-11 20:37:39 -0800</bug_when>
    <thetext>Created attachment 178954
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789223</commentid>
    <comment_count>7</comment_count>
      <attachid>178954</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-12-11 22:42:17 -0800</bug_when>
    <thetext>Comment on attachment 178954
Patch

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

&gt; Source/WebCore/ChangeLog:9
&gt; +        out of Document, too. Instead of checking isInDocument(), we have to check InsertionPoint and

nit: &quot;check if&quot; or &quot;make sure&quot; or something? For this explanation,  you can center when the registration happens.

&gt; Source/WebCore/html/shadow/InsertionPoint.cpp:130
&gt; +        if (isActive() &amp;&amp; !m_registeredWithShadowRoot &amp;&amp; insertionPoint-&gt;treeScope() == treeScope()) {

Nit: root == treeScope()? In that case, It&apos;d better use root instead of treeScope() for comparison here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789225</commentid>
    <comment_count>8</comment_count>
      <attachid>178972</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-11 22:49:23 -0800</bug_when>
    <thetext>Created attachment 178972
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789226</commentid>
    <comment_count>9</comment_count>
      <attachid>178972</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-11 22:52:13 -0800</bug_when>
    <thetext>Comment on attachment 178972
Patch for landing

Rejecting attachment 178972 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:
 rejects to file LayoutTests/fast/dom/shadow/has-content-elements.html.rej
patching file LayoutTests/fast/dom/shadow/has-shadow-insertion-point-expected.txt
patching file LayoutTests/fast/dom/shadow/has-shadow-insertion-point.html
Hunk #1 FAILED at 11.
1 out of 1 hunk FAILED -- saving rejects to file LayoutTests/fast/dom/shadow/has-shadow-insertion-point.html.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/15285169</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789233</commentid>
    <comment_count>10</comment_count>
      <attachid>178974</attachid>
    <who name="Shinya Kawanaka">shinyak</who>
    <bug_when>2012-12-11 23:04:24 -0800</bug_when>
    <thetext>Created attachment 178974
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789239</commentid>
    <comment_count>11</comment_count>
      <attachid>178974</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-11 23:23:35 -0800</bug_when>
    <thetext>Comment on attachment 178974
Patch for landing

Clearing flags on attachment: 178974

Committed r137421: &lt;http://trac.webkit.org/changeset/137421&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>789240</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-11 23:23:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178169</attachid>
            <date>2012-12-07 00:12:01 -0800</date>
            <delta_ts>2012-12-07 00:17:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104346-20121207170924.patch</filename>
            <type>text/plain</type>
            <size>18802</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2OTE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzc3NTdiMjEzZTk2YTdm
YzY0N2M2ZGZmYTRjNjA0MWQxZmM2NGVhZi4uYzJkMzA5YWIwYTU1NGY1NTlkNzVmZjVkNzU5NTQ3
NmU3MTY5NmIxMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTEyLTA3ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZSBuZWVkIHRvIHJlZ2lzdGVyIEluc2VydGlvblBvaW50cyBldmVuIGlmIFNo
YWRvd1Jvb3QgaXMgb3V0IG9mIERvY3VtZW50LCBzaW5jZSBkaXN0cmlidXRpb24gc2hvdWxkIHdv
cmsKKyAgICAgICAgb3V0IG9mIERvY3VtZW50LCB0b28uCisKKyAgICAgICAgVGVzdHM6IGZhc3Qv
ZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCisgICAgICAgICAgICAgICBmYXN0
L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbAorCisgICAgICAgICog
aHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvKTogUmVtb3ZlZCBpbkRvY3VtZW50KCkuCisg
ICAgICAgIChXZWJDb3JlOjpIVE1MQ29udGVudEVsZW1lbnQ6OnJlbW92ZWRGcm9tKTogZGl0dG8u
CisgICAgICAgICogaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFNoYWRvd0VsZW1lbnQ6Omluc2VydGVkSW50byk6IGRpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFNoYWRvd0VsZW1lbnQ6OnJlbW92ZWRGcm9tKTogZGl0dG8uCisKIDIw
MTItMTItMDYgIFJpY2sgQnllcnMgIDxyYnllcnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENT
UyBjdXJzb3IgcHJvcGVydHkgc2hvdWxkIHN1cHBvcnQgd2Via2l0LWltYWdlLXNldApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxDb250ZW50RWxlbWVudC5jcHAKaW5kZXgg
YTI1ZDEzMjUxYTNmYWQ5YmNkNGQ2NTZmN2I2MWFkNjZjY2Q5M2Q0Yy4uMzA5YTZiNWIyZjM2NmJi
NTFmYWRkMGM1NjcyZjgyZjE4MDc3ZTI5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRt
bC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuY3BwCkBAIC0xMTQsNyArMTE0LDcgQEAgTm9kZTo6
SW5zZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBIVE1MQ29udGVudEVsZW1lbnQ6Omluc2VydGVk
SW50byhDb250YWluZXJOb2QKIHsKICAgICBJbnNlcnRpb25Qb2ludDo6aW5zZXJ0ZWRJbnRvKGlu
c2VydGlvblBvaW50KTsKIAotICAgIGlmIChpbnNlcnRpb25Qb2ludC0+aW5Eb2N1bWVudCgpICYm
IGlzQWN0aXZlKCkpIHsKKyAgICBpZiAoaXNBY3RpdmUoKSkgewogICAgICAgICBTaGFkb3dSb290
KiByb290ID0gc2hhZG93Um9vdCgpOwogICAgICAgICByb290LT5yZWdpc3RlckNvbnRlbnRFbGVt
ZW50KCk7CiAgICAgICAgIHJvb3QtPm93bmVyKCktPnNldFNob3VsZENvbGxlY3RTZWxlY3RGZWF0
dXJlU2V0KCk7CkBAIC0xMjYsNyArMTI2LDcgQEAgTm9kZTo6SW5zZXJ0aW9uTm90aWZpY2F0aW9u
UmVxdWVzdCBIVE1MQ29udGVudEVsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2QKIAog
dm9pZCBIVE1MQ29udGVudEVsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2Vy
dGlvblBvaW50KQogewotICAgIGlmIChpbnNlcnRpb25Qb2ludC0+aW5Eb2N1bWVudCgpICYmIG1f
cmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290KSB7CisgICAgaWYgKG1fcmVnaXN0ZXJlZFdpdGhTaGFk
b3dSb290KSB7CiAgICAgICAgIFNoYWRvd1Jvb3QqIHJvb3QgPSBzaGFkb3dSb290KCk7CiAgICAg
ICAgIGlmICghcm9vdCkKICAgICAgICAgICAgIHJvb3QgPSBpbnNlcnRpb25Qb2ludC0+c2hhZG93
Um9vdCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRv
d0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1l
bnQuY3BwCmluZGV4IGRhMThiYThlYWU1ZTRiMjRmZTVhZmM2NjQ5NzllNmIyZDVhNTk2NGQuLjc0
YmMwY2U5ZDViNzIxZWM0ZWEwYzI0Y2RjNGM5OGUzNWUyMzkyYjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hhZG93RWxlbWVudC5jcHAKQEAgLTY0LDcgKzY0LDcg
QEAgTm9kZTo6SW5zZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBIVE1MU2hhZG93RWxlbWVudDo6
aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUKIHsKICAgICBJbnNlcnRpb25Qb2ludDo6aW5zZXJ0
ZWRJbnRvKGluc2VydGlvblBvaW50KTsKIAotICAgIGlmIChpbnNlcnRpb25Qb2ludC0+aW5Eb2N1
bWVudCgpICYmIGlzQWN0aXZlKCkpIHsKKyAgICBpZiAoaXNBY3RpdmUoKSkgewogICAgICAgICBp
ZiAoU2hhZG93Um9vdCogcm9vdCA9IHNoYWRvd1Jvb3QoKSkgewogICAgICAgICAgICAgcm9vdC0+
cmVnaXN0ZXJTaGFkb3dFbGVtZW50KCk7CiAgICAgICAgICAgICBtX3JlZ2lzdGVyZWRXaXRoU2hh
ZG93Um9vdCA9IHRydWU7CkBAIC03Niw3ICs3Niw3IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNh
dGlvblJlcXVlc3QgSFRNTFNoYWRvd0VsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2Rl
CiAKIHZvaWQgSFRNTFNoYWRvd0VsZW1lbnQ6OnJlbW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGlu
c2VydGlvblBvaW50KQogewotICAgIGlmIChpbnNlcnRpb25Qb2ludC0+aW5Eb2N1bWVudCgpICYm
IG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290KSB7CisgICAgaWYgKG1fcmVnaXN0ZXJlZFdpdGhT
aGFkb3dSb290KSB7CiAgICAgICAgIFNoYWRvd1Jvb3QqIHJvb3QgPSBzaGFkb3dSb290KCk7CiAg
ICAgICAgIGlmICghcm9vdCkKICAgICAgICAgICAgIHJvb3QgPSBpbnNlcnRpb25Qb2ludC0+c2hh
ZG93Um9vdCgpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCmluZGV4IDIzMzIyOTZiYzBlMDgzMjA1NTFiNmMxMzFiZGExOWRjOWYwMjlk
M2UuLjI2N2QzYjkzNzUzOWQ2MDJkNWQ1MWY3NzllYjNkN2ZhYzkyNTAxNDAgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNyBAQAorMjAxMi0xMi0wNyAgU2hpbnlhIEthd2FuYWthICA8c2hpbnlha0BjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgW1NoYWRvdyBET01dIHJlZ2lzdGVyaW5nIEluc2VydGlvblBvaW50
cyB0byBTaGFkb3dSb290IHNob3VsZCB3b3JrIG91dCBvZiBhIGRvY3VtZW50LgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MzQ2CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgb3V0LW9mLURvY3Vt
ZW50IHZlcnNpb24gdGVzdHMuCisKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRl
bnQtZWxlbWVudHMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9oYXMt
Y29udGVudC1lbGVtZW50cy5odG1sOgorICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9oYXMtc2hh
ZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vc2hh
ZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWw6CisKIDIwMTItMTItMDYgIFJpY2sg
QnllcnMgIDxyYnllcnNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENTUyBjdXJzb3IgcHJvcGVy
dHkgc2hvdWxkIHN1cHBvcnQgd2Via2l0LWltYWdlLXNldApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50
eHQKaW5kZXggNzM0MDczN2ZlYzAwNGFiN2RiNmQ5MTY4MGFkNGVjMmFhMmFhYjg1Yy4uOTFmZmEy
MTkxMTFiNjMyNTI2YzFmODk2YjQwM2YxOWEwZmMyODc5YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dAorKysg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMtZXhwZWN0
ZWQudHh0CkBAIC0xLDUgKzEsMjQgQEAKLVRlc3QgZm9yIEJ1ZyAxMDA5MjE6IGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA5MjEgLSBbU2hhZG93XSBTaGFkb3dSb290
IHNob3VsZCBiZSBhYmxlIHRvIGtub3cgdGhlIGV4aXN0ZW5jZSBvZiA8Y29udGVudD4KK1Rlc3Qg
Zm9yIEJ1ZyAxMDA5MjEgYW5kIDEwNDM0NjogSFRNTENvbnRlbnRFbGVtZW50IHNob3VsZCBiZSBy
ZWdpc3RlcmVkIGNvcnJlY3RseS4KIAorSW4gdGhlIGNhc2UgaG9zdCBpcyBpbiBkb2N1bWVudAor
UEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BB
U1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1Mg
aW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRl
cm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxz
Lmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhh
c0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXND
b250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QxKSBpcyB0cnVlCitQQVNTIGludGVybmFscy5o
YXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QyKSBpcyB0cnVlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFz
Q29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIHRydWUKK0luIHRoZSBj
YXNlIGhvc3QgaXMgbm90IGluIGRvY3VtZW50CiBQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1l
bnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkgaXMgZmFsc2UKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3No
YWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLmh0bWwKaW5kZXggZjYxNTFlMjhjMzA0NDk0MDdmMDhh
ZDEwMTJiZDQ5Njg4YWEyODEyNS4uYjE1ZDQxYmY2NTlhYmIzMjI5NTE2NGI0MTAxN2M5ODhkZTc1
MjVkMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50
LWVsZW1lbnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250
ZW50LWVsZW1lbnRzLmh0bWwKQEAgLTEyLDY2ICsxMiw3OSBAQCBlbHNlIGlmICghd2luZG93Lmlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudCkKIDwvaGVhZD4KIDxib2R5PgogCi08cD5UZXN0IGZv
ciBCdWcgMTAwOTIxOiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAwOTIxIj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAw
OTIxPC9hPiAtIFtTaGFkb3ddIFNoYWRvd1Jvb3Qgc2hvdWxkIGJlIGFibGUgdG8ga25vdyB0aGUg
ZXhpc3RlbmNlIG9mICZsdDtjb250ZW50Jmd0OzwvcD4KKzxwPlRlc3QgZm9yIEJ1ZyA8YSBocmVm
PSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwOTIxIj4xMDA5MjE8
L2E+IGFuZCA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTA0MzQ2Ij4xMDQzNDY8L2E+OiBIVE1MQ29udGVudEVsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVy
ZWQgY29ycmVjdGx5LjwvcD4KIAotPGRpdiBpZD0iaG9zdCI+PC9kaXY+Cis8ZGl2IGlkPSJ3cmFw
cGVyIj48L2Rpdj4KIDxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgogCiA8c2NyaXB0PgotdmFyIGhv
c3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaG9zdCIpOwotdmFyIHNoYWRvd1Jvb3QgPSBu
ZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2Z1bmN0aW9uIGRvVGVzdCgpIHsKKyAgICBzaG91
bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKwor
ICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBkaXYuYXBw
ZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29udGVudCIpKTsKKyAgICBzaGFkb3dS
b290LmFwcGVuZENoaWxkKGRpdik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LnJlbW92ZUNo
aWxkKGRpdik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj5O
byBJbnNlcnRpb24gUG9pbnRzPC9kaXY+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290Lmlu
bmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKKyAgICBzaG91bGRCZVRydWUoImludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIHNoYWRvd1Jv
b3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJp
bnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFk
b3dSb290LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9k
aXY+PC9kaXY+PC9kaXY+IjsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIC8vIENhc2UgZm9yIG5lc3RlZCBzaGFk
b3cgc3VidHJlZQorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gJzxkaXY+aW4gc2hhZG93IHJv
b3Q8L2Rpdj4nOworICAgIHZhciBpbm5lckRpdjEgPSBzaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3Io
J2RpdicpOworICAgIGlubmVyU2hhZG93Um9vdDEgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5l
ckRpdjEpOworICAgIGlubmVyU2hhZG93Um9vdDEuaW5uZXJIVE1MID0gIjxkaXY+PGNvbnRlbnQ+
PC9jb250ZW50PjwvZGl2PiI7CisgICAgdmFyIGlubmVyRGl2MiA9IGlubmVyU2hhZG93Um9vdDEu
cXVlcnlTZWxlY3RvcignZGl2Jyk7CisgICAgaW5uZXJTaGFkb3dSb290MiA9IG5ldyBXZWJLaXRT
aGFkb3dSb290KGlubmVyRGl2Mik7CisgICAgaW5uZXJTaGFkb3dSb290Mi5pbm5lckhUTUwgPSAi
PGRpdj48Y29udGVudCB0aXRsZT0nZGVidWdzdG9wJz48L2NvbnRlbnQ+PC9kaXY+IjsKKyAgICAK
KyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9v
dCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChpbm5l
clNoYWRvd1Jvb3QxKSIpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KGlubmVyU2hhZG93Um9vdDIpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAi
PGRpdj48L2Rpdj4iOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIC8vIENhc2UgZm9yIG11bHRpcGxlIHNoYWRv
dyBzdWJ0cmVlcworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxj
b250ZW50PjwvY29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOworICAgIHlvdW5nZXJTaGFkb3dS
b290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7CisgICAgLy8gTW9kaWZ5aW5nIG9sZGVy
IHNoYWRvdyByb290IG9yIHlvdW5nZXIgc2hhZG93IHJvb3QgZG9lc24ndCBhZmZlY3QgdGhlIG90
aGVyLgorICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRv
d1Jvb3QpIik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHlvdW5nZXJTaGFkb3dSb290KSIpOworICAgIAorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0g
IjxzaGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgeW91bmdl
clNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOworICAgIHNob3Vs
ZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAg
IHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJTaGFkb3dS
b290KSIpOworfQorCitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBpbiBkb2N1bWVudCcpOwor
aG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOword3JhcHBlci5hcHBlbmRDaGls
ZChob3N0KTsKK3NoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2RvVGVz
dCgpOword3JhcHBlci5pbm5lckhUTUwgPSAiIjsKKworZGVidWcoJ0luIHRoZSBjYXNlIGhvc3Qg
aXMgbm90IGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2
Jyk7CitzaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Citkb1Rlc3QoKTsK
K3dyYXBwZXIuaW5uZXJIVE1MID0gIiI7CiAKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXND
b250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotCi12YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgiZGl2Iik7Ci1kaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgi
Y29udGVudCIpKTsKLXNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKLXNob3VsZEJlVHJ1ZSgi
aW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3Qu
cmVtb3ZlQ2hpbGQoZGl2KTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2Pk5vIElu
c2VydGlvbiBQb2ludHM8L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRl
bnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250
ZW50PjwvY29udGVudD4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1l
bnQoc2hhZG93Um9vdCkiKTsKLQotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3No
YWRvdz4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRv
d1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxjb250
ZW50PjwvY29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQotLy8gQ2FzZSBmb3IgbmVzdGVk
IHNoYWRvdyBzdWJ0cmVlCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICc8ZGl2PmluIHNoYWRvdyBy
b290PC9kaXY+JzsKLXZhciBpbm5lckRpdjEgPSBzaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ2Rp
dicpOwotdmFyIGlubmVyU2hhZG93Um9vdDEgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRp
djEpOwotaW5uZXJTaGFkb3dSb290MS5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudD48L2NvbnRl
bnQ+PC9kaXY+IjsKLXZhciBpbm5lckRpdjIgPSBpbm5lclNoYWRvd1Jvb3QxLnF1ZXJ5U2VsZWN0
b3IoJ2RpdicpOwotdmFyIGlubmVyU2hhZG93Um9vdDIgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChp
bm5lckRpdjIpOwotaW5uZXJTaGFkb3dSb290Mi5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudCB0
aXRsZT0nZGVidWdzdG9wJz48L2NvbnRlbnQ+PC9kaXY+IjsKLQotc2hvdWxkQmVGYWxzZSgiaW50
ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QxKSIpOwotc2hvdWxkQmVU
cnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFkb3dSb290MikiKTsKLXNo
YWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PC9kaXY+IjsKLXNob3VsZEJlRmFsc2UoImludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotCi0vLyBDYXNlIGZvciBtdWx0
aXBsZSBzaGFkb3cgc3VidHJlZXMKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48
ZGl2Pjxjb250ZW50PjwvY29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOwotdmFyIHlvdW5nZXJT
aGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Ci0vLyBNb2RpZnlpbmcgb2xk
ZXIgc2hhZG93IHJvb3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUg
b3RoZXIuCi1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSIpOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5n
ZXJTaGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hh
ZG93PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93
Um9vdCkiKTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3Vu
Z2VyU2hhZG93Um9vdCkiKTsKLQoteW91bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250
ZW50PjwvY29udGVudD4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVt
ZW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxl
bWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKIDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4u
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBv
aW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93
LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQKaW5kZXggZGM0YTE2Yjc1NzhhYjRkNTFkNmE2
MzA3MDI1OWI0ODVlZWM0ZmUxMC4uMDk5YTBkNzY4YjlhMjU1YTEyODAxNmE4ZTBkY2QxNTk5Mzll
NTY3MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ct
aW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9z
aGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEs
MjAgQEAKK1Rlc3QgZm9yIEJ1ZyA5NzE4NCBhbmQgMTA0MzQ2IDogSFRNTFNoYWRvd0VsZW1lbnQg
c2hvdWxkIGJlIHJlZ2lzdGVyZWQgY29ycmVjdGx5LgorCitJbiB0aGUgY2FzZSBob3N0IGlzIGlu
IGRvY3VtZW50CitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dS
b290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hh
ZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
c2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBv
aW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRp
b25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5z
ZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93
SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hh
ZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFz
U2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGlu
dGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFT
UyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlz
IGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290
KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdl
clNoYWRvd1Jvb3QpIGlzIHRydWUKK0luIHRoZSBjYXNlIGhvc3QgaXMgbm90IGluIGRvY3VtZW50
CiBQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBm
YWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkg
aXMgdHJ1ZQogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9v
dCkgaXMgZmFsc2UKQEAgLTE0LDUgKzMxLDQgQEAgUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5z
ZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIHRydWUKIFBBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQotVGVzdCBmb3IgQnVnIDk3MTg0OiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcxODQgLSBbU2hhZG93XSBTaGFk
b3dSb290IHNob3VsZCBrbm93IHdoZXRoZXIgPHNoYWRvdz4gaW4gaXRzIHRyZWVzY29wZQogCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRp
b24tcG9pbnQuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWlu
c2VydGlvbi1wb2ludC5odG1sCmluZGV4IDk4NjcwMmI5MmJhOGNiZjUzNTk0ZWU3NTQ4YTBiZDEx
ZDdiOTQxNjcuLjdiMWMyMTk3M2FkMDM0MzYwZjFhNTFkOWNkZGVjNTYyODNmMmVmZTkgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1w
b2ludC5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWlu
c2VydGlvbi1wb2ludC5odG1sCkBAIC0xMSw0OSArMTEsNjMgQEAgZWxzZSBpZiAoIXdpbmRvdy5p
bnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQpCiA8L3NjcmlwdD4KIDwvaGVhZD4KIDxi
b2R5PgotICA8c3Bhbj5UZXN0IGZvciBCdWcgOTcxODQ6IDxhIGhyZWY9Imh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NCI+aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTk3MTg0PC9hPiAtCi0gICAgW1NoYWRvd10gU2hhZG93Um9vdCBzaG91
bGQga25vdyB3aGV0aGVyICZsdDtzaGFkb3cmZ3Q7IGluIGl0cyB0cmVlc2NvcGUKLSAgPC9zcGFu
PgotICA8ZGl2IGlkPSJob3N0Ij48L2Rpdj4KKworPHA+VGVzdCBmb3IgQnVnIDxhIGhyZWY9Imh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NCI+OTcxODQ8L2E+IGFu
ZCA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MzQ2
Ij4xMDQzNDY8L2E+IDogSFRNTFNoYWRvd0VsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgY29y
cmVjdGx5LjwvcD4KKworPGRpdiBpZD0id3JhcHBlciI+PC9kaXY+Cis8cHJlIGlkPSJjb25zb2xl
Ij48L3ByZT4KIAogPHNjcmlwdD4KLXZhciBob3N0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQo
Imhvc3QiKTsKLXZhciBzaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Citm
dW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisKKyAgICB2YXIgZGl2ID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiZGl2Iik7CisgICAgZGl2LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoInNoYWRvdyIpKTsKKyAgICBzaGFkb3dSb290LmFwcGVuZENoaWxkKGRpdik7Cisg
ICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93
Um9vdCkiKTsKKworICAgIHNoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2KTsKKyAgICBzaG91bGRC
ZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsK
IAotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRv
d1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj5ObyBJbnNlcnRpb24g
UG9pbnRzPC9kaXY+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5z
ZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKIAotdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImRpdiIpOwotZGl2LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNo
YWRvdyIpKTsKLXNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKLXNob3VsZEJlVHJ1ZSgiaW50
ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93
Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7CisgICAgc2hvdWxkQmVGYWxz
ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNo
YWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2KTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNT
aGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJI
VE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOwogCi1zaGFkb3dSb290LmlubmVy
SFRNTCA9ICI8ZGl2Pk5vIEluc2VydGlvbiBQb2ludHM8L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgi
aW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hh
ZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2PjxkaXY+PHNoYWRvdz48L3NoYWRvdz48L2Rp
dj48L2Rpdj48L2Rpdj4iOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0lu
c2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxj
b250ZW50PjwvY29udGVudD4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0lu
c2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcg
V2ViS2l0U2hhZG93Um9vdChob3N0KTsKKyAgICAvLyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJv
b3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3RoZXIuCisgICAg
c2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9v
dCkiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9p
bnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFk
b3c+PC9zaGFkb3c+IjsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRl
bnQ+PC9jb250ZW50PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0lu
c2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwogCi1zaGFkb3dS
b290LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48c2hhZG93Pjwvc2hhZG93PjwvZGl2Pjwv
ZGl2PjwvZGl2PiI7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSIpOworICAgIHlvdW5nZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8
c2hhZG93Pjwvc2hhZG93PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5h
bHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7Cit9CiAKLXZh
ciB5b3VuZ2VyU2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOwotLy8gTW9k
aWZ5aW5nIG9sZGVyIHNoYWRvdyByb290IG9yIHlvdW5nZXIgc2hhZG93IHJvb3QgZG9lc24ndCBh
ZmZlY3QgdGhlIG90aGVyLgotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0
aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK2RlYnVnKCdJbiB0aGUgY2Fz
ZSBob3N0IGlzIGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
ZGl2Jyk7Cit3cmFwcGVyLmFwcGVuZENoaWxkKGhvc3QpOworc2hhZG93Um9vdCA9IG5ldyBXZWJL
aXRTaGFkb3dSb290KGhvc3QpOworZG9UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOwog
Ci1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKLXNob3VsZEJl
RmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOwot
c2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJT
aGFkb3dSb290KSIpOworZGVidWcoJ0luIHRoZSBjYXNlIGhvc3QgaXMgbm90IGluIGRvY3VtZW50
Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CitzaGFkb3dSb290ID0g
bmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Citkb1Rlc3QoKTsKK3dyYXBwZXIuaW5uZXJIVE1M
ID0gIiI7CiAKLXlvdW5nZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93
PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hh
ZG93Um9vdCkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBv
aW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4v
anMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178170</attachid>
            <date>2012-12-07 00:17:27 -0800</date>
            <delta_ts>2012-12-11 20:37:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104346-20121207171451.patch</filename>
            <type>text/plain</type>
            <size>18890</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2OTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzkyZTBmOTQyNmYwMjJi
ZjU5M2EyOGIxYTVmY2EzZDc3NmM5MDVhMi4uMjdkY2ZlMjkxY2NkOWVhNzFiZGYxMGI2MzU4MGM4
YTgzN2IzNTM1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTEyLTA3ICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZSBuZWVkIHRvIHJlZ2lzdGVyIEluc2VydGlvblBvaW50cyBldmVuIGlmIFNo
YWRvd1Jvb3QgaXMgb3V0IG9mIERvY3VtZW50LCBzaW5jZSBkaXN0cmlidXRpb24gc2hvdWxkIHdv
cmsKKyAgICAgICAgb3V0IG9mIERvY3VtZW50LCB0b28uCisKKyAgICAgICAgVGVzdHM6IGZhc3Qv
ZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCisgICAgICAgICAgICAgICBmYXN0
L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbAorCisgICAgICAgICog
aHRtbC9zaGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvKTogUmVtb3ZlZCBpbkRvY3VtZW50KCkuCisg
ICAgICAgIChXZWJDb3JlOjpIVE1MQ29udGVudEVsZW1lbnQ6OnJlbW92ZWRGcm9tKTogZGl0dG8u
CisgICAgICAgICogaHRtbC9zaGFkb3cvSFRNTFNoYWRvd0VsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFNoYWRvd0VsZW1lbnQ6Omluc2VydGVkSW50byk6IGRpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTFNoYWRvd0VsZW1lbnQ6OnJlbW92ZWRGcm9tKTogZGl0dG8uCisKIDIw
MTItMTItMDYgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJl
ZmFjdG9yaW5nOiBDbGVhbiB1cCBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgdXNhZ2UKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxDb250ZW50RWxlbWVudC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MQ29udGVudEVsZW1lbnQuY3BwCmluZGV4IDZm
YWU3MmU5ZjZhZTIyZTFmNmJiOGNjYTk1MWQxYmU3NWEwODQ2YmQuLmFhNmMxMzQzNzlkNzFiY2Uw
ODJkOTEwOTljNzc3YjdiMjgxOTA4OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0hUTUxDb250ZW50RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvSFRNTENvbnRlbnRFbGVtZW50LmNwcApAQCAtMTE0LDcgKzExNCw3IEBAIE5vZGU6Oklu
c2VydGlvbk5vdGlmaWNhdGlvblJlcXVlc3QgSFRNTENvbnRlbnRFbGVtZW50OjppbnNlcnRlZElu
dG8oQ29udGFpbmVyTm9kCiB7CiAgICAgSW5zZXJ0aW9uUG9pbnQ6Omluc2VydGVkSW50byhpbnNl
cnRpb25Qb2ludCk7CiAKLSAgICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmluRG9jdW1lbnQoKSAmJiBp
c0FjdGl2ZSgpKSB7CisgICAgaWYgKGlzQWN0aXZlKCkpIHsKICAgICAgICAgU2hhZG93Um9vdCog
cm9vdCA9IGNvbnRhaW5pbmdTaGFkb3dSb290KCk7CiAgICAgICAgIHJvb3QtPnJlZ2lzdGVyQ29u
dGVudEVsZW1lbnQoKTsKICAgICAgICAgcm9vdC0+b3duZXIoKS0+c2V0U2hvdWxkQ29sbGVjdFNl
bGVjdEZlYXR1cmVTZXQoKTsKQEAgLTEyNiw3ICsxMjYsNyBAQCBOb2RlOjpJbnNlcnRpb25Ob3Rp
ZmljYXRpb25SZXF1ZXN0IEhUTUxDb250ZW50RWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5l
ck5vZAogCiB2b2lkIEhUTUxDb250ZW50RWxlbWVudDo6cmVtb3ZlZEZyb20oQ29udGFpbmVyTm9k
ZSogaW5zZXJ0aW9uUG9pbnQpCiB7Ci0gICAgaWYgKGluc2VydGlvblBvaW50LT5pbkRvY3VtZW50
KCkgJiYgbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QpIHsKKyAgICBpZiAobV9yZWdpc3RlcmVk
V2l0aFNoYWRvd1Jvb3QpIHsKICAgICAgICAgU2hhZG93Um9vdCogcm9vdCA9IGNvbnRhaW5pbmdT
aGFkb3dSb290KCk7CiAgICAgICAgIGlmICghcm9vdCkKICAgICAgICAgICAgIHJvb3QgPSBpbnNl
cnRpb25Qb2ludC0+Y29udGFpbmluZ1NoYWRvd1Jvb3QoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvc2hhZG93L0hUTUxTaGFkb3dFbGVtZW50LmNwcAppbmRleCAxZGE1NDU3MTZmYjRlN2Ex
OTAzMTJhODYzMTQ0OTlmMWRkMzFhYWNmLi4xMzgyYjQ1NDhhMTQwYzMwMGRhNTJmMjdmNTdiNDg5
NWNjZTVhOThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9IVE1MU2hh
ZG93RWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSFRNTFNoYWRv
d0VsZW1lbnQuY3BwCkBAIC02NCw3ICs2NCw3IEBAIE5vZGU6Okluc2VydGlvbk5vdGlmaWNhdGlv
blJlcXVlc3QgSFRNTFNoYWRvd0VsZW1lbnQ6Omluc2VydGVkSW50byhDb250YWluZXJOb2RlCiB7
CiAgICAgSW5zZXJ0aW9uUG9pbnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Qb2ludCk7CiAKLSAg
ICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmluRG9jdW1lbnQoKSAmJiBpc0FjdGl2ZSgpKSB7CisgICAg
aWYgKGlzQWN0aXZlKCkpIHsKICAgICAgICAgaWYgKFNoYWRvd1Jvb3QqIHJvb3QgPSBjb250YWlu
aW5nU2hhZG93Um9vdCgpKSB7CiAgICAgICAgICAgICByb290LT5yZWdpc3RlclNoYWRvd0VsZW1l
bnQoKTsKICAgICAgICAgICAgIG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290ID0gdHJ1ZTsKQEAg
LTc2LDcgKzc2LDcgQEAgTm9kZTo6SW5zZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBIVE1MU2hh
ZG93RWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUKIAogdm9pZCBIVE1MU2hhZG93
RWxlbWVudDo6cmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9uUG9pbnQpCiB7Ci0g
ICAgaWYgKGluc2VydGlvblBvaW50LT5pbkRvY3VtZW50KCkgJiYgbV9yZWdpc3RlcmVkV2l0aFNo
YWRvd1Jvb3QpIHsKKyAgICBpZiAobV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QpIHsKICAgICAg
ICAgU2hhZG93Um9vdCogcm9vdCA9IGNvbnRhaW5pbmdTaGFkb3dSb290KCk7CiAgICAgICAgIGlm
ICghcm9vdCkKICAgICAgICAgICAgIHJvb3QgPSBpbnNlcnRpb25Qb2ludC0+Y29udGFpbmluZ1No
YWRvd1Jvb3QoKTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwppbmRleCBjZGViNzkzYWZhZjZmNGQwMmYyYzNjZTQxYmMyNGY4Y2NiMmZl
NTUwLi44NTM2ZjU3ODEyYTQ4OWU0YmM2ZGVhNjhkZGZmY2FjNDhhNTUzNDFmIDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMTItMTItMDcgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55YWtAY2hyb21p
dW0ub3JnPgorCisgICAgICAgIFtTaGFkb3cgRE9NXSByZWdpc3RlcmluZyBJbnNlcnRpb25Qb2lu
dHMgdG8gU2hhZG93Um9vdCBzaG91bGQgd29yayBvdXQgb2YgYSBkb2N1bWVudC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDM0NgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIG91dC1vZi1Eb2N1
bWVudCB2ZXJzaW9uIHRlc3RzLgorCisgICAgICAgICogZmFzdC9kb20vc2hhZG93L2hhcy1jb250
ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvaGFz
LWNvbnRlbnQtZWxlbWVudHMuaHRtbDoKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvaGFzLXNo
YWRvdy1pbnNlcnRpb24tcG9pbnQtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGZhc3QvZG9tL3No
YWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC5odG1sOgorCiAyMDEyLTEyLTA2ICBGaWxp
cCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgSW5jb3JyZWN0IGluZXF1YWxp
dHkgZm9yIGNoZWNraW5nIHdoZXRoZXIgYSBzdGF0ZW1lbnQgaXMgd2l0aGluIGJvdW5kcyBvZiBh
IGhhbmRsZXIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29u
dGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cv
aGFzLWNvbnRlbnQtZWxlbWVudHMtZXhwZWN0ZWQudHh0CmluZGV4IDczNDA3MzdmZWMwMDRhYjdk
YjZkOTE2ODBhZDRlYzJhYTJhYWI4NWMuLjkxZmZhMjE5MTExYjYzMjUyNmMxZjg5NmI0MDNmMTlh
MGZjMjg3OWIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29u
dGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDI0IEBACi1U
ZXN0IGZvciBCdWcgMTAwOTIxOiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTAwOTIxIC0gW1NoYWRvd10gU2hhZG93Um9vdCBzaG91bGQgYmUgYWJsZSB0byBrbm93IHRo
ZSBleGlzdGVuY2Ugb2YgPGNvbnRlbnQ+CitUZXN0IGZvciBCdWcgMTAwOTIxIGFuZCAxMDQzNDY6
IEhUTUxDb250ZW50RWxlbWVudCBzaG91bGQgYmUgcmVnaXN0ZXJlZCBjb3JyZWN0bHkuCiAKK0lu
IHRoZSBjYXNlIGhvc3QgaXMgaW4gZG9jdW1lbnQKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNo
YWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRv
d1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFkb3dS
b290MSkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFk
b3dSb290MikgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93
Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jv
b3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJTaGFk
b3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93
Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJT
aGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5n
ZXJTaGFkb3dSb290KSBpcyB0cnVlCitJbiB0aGUgY2FzZSBob3N0IGlzIG5vdCBpbiBkb2N1bWVu
dAogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UK
IFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKIFBB
U1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMu
aHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5o
dG1sCmluZGV4IGY2MTUxZTI4YzMwNDQ5NDA3ZjA4YWQxMDEyYmQ0OTY4OGFhMjgxMjUuLmIxNWQ0
MWJmNjU5YWJiMzIyOTUxNjRiNDEwMTdjOTg4ZGU3NTI1ZDEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCkBAIC0xMiw2
NiArMTIsNzkgQEAgZWxzZSBpZiAoIXdpbmRvdy5pbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQp
CiA8L2hlYWQ+CiA8Ym9keT4KIAotPHA+VGVzdCBmb3IgQnVnIDEwMDkyMTogPGEgaHJlZj0iaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMSI+aHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMTwvYT4gLSBbU2hhZG93XSBTaGFkb3dS
b290IHNob3VsZCBiZSBhYmxlIHRvIGtub3cgdGhlIGV4aXN0ZW5jZSBvZiAmbHQ7Y29udGVudCZn
dDs8L3A+Cis8cD5UZXN0IGZvciBCdWcgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEwMDkyMSI+MTAwOTIxPC9hPiBhbmQgPGEgaHJlZj0iaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDM0NiI+MTA0MzQ2PC9hPjogSFRNTENv
bnRlbnRFbGVtZW50IHNob3VsZCBiZSByZWdpc3RlcmVkIGNvcnJlY3RseS48L3A+CiAKLTxkaXYg
aWQ9Imhvc3QiPjwvZGl2PgorPGRpdiBpZD0id3JhcHBlciI+PC9kaXY+CiA8cHJlIGlkPSJjb25z
b2xlIj48L3ByZT4KIAogPHNjcmlwdD4KLXZhciBob3N0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5
SWQoImhvc3QiKTsKLXZhciBzaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7
CitmdW5jdGlvbiBkb1Rlc3QoKSB7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0Nv
bnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisKKyAgICB2YXIgZGl2ID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgiZGl2Iik7CisgICAgZGl2LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImNvbnRlbnQiKSk7CisgICAgc2hhZG93Um9vdC5hcHBlbmRDaGlsZChkaXYpOworICAg
IHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7
CisgICAgCisgICAgc2hhZG93Um9vdC5yZW1vdmVDaGlsZChkaXYpOworICAgIHNob3VsZEJlRmFs
c2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAg
IHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+Tm8gSW5zZXJ0aW9uIFBvaW50czwvZGl2PiI7
CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jv
b3QpIik7CisgICAgCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250
ZW50PiI7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwv
c2hhZG93PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48
ZGl2PjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2PjwvZGl2PjwvZGl2PiI7CisgICAgc2hv
dWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAg
ICAKKyAgICAvLyBDYXNlIGZvciBuZXN0ZWQgc2hhZG93IHN1YnRyZWUKKyAgICBzaGFkb3dSb290
LmlubmVySFRNTCA9ICc8ZGl2PmluIHNoYWRvdyByb290PC9kaXY+JzsKKyAgICB2YXIgaW5uZXJE
aXYxID0gc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCdkaXYnKTsKKyAgICBpbm5lclNoYWRvd1Jv
b3QxID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaW5uZXJEaXYxKTsKKyAgICBpbm5lclNoYWRvd1Jv
b3QxLmlubmVySFRNTCA9ICI8ZGl2Pjxjb250ZW50PjwvY29udGVudD48L2Rpdj4iOworICAgIHZh
ciBpbm5lckRpdjIgPSBpbm5lclNoYWRvd1Jvb3QxLnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOworICAg
IGlubmVyU2hhZG93Um9vdDIgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjIpOworICAg
IGlubmVyU2hhZG93Um9vdDIuaW5uZXJIVE1MID0gIjxkaXY+PGNvbnRlbnQgdGl0bGU9J2RlYnVn
c3RvcCc+PC9jb250ZW50PjwvZGl2PiI7CisgICAgCisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVUcnVlKCJp
bnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFkb3dSb290MSkiKTsKKyAgICBzaG91
bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QyKSIp
OworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PC9kaXY+IjsKKyAgICBzaG91bGRC
ZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAK
KyAgICAvLyBDYXNlIGZvciBtdWx0aXBsZSBzaGFkb3cgc3VidHJlZXMKKyAgICBzaGFkb3dSb290
LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+PC9k
aXY+PC9kaXY+IjsKKyAgICB5b3VuZ2VyU2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290
KGhvc3QpOworICAgIC8vIE1vZGlmeWluZyBvbGRlciBzaGFkb3cgcm9vdCBvciB5b3VuZ2VyIHNo
YWRvdyByb290IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhlci4KKyAgICBzaG91bGRCZVRydWUoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIHNob3VsZEJlRmFs
c2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKKyAg
ICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7CisgICAg
c2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7
CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJT
aGFkb3dSb290KSIpOworICAgIAorICAgIHlvdW5nZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8
Y29udGVudD48L2NvbnRlbnQ+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5o
YXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK30KKworZGVidWcoJ0luIHRo
ZSBjYXNlIGhvc3QgaXMgaW4gZG9jdW1lbnQnKTsKK2hvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCdkaXYnKTsKK3dyYXBwZXIuYXBwZW5kQ2hpbGQoaG9zdCk7CitzaGFkb3dSb290ID0gbmV3
IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Citkb1Rlc3QoKTsKK3dyYXBwZXIuaW5uZXJIVE1MID0g
IiI7CisKK2RlYnVnKCdJbiB0aGUgY2FzZSBob3N0IGlzIG5vdCBpbiBkb2N1bWVudCcpOworaG9z
dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworc2hhZG93Um9vdCA9IG5ldyBXZWJL
aXRTaGFkb3dSb290KGhvc3QpOworZG9UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOwog
Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCki
KTsKLQotdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwotZGl2LmFwcGVu
ZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNvbnRlbnQiKSk7Ci1zaGFkb3dSb290LmFw
cGVuZENoaWxkKGRpdik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dChzaGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7Ci1zaG91bGRC
ZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQotc2hh
ZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj5ObyBJbnNlcnRpb24gUG9pbnRzPC9kaXY+IjsKLXNo
b3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwot
Ci1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKLXNob3VsZEJl
VHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRv
d1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+IjsKLXNob3VsZEJlRmFsc2UoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290Lmlu
bmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+PC9kaXY+
PC9kaXY+IjsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRv
d1Jvb3QpIik7Ci0KLS8vIENhc2UgZm9yIG5lc3RlZCBzaGFkb3cgc3VidHJlZQotc2hhZG93Um9v
dC5pbm5lckhUTUwgPSAnPGRpdj5pbiBzaGFkb3cgcm9vdDwvZGl2Pic7Ci12YXIgaW5uZXJEaXYx
ID0gc2hhZG93Um9vdC5xdWVyeVNlbGVjdG9yKCdkaXYnKTsKLXZhciBpbm5lclNoYWRvd1Jvb3Qx
ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaW5uZXJEaXYxKTsKLWlubmVyU2hhZG93Um9vdDEuaW5u
ZXJIVE1MID0gIjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2PiI7Ci12YXIgaW5uZXJEaXYy
ID0gaW5uZXJTaGFkb3dSb290MS5xdWVyeVNlbGVjdG9yKCdkaXYnKTsKLXZhciBpbm5lclNoYWRv
d1Jvb3QyID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaW5uZXJEaXYyKTsKLWlubmVyU2hhZG93Um9v
dDIuaW5uZXJIVE1MID0gIjxkaXY+PGNvbnRlbnQgdGl0bGU9J2RlYnVnc3RvcCc+PC9jb250ZW50
PjwvZGl2PiI7Ci0KLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChz
aGFkb3dSb290KSIpOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
aW5uZXJTaGFkb3dSb290MSkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KGlubmVyU2hhZG93Um9vdDIpIik7Ci1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2
PjwvZGl2PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkiKTsKLQotLy8gQ2FzZSBmb3IgbXVsdGlwbGUgc2hhZG93IHN1YnRyZWVzCi1zaGFk
b3dSb290LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9k
aXY+PC9kaXY+PC9kaXY+IjsKLXZhciB5b3VuZ2VyU2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFk
b3dSb290KGhvc3QpOwotLy8gTW9kaWZ5aW5nIG9sZGVyIHNoYWRvdyByb290IG9yIHlvdW5nZXIg
c2hhZG93IHJvb3QgZG9lc24ndCBhZmZlY3QgdGhlIG90aGVyLgotc2hvdWxkQmVUcnVlKCJpbnRl
cm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFsc2UoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKLQotc2hhZG93
Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOwotc2hvdWxkQmVGYWxzZSgiaW50
ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZUZhbHNlKCJp
bnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7Ci0KLXlvdW5n
ZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKLXNob3VsZEJl
RmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotc2hvdWxk
QmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7
CiA8L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0
LmpzIj48L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQtZXhwZWN0ZWQu
dHh0CmluZGV4IGRjNGExNmI3NTc4YWI0ZDUxZDZhNjMwNzAyNTliNDg1ZWVjNGZlMTAuLjA5OWEw
ZDc2OGI5YTI1NWExMjgwMTZhOGUwZGNkMTU5OTM5ZTU2NzEgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50
eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9u
LXBvaW50LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDIwIEBACitUZXN0IGZvciBCdWcgOTcxODQg
YW5kIDEwNDM0NiA6IEhUTUxTaGFkb3dFbGVtZW50IHNob3VsZCBiZSByZWdpc3RlcmVkIGNvcnJl
Y3RseS4KKworSW4gdGhlIGNhc2UgaG9zdCBpcyBpbiBkb2N1bWVudAorUEFTUyBpbnRlcm5hbHMu
aGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50
ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNT
IGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQor
UEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFs
c2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlz
IHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3Qp
IGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jv
b3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5n
ZXJTaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9u
UG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2Vy
dGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFz
U2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyB0cnVlCitJbiB0
aGUgY2FzZSBob3N0IGlzIG5vdCBpbiBkb2N1bWVudAogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93
SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKIFBBU1MgaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCkBAIC0xNCw1ICszMSw0
IEBAIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dS
b290KSBpcyB0cnVlCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09N
UExFVEUKLVRlc3QgZm9yIEJ1ZyA5NzE4NDogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTk3MTg0IC0gW1NoYWRvd10gU2hhZG93Um9vdCBzaG91bGQga25vdyB3aGV0aGVy
IDxzaGFkb3c+IGluIGl0cyB0cmVlc2NvcGUKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbAppbmRleCA5
ODY3MDJiOTJiYThjYmY1MzU5NGVlNzU0OGEwYmQxMWQ3Yjk0MTY3Li43YjFjMjE5NzNhZDAzNDM2
MGYxYTUxZDljZGRlYzU2MjgzZjJlZmU5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbApAQCAtMTEs
NDkgKzExLDYzIEBAIGVsc2UgaWYgKCF3aW5kb3cuaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KQogPC9zY3JpcHQ+CiA8L2hlYWQ+CiA8Ym9keT4KLSAgPHNwYW4+VGVzdCBmb3IgQnVn
IDk3MTg0OiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
OTcxODQiPmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NDwvYT4g
LQotICAgIFtTaGFkb3ddIFNoYWRvd1Jvb3Qgc2hvdWxkIGtub3cgd2hldGhlciAmbHQ7c2hhZG93
Jmd0OyBpbiBpdHMgdHJlZXNjb3BlCi0gIDwvc3Bhbj4KLSAgPGRpdiBpZD0iaG9zdCI+PC9kaXY+
CisKKzxwPlRlc3QgZm9yIEJ1ZyA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTcxODQiPjk3MTg0PC9hPiBhbmQgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDM0NiI+MTA0MzQ2PC9hPiA6IEhUTUxTaGFkb3dF
bGVtZW50IHNob3VsZCBiZSByZWdpc3RlcmVkIGNvcnJlY3RseS48L3A+CisKKzxkaXYgaWQ9Indy
YXBwZXIiPjwvZGl2PgorPHByZSBpZD0iY29uc29sZSI+PC9wcmU+CiAKIDxzY3JpcHQ+Ci12YXIg
aG9zdCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJob3N0Iik7Ci12YXIgc2hhZG93Um9vdCA9
IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOworZnVuY3Rpb24gZG9UZXN0KCkgeworICAgIHNo
b3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290
KSIpOworCisgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAg
IGRpdi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzaGFkb3ciKSk7CisgICAg
c2hhZG93Um9vdC5hcHBlbmRDaGlsZChkaXYpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisKKyAgICBzaGFkb3dSb290
LnJlbW92ZUNoaWxkKGRpdik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNob3VsZEJlRmFsc2UoImludGVybmFs
cy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3Qu
aW5uZXJIVE1MID0gIjxkaXY+Tm8gSW5zZXJ0aW9uIFBvaW50czwvZGl2PiI7CisgICAgc2hvdWxk
QmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7
CiAKLXZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLWRpdi5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzaGFkb3ciKSk7Ci1zaGFkb3dSb290LmFwcGVu
ZENoaWxkKGRpdik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50
PjwvY29udGVudD4iOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNl
cnRpb25Qb2ludChzaGFkb3dSb290KSIpOwogCi1zaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7
Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93
Um9vdCkiKTsKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7
CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hh
ZG93Um9vdCkiKTsKIAotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj5ObyBJbnNlcnRpb24g
UG9pbnRzPC9kaXY+IjsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRp
b25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+
PGRpdj48ZGl2PjxzaGFkb3c+PC9zaGFkb3c+PC9kaXY+PC9kaXY+PC9kaXY+IjsKKyAgICBzaG91
bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIp
OwogCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKLXNob3Vs
ZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIp
OworICAgIHlvdW5nZXJTaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Cisg
ICAgLy8gTW9kaWZ5aW5nIG9sZGVyIHNoYWRvdyByb290IG9yIHlvdW5nZXIgc2hhZG93IHJvb3Qg
ZG9lc24ndCBhZmZlY3QgdGhlIG90aGVyLgorICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVGYWxzZSgi
aW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwog
Ci1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7Ci1zaG91bGRCZVRy
dWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAg
IHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOworICAgIHNob3Vs
ZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIp
OworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5
b3VuZ2VyU2hhZG93Um9vdCkiKTsKIAotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2
PjxkaXY+PHNoYWRvdz48L3NoYWRvdz48L2Rpdj48L2Rpdj48L2Rpdj4iOwotc2hvdWxkQmVUcnVl
KCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICB5
b3VuZ2VyU2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOworICAgIHNo
b3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290
KSIpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHlvdW5nZXJTaGFkb3dSb290KSIpOworfQogCi12YXIgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcg
V2ViS2l0U2hhZG93Um9vdChob3N0KTsKLS8vIE1vZGlmeWluZyBvbGRlciBzaGFkb3cgcm9vdCBv
ciB5b3VuZ2VyIHNoYWRvdyByb290IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhlci4KLXNob3VsZEJl
VHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7Ci1z
aG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNo
YWRvd1Jvb3QpIik7CitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBpbiBkb2N1bWVudCcpOwor
aG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOword3JhcHBlci5hcHBlbmRDaGls
ZChob3N0KTsKK3NoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2RvVGVz
dCgpOword3JhcHBlci5pbm5lckhUTUwgPSAiIjsKIAotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAi
PGNvbnRlbnQ+PC9jb250ZW50PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93
SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK2RlYnVnKCdJbiB0
aGUgY2FzZSBob3N0IGlzIG5vdCBpbiBkb2N1bWVudCcpOworaG9zdCA9IGRvY3VtZW50LmNyZWF0
ZUVsZW1lbnQoJ2RpdicpOworc2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3Qp
OworZG9UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOwogCi15b3VuZ2VyU2hhZG93Um9v
dC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUo
ImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsK
IDwvc2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3Qu
anMiPjwvc2NyaXB0PgogPC9ib2R5Pgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178954</attachid>
            <date>2012-12-11 20:37:39 -0800</date>
            <delta_ts>2012-12-11 22:49:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-104346-20121212133500.patch</filename>
            <type>text/plain</type>
            <size>22189</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NDA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGQxMmNmOTRmZjQ0YzYy
YmIyZDFkOTM1MzVjY2MzNDJiNjBjNDk4Zi4uOTllY2RkODNkMjU1NDU3YWEzMzQ5MzZjMTIzNDcx
Mjc2MDlkZmJjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTEyLTExICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBXZSBuZWVkIHRvIHJlZ2lzdGVyIEluc2VydGlvblBvaW50cyBldmVuIGlmIFNo
YWRvd1Jvb3QgaXMgb3V0IG9mIERvY3VtZW50LCBzaW5jZSBkaXN0cmlidXRpb24gc2hvdWxkIHdv
cmsKKyAgICAgICAgb3V0IG9mIERvY3VtZW50LCB0b28uIEluc3RlYWQgb2YgY2hlY2tpbmcgaXNJ
bkRvY3VtZW50KCksIHdlIGhhdmUgdG8gY2hlY2sgSW5zZXJ0aW9uUG9pbnQgYW5kCisgICAgICAg
IGFuIGVsZW1lbnQgd2hpY2ggSW5zZXJ0aW9uUG9pbnQgaW5zZXJ0ZWQgaW50byBoYXZlIHRoZSBz
YW1lIHRyZWVzY29wZS4KKworICAgICAgICBUZXN0czogZmFzdC9kb20vc2hhZG93L2hhcy1jb250
ZW50LWVsZW1lbnRzLmh0bWwKKyAgICAgICAgICAgICAgIGZhc3QvZG9tL3NoYWRvdy9oYXMtc2hh
ZG93LWluc2VydGlvbi1wb2ludC5odG1sCisKKyAgICAgICAgKiBodG1sL3NoYWRvdy9JbnNlcnRp
b25Qb2ludC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNlcnRpb25Qb2ludDo6aW5zZXJ0ZWRJ
bnRvKToKKyAgICAgICAgKFdlYkNvcmU6Okluc2VydGlvblBvaW50OjpyZW1vdmVkRnJvbSk6CisK
IDIwMTItMTItMTEgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAg
IEFkZCBFbGVtZW50LXNwZWNpZmljIHRyYXZlcnNhbCBmdW5jdGlvbnMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBvaW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBvaW50LmNwcAppbmRleCBlZTg0NDNlOWIzOGMyNDZh
MmY3NDBmMmRiNjcxY2Y0MDEzZjE1ZWU0Li42OGM1MGMwMTFiMWJkYmY5NTYyNmExZjdkNmM4MmVj
OGNmNWUwZDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRp
b25Qb2ludC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9p
bnQuY3BwCkBAIC0xMjMsNDAgKzEyMywzOCBAQCB2b2lkIEluc2VydGlvblBvaW50OjpjaGlsZHJl
bkNoYW5nZWQoYm9vbCBjaGFuZ2VkQnlQYXJzZXIsIE5vZGUqIGJlZm9yZUNoYW5nZSwgTgogTm9k
ZTo6SW5zZXJ0aW9uTm90aWZpY2F0aW9uUmVxdWVzdCBJbnNlcnRpb25Qb2ludDo6aW5zZXJ0ZWRJ
bnRvKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewogICAgIEhUTUxFbGVtZW50Ojpp
bnNlcnRlZEludG8oaW5zZXJ0aW9uUG9pbnQpOwotICAgIGlmIChpbnNlcnRpb25Qb2ludC0+aW5E
b2N1bWVudCgpKSB7Ci0gICAgICAgIGlmIChTaGFkb3dSb290KiByb290ID0gY29udGFpbmluZ1No
YWRvd1Jvb3QoKSkgewotICAgICAgICAgICAgcm9vdC0+b3duZXIoKS0+c2V0VmFsaWRpdHlVbmRl
dGVybWluZWQoKTsKLSAgICAgICAgICAgIHJvb3QtPm93bmVyKCktPmludmFsaWRhdGVEaXN0cmli
dXRpb24oKTsKLSAgICAgICAgICAgIGlmIChpc0FjdGl2ZSgpICYmICFtX3JlZ2lzdGVyZWRXaXRo
U2hhZG93Um9vdCkgewotICAgICAgICAgICAgICAgIG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290
ID0gdHJ1ZTsKLSAgICAgICAgICAgICAgICByb290LT5yZWdpc3Rlckluc2VydGlvblBvaW50KHRo
aXMpOwotICAgICAgICAgICAgfQorCisgICAgaWYgKFNoYWRvd1Jvb3QqIHJvb3QgPSBjb250YWlu
aW5nU2hhZG93Um9vdCgpKSB7CisgICAgICAgIHJvb3QtPm93bmVyKCktPnNldFZhbGlkaXR5VW5k
ZXRlcm1pbmVkKCk7CisgICAgICAgIHJvb3QtPm93bmVyKCktPmludmFsaWRhdGVEaXN0cmlidXRp
b24oKTsKKyAgICAgICAgaWYgKGlzQWN0aXZlKCkgJiYgIW1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dS
b290ICYmIGluc2VydGlvblBvaW50LT50cmVlU2NvcGUoKSA9PSB0cmVlU2NvcGUoKSkgeworICAg
ICAgICAgICAgbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgPSB0cnVlOworICAgICAgICAgICAg
cm9vdC0+cmVnaXN0ZXJJbnNlcnRpb25Qb2ludCh0aGlzKTsKICAgICAgICAgfQogICAgIH0KIAor
CiAgICAgcmV0dXJuIEluc2VydGlvbkRvbmU7CiB9CiAKIHZvaWQgSW5zZXJ0aW9uUG9pbnQ6OnJl
bW92ZWRGcm9tKENvbnRhaW5lck5vZGUqIGluc2VydGlvblBvaW50KQogewotICAgIGlmIChpbnNl
cnRpb25Qb2ludC0+aW5Eb2N1bWVudCgpKSB7Ci0gICAgICAgIFNoYWRvd1Jvb3QqIHJvb3QgPSBj
b250YWluaW5nU2hhZG93Um9vdCgpOwotICAgICAgICBpZiAoIXJvb3QpCi0gICAgICAgICAgICBy
b290ID0gaW5zZXJ0aW9uUG9pbnQtPmNvbnRhaW5pbmdTaGFkb3dSb290KCk7Ci0KLSAgICAgICAg
Ly8gaG9zdCBjYW4gYmUgbnVsbCB3aGVuIHJlbW92ZWRGcm9tKCkgaXMgY2FsbGVkIGZyb20gRWxl
bWVudFNoYWRvdyBkZXN0cnVjdG9yLgotICAgICAgICBFbGVtZW50U2hhZG93KiByb290T3duZXIg
PSByb290ID8gcm9vdC0+b3duZXIoKSA6IDA7Ci0gICAgICAgIGlmIChyb290T3duZXIpCi0gICAg
ICAgICAgICByb290T3duZXItPmludmFsaWRhdGVEaXN0cmlidXRpb24oKTsKLQotICAgICAgICAv
LyBTaW5jZSB0aGlzIGluc2VydGlvbiBwb2ludCBpcyBubyBsb25nZXIgdmlzaWJsZSBmcm9tIHRo
ZSBzaGFkb3cgc3VidHJlZSwgaXQgbmVlZCB0byBjbGVhbiBpdHNlbGYgdXAuCi0gICAgICAgIGNs
ZWFyRGlzdHJpYnV0aW9uKCk7Ci0KLSAgICAgICAgaWYgKG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dS
b290KSB7Ci0gICAgICAgICAgICBtX3JlZ2lzdGVyZWRXaXRoU2hhZG93Um9vdCA9IGZhbHNlOwot
ICAgICAgICAgICAgaWYgKHJvb3QpCi0gICAgICAgICAgICAgICAgcm9vdC0+dW5yZWdpc3Rlcklu
c2VydGlvblBvaW50KHRoaXMpOwotICAgICAgICB9CisgICAgU2hhZG93Um9vdCogcm9vdCA9IGNv
bnRhaW5pbmdTaGFkb3dSb290KCk7CisgICAgaWYgKCFyb290KQorICAgICAgICByb290ID0gaW5z
ZXJ0aW9uUG9pbnQtPmNvbnRhaW5pbmdTaGFkb3dSb290KCk7CisKKyAgICAvLyBob3N0IGNhbiBi
ZSBudWxsIHdoZW4gcmVtb3ZlZEZyb20oKSBpcyBjYWxsZWQgZnJvbSBFbGVtZW50U2hhZG93IGRl
c3RydWN0b3IuCisgICAgRWxlbWVudFNoYWRvdyogcm9vdE93bmVyID0gcm9vdCA/IHJvb3QtPm93
bmVyKCkgOiAwOworICAgIGlmIChyb290T3duZXIpCisgICAgICAgIHJvb3RPd25lci0+aW52YWxp
ZGF0ZURpc3RyaWJ1dGlvbigpOworCisgICAgLy8gU2luY2UgdGhpcyBpbnNlcnRpb24gcG9pbnQg
aXMgbm8gbG9uZ2VyIHZpc2libGUgZnJvbSB0aGUgc2hhZG93IHN1YnRyZWUsIGl0IG5lZWQgdG8g
Y2xlYW4gaXRzZWxmIHVwLgorICAgIGNsZWFyRGlzdHJpYnV0aW9uKCk7CisKKyAgICBpZiAobV9y
ZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgJiYgaW5zZXJ0aW9uUG9pbnQtPnRyZWVTY29wZSgpLT5y
b290Tm9kZSgpID09IHJvb3QpIHsKKyAgICAgICAgQVNTRVJUKHJvb3QpOworICAgICAgICBtX3Jl
Z2lzdGVyZWRXaXRoU2hhZG93Um9vdCA9IGZhbHNlOworICAgICAgICByb290LT51bnJlZ2lzdGVy
SW5zZXJ0aW9uUG9pbnQodGhpcyk7CiAgICAgfQogCiAgICAgSFRNTEVsZW1lbnQ6OnJlbW92ZWRG
cm9tKGluc2VydGlvblBvaW50KTsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmZmIwYWVmOWYxNWRmYWY2NDUwMTk5YTVlZWMw
MDM4YjZiYTQwYWQ5Li40MjljMDY2NDlmNDZjMDRkNjg3ODMyYWFhNTAwOWU2YjQwZjFiNDU1IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTItMTItMTEgIFNoaW55YSBLYXdhbmFrYSAgPHNoaW55
YWtAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtTaGFkb3cgRE9NXSByZWdpc3RlcmluZyBJbnNl
cnRpb25Qb2ludHMgdG8gU2hhZG93Um9vdCBzaG91bGQgd29yayBvdXQgb2YgYSBkb2N1bWVudC4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDM0Ngor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGVkIHRl
c3RzIGZvciBvdXQtb2YtRG9jdW1lbnQgdmVyc2lvbiBhbmQgY2FsbGluZyBpbnNlcnRlZEludG8v
cmVtb3ZlZEZyb20gc2V2ZXJhbCB0aW1lcy4KKworICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9o
YXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vc2hh
ZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLmh0bWw6CisgICAgICAgICogZmFzdC9kb20vc2hhZG93
L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0
L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQuaHRtbDoKKwogMjAxMi0xMi0x
MSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW0Nocm9taXVt
XSBSZWJhc2VsaW5lIGZvciByZWNlbnQgZm9ybXMgY2hhbmdlcy4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMtZXhwZWN0
ZWQudHh0CmluZGV4IDczNDA3MzdmZWMwMDRhYjdkYjZkOTE2ODBhZDRlYzJhYTJhYWI4NWMuLmQy
NmE5OTg1NDkyYjA2MjhkNDU4NWE3OWQ4M2EwYjkzZGI2ZTQyZDMgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4
cGVjdGVkLnR4dApAQCAtMSw1ICsxLDYgQEAKLVRlc3QgZm9yIEJ1ZyAxMDA5MjE6IGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA5MjEgLSBbU2hhZG93XSBTaGFkb3dS
b290IHNob3VsZCBiZSBhYmxlIHRvIGtub3cgdGhlIGV4aXN0ZW5jZSBvZiA8Y29udGVudD4KK1Rl
c3QgZm9yIEJ1ZyAxMDA5MjEgYW5kIDEwNDM0NjogSFRNTENvbnRlbnRFbGVtZW50IHNob3VsZCBi
ZSByZWdpc3RlcmVkIGNvcnJlY3RseS4KIAorSW4gdGhlIGNhc2UgaG9zdCBpcyBpbiBkb2N1bWVu
dAogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UK
IFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKIFBB
U1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCkBAIC0x
Nyw2ICsxOCwzMCBAQCBQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRv
d1Jvb3QpIGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNo
YWRvd1Jvb3QpIGlzIHRydWUKK0luIHRoZSBjYXNlIGhvc3QgaXMgbm90IGluIGRvY3VtZW50CitQ
QVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFT
UyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBp
bnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50
ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFz
Q29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0Nv
bnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDEpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhh
c0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDIpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxz
Lmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5o
YXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXND
b250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxz
Lmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5o
YXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgdHJ1ZQoraW5zZXJ0ZWRJ
bnRvL3JlbW92ZWRGcm9tIGNhbiBiZSBjYWxsZWQgc2V2ZXJhbCB0aW1lcy4KK1BBU1MgaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5o
YXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXND
b250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNDb250
ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQg
aXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2Rv
bS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMuaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvZG9t
L3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCmluZGV4IGY2MTUxZTI4YzMwNDQ5NDA3
ZjA4YWQxMDEyYmQ0OTY4OGFhMjgxMjUuLmIwZmE0ODhmNWY4YjI0YzIzODQ3NDk4YTNkYTY2NjA3
NGQ1NzMwNDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29u
dGVudC1lbGVtZW50cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMt
Y29udGVudC1lbGVtZW50cy5odG1sCkBAIC0xMiw2NiArMTIsOTggQEAgZWxzZSBpZiAoIXdpbmRv
dy5pbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQpCiA8L2hlYWQ+CiA8Ym9keT4KIAotPHA+VGVz
dCBmb3IgQnVnIDEwMDkyMTogPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTEwMDkyMSI+aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMDkyMTwvYT4gLSBbU2hhZG93XSBTaGFkb3dSb290IHNob3VsZCBiZSBhYmxlIHRvIGtub3cg
dGhlIGV4aXN0ZW5jZSBvZiAmbHQ7Y29udGVudCZndDs8L3A+Cis8cD5UZXN0IGZvciBCdWcgPGEg
aHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMSI+MTAw
OTIxPC9hPiBhbmQgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEwNDM0NiI+MTA0MzQ2PC9hPjogSFRNTENvbnRlbnRFbGVtZW50IHNob3VsZCBiZSByZWdp
c3RlcmVkIGNvcnJlY3RseS48L3A+CiAKLTxkaXYgaWQ9Imhvc3QiPjwvZGl2PgorPGRpdiBpZD0i
d3JhcHBlciI+PC9kaXY+CiA8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KIAogPHNjcmlwdD4KLXZh
ciBob3N0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImhvc3QiKTsKK2Z1bmN0aW9uIGRvQ29t
bW9uVGVzdCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1l
bnQoc2hhZG93Um9vdCkiKTsKKworICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKKyAgICBkaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29u
dGVudCIpKTsKKyAgICBzaGFkb3dSb290LmFwcGVuZENoaWxkKGRpdik7CisgICAgc2hvdWxkQmVU
cnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAg
ICBzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgc2hhZG93Um9v
dC5pbm5lckhUTUwgPSAiPGRpdj5ObyBJbnNlcnRpb24gUG9pbnRzPC9kaXY+IjsKKyAgICBzaG91
bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAg
ICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRlbnQ+IjsKKyAg
ICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIp
OworICAgIAorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+IjsK
KyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9v
dCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48
Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+PC9kaXY+PC9kaXY+IjsKKyAgICBzaG91bGRCZVRydWUo
ImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIC8v
IENhc2UgZm9yIG5lc3RlZCBzaGFkb3cgc3VidHJlZQorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gJzxkaXY+aW4gc2hhZG93IHJvb3Q8L2Rpdj4nOworICAgIHZhciBpbm5lckRpdjEgPSBzaGFk
b3dSb290LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOworICAgIGlubmVyU2hhZG93Um9vdDEgPSBuZXcg
V2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjEpOworICAgIGlubmVyU2hhZG93Um9vdDEuaW5uZXJI
VE1MID0gIjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2PiI7CisgICAgdmFyIGlubmVyRGl2
MiA9IGlubmVyU2hhZG93Um9vdDEucXVlcnlTZWxlY3RvcignZGl2Jyk7CisgICAgaW5uZXJTaGFk
b3dSb290MiA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGlubmVyRGl2Mik7CisgICAgaW5uZXJTaGFk
b3dSb290Mi5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudCB0aXRsZT0nZGVidWdzdG9wJz48L2Nv
bnRlbnQ+PC9kaXY+IjsKKyAgICAKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5o
YXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QxKSIpOworICAgIHNob3VsZEJlVHJ1ZSgi
aW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDIpIik7CisgICAgc2hh
ZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48L2Rpdj4iOworICAgIHNob3VsZEJlRmFsc2UoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworCisgICAgLy8gQ2FzZSBm
b3IgbXVsdGlwbGUgc2hhZG93IHN1YnRyZWVzCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAi
PGRpdj48ZGl2PjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2PjwvZGl2PjwvZGl2PiI7Cisg
ICAgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKKyAgICAv
LyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJvb3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vz
bid0IGFmZmVjdCB0aGUgb3RoZXIuCisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgc2hhZG93
Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOworICAgIHNob3VsZEJlRmFsc2Uo
ImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIHNob3VsZEJl
RmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsK
KyAgICAKKyAgICB5b3VuZ2VyU2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250
ZW50PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNo
YWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1l
bnQoeW91bmdlclNoYWRvd1Jvb3QpIik7Cit9CisKK2RlYnVnKCdJbiB0aGUgY2FzZSBob3N0IGlz
IGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit3
cmFwcGVyLmFwcGVuZENoaWxkKGhvc3QpOworc2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dS
b290KGhvc3QpOworZG9Db21tb25UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOworCitk
ZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9jdW1lbnQnKTsKK2hvc3QgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3NoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93
Um9vdChob3N0KTsKK2RvQ29tbW9uVGVzdCgpOword3JhcHBlci5pbm5lckhUTUwgPSAiIjsKKwor
ZGVidWcoJ2luc2VydGVkSW50by9yZW1vdmVkRnJvbSBjYW4gYmUgY2FsbGVkIHNldmVyYWwgdGlt
ZXMuJyk7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwordmFyIGNv
bnRlbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjb250ZW50Jyk7Cit2YXIgZGl2MSA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwordmFyIGRpdjIgPSBkb2N1bWVudC5jcmVhdGVF
bGVtZW50KCdkaXYnKTsKIHZhciBzaGFkb3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9z
dCk7Ci0KLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSIpOwotCi12YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Ci1kaXYu
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29udGVudCIpKTsKLXNoYWRvd1Jv
b3QuYXBwZW5kQ2hpbGQoZGl2KTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2KTsKLXNo
b3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwot
Ci1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2Pk5vIEluc2VydGlvbiBQb2ludHM8L2Rpdj4i
Owotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3Qp
Iik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOwotc2hv
dWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQot
c2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOwotc2hvdWxkQmVGYWxz
ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jv
b3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxjb250ZW50PjwvY29udGVudD48L2Rpdj48
L2Rpdj48L2Rpdj4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkiKTsKLQotLy8gQ2FzZSBmb3IgbmVzdGVkIHNoYWRvdyBzdWJ0cmVlCi1zaGFk
b3dSb290LmlubmVySFRNTCA9ICc8ZGl2PmluIHNoYWRvdyByb290PC9kaXY+JzsKLXZhciBpbm5l
ckRpdjEgPSBzaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOwotdmFyIGlubmVyU2hhZG93
Um9vdDEgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjEpOwotaW5uZXJTaGFkb3dSb290
MS5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+IjsKLXZhciBpbm5l
ckRpdjIgPSBpbm5lclNoYWRvd1Jvb3QxLnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOwotdmFyIGlubmVy
U2hhZG93Um9vdDIgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjIpOwotaW5uZXJTaGFk
b3dSb290Mi5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudCB0aXRsZT0nZGVidWdzdG9wJz48L2Nv
bnRlbnQ+PC9kaXY+IjsKLQotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVt
ZW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChpbm5lclNoYWRvd1Jvb3QxKSIpOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoaW5uZXJTaGFkb3dSb290MikiKTsKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0g
IjxkaXY+PC9kaXY+IjsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dChzaGFkb3dSb290KSIpOwotCi0vLyBDYXNlIGZvciBtdWx0aXBsZSBzaGFkb3cgc3VidHJlZXMK
LXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxjb250ZW50PjwvY29udGVu
dD48L2Rpdj48L2Rpdj48L2Rpdj4iOwotdmFyIHlvdW5nZXJTaGFkb3dSb290ID0gbmV3IFdlYktp
dFNoYWRvd1Jvb3QoaG9zdCk7Ci0vLyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJvb3Qgb3IgeW91
bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3RoZXIuCi1zaG91bGRCZVRydWUo
ImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotc2hvdWxkQmVGYWxz
ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwotCi1z
aGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7Ci1zaG91bGRCZUZhbHNl
KCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFs
c2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKLQot
eW91bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOwotc2hv
dWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci1z
aG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9v
dCkiKTsKK2RpdjEuYXBwZW5kQ2hpbGQoY29udGVudCk7CitzaG91bGRCZUZhbHNlKCdpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCknKTsKK3NoYWRvd1Jvb3QuYXBwZW5kQ2hp
bGQoZGl2MSk7CitzaG91bGRCZVRydWUoJ2ludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFk
b3dSb290KScpOworZGl2Mi5hcHBlbmRDaGlsZChob3N0KTsKK3Nob3VsZEJlVHJ1ZSgnaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpJyk7CitkaXYyLnJlbW92ZUNoaWxkKGhv
c3QpOworc2hvdWxkQmVUcnVlKCdpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9v
dCknKTsKK3NoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2MSk7CitzaG91bGRCZUZhbHNlKCdpbnRl
cm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCknKTsKK2RpdjEucmVtb3ZlQ2hpbGQo
Y29udGVudCk7CisKK3dyYXBwZXIuaW5uZXJIVE1MID0gJyc7CiA8L3NjcmlwdD4KIDxzY3JpcHQg
c3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KIDwvYm9k
eT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWlu
c2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cv
aGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQtZXhwZWN0ZWQudHh0CmluZGV4IGRjNGExNmI3NTc4
YWI0ZDUxZDZhNjMwNzAyNTliNDg1ZWVjNGZlMTAuLmQ2OGQ5MGFjNzdkYTE4YWEyZDliNTBmMDJm
YzgxY2JjOGFiMjQ2NjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9o
YXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4dApA
QCAtMSwzICsxLDYgQEAKK1Rlc3QgZm9yIEJ1ZyA5NzE4NCBhbmQgMTA0MzQ2IDogSFRNTFNoYWRv
d0VsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgY29ycmVjdGx5LgorCitJbiB0aGUgY2FzZSBo
b3N0IGlzIGluIGRvY3VtZW50CiBQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2lu
dChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9u
UG9pbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0
aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKQEAgLTExLDggKzE0LDI3IEBAIFBBU1MgaW50
ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNT
IGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMg
ZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3Qp
IGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2Vy
U2hhZG93Um9vdCkgaXMgdHJ1ZQorSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9jdW1lbnQK
K1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZh
bHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBp
cyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290
KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93
Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNo
YWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2lu
dChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRp
b25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNl
cnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFsc2UKK1BB
U1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNl
CitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9v
dCkgaXMgdHJ1ZQoraW5zZXJ0ZWRJbnRvL3JlbW92ZWRGcm9tIGNhbiBiZSBjYWxsZWQgc2V2ZXJh
bCB0aW1lcy4KK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jv
b3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFk
b3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChz
aGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2lu
dChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCiBURVNUIENPTVBMRVRFCi1UZXN0IGZvciBCdWcgOTcxODQ6IGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NCAtIFtTaGFkb3ddIFNoYWRvd1Jvb3Qgc2hvdWxk
IGtub3cgd2hldGhlciA8c2hhZG93PiBpbiBpdHMgdHJlZXNjb3BlCiAKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC5odG1s
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50
Lmh0bWwKaW5kZXggOTg2NzAyYjkyYmE4Y2JmNTM1OTRlZTc1NDhhMGJkMTFkN2I5NDE2Ny4uZWZl
NDM3MmJjYmQzZTFmMjU5ZWFjZjMyOGFiNjNlZTExYTFiMjUwNiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50
Lmh0bWwKQEAgLTExLDQ5ICsxMSw4MSBAQCBlbHNlIGlmICghd2luZG93LmludGVybmFscy5oYXNT
aGFkb3dJbnNlcnRpb25Qb2ludCkKIDwvc2NyaXB0PgogPC9oZWFkPgogPGJvZHk+Ci0gIDxzcGFu
PlRlc3QgZm9yIEJ1ZyA5NzE4NDogPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTk3MTg0Ij5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9OTcxODQ8L2E+IC0KLSAgICBbU2hhZG93XSBTaGFkb3dSb290IHNob3VsZCBrbm93IHdoZXRo
ZXIgJmx0O3NoYWRvdyZndDsgaW4gaXRzIHRyZWVzY29wZQotICA8L3NwYW4+Ci0gIDxkaXYgaWQ9
Imhvc3QiPjwvZGl2PgorCis8cD5UZXN0IGZvciBCdWcgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3MTg0Ij45NzE4NDwvYT4gYW5kIDxhIGhyZWY9Imh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQzNDYiPjEwNDM0NjwvYT4g
OiBIVE1MU2hhZG93RWxlbWVudCBzaG91bGQgYmUgcmVnaXN0ZXJlZCBjb3JyZWN0bHkuPC9wPgor
Cis8ZGl2IGlkPSJ3cmFwcGVyIj48L2Rpdj4KKzxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgogCiA8
c2NyaXB0PgotdmFyIGhvc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaG9zdCIpOwotdmFy
IHNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2Z1bmN0aW9uIGRvVGVz
dCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9p
bnQoc2hhZG93Um9vdCkiKTsKKworICAgIHZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCJkaXYiKTsKKyAgICBkaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic2hh
ZG93IikpOworICAgIHNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKKyAgICBzaG91bGRCZVRy
dWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOwogCi1z
aG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9v
dCkiKTsKKyAgICBzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7CisgICAgc2hvdWxkQmVGYWxz
ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXZh
ciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKLWRpdi5hcHBlbmRDaGlsZChk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCJzaGFkb3ciKSk7Ci1zaGFkb3dSb290LmFwcGVuZENoaWxk
KGRpdik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChz
aGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+Tm8gSW5zZXJ0
aW9uIFBvaW50czwvZGl2PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQo
ZGl2KTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChz
aGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29u
dGVudD4iOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSIpOwogCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2Pk5vIElu
c2VydGlvbiBQb2ludHM8L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwg
PSAiPHNoYWRvdz48L3NoYWRvdz4iOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gIjxjb250ZW50PjwvY29udGVudD4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhU
TUwgPSAiPGRpdj48ZGl2PjxkaXY+PHNoYWRvdz48L3NoYWRvdz48L2Rpdj48L2Rpdj48L2Rpdj4i
OworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNo
YWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+
IjsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRv
d1Jvb3QpIik7CisgICAgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdCho
b3N0KTsKKyAgICAvLyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJvb3Qgb3IgeW91bmdlciBzaGFk
b3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3RoZXIuCisgICAgc2hvdWxkQmVUcnVlKCJpbnRl
cm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRC
ZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jv
b3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2PjxzaGFkb3c+
PC9zaGFkb3c+PC9kaXY+PC9kaXY+PC9kaXY+IjsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5l
ckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVG
YWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290
KSIpOwogCi12YXIgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0
KTsKLS8vIE1vZGlmeWluZyBvbGRlciBzaGFkb3cgcm9vdCBvciB5b3VuZ2VyIHNoYWRvdyByb290
IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhlci4KLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5h
bHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CisgICAgeW91
bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91
bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCki
KTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5
b3VuZ2VyU2hhZG93Um9vdCkiKTsKK30KIAotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRl
bnQ+PC9jb250ZW50PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0
aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK2RlYnVnKCdJbiB0aGUgY2Fz
ZSBob3N0IGlzIGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgn
ZGl2Jyk7Cit3cmFwcGVyLmFwcGVuZENoaWxkKGhvc3QpOworc2hhZG93Um9vdCA9IG5ldyBXZWJL
aXRTaGFkb3dSb290KGhvc3QpOworZG9UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOwor
CitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9jdW1lbnQnKTsKK2hvc3QgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3NoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hh
ZG93Um9vdChob3N0KTsKK2RvVGVzdCgpOword3JhcHBlci5pbm5lckhUTUwgPSAiIjsKKworZGVi
dWcoJ2luc2VydGVkSW50by9yZW1vdmVkRnJvbSBjYW4gYmUgY2FsbGVkIHNldmVyYWwgdGltZXMu
Jyk7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwordmFyIHNoYWRv
dyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NoYWRvdycpOwordmFyIGRpdjEgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3ZhciBkaXYyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVu
dCgnZGl2Jyk7Cit2YXIgc2hhZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOwor
ZGl2MS5hcHBlbmRDaGlsZChzaGFkb3cpOworc2hvdWxkQmVGYWxzZSgnaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpJyk7CitzaGFkb3dSb290LmFwcGVuZENoaWxk
KGRpdjEpOworc2hvdWxkQmVUcnVlKCdpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
c2hhZG93Um9vdCknKTsKK2RpdjIuYXBwZW5kQ2hpbGQoaG9zdCk7CitzaG91bGRCZVRydWUoJ2lu
dGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KScpOworZGl2Mi5yZW1v
dmVDaGlsZChob3N0KTsKK3Nob3VsZEJlVHJ1ZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KHNoYWRvd1Jvb3QpJyk7CitzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdjEpOworc2hv
dWxkQmVGYWxzZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3Qp
Jyk7CitkaXYxLnJlbW92ZUNoaWxkKHNoYWRvdyk7CiAKLXlvdW5nZXJTaGFkb3dSb290LmlubmVy
SFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFz
U2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwogPC9zY3Jp
cHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178972</attachid>
            <date>2012-12-11 22:49:23 -0800</date>
            <delta_ts>2012-12-11 23:04:20 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-104346-20121212154644.patch</filename>
            <type>text/plain</type>
            <size>22207</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NDA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGQxMmNmOTRmZjQ0YzYy
YmIyZDFkOTM1MzVjY2MzNDJiNjBjNDk4Zi4uNDU2MDVhMWI5Y2RjMmNmYTg3YWUyNGMxZDFlMmQz
NzUwYzcxOTlmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTEyLTExICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBIYWppbWUgTW9yaXRhLgor
CisgICAgICAgIFdlIG5lZWQgdG8gcmVnaXN0ZXIgSW5zZXJ0aW9uUG9pbnRzIGV2ZW4gaWYgU2hh
ZG93Um9vdCBpcyBvdXQgb2YgRG9jdW1lbnQsIHNpbmNlIGRpc3RyaWJ1dGlvbiBzaG91bGQgd29y
aworICAgICAgICBvdXQgb2YgRG9jdW1lbnQsIHRvby4KKworICAgICAgICBJbnN0ZWFkIG9mIGNo
ZWNraW5nIGlzSW5Eb2N1bWVudCgpLCB3ZSBoYXZlIHRvIG1ha2Ugc3VyZSBJbnNlcnRpb25Qb2lu
dCBhbmQgYW4gZWxlbWVudCB3aGljaCBJbnNlcnRpb25Qb2ludAorICAgICAgICBpbnNlcnRlZCBp
bnRvIGhhdmUgdGhlIHNhbWUgdHJlZXNjb3BlLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9z
aGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9kb20v
c2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwKKworICAgICAgICAqIGh0bWwv
c2hhZG93L0luc2VydGlvblBvaW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc2VydGlvblBv
aW50OjppbnNlcnRlZEludG8pOgorICAgICAgICAoV2ViQ29yZTo6SW5zZXJ0aW9uUG9pbnQ6OnJl
bW92ZWRGcm9tKToKKwogMjAxMi0xMi0xMSAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5j
b20+CiAKICAgICAgICAgQWRkIEVsZW1lbnQtc3BlY2lmaWMgdHJhdmVyc2FsIGZ1bmN0aW9ucwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9pbnQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9uUG9pbnQuY3BwCmluZGV4IGVl
ODQ0M2U5YjM4YzI0NmEyZjc0MGYyZGI2NzFjZjQwMTNmMTVlZTQuLjk5ZmQwMTJhMTdhY2MxN2Yy
MjU0ZDdlOGNkYzg3ZGE0Yjk1MzhhMjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
c2hhZG93L0luc2VydGlvblBvaW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3NoYWRv
dy9JbnNlcnRpb25Qb2ludC5jcHAKQEAgLTEyMyw0MCArMTIzLDM4IEBAIHZvaWQgSW5zZXJ0aW9u
UG9pbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBhcnNlciwgTm9kZSogYmVmb3Jl
Q2hhbmdlLCBOCiBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25SZXF1ZXN0IEluc2VydGlvblBv
aW50OjppbnNlcnRlZEludG8oQ29udGFpbmVyTm9kZSogaW5zZXJ0aW9uUG9pbnQpCiB7CiAgICAg
SFRNTEVsZW1lbnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Qb2ludCk7Ci0gICAgaWYgKGluc2Vy
dGlvblBvaW50LT5pbkRvY3VtZW50KCkpIHsKLSAgICAgICAgaWYgKFNoYWRvd1Jvb3QqIHJvb3Qg
PSBjb250YWluaW5nU2hhZG93Um9vdCgpKSB7Ci0gICAgICAgICAgICByb290LT5vd25lcigpLT5z
ZXRWYWxpZGl0eVVuZGV0ZXJtaW5lZCgpOwotICAgICAgICAgICAgcm9vdC0+b3duZXIoKS0+aW52
YWxpZGF0ZURpc3RyaWJ1dGlvbigpOwotICAgICAgICAgICAgaWYgKGlzQWN0aXZlKCkgJiYgIW1f
cmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290KSB7Ci0gICAgICAgICAgICAgICAgbV9yZWdpc3RlcmVk
V2l0aFNoYWRvd1Jvb3QgPSB0cnVlOwotICAgICAgICAgICAgICAgIHJvb3QtPnJlZ2lzdGVySW5z
ZXJ0aW9uUG9pbnQodGhpcyk7Ci0gICAgICAgICAgICB9CisKKyAgICBpZiAoU2hhZG93Um9vdCog
cm9vdCA9IGNvbnRhaW5pbmdTaGFkb3dSb290KCkpIHsKKyAgICAgICAgcm9vdC0+b3duZXIoKS0+
c2V0VmFsaWRpdHlVbmRldGVybWluZWQoKTsKKyAgICAgICAgcm9vdC0+b3duZXIoKS0+aW52YWxp
ZGF0ZURpc3RyaWJ1dGlvbigpOworICAgICAgICBpZiAoaXNBY3RpdmUoKSAmJiAhbV9yZWdpc3Rl
cmVkV2l0aFNoYWRvd1Jvb3QgJiYgaW5zZXJ0aW9uUG9pbnQtPnRyZWVTY29wZSgpLT5yb290Tm9k
ZSgpID09IHJvb3QpIHsKKyAgICAgICAgICAgIG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290ID0g
dHJ1ZTsKKyAgICAgICAgICAgIHJvb3QtPnJlZ2lzdGVySW5zZXJ0aW9uUG9pbnQodGhpcyk7CiAg
ICAgICAgIH0KICAgICB9CiAKKwogICAgIHJldHVybiBJbnNlcnRpb25Eb25lOwogfQogCiB2b2lk
IEluc2VydGlvblBvaW50OjpyZW1vdmVkRnJvbShDb250YWluZXJOb2RlKiBpbnNlcnRpb25Qb2lu
dCkKIHsKLSAgICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmluRG9jdW1lbnQoKSkgewotICAgICAgICBT
aGFkb3dSb290KiByb290ID0gY29udGFpbmluZ1NoYWRvd1Jvb3QoKTsKLSAgICAgICAgaWYgKCFy
b290KQotICAgICAgICAgICAgcm9vdCA9IGluc2VydGlvblBvaW50LT5jb250YWluaW5nU2hhZG93
Um9vdCgpOwotCi0gICAgICAgIC8vIGhvc3QgY2FuIGJlIG51bGwgd2hlbiByZW1vdmVkRnJvbSgp
IGlzIGNhbGxlZCBmcm9tIEVsZW1lbnRTaGFkb3cgZGVzdHJ1Y3Rvci4KLSAgICAgICAgRWxlbWVu
dFNoYWRvdyogcm9vdE93bmVyID0gcm9vdCA/IHJvb3QtPm93bmVyKCkgOiAwOwotICAgICAgICBp
ZiAocm9vdE93bmVyKQotICAgICAgICAgICAgcm9vdE93bmVyLT5pbnZhbGlkYXRlRGlzdHJpYnV0
aW9uKCk7Ci0KLSAgICAgICAgLy8gU2luY2UgdGhpcyBpbnNlcnRpb24gcG9pbnQgaXMgbm8gbG9u
Z2VyIHZpc2libGUgZnJvbSB0aGUgc2hhZG93IHN1YnRyZWUsIGl0IG5lZWQgdG8gY2xlYW4gaXRz
ZWxmIHVwLgotICAgICAgICBjbGVhckRpc3RyaWJ1dGlvbigpOwotCi0gICAgICAgIGlmIChtX3Jl
Z2lzdGVyZWRXaXRoU2hhZG93Um9vdCkgewotICAgICAgICAgICAgbV9yZWdpc3RlcmVkV2l0aFNo
YWRvd1Jvb3QgPSBmYWxzZTsKLSAgICAgICAgICAgIGlmIChyb290KQotICAgICAgICAgICAgICAg
IHJvb3QtPnVucmVnaXN0ZXJJbnNlcnRpb25Qb2ludCh0aGlzKTsKLSAgICAgICAgfQorICAgIFNo
YWRvd1Jvb3QqIHJvb3QgPSBjb250YWluaW5nU2hhZG93Um9vdCgpOworICAgIGlmICghcm9vdCkK
KyAgICAgICAgcm9vdCA9IGluc2VydGlvblBvaW50LT5jb250YWluaW5nU2hhZG93Um9vdCgpOwor
CisgICAgLy8gaG9zdCBjYW4gYmUgbnVsbCB3aGVuIHJlbW92ZWRGcm9tKCkgaXMgY2FsbGVkIGZy
b20gRWxlbWVudFNoYWRvdyBkZXN0cnVjdG9yLgorICAgIEVsZW1lbnRTaGFkb3cqIHJvb3RPd25l
ciA9IHJvb3QgPyByb290LT5vd25lcigpIDogMDsKKyAgICBpZiAocm9vdE93bmVyKQorICAgICAg
ICByb290T3duZXItPmludmFsaWRhdGVEaXN0cmlidXRpb24oKTsKKworICAgIC8vIFNpbmNlIHRo
aXMgaW5zZXJ0aW9uIHBvaW50IGlzIG5vIGxvbmdlciB2aXNpYmxlIGZyb20gdGhlIHNoYWRvdyBz
dWJ0cmVlLCBpdCBuZWVkIHRvIGNsZWFuIGl0c2VsZiB1cC4KKyAgICBjbGVhckRpc3RyaWJ1dGlv
bigpOworCisgICAgaWYgKG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290ICYmIGluc2VydGlvblBv
aW50LT50cmVlU2NvcGUoKS0+cm9vdE5vZGUoKSA9PSByb290KSB7CisgICAgICAgIEFTU0VSVChy
b290KTsKKyAgICAgICAgbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgPSBmYWxzZTsKKyAgICAg
ICAgcm9vdC0+dW5yZWdpc3Rlckluc2VydGlvblBvaW50KHRoaXMpOwogICAgIH0KIAogICAgIEhU
TUxFbGVtZW50OjpyZW1vdmVkRnJvbShpbnNlcnRpb25Qb2ludCk7CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggZmZiMGFlZjlm
MTVkZmFmNjQ1MDE5OWE1ZWVjMDAzOGI2YmE0MGFkOS4uODMyMGQxYTI2ZDk4YTdjMTg2YjQ1ZTQ1
ZTQ5ZDdhN2VhYzZlOTQzMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBi
L0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEyLTExICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBIYWppbWUgTW9yaXRhLgor
CisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBvdXQtb2YtRG9jdW1lbnQgdmVyc2lvbiBhbmQgY2Fs
bGluZyBpbnNlcnRlZEludG8vcmVtb3ZlZEZyb20gc2V2ZXJhbCB0aW1lcy4KKworICAgICAgICAq
IGZhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQ6CisgICAg
ICAgICogZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLmh0bWw6CisgICAgICAg
ICogZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4
dDoKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQu
aHRtbDoKKwogMjAxMi0xMi0xMSAgS2VudCBUYW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAK
ICAgICAgICAgW0Nocm9taXVtXSBSZWJhc2VsaW5lIGZvciByZWNlbnQgZm9ybXMgY2hhbmdlcy4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVt
ZW50cy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRl
bnQtZWxlbWVudHMtZXhwZWN0ZWQudHh0CmluZGV4IDczNDA3MzdmZWMwMDRhYjdkYjZkOTE2ODBh
ZDRlYzJhYTJhYWI4NWMuLmQyNmE5OTg1NDkyYjA2MjhkNDU4NWE3OWQ4M2EwYjkzZGI2ZTQyZDMg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVt
ZW50cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1j
b250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dApAQCAtMSw1ICsxLDYgQEAKLVRlc3QgZm9yIEJ1
ZyAxMDA5MjE6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA5MjEg
LSBbU2hhZG93XSBTaGFkb3dSb290IHNob3VsZCBiZSBhYmxlIHRvIGtub3cgdGhlIGV4aXN0ZW5j
ZSBvZiA8Y29udGVudD4KK1Rlc3QgZm9yIEJ1ZyAxMDA5MjEgYW5kIDEwNDM0NjogSFRNTENvbnRl
bnRFbGVtZW50IHNob3VsZCBiZSByZWdpc3RlcmVkIGNvcnJlY3RseS4KIAorSW4gdGhlIGNhc2Ug
aG9zdCBpcyBpbiBkb2N1bWVudAogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkgaXMgZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRv
d1Jvb3QpIGlzIHRydWUKIFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jv
b3QpIGlzIGZhbHNlCkBAIC0xNyw2ICsxOCwzMCBAQCBQQVNTIGludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVs
ZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5oYXNDb250
ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVu
dEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIGlzIHRydWUKK0luIHRoZSBjYXNlIGhvc3QgaXMg
bm90IGluIGRvY3VtZW50CitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9v
dCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkg
aXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlz
IGZhbHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0
cnVlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxz
ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQor
UEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BB
U1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDEpIGlzIHRydWUK
K1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDIpIGlzIHRy
dWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNl
CitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQ
QVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFs
c2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNl
CitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMg
ZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZh
bHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkg
aXMgdHJ1ZQoraW5zZXJ0ZWRJbnRvL3JlbW92ZWRGcm9tIGNhbiBiZSBjYWxsZWQgc2V2ZXJhbCB0
aW1lcy4KK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZh
bHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVl
CitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQ
QVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNT
IGludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBz
dWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMuaHRtbCBiL0xh
eW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCmluZGV4
IGY2MTUxZTI4YzMwNDQ5NDA3ZjA4YWQxMDEyYmQ0OTY4OGFhMjgxMjUuLmIwZmE0ODhmNWY4YjI0
YzIzODQ3NDk4YTNkYTY2NjA3NGQ1NzMwNDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2Zhc3Qv
ZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCisrKyBiL0xheW91dFRlc3RzL2Zh
c3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy5odG1sCkBAIC0xMiw2NiArMTIsOTgg
QEAgZWxzZSBpZiAoIXdpbmRvdy5pbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQpCiA8L2hlYWQ+
CiA8Ym9keT4KIAotPHA+VGVzdCBmb3IgQnVnIDEwMDkyMTogPGEgaHJlZj0iaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMSI+aHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMTwvYT4gLSBbU2hhZG93XSBTaGFkb3dSb290IHNob3Vs
ZCBiZSBhYmxlIHRvIGtub3cgdGhlIGV4aXN0ZW5jZSBvZiAmbHQ7Y29udGVudCZndDs8L3A+Cis8
cD5UZXN0IGZvciBCdWcgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTEwMDkyMSI+MTAwOTIxPC9hPiBhbmQgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNDM0NiI+MTA0MzQ2PC9hPjogSFRNTENvbnRlbnRFbGVt
ZW50IHNob3VsZCBiZSByZWdpc3RlcmVkIGNvcnJlY3RseS48L3A+CiAKLTxkaXYgaWQ9Imhvc3Qi
PjwvZGl2PgorPGRpdiBpZD0id3JhcHBlciI+PC9kaXY+CiA8cHJlIGlkPSJjb25zb2xlIj48L3By
ZT4KIAogPHNjcmlwdD4KLXZhciBob3N0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImhvc3Qi
KTsKK2Z1bmN0aW9uIGRvQ29tbW9uVGVzdCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKworICAgIHZhciBkaXYgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBkaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgiY29udGVudCIpKTsKKyAgICBzaGFkb3dSb290LmFwcGVuZENoaWxkKGRp
dik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93
Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7CisgICAgc2hv
dWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Cisg
ICAgCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj5ObyBJbnNlcnRpb24gUG9pbnRz
PC9kaXY+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVu
dD48L2NvbnRlbnQ+IjsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxz
aGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVu
dEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9
ICI8ZGl2PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+PC9kaXY+PC9kaXY+IjsK
KyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSIpOworICAgIAorICAgIC8vIENhc2UgZm9yIG5lc3RlZCBzaGFkb3cgc3VidHJlZQorICAgIHNo
YWRvd1Jvb3QuaW5uZXJIVE1MID0gJzxkaXY+aW4gc2hhZG93IHJvb3Q8L2Rpdj4nOworICAgIHZh
ciBpbm5lckRpdjEgPSBzaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ2RpdicpOworICAgIGlubmVy
U2hhZG93Um9vdDEgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjEpOworICAgIGlubmVy
U2hhZG93Um9vdDEuaW5uZXJIVE1MID0gIjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2PiI7
CisgICAgdmFyIGlubmVyRGl2MiA9IGlubmVyU2hhZG93Um9vdDEucXVlcnlTZWxlY3RvcignZGl2
Jyk7CisgICAgaW5uZXJTaGFkb3dSb290MiA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGlubmVyRGl2
Mik7CisgICAgaW5uZXJTaGFkb3dSb290Mi5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudCB0aXRs
ZT0nZGVidWdzdG9wJz48L2NvbnRlbnQ+PC9kaXY+IjsKKyAgICAKKyAgICBzaG91bGRCZUZhbHNl
KCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRC
ZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QxKSIpOwor
ICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93
Um9vdDIpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48L2Rpdj4iOworICAg
IHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIp
OworCisgICAgLy8gQ2FzZSBmb3IgbXVsdGlwbGUgc2hhZG93IHN1YnRyZWVzCisgICAgc2hhZG93
Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2PjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50PjwvZGl2
PjwvZGl2PjwvZGl2PiI7CisgICAgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93
Um9vdChob3N0KTsKKyAgICAvLyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJvb3Qgb3IgeW91bmdl
ciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3RoZXIuCisgICAgc2hvdWxkQmVUcnVl
KCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRC
ZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7
CisgICAgCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOwor
ICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSIpOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3Vu
Z2VyU2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICB5b3VuZ2VyU2hhZG93Um9vdC5pbm5lckhUTUwg
PSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhh
c0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7Cit9CisKK2RlYnVnKCdJ
biB0aGUgY2FzZSBob3N0IGlzIGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1lbnQuY3JlYXRl
RWxlbWVudCgnZGl2Jyk7Cit3cmFwcGVyLmFwcGVuZENoaWxkKGhvc3QpOworc2hhZG93Um9vdCA9
IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOworZG9Db21tb25UZXN0KCk7Cit3cmFwcGVyLmlu
bmVySFRNTCA9ICIiOworCitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9jdW1l
bnQnKTsKK2hvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3NoYWRvd1Jvb3Qg
PSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2RvQ29tbW9uVGVzdCgpOword3JhcHBlci5p
bm5lckhUTUwgPSAiIjsKKworZGVidWcoJ2luc2VydGVkSW50by9yZW1vdmVkRnJvbSBjYW4gYmUg
Y2FsbGVkIHNldmVyYWwgdGltZXMuJyk7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1l
bnQoJ2RpdicpOwordmFyIGNvbnRlbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjb250ZW50
Jyk7Cit2YXIgZGl2MSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwordmFyIGRpdjIg
PSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKIHZhciBzaGFkb3dSb290ID0gbmV3IFdl
YktpdFNoYWRvd1Jvb3QoaG9zdCk7Ci0KLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250
ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotCi12YXIgZGl2ID0gZG9jdW1lbnQuY3JlYXRlRWxl
bWVudCgiZGl2Iik7Ci1kaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiY29u
dGVudCIpKTsKLXNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKLXNob3VsZEJlVHJ1ZSgiaW50
ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QucmVt
b3ZlQ2hpbGQoZGl2KTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dChzaGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2Pk5vIEluc2Vy
dGlvbiBQb2ludHM8L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50
PjwvY29udGVudD4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkiKTsKLQotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRv
dz4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jv
b3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxjb250ZW50
PjwvY29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQotLy8gQ2FzZSBmb3IgbmVzdGVkIHNo
YWRvdyBzdWJ0cmVlCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICc8ZGl2PmluIHNoYWRvdyByb290
PC9kaXY+JzsKLXZhciBpbm5lckRpdjEgPSBzaGFkb3dSb290LnF1ZXJ5U2VsZWN0b3IoJ2Rpdicp
OwotdmFyIGlubmVyU2hhZG93Um9vdDEgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5lckRpdjEp
OwotaW5uZXJTaGFkb3dSb290MS5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudD48L2NvbnRlbnQ+
PC9kaXY+IjsKLXZhciBpbm5lckRpdjIgPSBpbm5lclNoYWRvd1Jvb3QxLnF1ZXJ5U2VsZWN0b3Io
J2RpdicpOwotdmFyIGlubmVyU2hhZG93Um9vdDIgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChpbm5l
ckRpdjIpOwotaW5uZXJTaGFkb3dSb290Mi5pbm5lckhUTUwgPSAiPGRpdj48Y29udGVudCB0aXRs
ZT0nZGVidWdzdG9wJz48L2NvbnRlbnQ+PC9kaXY+IjsKLQotc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUoImludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QxKSIpOwotc2hvdWxkQmVUcnVl
KCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFkb3dSb290MikiKTsKLXNoYWRv
d1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PC9kaXY+IjsKLXNob3VsZEJlRmFsc2UoImludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOwotCi0vLyBDYXNlIGZvciBtdWx0aXBs
ZSBzaGFkb3cgc3VidHJlZXMKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2
Pjxjb250ZW50PjwvY29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOwotdmFyIHlvdW5nZXJTaGFk
b3dSb290ID0gbmV3IFdlYktpdFNoYWRvd1Jvb3QoaG9zdCk7Ci0vLyBNb2RpZnlpbmcgb2xkZXIg
c2hhZG93IHJvb3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3Ro
ZXIuCi1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSIpOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJT
aGFkb3dSb290KSIpOwotCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93
PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9v
dCkiKTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2Vy
U2hhZG93Um9vdCkiKTsKLQoteW91bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50
PjwvY29udGVudD4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHNoYWRvd1Jvb3QpIik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK2RpdjEuYXBwZW5kQ2hpbGQoY29udGVudCk7CitzaG91
bGRCZUZhbHNlKCdpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCknKTsKK3No
YWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2MSk7CitzaG91bGRCZVRydWUoJ2ludGVybmFscy5oYXND
b250ZW50RWxlbWVudChzaGFkb3dSb290KScpOworZGl2Mi5hcHBlbmRDaGlsZChob3N0KTsKK3No
b3VsZEJlVHJ1ZSgnaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpJyk7Citk
aXYyLnJlbW92ZUNoaWxkKGhvc3QpOworc2hvdWxkQmVUcnVlKCdpbnRlcm5hbHMuaGFzQ29udGVu
dEVsZW1lbnQoc2hhZG93Um9vdCknKTsKK3NoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2MSk7Citz
aG91bGRCZUZhbHNlKCdpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCknKTsK
K2RpdjEucmVtb3ZlQ2hpbGQoY29udGVudCk7CisKK3dyYXBwZXIuaW5uZXJIVE1MID0gJyc7CiA8
L3NjcmlwdD4KIDxzY3JpcHQgc3JjPSIuLi8uLi9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3No
YWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9pbnQtZXhwZWN0ZWQudHh0
CmluZGV4IGRjNGExNmI3NTc4YWI0ZDUxZDZhNjMwNzAyNTliNDg1ZWVjNGZlMTAuLmQ2OGQ5MGFj
NzdkYTE4YWEyZDliNTBmMDJmYzgxY2JjOGFiMjQ2NjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBv
aW50LWV4cGVjdGVkLnR4dApAQCAtMSwzICsxLDYgQEAKK1Rlc3QgZm9yIEJ1ZyA5NzE4NCBhbmQg
MTA0MzQ2IDogSFRNTFNoYWRvd0VsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgY29ycmVjdGx5
LgorCitJbiB0aGUgY2FzZSBob3N0IGlzIGluIGRvY3VtZW50CiBQQVNTIGludGVybmFscy5oYXNT
aGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMu
aGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQogUEFTUyBpbnRlcm5h
bHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKQEAgLTExLDgg
KzE0LDI3IEBAIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jv
b3QpIGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3Vu
Z2VyU2hhZG93Um9vdCkgaXMgZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNl
cnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgdHJ1ZQorSW4gdGhlIGNhc2UgaG9zdCBp
cyBub3QgaW4gZG9jdW1lbnQKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Q
b2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRp
b25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5z
ZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNT
aGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFs
cy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVy
bmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgZmFsc2UK
K1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZh
bHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93
Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNo
YWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2lu
dCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMgdHJ1ZQoraW5zZXJ0ZWRJbnRvL3JlbW92ZWRGcm9tIGNh
biBiZSBjYWxsZWQgc2V2ZXJhbCB0aW1lcy4KK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2Vy
dGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJ
bnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNT
aGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBzdWNjZXNz
ZnVsbHlQYXJzZWQgaXMgdHJ1ZQogCiBURVNUIENPTVBMRVRFCi1UZXN0IGZvciBCdWcgOTcxODQ6
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NCAtIFtTaGFkb3dd
IFNoYWRvd1Jvb3Qgc2hvdWxkIGtub3cgd2hldGhlciA8c2hhZG93PiBpbiBpdHMgdHJlZXNjb3Bl
CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWlu
c2VydGlvbi1wb2ludC5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFk
b3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwKaW5kZXggOTg2NzAyYjkyYmE4Y2JmNTM1OTRlZTc1NDhh
MGJkMTFkN2I5NDE2Ny4uZWZlNDM3MmJjYmQzZTFmMjU5ZWFjZjMyOGFiNjNlZTExYTFiMjUwNiAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0
aW9uLXBvaW50Lmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFk
b3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwKQEAgLTExLDQ5ICsxMSw4MSBAQCBlbHNlIGlmICghd2lu
ZG93LmludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCkKIDwvc2NyaXB0PgogPC9oZWFk
PgogPGJvZHk+Ci0gIDxzcGFuPlRlc3QgZm9yIEJ1ZyA5NzE4NDogPGEgaHJlZj0iaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3MTg0Ij5odHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcxODQ8L2E+IC0KLSAgICBbU2hhZG93XSBTaGFkb3dSb290
IHNob3VsZCBrbm93IHdoZXRoZXIgJmx0O3NoYWRvdyZndDsgaW4gaXRzIHRyZWVzY29wZQotICA8
L3NwYW4+Ci0gIDxkaXYgaWQ9Imhvc3QiPjwvZGl2PgorCis8cD5UZXN0IGZvciBCdWcgPGEgaHJl
Zj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3MTg0Ij45NzE4NDwv
YT4gYW5kIDxhIGhyZWY9Imh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDQzNDYiPjEwNDM0NjwvYT4gOiBIVE1MU2hhZG93RWxlbWVudCBzaG91bGQgYmUgcmVnaXN0ZXJl
ZCBjb3JyZWN0bHkuPC9wPgorCis8ZGl2IGlkPSJ3cmFwcGVyIj48L2Rpdj4KKzxwcmUgaWQ9ImNv
bnNvbGUiPjwvcHJlPgogCiA8c2NyaXB0PgotdmFyIGhvc3QgPSBkb2N1bWVudC5nZXRFbGVtZW50
QnlJZCgiaG9zdCIpOwotdmFyIHNoYWRvd1Jvb3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0
KTsKK2Z1bmN0aW9uIGRvVGVzdCgpIHsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFz
U2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKworICAgIHZhciBkaXYgPSBkb2N1
bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsKKyAgICBkaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgic2hhZG93IikpOworICAgIHNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2
KTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChz
aGFkb3dSb290KSIpOwogCi1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0
aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdik7
CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNo
YWRvd1Jvb3QpIik7CiAKLXZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTsK
LWRpdi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzaGFkb3ciKSk7Ci1zaGFk
b3dSb290LmFwcGVuZENoaWxkKGRpdik7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gIjxkaXY+Tm8gSW5zZXJ0aW9uIFBvaW50czwvZGl2PiI7CisgICAgc2hvdWxkQmVGYWxzZSgi
aW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRv
d1Jvb3QucmVtb3ZlQ2hpbGQoZGl2KTsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gIjxjb250ZW50PjwvY29udGVudD4iOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOwogCi1zaGFkb3dSb290LmlubmVy
SFRNTCA9ICI8ZGl2Pk5vIEluc2VydGlvbiBQb2ludHM8L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgi
aW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hh
ZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOworICAgIHNob3VsZEJlVHJ1
ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNo
YWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOwotc2hvdWxkQmVGYWxz
ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAg
c2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2PjxkaXY+PHNoYWRvdz48L3NoYWRvdz48
L2Rpdj48L2Rpdj48L2Rpdj4iOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0g
IjxzaGFkb3c+PC9zaGFkb3c+IjsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0lu
c2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcg
V2ViS2l0U2hhZG93Um9vdChob3N0KTsKKyAgICAvLyBNb2RpZnlpbmcgb2xkZXIgc2hhZG93IHJv
b3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3RoZXIuCisgICAg
c2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9v
dCkiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9p
bnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+
PGRpdj48ZGl2PjxzaGFkb3c+PC9zaGFkb3c+PC9kaXY+PC9kaXY+PC9kaXY+IjsKLXNob3VsZEJl
VHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7Cisg
ICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7CisgICAgc2hv
dWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3Qp
Iik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHlvdW5nZXJTaGFkb3dSb290KSIpOwogCi12YXIgeW91bmdlclNoYWRvd1Jvb3QgPSBuZXcgV2Vi
S2l0U2hhZG93Um9vdChob3N0KTsKLS8vIE1vZGlmeWluZyBvbGRlciBzaGFkb3cgcm9vdCBvciB5
b3VuZ2VyIHNoYWRvdyByb290IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhlci4KLXNob3VsZEJlVHJ1
ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7Ci1zaG91
bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRv
d1Jvb3QpIik7CisgICAgeW91bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9z
aGFkb3c+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9u
UG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNTaGFk
b3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK30KIAotc2hhZG93Um9vdC5p
bm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5h
bHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlRmFsc2Uo
ImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsK
K2RlYnVnKCdJbiB0aGUgY2FzZSBob3N0IGlzIGluIGRvY3VtZW50Jyk7Citob3N0ID0gZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit3cmFwcGVyLmFwcGVuZENoaWxkKGhvc3QpOworc2hh
ZG93Um9vdCA9IG5ldyBXZWJLaXRTaGFkb3dSb290KGhvc3QpOworZG9UZXN0KCk7Cit3cmFwcGVy
LmlubmVySFRNTCA9ICIiOworCitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9j
dW1lbnQnKTsKK2hvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3NoYWRvd1Jv
b3QgPSBuZXcgV2ViS2l0U2hhZG93Um9vdChob3N0KTsKK2RvVGVzdCgpOword3JhcHBlci5pbm5l
ckhUTUwgPSAiIjsKKworZGVidWcoJ2luc2VydGVkSW50by9yZW1vdmVkRnJvbSBjYW4gYmUgY2Fs
bGVkIHNldmVyYWwgdGltZXMuJyk7Cit2YXIgaG9zdCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
J2RpdicpOwordmFyIHNoYWRvdyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NoYWRvdycpOwor
dmFyIGRpdjEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3ZhciBkaXYyID0gZG9j
dW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit2YXIgc2hhZG93Um9vdCA9IG5ldyBXZWJLaXRT
aGFkb3dSb290KGhvc3QpOworZGl2MS5hcHBlbmRDaGlsZChzaGFkb3cpOworc2hvdWxkQmVGYWxz
ZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpJyk7CitzaGFk
b3dSb290LmFwcGVuZENoaWxkKGRpdjEpOworc2hvdWxkQmVUcnVlKCdpbnRlcm5hbHMuaGFzU2hh
ZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCknKTsKK2RpdjIuYXBwZW5kQ2hpbGQoaG9zdCk7
CitzaG91bGRCZVRydWUoJ2ludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dS
b290KScpOworZGl2Mi5yZW1vdmVDaGlsZChob3N0KTsKK3Nob3VsZEJlVHJ1ZSgnaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpJyk7CitzaGFkb3dSb290LnJlbW92
ZUNoaWxkKGRpdjEpOworc2hvdWxkQmVGYWxzZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KHNoYWRvd1Jvb3QpJyk7CitkaXYxLnJlbW92ZUNoaWxkKHNoYWRvdyk7CiAKLXlvdW5n
ZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7Ci1zaG91bGRCZUZh
bHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNo
b3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFk
b3dSb290KSIpOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0iLi4vLi4vanMvcmVzb3VyY2VzL2pz
LXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>178974</attachid>
            <date>2012-12-11 23:04:24 -0800</date>
            <delta_ts>2012-12-11 23:23:35 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-104346-20121212160144.patch</filename>
            <type>text/plain</type>
            <size>22285</size>
            <attacher name="Shinya Kawanaka">shinyak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NDE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTY3MTA1NWQ3ZWY1OWFh
NGY2YzQ5ZDJmZjYzNTUxYjAxYjM1ZGI2Mi4uNDMxYmExNDIwZGVkZjlkMGE3NmVhNGZlYTVhYjQ5
ODk4NGRiZmYxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTEyLTExICBTaGlu
eWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKworICAgICAgICBbU2hhZG93IERP
TV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRvd1Jvb3Qgc2hvdWxkIHdvcmsg
b3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBieSBIYWppbWUgTW9yaXRhLgor
CisgICAgICAgIFdlIG5lZWQgdG8gcmVnaXN0ZXIgSW5zZXJ0aW9uUG9pbnRzIGV2ZW4gaWYgU2hh
ZG93Um9vdCBpcyBvdXQgb2YgRG9jdW1lbnQsIHNpbmNlIGRpc3RyaWJ1dGlvbiBzaG91bGQgd29y
aworICAgICAgICBvdXQgb2YgRG9jdW1lbnQsIHRvby4KKworICAgICAgICBJbnN0ZWFkIG9mIGNo
ZWNraW5nIGlzSW5Eb2N1bWVudCgpLCB3ZSBoYXZlIHRvIG1ha2Ugc3VyZSBJbnNlcnRpb25Qb2lu
dCBhbmQgYW4gZWxlbWVudCB3aGljaCBJbnNlcnRpb25Qb2ludAorICAgICAgICBpbnNlcnRlZCBp
bnRvIGhhdmUgdGhlIHNhbWUgdHJlZXNjb3BlLgorCisgICAgICAgIFRlc3RzOiBmYXN0L2RvbS9z
aGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMuaHRtbAorICAgICAgICAgICAgICAgZmFzdC9kb20v
c2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50Lmh0bWwKKworICAgICAgICAqIGh0bWwv
c2hhZG93L0luc2VydGlvblBvaW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc2VydGlvblBv
aW50OjppbnNlcnRlZEludG8pOgorICAgICAgICAoV2ViQ29yZTo6SW5zZXJ0aW9uUG9pbnQ6OnJl
bW92ZWRGcm9tKToKKwogMjAxMi0xMi0xMSAgVGFrYXNoaSBTYWthbW90byAgPHRhc2FrQGdvb2ds
ZS5jb20+CiAKICAgICAgICAgVGV4dCBub2RlcyBpbiBzaGFkb3cgcm9vdHMgZG9uJ3QgaW5oZXJp
dCBzdHlsZSBwcm9wZXJseQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cv
SW5zZXJ0aW9uUG9pbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvSW5zZXJ0aW9u
UG9pbnQuY3BwCmluZGV4IGVlODQ0M2U5YjM4YzI0NmEyZjc0MGYyZGI2NzFjZjQwMTNmMTVlZTQu
Ljk5ZmQwMTJhMTdhY2MxN2YyMjU0ZDdlOGNkYzg3ZGE0Yjk1MzhhMjMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L0luc2VydGlvblBvaW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3NoYWRvdy9JbnNlcnRpb25Qb2ludC5jcHAKQEAgLTEyMyw0MCArMTIzLDM4
IEBAIHZvaWQgSW5zZXJ0aW9uUG9pbnQ6OmNoaWxkcmVuQ2hhbmdlZChib29sIGNoYW5nZWRCeVBh
cnNlciwgTm9kZSogYmVmb3JlQ2hhbmdlLCBOCiBOb2RlOjpJbnNlcnRpb25Ob3RpZmljYXRpb25S
ZXF1ZXN0IEluc2VydGlvblBvaW50OjppbnNlcnRlZEludG8oQ29udGFpbmVyTm9kZSogaW5zZXJ0
aW9uUG9pbnQpCiB7CiAgICAgSFRNTEVsZW1lbnQ6Omluc2VydGVkSW50byhpbnNlcnRpb25Qb2lu
dCk7Ci0gICAgaWYgKGluc2VydGlvblBvaW50LT5pbkRvY3VtZW50KCkpIHsKLSAgICAgICAgaWYg
KFNoYWRvd1Jvb3QqIHJvb3QgPSBjb250YWluaW5nU2hhZG93Um9vdCgpKSB7Ci0gICAgICAgICAg
ICByb290LT5vd25lcigpLT5zZXRWYWxpZGl0eVVuZGV0ZXJtaW5lZCgpOwotICAgICAgICAgICAg
cm9vdC0+b3duZXIoKS0+aW52YWxpZGF0ZURpc3RyaWJ1dGlvbigpOwotICAgICAgICAgICAgaWYg
KGlzQWN0aXZlKCkgJiYgIW1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dSb290KSB7Ci0gICAgICAgICAg
ICAgICAgbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgPSB0cnVlOwotICAgICAgICAgICAgICAg
IHJvb3QtPnJlZ2lzdGVySW5zZXJ0aW9uUG9pbnQodGhpcyk7Ci0gICAgICAgICAgICB9CisKKyAg
ICBpZiAoU2hhZG93Um9vdCogcm9vdCA9IGNvbnRhaW5pbmdTaGFkb3dSb290KCkpIHsKKyAgICAg
ICAgcm9vdC0+b3duZXIoKS0+c2V0VmFsaWRpdHlVbmRldGVybWluZWQoKTsKKyAgICAgICAgcm9v
dC0+b3duZXIoKS0+aW52YWxpZGF0ZURpc3RyaWJ1dGlvbigpOworICAgICAgICBpZiAoaXNBY3Rp
dmUoKSAmJiAhbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgJiYgaW5zZXJ0aW9uUG9pbnQtPnRy
ZWVTY29wZSgpLT5yb290Tm9kZSgpID09IHJvb3QpIHsKKyAgICAgICAgICAgIG1fcmVnaXN0ZXJl
ZFdpdGhTaGFkb3dSb290ID0gdHJ1ZTsKKyAgICAgICAgICAgIHJvb3QtPnJlZ2lzdGVySW5zZXJ0
aW9uUG9pbnQodGhpcyk7CiAgICAgICAgIH0KICAgICB9CiAKKwogICAgIHJldHVybiBJbnNlcnRp
b25Eb25lOwogfQogCiB2b2lkIEluc2VydGlvblBvaW50OjpyZW1vdmVkRnJvbShDb250YWluZXJO
b2RlKiBpbnNlcnRpb25Qb2ludCkKIHsKLSAgICBpZiAoaW5zZXJ0aW9uUG9pbnQtPmluRG9jdW1l
bnQoKSkgewotICAgICAgICBTaGFkb3dSb290KiByb290ID0gY29udGFpbmluZ1NoYWRvd1Jvb3Qo
KTsKLSAgICAgICAgaWYgKCFyb290KQotICAgICAgICAgICAgcm9vdCA9IGluc2VydGlvblBvaW50
LT5jb250YWluaW5nU2hhZG93Um9vdCgpOwotCi0gICAgICAgIC8vIGhvc3QgY2FuIGJlIG51bGwg
d2hlbiByZW1vdmVkRnJvbSgpIGlzIGNhbGxlZCBmcm9tIEVsZW1lbnRTaGFkb3cgZGVzdHJ1Y3Rv
ci4KLSAgICAgICAgRWxlbWVudFNoYWRvdyogcm9vdE93bmVyID0gcm9vdCA/IHJvb3QtPm93bmVy
KCkgOiAwOwotICAgICAgICBpZiAocm9vdE93bmVyKQotICAgICAgICAgICAgcm9vdE93bmVyLT5p
bnZhbGlkYXRlRGlzdHJpYnV0aW9uKCk7Ci0KLSAgICAgICAgLy8gU2luY2UgdGhpcyBpbnNlcnRp
b24gcG9pbnQgaXMgbm8gbG9uZ2VyIHZpc2libGUgZnJvbSB0aGUgc2hhZG93IHN1YnRyZWUsIGl0
IG5lZWQgdG8gY2xlYW4gaXRzZWxmIHVwLgotICAgICAgICBjbGVhckRpc3RyaWJ1dGlvbigpOwot
Ci0gICAgICAgIGlmIChtX3JlZ2lzdGVyZWRXaXRoU2hhZG93Um9vdCkgewotICAgICAgICAgICAg
bV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jvb3QgPSBmYWxzZTsKLSAgICAgICAgICAgIGlmIChyb290
KQotICAgICAgICAgICAgICAgIHJvb3QtPnVucmVnaXN0ZXJJbnNlcnRpb25Qb2ludCh0aGlzKTsK
LSAgICAgICAgfQorICAgIFNoYWRvd1Jvb3QqIHJvb3QgPSBjb250YWluaW5nU2hhZG93Um9vdCgp
OworICAgIGlmICghcm9vdCkKKyAgICAgICAgcm9vdCA9IGluc2VydGlvblBvaW50LT5jb250YWlu
aW5nU2hhZG93Um9vdCgpOworCisgICAgLy8gaG9zdCBjYW4gYmUgbnVsbCB3aGVuIHJlbW92ZWRG
cm9tKCkgaXMgY2FsbGVkIGZyb20gRWxlbWVudFNoYWRvdyBkZXN0cnVjdG9yLgorICAgIEVsZW1l
bnRTaGFkb3cqIHJvb3RPd25lciA9IHJvb3QgPyByb290LT5vd25lcigpIDogMDsKKyAgICBpZiAo
cm9vdE93bmVyKQorICAgICAgICByb290T3duZXItPmludmFsaWRhdGVEaXN0cmlidXRpb24oKTsK
KworICAgIC8vIFNpbmNlIHRoaXMgaW5zZXJ0aW9uIHBvaW50IGlzIG5vIGxvbmdlciB2aXNpYmxl
IGZyb20gdGhlIHNoYWRvdyBzdWJ0cmVlLCBpdCBuZWVkIHRvIGNsZWFuIGl0c2VsZiB1cC4KKyAg
ICBjbGVhckRpc3RyaWJ1dGlvbigpOworCisgICAgaWYgKG1fcmVnaXN0ZXJlZFdpdGhTaGFkb3dS
b290ICYmIGluc2VydGlvblBvaW50LT50cmVlU2NvcGUoKS0+cm9vdE5vZGUoKSA9PSByb290KSB7
CisgICAgICAgIEFTU0VSVChyb290KTsKKyAgICAgICAgbV9yZWdpc3RlcmVkV2l0aFNoYWRvd1Jv
b3QgPSBmYWxzZTsKKyAgICAgICAgcm9vdC0+dW5yZWdpc3Rlckluc2VydGlvblBvaW50KHRoaXMp
OwogICAgIH0KIAogICAgIEhUTUxFbGVtZW50OjpyZW1vdmVkRnJvbShpbnNlcnRpb25Qb2ludCk7
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKaW5kZXggNGNkM2I4NWE2MTQzYTk1NzgxZjkxOGY3MGJlOTMwNjBhNzRkNDI1ZC4uNTNiNThk
OGYxZTRiYjdjZDIyY2JiZWE0ODY2Mzg1ZTBjM2I3NDc5OCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBA
CisyMDEyLTEyLTExICBTaGlueWEgS2F3YW5ha2EgIDxzaGlueWFrQGNocm9taXVtLm9yZz4KKwor
ICAgICAgICBbU2hhZG93IERPTV0gcmVnaXN0ZXJpbmcgSW5zZXJ0aW9uUG9pbnRzIHRvIFNoYWRv
d1Jvb3Qgc2hvdWxkIHdvcmsgb3V0IG9mIGEgZG9jdW1lbnQuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDQzNDYKKworICAgICAgICBSZXZpZXdlZCBi
eSBIYWppbWUgTW9yaXRhLgorCisgICAgICAgIEFkZGVkIHRlc3RzIGZvciBvdXQtb2YtRG9jdW1l
bnQgdmVyc2lvbiBhbmQgY2FsbGluZyBpbnNlcnRlZEludG8vcmVtb3ZlZEZyb20gc2V2ZXJhbCB0
aW1lcy4KKworICAgICAgICAqIGZhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1l
bnRzLmh0bWw6CisgICAgICAgICogZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9u
LXBvaW50LWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBmYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRv
dy1pbnNlcnRpb24tcG9pbnQuaHRtbDoKKwogMjAxMi0xMi0xMSAgVGFrYXNoaSBTYWthbW90byAg
PHRhc2FrQGdvb2dsZS5jb20+CiAKICAgICAgICAgVGV4dCBub2RlcyBpbiBzaGFkb3cgcm9vdHMg
ZG9uJ3QgaW5oZXJpdCBzdHlsZSBwcm9wZXJseQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL2Zhc3QvZG9tL3NoYWRvdy9oYXMtY29udGVudC1lbGVtZW50cy1leHBlY3RlZC50eHQKaW5k
ZXggNzM0MDczN2ZlYzAwNGFiN2RiNmQ5MTY4MGFkNGVjMmFhMmFhYjg1Yy4uZDI2YTk5ODU0OTJi
MDYyOGQ0NTg1YTc5ZDgzYTBiOTNkYjZlNDJkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFz
dC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1lbnRzLWV4cGVjdGVkLnR4dAorKysgYi9MYXlv
dXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLWNvbnRlbnQtZWxlbWVudHMtZXhwZWN0ZWQudHh0
CkBAIC0xLDUgKzEsNiBAQAotVGVzdCBmb3IgQnVnIDEwMDkyMTogaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDkyMSAtIFtTaGFkb3ddIFNoYWRvd1Jvb3Qgc2hvdWxk
IGJlIGFibGUgdG8ga25vdyB0aGUgZXhpc3RlbmNlIG9mIDxjb250ZW50PgorVGVzdCBmb3IgQnVn
IDEwMDkyMSBhbmQgMTA0MzQ2OiBIVE1MQ29udGVudEVsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVy
ZWQgY29ycmVjdGx5LgogCitJbiB0aGUgY2FzZSBob3N0IGlzIGluIGRvY3VtZW50CiBQQVNTIGlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRl
cm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgdHJ1ZQogUEFTUyBpbnRlcm5h
bHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKQEAgLTE3LDYgKzE4LDMw
IEBAIFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNl
CiBQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkgaXMg
ZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZh
bHNlCiBQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkg
aXMgdHJ1ZQorSW4gdGhlIGNhc2UgaG9zdCBpcyBub3QgaW4gZG9jdW1lbnQKK1BBU1MgaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5o
YXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFz
Q29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0Nv
bnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRl
bnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KSBpcyB0cnVlCitQQVNTIGludGVybmFscy5oYXNDb250ZW50RWxl
bWVudChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1l
bnQoaW5uZXJTaGFkb3dSb290MSkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVudEVs
ZW1lbnQoaW5uZXJTaGFkb3dSb290MikgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVu
dEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVt
ZW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29udGVu
dEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRl
bnRFbGVtZW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyB0cnVlCitpbnNlcnRlZEludG8vcmVtb3Zl
ZEZyb20gY2FuIGJlIGNhbGxlZCBzZXZlcmFsIHRpbWVzLgorUEFTUyBpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRl
bnRFbGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRF
bGVtZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVt
ZW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCiAK
IFRFU1QgQ09NUExFVEUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvZG9tL3NoYWRvdy9o
YXMtY29udGVudC1lbGVtZW50cy5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hh
cy1jb250ZW50LWVsZW1lbnRzLmh0bWwKaW5kZXggOTBkNjJiYzdhOGQxMjA2MDc5ZjM2ZWRjMWI1
OGYzYTk3ZjJkMWU1Ni4uMjU2ZGFlOWNlMzQ3YWJhYjUzOTA4NTY2ZWY0OGE4MTI4NjkyMWMxNyAx
MDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVsZW1l
bnRzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1jb250ZW50LWVs
ZW1lbnRzLmh0bWwKQEAgLTEyLDY2ICsxMiw5OCBAQCBlbHNlIGlmICghd2luZG93LmludGVybmFs
cy5oYXNDb250ZW50RWxlbWVudCkKIDwvaGVhZD4KIDxib2R5PgogCi08cD5UZXN0IGZvciBCdWcg
MTAwOTIxOiA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTAwOTIxIj5odHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwOTIxPC9h
PiAtIFtTaGFkb3ddIFNoYWRvd1Jvb3Qgc2hvdWxkIGJlIGFibGUgdG8ga25vdyB0aGUgZXhpc3Rl
bmNlIG9mICZsdDtjb250ZW50Jmd0OzwvcD4KKzxwPlRlc3QgZm9yIEJ1ZyA8YSBocmVmPSJodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwOTIxIj4xMDA5MjE8L2E+IGFu
ZCA8YSBocmVmPSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA0MzQ2
Ij4xMDQzNDY8L2E+OiBIVE1MQ29udGVudEVsZW1lbnQgc2hvdWxkIGJlIHJlZ2lzdGVyZWQgY29y
cmVjdGx5LjwvcD4KIAotPGRpdiBpZD0iaG9zdCI+PC9kaXY+Cis8ZGl2IGlkPSJ3cmFwcGVyIj48
L2Rpdj4KIDxwcmUgaWQ9ImNvbnNvbGUiPjwvcHJlPgogCiA8c2NyaXB0PgotdmFyIGhvc3QgPSBk
b2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaG9zdCIpOworZnVuY3Rpb24gZG9Db21tb25UZXN0KCkg
eworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dS
b290KSIpOworCisgICAgdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOwor
ICAgIGRpdi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjb250ZW50IikpOwor
ICAgIHNoYWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKKyAgICBzaG91bGRCZVRydWUoImludGVy
bmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIHNoYWRvd1Jv
b3QucmVtb3ZlQ2hpbGQoZGl2KTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29u
dGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dSb290LmlubmVySFRN
TCA9ICI8ZGl2Pk5vIEluc2VydGlvbiBQb2ludHM8L2Rpdj4iOworICAgIHNob3VsZEJlRmFsc2Uo
ImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIAorICAgIHNo
YWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxjb250ZW50PjwvY29udGVudD4iOworICAgIHNob3VsZEJl
VHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgCisg
ICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPHNoYWRvdz48L3NoYWRvdz4iOworICAgIHNob3Vs
ZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAg
IAorICAgIHNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+PGRpdj48ZGl2Pjxjb250ZW50Pjwv
Y29udGVudD48L2Rpdj48L2Rpdj48L2Rpdj4iOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxz
Lmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgCisgICAgLy8gQ2FzZSBmb3Ig
bmVzdGVkIHNoYWRvdyBzdWJ0cmVlCisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAnPGRpdj5p
biBzaGFkb3cgcm9vdDwvZGl2Pic7CisgICAgdmFyIGlubmVyRGl2MSA9IHNoYWRvd1Jvb3QucXVl
cnlTZWxlY3RvcignZGl2Jyk7CisgICAgaW5uZXJTaGFkb3dSb290MSA9IGlubmVyRGl2MS53ZWJr
aXRDcmVhdGVTaGFkb3dSb290KCk7CisgICAgaW5uZXJTaGFkb3dSb290MS5pbm5lckhUTUwgPSAi
PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+IjsKKyAgICB2YXIgaW5uZXJEaXYyID0gaW5u
ZXJTaGFkb3dSb290MS5xdWVyeVNlbGVjdG9yKCdkaXYnKTsKKyAgICBpbm5lclNoYWRvd1Jvb3Qy
ID0gaW5uZXJEaXYyLndlYmtpdENyZWF0ZVNoYWRvd1Jvb3QoKTsKKyAgICBpbm5lclNoYWRvd1Jv
b3QyLmlubmVySFRNTCA9ICI8ZGl2Pjxjb250ZW50IHRpdGxlPSdkZWJ1Z3N0b3AnPjwvY29udGVu
dD48L2Rpdj4iOworICAgIAorICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0Nv
bnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDEpIik7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRl
cm5hbHMuaGFzQ29udGVudEVsZW1lbnQoaW5uZXJTaGFkb3dSb290MikiKTsKKyAgICBzaGFkb3dS
b290LmlubmVySFRNTCA9ICI8ZGl2PjwvZGl2PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJu
YWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisKKyAgICAvLyBDYXNlIGZvciBt
dWx0aXBsZSBzaGFkb3cgc3VidHJlZXMKKyAgICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2
PjxkaXY+PGRpdj48Y29udGVudD48L2NvbnRlbnQ+PC9kaXY+PC9kaXY+PC9kaXY+IjsKKyAgICB5
b3VuZ2VyU2hhZG93Um9vdCA9IGhvc3Qud2Via2l0Q3JlYXRlU2hhZG93Um9vdCgpOworICAgIC8v
IE1vZGlmeWluZyBvbGRlciBzaGFkb3cgcm9vdCBvciB5b3VuZ2VyIHNoYWRvdyByb290IGRvZXNu
J3QgYWZmZWN0IHRoZSBvdGhlci4KKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250
ZW50RWxlbWVudChzaGFkb3dSb290KSIpOworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5o
YXNDb250ZW50RWxlbWVudCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKKyAgICAKKyAgICBzaGFkb3dS
b290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7CisgICAgc2hvdWxkQmVGYWxzZSgi
aW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVG
YWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwor
ICAgIAorICAgIHlvdW5nZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8Y29udGVudD48L2NvbnRl
bnQ+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVu
dCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK30KKworZGVidWcoJ0luIHRoZSBjYXNlIGhvc3QgaXMg
aW4gZG9jdW1lbnQnKTsKK2hvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTsKK3dy
YXBwZXIuYXBwZW5kQ2hpbGQoaG9zdCk7CitzaGFkb3dSb290ID0gaG9zdC53ZWJraXRDcmVhdGVT
aGFkb3dSb290KCk7Citkb0NvbW1vblRlc3QoKTsKK3dyYXBwZXIuaW5uZXJIVE1MID0gIiI7CisK
K2RlYnVnKCdJbiB0aGUgY2FzZSBob3N0IGlzIG5vdCBpbiBkb2N1bWVudCcpOworaG9zdCA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOworc2hhZG93Um9vdCA9IGhvc3Qud2Via2l0Q3Jl
YXRlU2hhZG93Um9vdCgpOworZG9Db21tb25UZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIi
OworCitkZWJ1ZygnaW5zZXJ0ZWRJbnRvL3JlbW92ZWRGcm9tIGNhbiBiZSBjYWxsZWQgc2V2ZXJh
bCB0aW1lcy4nKTsKK3ZhciBob3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit2
YXIgY29udGVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NvbnRlbnQnKTsKK3ZhciBkaXYx
ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit2YXIgZGl2MiA9IGRvY3VtZW50LmNy
ZWF0ZUVsZW1lbnQoJ2RpdicpOwogdmFyIHNoYWRvd1Jvb3QgPSBob3N0LndlYmtpdENyZWF0ZVNo
YWRvd1Jvb3QoKTsKLQotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHNoYWRvd1Jvb3QpIik7Ci0KLXZhciBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYi
KTsKLWRpdi5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJjb250ZW50IikpOwot
c2hhZG93Um9vdC5hcHBlbmRDaGlsZChkaXYpOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFz
Q29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQotc2hhZG93Um9vdC5yZW1vdmVDaGlsZChk
aXYpOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jv
b3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxkaXY+Tm8gSW5zZXJ0aW9uIFBvaW50
czwvZGl2PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hh
ZG93Um9vdCkiKTsKLQotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50
PiI7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSIpOwotCi1zaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7Ci1zaG91
bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLQot
c2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2PjxkaXY+PGNvbnRlbnQ+PC9jb250ZW50
PjwvZGl2PjwvZGl2PjwvZGl2PiI7Ci1zaG91bGRCZVRydWUoImludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KSIpOwotCi0vLyBDYXNlIGZvciBuZXN0ZWQgc2hhZG93IHN1YnRy
ZWUKLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gJzxkaXY+aW4gc2hhZG93IHJvb3Q8L2Rpdj4nOwot
dmFyIGlubmVyRGl2MSA9IHNoYWRvd1Jvb3QucXVlcnlTZWxlY3RvcignZGl2Jyk7Ci12YXIgaW5u
ZXJTaGFkb3dSb290MSA9IGlubmVyRGl2MS53ZWJraXRDcmVhdGVTaGFkb3dSb290KCk7Ci1pbm5l
clNoYWRvd1Jvb3QxLmlubmVySFRNTCA9ICI8ZGl2Pjxjb250ZW50PjwvY29udGVudD48L2Rpdj4i
OwotdmFyIGlubmVyRGl2MiA9IGlubmVyU2hhZG93Um9vdDEucXVlcnlTZWxlY3RvcignZGl2Jyk7
Ci12YXIgaW5uZXJTaGFkb3dSb290MiA9IGlubmVyRGl2Mi53ZWJraXRDcmVhdGVTaGFkb3dSb290
KCk7Ci1pbm5lclNoYWRvd1Jvb3QyLmlubmVySFRNTCA9ICI8ZGl2Pjxjb250ZW50IHRpdGxlPSdk
ZWJ1Z3N0b3AnPjwvY29udGVudD48L2Rpdj4iOwotCi1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMu
aGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxz
Lmhhc0NvbnRlbnRFbGVtZW50KGlubmVyU2hhZG93Um9vdDEpIik7Ci1zaG91bGRCZVRydWUoImlu
dGVybmFscy5oYXNDb250ZW50RWxlbWVudChpbm5lclNoYWRvd1Jvb3QyKSIpOwotc2hhZG93Um9v
dC5pbm5lckhUTUwgPSAiPGRpdj48L2Rpdj4iOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhh
c0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpIik7Ci0KLS8vIENhc2UgZm9yIG11bHRpcGxlIHNo
YWRvdyBzdWJ0cmVlcwotc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGRpdj48ZGl2PjxkaXY+PGNv
bnRlbnQ+PC9jb250ZW50PjwvZGl2PjwvZGl2PjwvZGl2PiI7Ci12YXIgeW91bmdlclNoYWRvd1Jv
b3QgPSBob3N0LndlYmtpdENyZWF0ZVNoYWRvd1Jvb3QoKTsKLS8vIE1vZGlmeWluZyBvbGRlciBz
aGFkb3cgcm9vdCBvciB5b3VuZ2VyIHNoYWRvdyByb290IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhl
ci4KLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHNoYWRvd1Jvb3Qp
Iik7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoeW91bmdlclNo
YWRvd1Jvb3QpIik7Ci0KLXNoYWRvd1Jvb3QuaW5uZXJIVE1MID0gIjxzaGFkb3c+PC9zaGFkb3c+
IjsKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290
KSIpOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50KHlvdW5nZXJT
aGFkb3dSb290KSIpOwotCi15b3VuZ2VyU2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+
PC9jb250ZW50PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQo
c2hhZG93Um9vdCkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc0NvbnRlbnRFbGVtZW50
KHlvdW5nZXJTaGFkb3dSb290KSIpOworZGl2MS5hcHBlbmRDaGlsZChjb250ZW50KTsKK3Nob3Vs
ZEJlRmFsc2UoJ2ludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KScpOworc2hh
ZG93Um9vdC5hcHBlbmRDaGlsZChkaXYxKTsKK3Nob3VsZEJlVHJ1ZSgnaW50ZXJuYWxzLmhhc0Nv
bnRlbnRFbGVtZW50KHNoYWRvd1Jvb3QpJyk7CitkaXYyLmFwcGVuZENoaWxkKGhvc3QpOworc2hv
dWxkQmVUcnVlKCdpbnRlcm5hbHMuaGFzQ29udGVudEVsZW1lbnQoc2hhZG93Um9vdCknKTsKK2Rp
djIucmVtb3ZlQ2hpbGQoaG9zdCk7CitzaG91bGRCZVRydWUoJ2ludGVybmFscy5oYXNDb250ZW50
RWxlbWVudChzaGFkb3dSb290KScpOworc2hhZG93Um9vdC5yZW1vdmVDaGlsZChkaXYxKTsKK3No
b3VsZEJlRmFsc2UoJ2ludGVybmFscy5oYXNDb250ZW50RWxlbWVudChzaGFkb3dSb290KScpOwor
ZGl2MS5yZW1vdmVDaGlsZChjb250ZW50KTsKKword3JhcHBlci5pbm5lckhUTUwgPSAnJzsKIDwv
c2NyaXB0PgogPHNjcmlwdCBzcmM9Ii4uLy4uL2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMi
Pjwvc2NyaXB0PgogPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hh
ZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L2Zhc3QvZG9tL3NoYWRvdy9oYXMtc2hhZG93LWluc2VydGlvbi1wb2ludC1leHBlY3RlZC50eHQK
aW5kZXggZGM0YTE2Yjc1NzhhYjRkNTFkNmE2MzA3MDI1OWI0ODVlZWM0ZmUxMC4uZDY4ZDkwYWM3
N2RhMThhYTJkOWI1MGYwMmZjODFjYmM4YWIyNDY2MCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
ZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5zZXJ0aW9uLXBvaW50LWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRpb24tcG9p
bnQtZXhwZWN0ZWQudHh0CkBAIC0xLDMgKzEsNiBAQAorVGVzdCBmb3IgQnVnIDk3MTg0IGFuZCAx
MDQzNDYgOiBIVE1MU2hhZG93RWxlbWVudCBzaG91bGQgYmUgcmVnaXN0ZXJlZCBjb3JyZWN0bHku
CisKK0luIHRoZSBjYXNlIGhvc3QgaXMgaW4gZG9jdW1lbnQKIFBBU1MgaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNTIGludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyB0cnVlCiBQQVNTIGludGVybmFs
cy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQpAQCAtMTEsOCAr
MTQsMjcgQEAgUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9v
dCkgaXMgZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5n
ZXJTaGFkb3dSb290KSBpcyBmYWxzZQogUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9u
UG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKIFBBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2Vy
dGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyB0cnVlCitJbiB0aGUgY2FzZSBob3N0IGlz
IG5vdCBpbiBkb2N1bWVudAorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
c2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBv
aW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlv
blBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5oYXNTaGFkb3dJbnNl
cnRpb25Qb2ludChzaGFkb3dSb290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93
SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSBpcyBmYWxzZQor
UEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFs
c2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHlvdW5nZXJTaGFkb3dS
b290KSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hh
ZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHlvdW5nZXJTaGFkb3dSb290KSBpcyB0cnVlCitpbnNlcnRlZEludG8vcmVtb3ZlZEZyb20gY2Fu
IGJlIGNhbGxlZCBzZXZlcmFsIHRpbWVzLgorUEFTUyBpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0
aW9uUG9pbnQoc2hhZG93Um9vdCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRvd0lu
c2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1NoYWRv
d0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmhh
c1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIGlzIGZhbHNlCiBQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCiAKIFRFU1QgQ09NUExFVEUKLVRlc3QgZm9yIEJ1ZyA5NzE4NDog
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk3MTg0IC0gW1NoYWRvd10g
U2hhZG93Um9vdCBzaG91bGQga25vdyB3aGV0aGVyIDxzaGFkb3c+IGluIGl0cyB0cmVlc2NvcGUK
IApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9kb20vc2hhZG93L2hhcy1zaGFkb3ctaW5z
ZXJ0aW9uLXBvaW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRv
dy1pbnNlcnRpb24tcG9pbnQuaHRtbAppbmRleCBkNmM4Y2U0MDQ5OTE2ODc1Njg0MmEzMTQ1Yzcy
MGRmOTc0MTc0ZmQzLi43YjY2YWE1NzFiMDg4YzI2YTI5MmE3MDA4NzFjMzgzMGFiOGJkMjAzIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRvdy1pbnNlcnRp
b24tcG9pbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2RvbS9zaGFkb3cvaGFzLXNoYWRv
dy1pbnNlcnRpb24tcG9pbnQuaHRtbApAQCAtMTEsNDkgKzExLDgxIEBAIGVsc2UgaWYgKCF3aW5k
b3cuaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KQogPC9zY3JpcHQ+CiA8L2hlYWQ+
CiA8Ym9keT4KLSAgPHNwYW4+VGVzdCBmb3IgQnVnIDk3MTg0OiA8YSBocmVmPSJodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcxODQiPmh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD05NzE4NDwvYT4gLQotICAgIFtTaGFkb3ddIFNoYWRvd1Jvb3Qg
c2hvdWxkIGtub3cgd2hldGhlciAmbHQ7c2hhZG93Jmd0OyBpbiBpdHMgdHJlZXNjb3BlCi0gIDwv
c3Bhbj4KLSAgPGRpdiBpZD0iaG9zdCI+PC9kaXY+CisKKzxwPlRlc3QgZm9yIEJ1ZyA8YSBocmVm
PSJodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcxODQiPjk3MTg0PC9h
PiBhbmQgPGEgaHJlZj0iaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEw
NDM0NiI+MTA0MzQ2PC9hPiA6IEhUTUxTaGFkb3dFbGVtZW50IHNob3VsZCBiZSByZWdpc3RlcmVk
IGNvcnJlY3RseS48L3A+CisKKzxkaXYgaWQ9IndyYXBwZXIiPjwvZGl2PgorPHByZSBpZD0iY29u
c29sZSI+PC9wcmU+CiAKIDxzY3JpcHQ+Ci12YXIgaG9zdCA9IGRvY3VtZW50LmdldEVsZW1lbnRC
eUlkKCJob3N0Iik7Ci12YXIgc2hhZG93Um9vdCA9IGhvc3Qud2Via2l0Q3JlYXRlU2hhZG93Um9v
dCgpOworZnVuY3Rpb24gZG9UZXN0KCkgeworICAgIHNob3VsZEJlRmFsc2UoImludGVybmFscy5o
YXNTaGFkb3dJbnNlcnRpb25Qb2ludChzaGFkb3dSb290KSIpOworCisgICAgdmFyIGRpdiA9IGRv
Y3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpOworICAgIGRpdi5hcHBlbmRDaGlsZChkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJzaGFkb3ciKSk7CisgICAgc2hhZG93Um9vdC5hcHBlbmRDaGlsZChk
aXYpOworICAgIHNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHNoYWRvd1Jvb3QpIik7CiAKLXNob3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNl
cnRpb25Qb2ludChzaGFkb3dSb290KSIpOworICAgIHNoYWRvd1Jvb3QucmVtb3ZlQ2hpbGQoZGl2
KTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
c2hhZG93Um9vdCkiKTsKIAotdmFyIGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIp
OwotZGl2LmFwcGVuZENoaWxkKGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNoYWRvdyIpKTsKLXNo
YWRvd1Jvb3QuYXBwZW5kQ2hpbGQoZGl2KTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhU
TUwgPSAiPGRpdj5ObyBJbnNlcnRpb24gUG9pbnRzPC9kaXY+IjsKKyAgICBzaG91bGRCZUZhbHNl
KCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKIAotc2hh
ZG93Um9vdC5yZW1vdmVDaGlsZChkaXYpOwotc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1No
YWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhU
TUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxz
Lmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5u
ZXJIVE1MID0gIjxkaXY+Tm8gSW5zZXJ0aW9uIFBvaW50czwvZGl2PiI7Ci1zaG91bGRCZUZhbHNl
KCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICBz
aGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwvc2hhZG93PiI7CisgICAgc2hvdWxkQmVU
cnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKIAot
c2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7Ci1zaG91bGRCZUZh
bHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAg
ICBzaGFkb3dSb290LmlubmVySFRNTCA9ICI8ZGl2PjxkaXY+PGRpdj48c2hhZG93Pjwvc2hhZG93
PjwvZGl2PjwvZGl2PjwvZGl2PiI7CisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hh
ZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKIAotc2hhZG93Um9vdC5pbm5lckhUTUwg
PSAiPHNoYWRvdz48L3NoYWRvdz4iOwotc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93
SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICB5b3VuZ2VyU2hhZG93Um9vdCA9IGhv
c3Qud2Via2l0Q3JlYXRlU2hhZG93Um9vdChob3N0KTsKKyAgICAvLyBNb2RpZnlpbmcgb2xkZXIg
c2hhZG93IHJvb3Qgb3IgeW91bmdlciBzaGFkb3cgcm9vdCBkb2Vzbid0IGFmZmVjdCB0aGUgb3Ro
ZXIuCisgICAgc2hvdWxkQmVUcnVlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
c2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5z
ZXJ0aW9uUG9pbnQoeW91bmdlclNoYWRvd1Jvb3QpIik7CiAKLXNoYWRvd1Jvb3QuaW5uZXJIVE1M
ID0gIjxkaXY+PGRpdj48ZGl2PjxzaGFkb3c+PC9zaGFkb3c+PC9kaXY+PC9kaXY+PC9kaXY+IjsK
LXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jv
b3QpIik7CisgICAgc2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7
CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNo
YWRvd1Jvb3QpIik7CisgICAgc2hvdWxkQmVGYWxzZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2Vy
dGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwogCi12YXIgeW91bmdlclNoYWRvd1Jvb3Qg
PSBob3N0LndlYmtpdENyZWF0ZVNoYWRvd1Jvb3QoKTsKLS8vIE1vZGlmeWluZyBvbGRlciBzaGFk
b3cgcm9vdCBvciB5b3VuZ2VyIHNoYWRvdyByb290IGRvZXNuJ3QgYWZmZWN0IHRoZSBvdGhlci4K
LXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jv
b3QpIik7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQo
eW91bmdlclNoYWRvd1Jvb3QpIik7CisgICAgeW91bmdlclNoYWRvd1Jvb3QuaW5uZXJIVE1MID0g
IjxzaGFkb3c+PC9zaGFkb3c+IjsKKyAgICBzaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hh
ZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKKyAgICBzaG91bGRCZVRydWUoImludGVy
bmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hhZG93Um9vdCkiKTsKK30KIAot
c2hhZG93Um9vdC5pbm5lckhUTUwgPSAiPGNvbnRlbnQ+PC9jb250ZW50PiI7Ci1zaG91bGRCZUZh
bHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCkiKTsKLXNo
b3VsZEJlRmFsc2UoImludGVybmFscy5oYXNTaGFkb3dJbnNlcnRpb25Qb2ludCh5b3VuZ2VyU2hh
ZG93Um9vdCkiKTsKK2RlYnVnKCdJbiB0aGUgY2FzZSBob3N0IGlzIGluIGRvY3VtZW50Jyk7Cito
b3N0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit3cmFwcGVyLmFwcGVuZENoaWxk
KGhvc3QpOworc2hhZG93Um9vdCA9IGhvc3Qud2Via2l0Q3JlYXRlU2hhZG93Um9vdCgpOworZG9U
ZXN0KCk7Cit3cmFwcGVyLmlubmVySFRNTCA9ICIiOworCitkZWJ1ZygnSW4gdGhlIGNhc2UgaG9z
dCBpcyBub3QgaW4gZG9jdW1lbnQnKTsKK2hvc3QgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdk
aXYnKTsKK3NoYWRvd1Jvb3QgPSBob3N0LndlYmtpdENyZWF0ZVNoYWRvd1Jvb3QoKTsKK2RvVGVz
dCgpOword3JhcHBlci5pbm5lckhUTUwgPSAiIjsKKworZGVidWcoJ2luc2VydGVkSW50by9yZW1v
dmVkRnJvbSBjYW4gYmUgY2FsbGVkIHNldmVyYWwgdGltZXMuJyk7Cit2YXIgaG9zdCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpOwordmFyIHNoYWRvdyA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoJ3NoYWRvdycpOwordmFyIGRpdjEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYn
KTsKK3ZhciBkaXYyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7Cit2YXIgc2hhZG93
Um9vdCA9IGhvc3Qud2Via2l0Q3JlYXRlU2hhZG93Um9vdCgpOworZGl2MS5hcHBlbmRDaGlsZChz
aGFkb3cpOworc2hvdWxkQmVGYWxzZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50
KHNoYWRvd1Jvb3QpJyk7CitzaGFkb3dSb290LmFwcGVuZENoaWxkKGRpdjEpOworc2hvdWxkQmVU
cnVlKCdpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9pbnQoc2hhZG93Um9vdCknKTsKK2Rp
djIuYXBwZW5kQ2hpbGQoaG9zdCk7CitzaG91bGRCZVRydWUoJ2ludGVybmFscy5oYXNTaGFkb3dJ
bnNlcnRpb25Qb2ludChzaGFkb3dSb290KScpOworZGl2Mi5yZW1vdmVDaGlsZChob3N0KTsKK3No
b3VsZEJlVHJ1ZSgnaW50ZXJuYWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3Qp
Jyk7CitzaGFkb3dSb290LnJlbW92ZUNoaWxkKGRpdjEpOworc2hvdWxkQmVGYWxzZSgnaW50ZXJu
YWxzLmhhc1NoYWRvd0luc2VydGlvblBvaW50KHNoYWRvd1Jvb3QpJyk7CitkaXYxLnJlbW92ZUNo
aWxkKHNoYWRvdyk7CiAKLXlvdW5nZXJTaGFkb3dSb290LmlubmVySFRNTCA9ICI8c2hhZG93Pjwv
c2hhZG93PiI7Ci1zaG91bGRCZUZhbHNlKCJpbnRlcm5hbHMuaGFzU2hhZG93SW5zZXJ0aW9uUG9p
bnQoc2hhZG93Um9vdCkiKTsKLXNob3VsZEJlVHJ1ZSgiaW50ZXJuYWxzLmhhc1NoYWRvd0luc2Vy
dGlvblBvaW50KHlvdW5nZXJTaGFkb3dSb290KSIpOwogPC9zY3JpcHQ+CiA8c2NyaXB0IHNyYz0i
Li4vLi4vanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+CiA8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>