<?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>157147</bug_id>
          
          <creation_ts>2016-04-28 11:49:02 -0700</creation_ts>
          <short_desc>[Mac] AirPlay fails if target is set before AVPlayer has been created</short_desc>
          <delta_ts>2016-05-02 18:39:21 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>157251</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1188334</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-04-28 11:49:02 -0700</bug_when>
    <thetext>AirPlay never starts if the playback target is set before the AVPlayer has been created.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188335</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-04-28 11:49:59 -0700</bug_when>
    <thetext>&lt;rdar://problem/24197592&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188337</commentid>
    <comment_count>2</comment_count>
      <attachid>277639</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-04-28 12:17:39 -0700</bug_when>
    <thetext>Created attachment 277639
Patch for the bots.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188338</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-28 12:18:50 -0700</bug_when>
    <thetext>Attachment 277639 did not pass style-queue:


WARNING: Not running on native Windows.
ERROR: Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:48:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
ERROR: Source/WebCore/platform/mock/mediasource/MockMediaPlayerMediaSource.cpp:48:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 2 in 13 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188355</commentid>
    <comment_count>4</comment_count>
      <attachid>277642</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-04-28 13:07:09 -0700</bug_when>
    <thetext>Created attachment 277642
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188789</commentid>
    <comment_count>5</comment_count>
      <attachid>277642</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-29 14:28:30 -0700</bug_when>
    <thetext>Comment on attachment 277642
Updated patch

Clearing flags on attachment: 277642

Committed r200264: &lt;http://trac.webkit.org/changeset/200264&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188790</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-04-29 14:28:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188818</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-04-29 15:40:37 -0700</bug_when>
    <thetext>Plus https://trac.webkit.org/r200266 to make the test less flaky.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188895</commentid>
    <comment_count>8</comment_count>
    <who name="Ryan Haddad">ryanhaddad</who>
    <bug_when>2016-04-29 17:09:04 -0700</bug_when>
    <thetext>LayoutTest media/media-source/media-source-stalled-holds-sleep-assertion.html has been timing out on Mac since r200264 landed.

&lt;https://webkit-test-results.webkit.org/dashboards/flakiness_dashboard.html#showAllRuns=true&amp;tests=media%2Fmedia-source%2Fmedia-source-stalled-holds-sleep-assertion.html&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189282</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-01 17:26:33 -0700</bug_when>
    <thetext>Re-opened since this is blocked by bug 157251</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189589</commentid>
    <comment_count>10</comment_count>
      <attachid>277953</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2016-05-02 18:00:25 -0700</bug_when>
    <thetext>Created attachment 277953
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189594</commentid>
    <comment_count>11</comment_count>
      <attachid>277953</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2016-05-02 18:03:12 -0700</bug_when>
    <thetext>Comment on attachment 277953
Proposed patch.

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

&gt; Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:1040
&gt; +        // Clear m_shouldPlayToPlaybackTarget so doesn&apos;t return without doing anything.

Typo: missing &quot;it&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189611</commentid>
    <comment_count>12</comment_count>
      <attachid>277953</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-02 18:39:16 -0700</bug_when>
    <thetext>Comment on attachment 277953
Proposed patch.

Clearing flags on attachment: 277953

Committed r200354: &lt;http://trac.webkit.org/changeset/200354&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1189612</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-05-02 18:39:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277639</attachid>
            <date>2016-04-28 12:17:39 -0700</date>
            <delta_ts>2016-04-28 13:07:39 -0700</delta_ts>
            <desc>Patch for the bots.</desc>
            <filename>youtube_playback_patch_2.txt</filename>
            <type>text/plain</type>
            <size>18263</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMDIwMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE2LTA0LTI4ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIEFpclBsYXkg
ZmFpbHMgaWYgdGFyZ2V0IGlzIHNldCBiZWZvcmUgQVZQbGF5ZXIgaGFzIGJlZW4gY3JlYXRlZAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTQ3Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNDE5NzU5Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEt
c291cmNlLWFpcnBsYXkuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmNyZWF0ZUFW
UGxheWVyKTogQ2xlYXIgZmxhZyBiZWZvcmUgY2FsbGluZworICAgICAgICAgIHNldFNob3VsZFBs
YXlUb1BsYXliYWNrVGFyZ2V0IHNvIGl0IGRvZXMgdGhlIG5lY2Vzc2FyeSBzZXR1cC4KKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJp
dmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6aXNBdmFpbGFibGUpOiBSZXR1cm4gZmFsc2UgaWYg
dGhlIG1vY2sKKyAgICAgICAgICBNU0Ugc291cmNlIGhhcyBiZWVuIHJlZ2lzdGVyZWQuCisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OnN1cHBv
cnRzVHlwZSk6IFJldHVybiAnbm90IHN1cHBvcnRlZCcgaWYKKyAgICAgICAgICBpc0F2YWlsYWJs
ZSBpcyBmYWxzZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291
cmNlQVZGT2JqQzo6bG9hZCk6IEZhaWwgaWYgaXNBdmFpbGFibGUgaXMgZmFsc2UuCisgICAgICAg
IChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OmlzQ3VycmVu
dFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MpOiBDbGVhbnVwLgorCisgICAgICAgICogcGxhdGZvcm0v
bW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpyZWdpc3RlcmVkKTogR2xvYmFsIGFjY2Vzc29yLgorICAgICAgICAoV2ViQ29y
ZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmlzUmVnaXN0ZXJlZCk6IAorICAgICAgICAo
V2ViQ29yZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OnJlZ2lzdGVyTWVkaWFFbmdpbmUp
OiBTZXQgcmVnaXN0ZXJlZCB0byB0cnVlLgorICAgICAgICAoV2ViQ29yZTo6TW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2U6OnNldFdpcmVsZXNzUGxheWJhY2tUYXJnZXQpOiBOZXcsIHJlbWVtYmVy
IHRoZSB0YXJnZXQuCisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJj
ZTo6c2V0U2hvdWxkUGxheVRvUGxheWJhY2tUYXJnZXQpOiBOZXcsIHJlbWVtYmVyIHRoZSBzZXR0
aW5nLgorICAgICAgICAoV2ViQ29yZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmlzQ3Vy
cmVudFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaDoKKworICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6aW5pdGlhbGl6
ZU1vY2tNZWRpYVNvdXJjZSk6IERvbid0IGRpc2FibGUgQVZGb3VuZGF0aW9uLgorCiAyMDE2LTA0
LTI4ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4g
SURCOiBSZWltcGxlbWVudCBXZWIgSW5zcGVjdG9yIGNvZGUgdGhhdCB3YXMgdGllZCB0byBMZWdh
Y3kgSURCLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCShyZXZpc2lvbiAyMDAxMTIpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDM2
LDggKzEwMzYsMTEgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOgog
I2VuZGlmCiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZP
Uk0oSU9TKQotICAgIGlmIChtX3Nob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KQorICAgIGlmICht
X3Nob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KSB7CisgICAgICAgIC8vIENsZWFyIG1fc2hvdWxk
UGxheVRvUGxheWJhY2tUYXJnZXQgc28gZG9lc24ndCByZXR1cm4gd2l0aG91dCBkb2luZyBhbnl0
aGluZy4KKyAgICAgICAgbV9zaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldCA9IGZhbHNlOwogICAg
ICAgICBzZXRTaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldCh0cnVlKTsKKyAgICB9CiAjZW5kaWYK
IAogICAgIGlmIChwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJJc1ZpZGVvKCkpCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCShyZXZpc2lvbiAyMDAxMTIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclBy
aXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0JKHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDcg
QEAKICNpbXBvcnQgIk1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCIKICNpbXBvcnQgIk1lZGlh
U291cmNlUHJpdmF0ZUNsaWVudC5oIgogI2ltcG9ydCAiTWVkaWFUaW1lQVZGb3VuZGF0aW9uLmgi
CisjaW1wb3J0ICJNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oIgogI2ltcG9ydCAiUGxhdGZv
cm1DbG9ja0NNLmgiCiAjaW1wb3J0ICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgiCiAjaW1wb3J0
IDxBVkZvdW5kYXRpb24vQVZBc3NldC5oPgpAQCAtMjEwLDYgKzIxMSw5IEBAIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmoKIAogYm9vbCBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OmlzQXZhaWxhYmxlKCkKIHsKKyAgICBpZiAoTW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2U6OmlzUmVnaXN0ZXJlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisK
ICAgICByZXR1cm4gQVZGb3VuZGF0aW9uTGlicmFyeSgpCiAgICAgICAgICYmIGlzQ29yZU1lZGlh
RnJhbWV3b3JrQXZhaWxhYmxlKCkKICAgICAgICAgJiYgZ2V0QVZTdHJlYW1EYXRhUGFyc2VyQ2xh
c3MoKQpAQCAtMjQxLDYgKzI0NSw5IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmoKIAogTWVkaWFQbGF5ZXI6OlN1cHBvcnRzVHlwZSBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OnN1cHBvcnRzVHlwZShjb25zdCBNZWRpYUVuZ2luZVN1cHBvcnRQ
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogeworICAgIGlmICghaXNBdmFpbGFibGUoKSkKKyAgICAg
ICAgcmV0dXJuIE1lZGlhUGxheWVyOjpJc05vdFN1cHBvcnRlZDsKKwogICAgIC8vIFRoaXMgZW5n
aW5lIGRvZXMgbm90IHN1cHBvcnQgbm9uLW1lZGlhLXNvdXJjZSBzb3VyY2VzLgogICAgIGlmICgh
cGFyYW1ldGVycy5pc01lZGlhU291cmNlKQogICAgICAgICByZXR1cm4gTWVkaWFQbGF5ZXI6Oklz
Tm90U3VwcG9ydGVkOwpAQCAtMjc1LDYgKzI4MiwxMSBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0
ZU1lZGlhU291cmNlQVZGT2JqCiB7CiAgICAgVU5VU0VEX1BBUkFNKHVybCk7CiAKKyAgICBpZiAo
IWlzQXZhaWxhYmxlKCkpIHsKKyAgICAgICAgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVyOjpG
b3JtYXRFcnJvcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBtX21lZGlhU291cmNl
UHJpdmF0ZSA9IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmNyZWF0ZSh0aGlzLCBjbGllbnQp
OwogfQogCkBAIC04NTgsMTAgKzg3MCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmoKIAogYm9vbCBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6
OmlzQ3VycmVudFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MoKSBjb25zdAogewotICAgIGlmICghbV9w
bGF5YmFja1RhcmdldCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuIG1fc2hv
dWxkUGxheVRvVGFyZ2V0ICYmIG1fcGxheWJhY2tUYXJnZXQtPmhhc0FjdGl2ZVJvdXRlKCk7Cisg
ICAgcmV0dXJuIG1fcGxheWJhY2tUYXJnZXQgJiYgbV9zaG91bGRQbGF5VG9UYXJnZXQgJiYgbV9w
bGF5YmFja1RhcmdldC0+aGFzQWN0aXZlUm91dGUoKTsKIH0KICNlbmRpZgogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlh
U291cmNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21l
ZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcAkocmV2aXNpb24gMjAwMTEy
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQ
bGF5ZXJNZWRpYVNvdXJjZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDggKzM5LDIwIEBACiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIC8vIE1lZGlhUGxheWVyIEVuaWduZSBTdXBwb3J0CitzdGF0
aWMgYm9vbCYgcmVnaXN0ZXJlZCgpCit7CisgICAgc3RhdGljIGJvb2wgaXNSZWdpc3RlcmVkID0g
ZmFsc2U7CisgICAgcmV0dXJuIGlzUmVnaXN0ZXJlZDsKK30KKworIGJvb2wgTW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2U6OmlzUmVnaXN0ZXJlZCgpCit7CisgICAgcmV0dXJuIHJlZ2lzdGVyZWQo
KTsKK30KKwogdm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6cmVnaXN0ZXJNZWRpYUVu
Z2luZShNZWRpYUVuZ2luZVJlZ2lzdHJhciByZWdpc3RyYXIpCiB7CisgICAgcmVnaXN0ZXJlZCgp
ID0gdHJ1ZTsKICAgICByZWdpc3RyYXIoW10oTWVkaWFQbGF5ZXIqIHBsYXllcikgeyByZXR1cm4g
c3RkOjptYWtlX3VuaXF1ZTxNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZT4ocGxheWVyKTsgfSwg
Z2V0U3VwcG9ydGVkVHlwZXMsCiAgICAgICAgIHN1cHBvcnRzVHlwZSwgMCwgMCwgMCwgMCk7CiB9
CkBAIC0yOTMsNiArMzA1LDI4IEBAIE1lZGlhVGltZSBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJj
ZTo6dG8KICAgICByZXR1cm4gbV9tZWRpYVNvdXJjZVByaXZhdGUgPyBtX21lZGlhU291cmNlUHJp
dmF0ZS0+dG90YWxGcmFtZURlbGF5KCkgOiBNZWRpYVRpbWU6Onplcm9UaW1lKCk7CiB9CiAKKyNp
ZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQordm9pZCBNb2NrTWVkaWFQbGF5ZXJN
ZWRpYVNvdXJjZTo6c2V0V2lyZWxlc3NQbGF5YmFja1RhcmdldChSZWY8TWVkaWFQbGF5YmFja1Rh
cmdldD4mJiB0YXJnZXQpCit7CisgICAgbV9wbGF5YmFja1RhcmdldCA9IFdURk1vdmUodGFyZ2V0
KTsKK30KKwordm9pZCBNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6c2V0U2hvdWxkUGxheVRv
UGxheWJhY2tUYXJnZXQoYm9vbCBzaG91bGRQbGF5VG9UYXJnZXQpCit7CisgICAgaWYgKHNob3Vs
ZFBsYXlUb1RhcmdldCA9PSBtX3Nob3VsZFBsYXlUb1RhcmdldCkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgbV9zaG91bGRQbGF5VG9UYXJnZXQgPSBzaG91bGRQbGF5VG9UYXJnZXQ7CisKKyAgICBp
ZiAobV9wbGF5ZXIpCisgICAgICAgIG1fcGxheWVyLT5jdXJyZW50UGxheWJhY2tUYXJnZXRJc1dp
cmVsZXNzQ2hhbmdlZCgpOworfQorCitib29sIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpp
c0N1cnJlbnRQbGF5YmFja1RhcmdldFdpcmVsZXNzKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9w
bGF5YmFja1RhcmdldCAmJiBtX3Nob3VsZFBsYXlUb1RhcmdldCAmJiBtX3BsYXliYWNrVGFyZ2V0
LT5oYXNBY3RpdmVSb3V0ZSgpOworfQorI2VuZGlmCiB9CiAKICNlbmRpZgpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNv
dXJjZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFz
b3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaAkocmV2aXNpb24gMjAwMTEyKQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJN
ZWRpYVNvdXJjZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw3IEBAIHB1YmxpYzoKICAg
ICBXRUJDT1JFX0VYUE9SVCBzdGF0aWMgdm9pZCByZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5n
aW5lUmVnaXN0cmFyKTsKICAgICBzdGF0aWMgdm9pZCBnZXRTdXBwb3J0ZWRUeXBlcyhIYXNoU2V0
PFN0cmluZywgQVNDSUlDYXNlSW5zZW5zaXRpdmVIYXNoPiYgdHlwZXMpOwogICAgIHN0YXRpYyBN
ZWRpYVBsYXllcjo6U3VwcG9ydHNUeXBlIHN1cHBvcnRzVHlwZShjb25zdCBNZWRpYUVuZ2luZVN1
cHBvcnRQYXJhbWV0ZXJzJik7CisgICAgc3RhdGljIGJvb2wgaXNSZWdpc3RlcmVkKCk7CiAKICAg
ICB2aXJ0dWFsIH5Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZSgpOwogCkBAIC04Niw2ICs4Nywx
MyBAQCBwcml2YXRlOgogICAgIHVuc2lnbmVkIGxvbmcgY29ycnVwdGVkVmlkZW9GcmFtZXMoKSBv
dmVycmlkZTsKICAgICBNZWRpYVRpbWUgdG90YWxGcmFtZURlbGF5KCkgb3ZlcnJpZGU7CiAKKyNp
ZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKQorICAgIGJvb2wgaXNDdXJyZW50UGxh
eWJhY2tUYXJnZXRXaXJlbGVzcygpIGNvbnN0IG92ZXJyaWRlOworICAgIHZvaWQgc2V0V2lyZWxl
c3NQbGF5YmFja1RhcmdldChSZWY8TWVkaWFQbGF5YmFja1RhcmdldD4mJikgb3ZlcnJpZGU7Cisg
ICAgdm9pZCBzZXRTaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldChib29sKSBvdmVycmlkZTsKKyAg
ICBib29sIHdpcmVsZXNzVmlkZW9QbGF5YmFja0Rpc2FibGVkKCkgY29uc3Qgb3ZlcnJpZGUgeyBy
ZXR1cm4gZmFsc2U7IH0KKyNlbmRpZgorCiAgICAgTWVkaWFQbGF5ZXIqIG1fcGxheWVyOwogICAg
IFJlZlB0cjxNb2NrTWVkaWFTb3VyY2VQcml2YXRlPiBtX21lZGlhU291cmNlUHJpdmF0ZTsKIApA
QCAtOTMsNiArMTAxLDEwIEBAIHByaXZhdGU6CiAgICAgTWVkaWFUaW1lIG1fZHVyYXRpb247CiAg
ICAgTWVkaWFQbGF5ZXI6OlJlYWR5U3RhdGUgbV9yZWFkeVN0YXRlOwogICAgIE1lZGlhUGxheWVy
OjpOZXR3b3JrU3RhdGUgbV9uZXR3b3JrU3RhdGU7CisjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlC
QUNLX1RBUkdFVCkKKyAgICBSZWZQdHI8TWVkaWFQbGF5YmFja1RhcmdldD4gbV9wbGF5YmFja1Rh
cmdldDsKKyAgICBib29sIG1fc2hvdWxkUGxheVRvVGFyZ2V0IHsgZmFsc2UgfTsKKyNlbmRpZgog
ICAgIGJvb2wgbV9wbGF5aW5nOwogICAgIGJvb2wgbV9zZWVrQ29tcGxldGVkOwogfTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAJKHJldmlzaW9uIDIwMDExMikKKysrIFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjc0
Niw5ICsyNzQ2LDYgQEAgYm9vbCBJbnRlcm5hbHM6OmlzUGx1Z2luU25hcHNob3R0ZWQoRWxlbQog
CiB2b2lkIEludGVybmFsczo6aW5pdGlhbGl6ZU1vY2tNZWRpYVNvdXJjZSgpCiB7Ci0jaWYgVVNF
KEFWRk9VTkRBVElPTikKLSAgICBXZWJDb3JlOjpTZXR0aW5nczo6c2V0QVZGb3VuZGF0aW9uRW5h
YmxlZChmYWxzZSk7Ci0jZW5kaWYKICAgICBNZWRpYVBsYXllckZhY3RvcnlTdXBwb3J0OjpjYWxs
UmVnaXN0ZXJNZWRpYUVuZ2luZShNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZTo6cmVnaXN0ZXJN
ZWRpYUVuZ2luZSk7CiB9CiAKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMDExMikKKysrIExheW91dFRl
c3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDE2LTA0LTI4
ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNd
IEFpclBsYXkgZmFpbHMgaWYgdGFyZ2V0IGlzIHNldCBiZWZvcmUgQVZQbGF5ZXIgaGFzIGJlZW4g
Y3JlYXRlZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTU3MTQ3CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNDE5NzU5Mj4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIG1lZGlhL21lZGlhLXNvdXJjZS9t
ZWRpYS1zb3VyY2UtYWlycGxheS1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIG1lZGlh
L21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczogU2tpcCBNYWMtb25seSB0ZXN0LgorICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zOiBEaXR0by4KKyAgICAgICAgKiBw
bGF0Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAq
IHBsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zOiBTa2lwcGVkIG5ldyB0ZXN0cyBvbiBvbGRl
ciB2ZXJzaW9ucyBvZiBPUyBYLgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRp
b25zOiBTa2lwIE1hYy1vbmx5IHRlc3QuCisKIDIwMTYtMDQtMjYgIFJ5b3N1a2UgTml3YSAgPHJu
aXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQVNTRVJUSU9OIEZBSUxFRDogbV90ZW1wbGF0ZUlu
c2VydGlvbk1vZGVzLmlzRW1wdHkoKSBpbiBXZWJDb3JlOjpIVE1MVHJlZUJ1aWxkZXI6OmZpbmlz
aGVkCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFp
cnBsYXktZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL21lZGlhL21lZGlh
LXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisr
KyBMYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFpcnBsYXktZXhw
ZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjIgQEAKKworKiogY3JlYXRlIGEg
TWVkaWFTb3VyY2Ugb2JqZWN0LCBzZXQgYXMgdmlkZW8uc3JjCitSVU4oc291cmNlID0gbmV3IE1l
ZGlhU291cmNlKCkpCitSVU4oc291cmNlLmFkZEV2ZW50TGlzdGVuZXIoJ3NvdXJjZW9wZW4nLCBz
dGFydExvYWQpKQorUlVOKHZpZGVvLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoc291cmNlKSkK
K0VWRU5UKCB3ZWJraXRwbGF5YmFja3RhcmdldGF2YWlsYWJpbGl0eWNoYW5nZWQgKSA6IGV2ZW50
LmF2YWlsYWJpbGl0eSA9ICdub3QtYXZhaWxhYmxlJworCisqKiBjcmVhdGUgYSBzb3VyY2UgYnVm
ZmVyLCBhZGQgYW4gaW5pdCBzZWdtZW50IHdpdGggMSB2aWRlbyB0cmFjaworUlVOKHNvdXJjZUJ1
ZmZlciA9IHNvdXJjZS5hZGRTb3VyY2VCdWZmZXIoJ3ZpZGVvL21vY2s7IGNvZGVjcz0ibW9jayIn
KSkKK1JVTihpbml0ID0gbWFrZUFJbml0KDEwMCwgW21ha2VBVHJhY2soMSwgJ21vY2snLCBUUkFD
S19LSU5ELlZJREVPKV0pKQorUlVOKHNvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdCkpCisK
K0VWRU5UKGNhbnBsYXl0aHJvdWdoKQorCisqKiBzaW11bGF0ZSBjaG9vc2luZyBhIGRldmljZSBm
cm9tIHRoZSBtZW51CitFVkVOVCggd2Via2l0cGxheWJhY2t0YXJnZXRhdmFpbGFiaWxpdHljaGFu
Z2VkICkgOiBldmVudC5hdmFpbGFiaWxpdHkgPSAnYXZhaWxhYmxlJworCisqKiBjaGFuZ2Ugdmlk
ZW8uc3JjIHRvIG9uZSB0aGF0IHN1cHBvcnRzIEFpclBsYXkKK0VYUEVDVEVEICh2aWRlby53ZWJr
aXRDdXJyZW50UGxheWJhY2tUYXJnZXRJc1dpcmVsZXNzID09ICd0cnVlJykgT0sKKworRU5EIE9G
IFRFU1QKKwpJbmRleDogTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJj
ZS1haXJwbGF5Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEtc291
cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0
cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFpcnBsYXkuaHRtbAkod29ya2luZyBj
b3B5KQpAQCAtMCwwICsxLDk2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cisg
ICAgPHRpdGxlPk1lZGlhIGVuZ2luZSBjaGFuZ2UgYWZ0ZXIgc2VsZWN0aW5nIEFpclBsYXkgdGFy
Z2U8L3RpdGxlPgorICAgIDxzY3JpcHQgc3JjPSJtb2NrLW1lZGlhLXNvdXJjZS5qcyI+PC9zY3Jp
cHQ+CisgICAgPHNjcmlwdCBzcmM9Ii4uL21lZGlhLWZpbGUuanMiPjwvc2NyaXB0PgorICAgIDxz
Y3JpcHQgc3JjPSIuLi92aWRlby10ZXN0LmpzIj48L3NjcmlwdD4KKyAgICA8c2NyaXB0PgorCisg
ICAgdmFyIHNvdXJjZUJ1ZmZlcjsKKyAgICB2YXIgcmVxdWVzdExlbmd0aCA9IDIwMDAwMDsKKyAg
ICB2YXIgbmV4dFJlcXVlc3QgPSAwOworICAgIHZhciB0b3RhbExlbmd0aCA9IDEwMDsKKyAgICB2
YXIgcHJldmlvdXNBdmFpbGFibGUgPSAnJzsKKworICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7
CisgICAgICAgIGludGVybmFscy5pbml0aWFsaXplTW9ja01lZGlhU291cmNlKCk7CisgICAgICAg
IGludGVybmFscy5zZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQodHJ1ZSk7
CisgICAgICAgIGludGVybmFscy5zZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlclN0YXRl
KCcnLCAnVW5rbm93bicpOworICAgIH0KKworICAgIGZ1bmN0aW9uIHN0YXJ0KCkgCisgICAgewor
ICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisKKyAgICAgICAgY29uc29sZVdyaXRlKCcqKiBj
cmVhdGUgYSBNZWRpYVNvdXJjZSBvYmplY3QsIHNldCBhcyB2aWRlby5zcmMnKTsKKyAgICAgICAg
cnVuKGBzb3VyY2UgPSBuZXcgTWVkaWFTb3VyY2UoKWApOworICAgICAgICBydW4oYHNvdXJjZS5h
ZGRFdmVudExpc3RlbmVyKCdzb3VyY2VvcGVuJywgc3RhcnRMb2FkKWApOworICAgICAgICBydW4o
YHZpZGVvLnNyYyA9IFVSTC5jcmVhdGVPYmplY3RVUkwoc291cmNlKWApOworCisgICAgICAgIHZp
ZGVvLmFkZEV2ZW50TGlzdGVuZXIoJ3dlYmtpdGN1cnJlbnRwbGF5YmFja3RhcmdldGlzd2lyZWxl
c3NjaGFuZ2VkJywgY3VycmVudFRhcmdldENoYW5nZWQsIHRydWUpOworICAgICAgICB2aWRlby5h
ZGRFdmVudExpc3RlbmVyKCd3ZWJraXRwbGF5YmFja3RhcmdldGF2YWlsYWJpbGl0eWNoYW5nZWQn
LCB0YXJnZXRBdmFpbGFiaWxpdHlDaGFuZ2VkLCB0cnVlKTsKKyAgICAgICAgd2FpdEZvckV2ZW50
T25jZSgnY2FucGxheXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CisgICAgfQorCisgICAgZnVu
Y3Rpb24gc3RhcnRMb2FkKCkKKyAgICB7CisgICAgICAgIGNvbnNvbGVXcml0ZSgnPGJyPioqIGNy
ZWF0ZSBhIHNvdXJjZSBidWZmZXIsIGFkZCBhbiBpbml0IHNlZ21lbnQgd2l0aCAxIHZpZGVvIHRy
YWNrJyk7CisgICAgICAgIHJ1bihgc291cmNlQnVmZmVyID0gc291cmNlLmFkZFNvdXJjZUJ1ZmZl
cigndmlkZW8vbW9jazsgY29kZWNzPSJtb2NrIicpYCk7CisgICAgICAgIHNvdXJjZUJ1ZmZlci5h
ZGRFdmVudExpc3RlbmVyKCd1cGRhdGUnLCBzb3VyY2VVcGRhdGVkKTsKKyAgICAgICAgbmV4dFJl
cXVlc3QgPSAwOworCisgICAgICAgIHJ1bihgaW5pdCA9IG1ha2VBSW5pdCgxMDAsIFttYWtlQVRy
YWNrKDEsICdtb2NrJywgVFJBQ0tfS0lORC5WSURFTyldKWApOworICAgICAgICBydW4oYHNvdXJj
ZUJ1ZmZlci5hcHBlbmRCdWZmZXIoaW5pdClgKTsKKyAgICAgICAgY29uc29sZVdyaXRlKCcnKTsK
KyAgICB9CisKKyAgICBmdW5jdGlvbiBzb3VyY2VVcGRhdGVkKCkKKyAgICB7CisgICAgICAgIGlm
IChuZXh0UmVxdWVzdCA+PSB0b3RhbExlbmd0aCkKKyAgICAgICAgICAgIHJldHVybjsKKworICAg
ICAgICBzb3VyY2VCdWZmZXIuYXBwZW5kQnVmZmVyKG1ha2VBU2FtcGxlKG5leHRSZXF1ZXN0LCBu
ZXh0UmVxdWVzdCwgMSwgMSwgU0FNUExFX0ZMQUcuU1lOQykpOworICAgICAgICArK25leHRSZXF1
ZXN0OworICAgIH0KKworICAgIGZ1bmN0aW9uIGNhbnBsYXl0aHJvdWdoKCkKKyAgICB7CisgICAg
ICAgIGNvbnNvbGVXcml0ZSgnPGJyPioqIHNpbXVsYXRlIGNob29zaW5nIGEgZGV2aWNlIGZyb20g
dGhlIG1lbnUnKTsKKyAgICAgICAgcnVuV2l0aEtleURvd24oZnVuY3Rpb24oKSB7CisgICAgICAg
ICAgICBpZiAod2luZG93LmludGVybmFscykgeworICAgICAgICAgICAgICAgIGludGVybmFscy5z
ZXRNb2NrTWVkaWFQbGF5YmFja1RhcmdldFBpY2tlckVuYWJsZWQodHJ1ZSk7CisgICAgICAgICAg
ICAgICAgaW50ZXJuYWxzLnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUoJ1Ns
ZWVweSBUVicsICdEZXZpY2VBdmFpbGFibGUnKTsKKyAgICAgICAgICAgICAgICB2aWRlby53ZWJr
aXRTaG93UGxheWJhY2tUYXJnZXRQaWNrZXIoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfSk7
CisgICAgfQorCisgICAgZnVuY3Rpb24gY3VycmVudFRhcmdldENoYW5nZWQoKQorICAgIHsKKyAg
ICAgICAgaWYgKHZpZGVvLnNyYy5pbmRleE9mKCIvdGVzdC4iKSA+IDApIHsKKyAgICAgICAgICAg
IHRlc3RFeHBlY3RlZCgidmlkZW8ud2Via2l0Q3VycmVudFBsYXliYWNrVGFyZ2V0SXNXaXJlbGVz
cyIsIHRydWUpOworICAgICAgICAgICAgY29uc29sZVdyaXRlKCcnKTsKKyAgICAgICAgICAgIGVu
ZFRlc3QoKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICAgICAgCisg
ICAgICAgIGNvbnNvbGVXcml0ZSgnPGJyPioqIGNoYW5nZSB2aWRlby5zcmMgdG8gb25lIHRoYXQg
c3VwcG9ydHMgQWlyUGxheScpOworICAgICAgICB2aWRlby5zcmMgPSBmaW5kTWVkaWFGaWxlKCd2
aWRlbycsICcuLi9jb250ZW50L3Rlc3QnKQorICAgIH0KKworICAgIGZ1bmN0aW9uIHRhcmdldEF2
YWlsYWJpbGl0eUNoYW5nZWQoZXZlbnQpCisgICAgeworICAgICAgICBpZiAocHJldmlvdXNBdmFp
bGFibGUgPT0gZXZlbnQuYXZhaWxhYmlsaXR5KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAg
ICAgIGNvbnNvbGVXcml0ZShgRVZFTlQoICR7ZXZlbnQudHlwZX0gKSA6IGV2ZW50LmF2YWlsYWJp
bGl0eSA9ICcke2V2ZW50LmF2YWlsYWJpbGl0eX0nYCk7CisgICAgICAgIHByZXZpb3VzQXZhaWxh
YmxlID0gZXZlbnQuYXZhaWxhYmlsaXR5OworICAgIH0KKyAgICAKKyAgICA8L3NjcmlwdD4KKzwv
aGVhZD4KKzxib2R5IG9ubG9hZD0ic3RhcnQoKSI+CisgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlk
ZW8+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVz
dEV4cGVjdGF0aW9ucwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVz
dEV4cGVjdGF0aW9ucwkocmV2aXNpb24gMjAwMTEyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0v
ZWZsL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTI2MjksNiArMjYyOSw5IEBA
IHdlYmtpdC5vcmcvYi8xNTYwMjQgc3ZnL3pvb20vcGFnZS96b29tLXMKIHdlYmtpdC5vcmcvYi8x
NTYwMjQgc3ZnL3pvb20vcGFnZS96b29tLXN2Zy10aHJvdWdoLW9iamVjdC13aXRoLWFic29sdXRl
LXNpemUueGh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNTYwMjQgc3ZnL3pvb20vcGFn
ZS96b29tLXN2Zy10aHJvdWdoLW9iamVjdC13aXRoLXBlcmNlbnRhZ2Utc2l6ZS54aHRtbCBbIEZh
aWx1cmUgXQogCisjIFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCBub3QgZW5hYmxlZC4KK21lZGlh
L21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS5odG1sIFsgU2tpcCBdCisKICMgTWVk
aWEgdGVzdHMgaGF2ZSBiZWVuIGZhaWxpbmcgc2luY2Ugd2UgYnVtcGVkIGdzdHJlYW1lciB2ZXIu
CiB3ZWJraXQub3JnL2IvMTU2OTY5IG1lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtY2Fu
cGxheXRocm91Z2guaHRtbCBbIFRpbWVvdXQgXQogd2Via2l0Lm9yZy9iLzE1Njk2OSBtZWRpYS9t
ZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWVuZC1vZi1zdHJlYW0tYnVmZmVyZWQuaHRtbCBbIFRp
bWVvdXQgXQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMJ
KHJldmlzaW9uIDIwMDExMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0
YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xODY3LDYgKzE4NjcsOSBAQCB3ZWJraXQub3JnL2Iv
MTIyMDIxIG1lZGlhL3ZpZGVvLWNvbnRyb2xzCiB3ZWJraXQub3JnL2IvMTIzMDk3IG1lZGlhL3Ry
YWNrL3RyYWNrLXVzZXItcHJlZmVyZW5jZXMuaHRtbCBbIFNraXAgXQogd2Via2l0Lm9yZy9iLzEy
MTk5NSBtZWRpYS92aWRlby1jb250cm9scy1jYXB0aW9ucy10cmFja21lbnUtaW5jbHVkZXMtZW5h
YmxlZC10cmFjay5odG1sIFsgRmFpbHVyZSBdCiAKKyMgV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VU
IG5vdCBlbmFibGVkLgorbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0
bWwgWyBTa2lwIF0KKwogQnVnKEdUSykgaHR0cC90ZXN0cy9tZWRpYS92aWRlby1wbGF5LXN0YWxs
LXNlZWsuaHRtbCBbIFNraXAgXQogCiBCdWcoR1RLKSBodHRwL3Rlc3RzL21pc2MvYWNpZDMuaHRt
bCBbIEZhaWx1cmUgXQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXNpbXVsYXRvci9U
ZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2lvcy1z
aW11bGF0b3IvVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNpb24gMjAwMTEyKQorKysgTGF5b3V0VGVz
dHMvcGxhdGZvcm0vaW9zLXNpbXVsYXRvci9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkp
CkBAIC0zMDQyLDYgKzMwNDIsOSBAQCBmYXN0L2Zvcm1zL2xpc3Rib3gtcGFkZGluZy1jbGlwLmh0
bWwgWyBJCiBmYXN0L2Zvcm1zL2xpc3Rib3gtcGFkZGluZy1jbGlwLW92ZXJsYXkuaHRtbCBbIElt
YWdlT25seUZhaWx1cmUgXQogZmFzdC9mb3Jtcy9saXN0Ym94LXBhZGRpbmctY2xpcC1zZWxlY3Rl
ZC5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCiAKKyMgTVNFIG5vdCBlbmFibGVkLgorbWVkaWEv
bWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0bWwgWyBTa2lwIF0KKwogIyBObyBm
b2N1c3Jpbmcgb24gaU9TLgogZmFzdC9pbWFnZXMvaW1hZ2UtbWFwLW91dGxpbmUtaW4tcG9zaXRp
b25lZC1jb250YWluZXIuaHRtbCBbIFBhc3MgSW1hZ2VPbmx5RmFpbHVyZSBdCiBmYXN0L2ltYWdl
cy9pbWFnZS1tYXAtb3V0bGluZS13aXRoLXBhaW50LXJvb3Qtb2Zmc2V0Lmh0bWwgWyBQYXNzIElt
YWdlT25seUZhaWx1cmUgXQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBl
Y3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBl
Y3RhdGlvbnMJKHJldmlzaW9uIDIwMDExMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9U
ZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xMjg3LDYgKzEyODcsNyBAQCB3ZWJr
aXQub3JnL2IvMTUyMDA5IFsgRGVidWcgRWxDYXBpdGFuIF0gCiAjIFdJUkVMRVNTX1BMQVlCQUNL
X1RBUkdFVCBub3QgZW5hYmxlZCBvbiBZb3NlbWl0ZS4KIFsgWW9zZW1pdGUgXSBtZWRpYS9haXJw
bGF5LXRhcmdldC1hdmFpbGFiaWxpdHkuaHRtbAogWyBZb3NlbWl0ZSBdIG1lZGlhL2NvbnRyb2xz
L2FpcnBsYXktcGlja2VyLmh0bWwKK1sgWW9zZW1pdGUgXSBtZWRpYS9tZWRpYS1zb3VyY2UvbWVk
aWEtc291cmNlLWFpcnBsYXkuaHRtbAogCiB3ZWJraXQub3JnL2IvMTUzMDg2IHNwdXRuaWsvQ29u
Zm9ybWFuY2UvMTVfTmF0aXZlX09iamVjdHMvMTUuMV9UaGVfR2xvYmFsX09iamVjdC8xNS4xLjMv
MTUuMS4zLjNfZW5jb2RlVVJJL1MxNS4xLjMuM19BMi40X1QyLmh0bWwgWyBQYXNzIENyYXNoIF0K
IApJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlz
aW9uIDIwMDExMikKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9UZXN0RXhwZWN0YXRpb25z
CSh3b3JraW5nIGNvcHkpCkBAIC0zMzM3LDYgKzMzMzcsNyBAQCB3ZWJraXQub3JnL2IvMTUxNzU2
IGZhc3QvY3NzL3BzZXVkby12aXNpCiAKICMgV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUIG5vdCBl
bmFibGVkLgogbWVkaWEvYWlycGxheS10YXJnZXQtYXZhaWxhYmlsaXR5Lmh0bWwKK21lZGlhL21l
ZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS5odG1sCiAKIHdlYmtpdC5vcmcvYi8xNTI0
MTEgaHR0cC90ZXN0cy9jb250ZW50ZGlzcG9zaXRpb25hdHRhY2htZW50c2FuZGJveC9yZWZlcmVy
LWhlYWRlci1zdHJpcHBlZC13aXRoLW1ldGEtcmVmZXJlci1hbHdheXMuaHRtbCBbIEZhaWx1cmUg
XQogd2Via2l0Lm9yZy9iLzE1MjQxMSBodHRwL3Rlc3RzL2NvbnRlbnRkaXNwb3NpdGlvbmF0dGFj
aG1lbnRzYW5kYm94L3JlZmVyZXItaGVhZGVyLXN0cmlwcGVkLXdpdGgtbWV0YS1yZWZlcmVyLWRl
ZmF1bHQuaHRtbCBbIEZhaWx1cmUgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277642</attachid>
            <date>2016-04-28 13:07:09 -0700</date>
            <delta_ts>2016-05-02 18:00:25 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>youtube_playback_patch_2.txt</filename>
            <type>text/plain</type>
            <size>18262</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMDIwMikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE2LTA0LTI4ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIEFpclBsYXkg
ZmFpbHMgaWYgdGFyZ2V0IGlzIHNldCBiZWZvcmUgQVZQbGF5ZXIgaGFzIGJlZW4gY3JlYXRlZAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTQ3Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNDE5NzU5Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBtZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEt
c291cmNlLWFpcnBsYXkuaHRtbAorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAg
ICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OmNyZWF0ZUFW
UGxheWVyKTogQ2xlYXIgZmxhZyBiZWZvcmUgY2FsbGluZworICAgICAgICAgIHNldFNob3VsZFBs
YXlUb1BsYXliYWNrVGFyZ2V0IHNvIGl0IGRvZXMgdGhlIG5lY2Vzc2FyeSBzZXR1cC4KKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJp
dmF0ZU1lZGlhU291cmNlQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZU1lZGlhU291cmNlQVZGT2JqQzo6aXNBdmFpbGFibGUpOiBSZXR1cm4gZmFsc2UgaWYg
dGhlIG1vY2sKKyAgICAgICAgICBNU0Ugc291cmNlIGhhcyBiZWVuIHJlZ2lzdGVyZWQuCisgICAg
ICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OnN1cHBv
cnRzVHlwZSk6IFJldHVybiAnbm90IHN1cHBvcnRlZCcgaWYKKyAgICAgICAgICBpc0F2YWlsYWJs
ZSBpcyBmYWxzZS4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291
cmNlQVZGT2JqQzo6bG9hZCk6IEZhaWwgaWYgaXNBdmFpbGFibGUgaXMgZmFsc2UuCisgICAgICAg
IChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6OmlzQ3VycmVu
dFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MpOiBDbGVhbnVwLgorCisgICAgICAgICogcGxhdGZvcm0v
bW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpyZWdpc3RlcmVkKTogR2xvYmFsIGFjY2Vzc29yLgorICAgICAgICAoV2ViQ29y
ZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmlzUmVnaXN0ZXJlZCk6IAorICAgICAgICAo
V2ViQ29yZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OnJlZ2lzdGVyTWVkaWFFbmdpbmUp
OiBTZXQgcmVnaXN0ZXJlZCB0byB0cnVlLgorICAgICAgICAoV2ViQ29yZTo6TW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2U6OnNldFdpcmVsZXNzUGxheWJhY2tUYXJnZXQpOiBOZXcsIHJlbWVtYmVy
IHRoZSB0YXJnZXQuCisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJj
ZTo6c2V0U2hvdWxkUGxheVRvUGxheWJhY2tUYXJnZXQpOiBOZXcsIHJlbWVtYmVyIHRoZSBzZXR0
aW5nLgorICAgICAgICAoV2ViQ29yZTo6TW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6OmlzQ3Vy
cmVudFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MpOgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2UuaDoKKworICAgICAgICAqIHRlc3Rp
bmcvSW50ZXJuYWxzLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6aW5pdGlhbGl6
ZU1vY2tNZWRpYVNvdXJjZSk6IERvbid0IGRpc2FibGUgQVZGb3VuZGF0aW9uLgorCiAyMDE2LTA0
LTI4ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBNb2Rlcm4g
SURCOiBSZWltcGxlbWVudCBXZWIgSW5zcGVjdG9yIGNvZGUgdGhhdCB3YXMgdGllZCB0byBMZWdh
Y3kgSURCLgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCShyZXZpc2lvbiAyMDAxMTIpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMDM2
LDggKzEwMzYsMTEgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOgog
I2VuZGlmCiAKICNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUKSAmJiAhUExBVEZP
Uk0oSU9TKQotICAgIGlmIChtX3Nob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KQorICAgIGlmICht
X3Nob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KSB7CisgICAgICAgIC8vIENsZWFyIG1fc2hvdWxk
UGxheVRvUGxheWJhY2tUYXJnZXQgc28gZG9lc24ndCByZXR1cm4gd2l0aG91dCBkb2luZyBhbnl0
aGluZy4KKyAgICAgICAgbV9zaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldCA9IGZhbHNlOwogICAg
ICAgICBzZXRTaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldCh0cnVlKTsKKyAgICB9CiAjZW5kaWYK
IAogICAgIGlmIChwbGF5ZXIoKS0+Y2xpZW50KCkubWVkaWFQbGF5ZXJJc1ZpZGVvKCkpCkluZGV4
OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlTWVkaWFTb3VyY2VBVkZPYmpDLm1tCShyZXZpc2lvbiAyMDAxMTIpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclBy
aXZhdGVNZWRpYVNvdXJjZUFWRk9iakMubW0JKHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDcg
QEAKICNpbXBvcnQgIk1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMuaCIKICNpbXBvcnQgIk1lZGlh
U291cmNlUHJpdmF0ZUNsaWVudC5oIgogI2ltcG9ydCAiTWVkaWFUaW1lQVZGb3VuZGF0aW9uLmgi
CisjaW1wb3J0ICJNb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oIgogI2ltcG9ydCAiUGxhdGZv
cm1DbG9ja0NNLmgiCiAjaW1wb3J0ICJXZWJDb3JlU3lzdGVtSW50ZXJmYWNlLmgiCiAjaW1wb3J0
IDxBVkZvdW5kYXRpb24vQVZBc3NldC5oPgpAQCAtMjEwLDYgKzIxMSw5IEBAIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlTWVkaWFTb3VyY2VBVkZPYmoKIAogYm9vbCBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OmlzQXZhaWxhYmxlKCkKIHsKKyAgICBpZiAoTW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2U6OmlzUmVnaXN0ZXJlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisK
ICAgICByZXR1cm4gQVZGb3VuZGF0aW9uTGlicmFyeSgpCiAgICAgICAgICYmIGlzQ29yZU1lZGlh
RnJhbWV3b3JrQXZhaWxhYmxlKCkKICAgICAgICAgJiYgZ2V0QVZTdHJlYW1EYXRhUGFyc2VyQ2xh
c3MoKQpAQCAtMjQxLDYgKzI0NSw5IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFTb3Vy
Y2VBVkZPYmoKIAogTWVkaWFQbGF5ZXI6OlN1cHBvcnRzVHlwZSBNZWRpYVBsYXllclByaXZhdGVN
ZWRpYVNvdXJjZUFWRk9iakM6OnN1cHBvcnRzVHlwZShjb25zdCBNZWRpYUVuZ2luZVN1cHBvcnRQ
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogeworICAgIGlmICghaXNBdmFpbGFibGUoKSkKKyAgICAg
ICAgcmV0dXJuIE1lZGlhUGxheWVyOjpJc05vdFN1cHBvcnRlZDsKKwogICAgIC8vIFRoaXMgZW5n
aW5lIGRvZXMgbm90IHN1cHBvcnQgbm9uLW1lZGlhLXNvdXJjZSBzb3VyY2VzLgogICAgIGlmICgh
cGFyYW1ldGVycy5pc01lZGlhU291cmNlKQogICAgICAgICByZXR1cm4gTWVkaWFQbGF5ZXI6Oklz
Tm90U3VwcG9ydGVkOwpAQCAtMjc1LDYgKzI4MiwxMSBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0
ZU1lZGlhU291cmNlQVZGT2JqCiB7CiAgICAgVU5VU0VEX1BBUkFNKHVybCk7CiAKKyAgICBpZiAo
IWlzQXZhaWxhYmxlKCkpIHsKKyAgICAgICAgc2V0TmV0d29ya1N0YXRlKE1lZGlhUGxheWVyOjpG
b3JtYXRFcnJvcik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICBtX21lZGlhU291cmNl
UHJpdmF0ZSA9IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakM6OmNyZWF0ZSh0aGlzLCBjbGllbnQp
OwogfQogCkBAIC04NTgsMTAgKzg3MCw3IEBAIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlTWVkaWFT
b3VyY2VBVkZPYmoKIAogYm9vbCBNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXJjZUFWRk9iakM6
OmlzQ3VycmVudFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MoKSBjb25zdAogewotICAgIGlmICghbV9w
bGF5YmFja1RhcmdldCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotCi0gICAgcmV0dXJuIG1fc2hv
dWxkUGxheVRvVGFyZ2V0ICYmIG1fcGxheWJhY2tUYXJnZXQtPmhhc0FjdGl2ZVJvdXRlKCk7Cisg
ICAgcmV0dXJuIG1fcGxheWJhY2tUYXJnZXQgJiYgbV9zaG91bGRQbGF5VG9UYXJnZXQgJiYgbV9w
bGF5YmFja1RhcmdldC0+aGFzQWN0aXZlUm91dGUoKTsKIH0KICNlbmRpZgogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlh
U291cmNlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21l
ZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291cmNlLmNwcAkocmV2aXNpb24gMjAwMTEy
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrTWVkaWFQ
bGF5ZXJNZWRpYVNvdXJjZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM5LDggKzM5LDIwIEBACiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKIC8vIE1lZGlhUGxheWVyIEVuaWduZSBTdXBwb3J0CitzdGF0
aWMgYm9vbCYgcmVnaXN0ZXJlZCgpCit7CisgICAgc3RhdGljIGJvb2wgaXNSZWdpc3RlcmVkID0g
ZmFsc2U7CisgICAgcmV0dXJuIGlzUmVnaXN0ZXJlZDsKK30KKworYm9vbCBNb2NrTWVkaWFQbGF5
ZXJNZWRpYVNvdXJjZTo6aXNSZWdpc3RlcmVkKCkKK3sKKyAgICByZXR1cm4gcmVnaXN0ZXJlZCgp
OworfQorCiB2b2lkIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpyZWdpc3Rlck1lZGlhRW5n
aW5lKE1lZGlhRW5naW5lUmVnaXN0cmFyIHJlZ2lzdHJhcikKIHsKKyAgICByZWdpc3RlcmVkKCkg
PSB0cnVlOwogICAgIHJlZ2lzdHJhcihbXShNZWRpYVBsYXllciogcGxheWVyKSB7IHJldHVybiBz
dGQ6Om1ha2VfdW5pcXVlPE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlPihwbGF5ZXIpOyB9LCBn
ZXRTdXBwb3J0ZWRUeXBlcywKICAgICAgICAgc3VwcG9ydHNUeXBlLCAwLCAwLCAwLCAwKTsKIH0K
QEAgLTI5Myw2ICszMDUsMjggQEAgTWVkaWFUaW1lIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNl
Ojp0bwogICAgIHJldHVybiBtX21lZGlhU291cmNlUHJpdmF0ZSA/IG1fbWVkaWFTb3VyY2VQcml2
YXRlLT50b3RhbEZyYW1lRGVsYXkoKSA6IE1lZGlhVGltZTo6emVyb1RpbWUoKTsKIH0KIAorI2lm
IEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCit2b2lkIE1vY2tNZWRpYVBsYXllck1l
ZGlhU291cmNlOjpzZXRXaXJlbGVzc1BsYXliYWNrVGFyZ2V0KFJlZjxNZWRpYVBsYXliYWNrVGFy
Z2V0PiYmIHRhcmdldCkKK3sKKyAgICBtX3BsYXliYWNrVGFyZ2V0ID0gV1RGTW92ZSh0YXJnZXQp
OworfQorCit2b2lkIE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpzZXRTaG91bGRQbGF5VG9Q
bGF5YmFja1RhcmdldChib29sIHNob3VsZFBsYXlUb1RhcmdldCkKK3sKKyAgICBpZiAoc2hvdWxk
UGxheVRvVGFyZ2V0ID09IG1fc2hvdWxkUGxheVRvVGFyZ2V0KQorICAgICAgICByZXR1cm47CisK
KyAgICBtX3Nob3VsZFBsYXlUb1RhcmdldCA9IHNob3VsZFBsYXlUb1RhcmdldDsKKworICAgIGlm
IChtX3BsYXllcikKKyAgICAgICAgbV9wbGF5ZXItPmN1cnJlbnRQbGF5YmFja1RhcmdldElzV2ly
ZWxlc3NDaGFuZ2VkKCk7Cit9CisKK2Jvb2wgTW9ja01lZGlhUGxheWVyTWVkaWFTb3VyY2U6Omlz
Q3VycmVudFBsYXliYWNrVGFyZ2V0V2lyZWxlc3MoKSBjb25zdAoreworICAgIHJldHVybiBtX3Bs
YXliYWNrVGFyZ2V0ICYmIG1fc2hvdWxkUGxheVRvVGFyZ2V0ICYmIG1fcGxheWJhY2tUYXJnZXQt
Pmhhc0FjdGl2ZVJvdXRlKCk7Cit9CisjZW5kaWYKIH0KIAogI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1lZGlhU291
cmNlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNv
dXJjZS9Nb2NrTWVkaWFQbGF5ZXJNZWRpYVNvdXJjZS5oCShyZXZpc2lvbiAyMDAxMTIpCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVBsYXllck1l
ZGlhU291cmNlLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ0LDYgKzQ0LDcgQEAgcHVibGljOgogICAg
IFdFQkNPUkVfRVhQT1JUIHN0YXRpYyB2b2lkIHJlZ2lzdGVyTWVkaWFFbmdpbmUoTWVkaWFFbmdp
bmVSZWdpc3RyYXIpOwogICAgIHN0YXRpYyB2b2lkIGdldFN1cHBvcnRlZFR5cGVzKEhhc2hTZXQ8
U3RyaW5nLCBBU0NJSUNhc2VJbnNlbnNpdGl2ZUhhc2g+JiB0eXBlcyk7CiAgICAgc3RhdGljIE1l
ZGlhUGxheWVyOjpTdXBwb3J0c1R5cGUgc3VwcG9ydHNUeXBlKGNvbnN0IE1lZGlhRW5naW5lU3Vw
cG9ydFBhcmFtZXRlcnMmKTsKKyAgICBzdGF0aWMgYm9vbCBpc1JlZ2lzdGVyZWQoKTsKIAogICAg
IHZpcnR1YWwgfk1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlKCk7CiAKQEAgLTg2LDYgKzg3LDEz
IEBAIHByaXZhdGU6CiAgICAgdW5zaWduZWQgbG9uZyBjb3JydXB0ZWRWaWRlb0ZyYW1lcygpIG92
ZXJyaWRlOwogICAgIE1lZGlhVGltZSB0b3RhbEZyYW1lRGVsYXkoKSBvdmVycmlkZTsKIAorI2lm
IEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQpCisgICAgYm9vbCBpc0N1cnJlbnRQbGF5
YmFja1RhcmdldFdpcmVsZXNzKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBzZXRXaXJlbGVz
c1BsYXliYWNrVGFyZ2V0KFJlZjxNZWRpYVBsYXliYWNrVGFyZ2V0PiYmKSBvdmVycmlkZTsKKyAg
ICB2b2lkIHNldFNob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KGJvb2wpIG92ZXJyaWRlOworICAg
IGJvb2wgd2lyZWxlc3NWaWRlb1BsYXliYWNrRGlzYWJsZWQoKSBjb25zdCBvdmVycmlkZSB7IHJl
dHVybiBmYWxzZTsgfQorI2VuZGlmCisKICAgICBNZWRpYVBsYXllciogbV9wbGF5ZXI7CiAgICAg
UmVmUHRyPE1vY2tNZWRpYVNvdXJjZVByaXZhdGU+IG1fbWVkaWFTb3VyY2VQcml2YXRlOwogCkBA
IC05Myw2ICsxMDEsMTAgQEAgcHJpdmF0ZToKICAgICBNZWRpYVRpbWUgbV9kdXJhdGlvbjsKICAg
ICBNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBtX3JlYWR5U3RhdGU7CiAgICAgTWVkaWFQbGF5ZXI6
Ok5ldHdvcmtTdGF0ZSBtX25ldHdvcmtTdGF0ZTsKKyNpZiBFTkFCTEUoV0lSRUxFU1NfUExBWUJB
Q0tfVEFSR0VUKQorICAgIFJlZlB0cjxNZWRpYVBsYXliYWNrVGFyZ2V0PiBtX3BsYXliYWNrVGFy
Z2V0OworICAgIGJvb2wgbV9zaG91bGRQbGF5VG9UYXJnZXQgeyBmYWxzZSB9OworI2VuZGlmCiAg
ICAgYm9vbCBtX3BsYXlpbmc7CiAgICAgYm9vbCBtX3NlZWtDb21wbGV0ZWQ7CiB9OwpJbmRleDog
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcAkocmV2aXNpb24gMjAwMTEyKQorKysgU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNzQ2
LDkgKzI3NDYsNiBAQCBib29sIEludGVybmFsczo6aXNQbHVnaW5TbmFwc2hvdHRlZChFbGVtCiAK
IHZvaWQgSW50ZXJuYWxzOjppbml0aWFsaXplTW9ja01lZGlhU291cmNlKCkKIHsKLSNpZiBVU0Uo
QVZGT1VOREFUSU9OKQotICAgIFdlYkNvcmU6OlNldHRpbmdzOjpzZXRBVkZvdW5kYXRpb25FbmFi
bGVkKGZhbHNlKTsKLSNlbmRpZgogICAgIE1lZGlhUGxheWVyRmFjdG9yeVN1cHBvcnQ6OmNhbGxS
ZWdpc3Rlck1lZGlhRW5naW5lKE1vY2tNZWRpYVBsYXllck1lZGlhU291cmNlOjpyZWdpc3Rlck1l
ZGlhRW5naW5lKTsKIH0KIApJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMjAwMTEyKQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTYtMDQtMjgg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW01hY10g
QWlyUGxheSBmYWlscyBpZiB0YXJnZXQgaXMgc2V0IGJlZm9yZSBBVlBsYXllciBoYXMgYmVlbiBj
cmVhdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTcxNDcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzI0MTk3NTkyPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogbWVkaWEvbWVkaWEtc291cmNlL21l
ZGlhLXNvdXJjZS1haXJwbGF5LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogbWVkaWEv
bWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIE1hYy1vbmx5IHRlc3QuCisgICAg
ICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAqIHBs
YXRmb3JtL2lvcy1zaW11bGF0b3IvVGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICog
cGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6IFNraXBwZWQgbmV3IHRlc3RzIG9uIG9sZGVy
IHZlcnNpb25zIG9mIE9TIFguCisgICAgICAgICogcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlv
bnM6IFNraXAgTWFjLW9ubHkgdGVzdC4KKwogMjAxNi0wNC0yNiAgUnlvc3VrZSBOaXdhICA8cm5p
d2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBBU1NFUlRJT04gRkFJTEVEOiBtX3RlbXBsYXRlSW5z
ZXJ0aW9uTW9kZXMuaXNFbXB0eSgpIGluIFdlYkNvcmU6OkhUTUxUcmVlQnVpbGRlcjo6ZmluaXNo
ZWQKSW5kZXg6IExheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWly
cGxheS1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvbWVkaWEvbWVkaWEt
c291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5LWV4cGVjdGVkLnR4dAkocmV2aXNpb24gMCkKKysr
IExheW91dFRlc3RzL21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS1leHBl
Y3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyMiBAQAorCisqKiBjcmVhdGUgYSBN
ZWRpYVNvdXJjZSBvYmplY3QsIHNldCBhcyB2aWRlby5zcmMKK1JVTihzb3VyY2UgPSBuZXcgTWVk
aWFTb3VyY2UoKSkKK1JVTihzb3VyY2UuYWRkRXZlbnRMaXN0ZW5lcignc291cmNlb3BlbicsIHN0
YXJ0TG9hZCkpCitSVU4odmlkZW8uc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChzb3VyY2UpKQor
RVZFTlQoIHdlYmtpdHBsYXliYWNrdGFyZ2V0YXZhaWxhYmlsaXR5Y2hhbmdlZCApIDogZXZlbnQu
YXZhaWxhYmlsaXR5ID0gJ25vdC1hdmFpbGFibGUnCisKKyoqIGNyZWF0ZSBhIHNvdXJjZSBidWZm
ZXIsIGFkZCBhbiBpbml0IHNlZ21lbnQgd2l0aCAxIHZpZGVvIHRyYWNrCitSVU4oc291cmNlQnVm
ZmVyID0gc291cmNlLmFkZFNvdXJjZUJ1ZmZlcigndmlkZW8vbW9jazsgY29kZWNzPSJtb2NrIicp
KQorUlVOKGluaXQgPSBtYWtlQUluaXQoMTAwLCBbbWFrZUFUcmFjaygxLCAnbW9jaycsIFRSQUNL
X0tJTkQuVklERU8pXSkpCitSVU4oc291cmNlQnVmZmVyLmFwcGVuZEJ1ZmZlcihpbml0KSkKKwor
RVZFTlQoY2FucGxheXRocm91Z2gpCisKKyoqIHNpbXVsYXRlIGNob29zaW5nIGEgZGV2aWNlIGZy
b20gdGhlIG1lbnUKK0VWRU5UKCB3ZWJraXRwbGF5YmFja3RhcmdldGF2YWlsYWJpbGl0eWNoYW5n
ZWQgKSA6IGV2ZW50LmF2YWlsYWJpbGl0eSA9ICdhdmFpbGFibGUnCisKKyoqIGNoYW5nZSB2aWRl
by5zcmMgdG8gb25lIHRoYXQgc3VwcG9ydHMgQWlyUGxheQorRVhQRUNURUQgKHZpZGVvLndlYmtp
dEN1cnJlbnRQbGF5YmFja1RhcmdldElzV2lyZWxlc3MgPT0gJ3RydWUnKSBPSworCitFTkQgT0Yg
VEVTVAorCkluZGV4OiBMYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNl
LWFpcnBsYXkuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9tZWRpYS9tZWRpYS1zb3Vy
Y2UvbWVkaWEtc291cmNlLWFpcnBsYXkuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L21lZGlhL21lZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtYWlycGxheS5odG1sCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsOTYgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKyAg
ICA8dGl0bGU+TWVkaWEgZW5naW5lIGNoYW5nZSBhZnRlciBzZWxlY3RpbmcgQWlyUGxheSB0YXJn
ZTwvdGl0bGU+CisgICAgPHNjcmlwdCBzcmM9Im1vY2stbWVkaWEtc291cmNlLmpzIj48L3Njcmlw
dD4KKyAgICA8c2NyaXB0IHNyYz0iLi4vbWVkaWEtZmlsZS5qcyI+PC9zY3JpcHQ+CisgICAgPHNj
cmlwdCBzcmM9Ii4uL3ZpZGVvLXRlc3QuanMiPjwvc2NyaXB0PgorICAgIDxzY3JpcHQ+CisKKyAg
ICB2YXIgc291cmNlQnVmZmVyOworICAgIHZhciByZXF1ZXN0TGVuZ3RoID0gMjAwMDAwOworICAg
IHZhciBuZXh0UmVxdWVzdCA9IDA7CisgICAgdmFyIHRvdGFsTGVuZ3RoID0gMTAwOworICAgIHZh
ciBwcmV2aW91c0F2YWlsYWJsZSA9ICcnOworCisgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsK
KyAgICAgICAgaW50ZXJuYWxzLmluaXRpYWxpemVNb2NrTWVkaWFTb3VyY2UoKTsKKyAgICAgICAg
aW50ZXJuYWxzLnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZCh0cnVlKTsK
KyAgICAgICAgaW50ZXJuYWxzLnNldE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyU3RhdGUo
JycsICdVbmtub3duJyk7CisgICAgfQorCisgICAgZnVuY3Rpb24gc3RhcnQoKSAKKyAgICB7Cisg
ICAgICAgIGZpbmRNZWRpYUVsZW1lbnQoKTsKKworICAgICAgICBjb25zb2xlV3JpdGUoJyoqIGNy
ZWF0ZSBhIE1lZGlhU291cmNlIG9iamVjdCwgc2V0IGFzIHZpZGVvLnNyYycpOworICAgICAgICBy
dW4oYHNvdXJjZSA9IG5ldyBNZWRpYVNvdXJjZSgpYCk7CisgICAgICAgIHJ1bihgc291cmNlLmFk
ZEV2ZW50TGlzdGVuZXIoJ3NvdXJjZW9wZW4nLCBzdGFydExvYWQpYCk7CisgICAgICAgIHJ1bihg
dmlkZW8uc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChzb3VyY2UpYCk7CisKKyAgICAgICAgdmlk
ZW8uYWRkRXZlbnRMaXN0ZW5lcignd2Via2l0Y3VycmVudHBsYXliYWNrdGFyZ2V0aXN3aXJlbGVz
c2NoYW5nZWQnLCBjdXJyZW50VGFyZ2V0Q2hhbmdlZCwgdHJ1ZSk7CisgICAgICAgIHZpZGVvLmFk
ZEV2ZW50TGlzdGVuZXIoJ3dlYmtpdHBsYXliYWNrdGFyZ2V0YXZhaWxhYmlsaXR5Y2hhbmdlZCcs
IHRhcmdldEF2YWlsYWJpbGl0eUNoYW5nZWQsIHRydWUpOworICAgICAgICB3YWl0Rm9yRXZlbnRP
bmNlKCdjYW5wbGF5dGhyb3VnaCcsIGNhbnBsYXl0aHJvdWdoKTsKKyAgICB9CisKKyAgICBmdW5j
dGlvbiBzdGFydExvYWQoKQorICAgIHsKKyAgICAgICAgY29uc29sZVdyaXRlKCc8YnI+KiogY3Jl
YXRlIGEgc291cmNlIGJ1ZmZlciwgYWRkIGFuIGluaXQgc2VnbWVudCB3aXRoIDEgdmlkZW8gdHJh
Y2snKTsKKyAgICAgICAgcnVuKGBzb3VyY2VCdWZmZXIgPSBzb3VyY2UuYWRkU291cmNlQnVmZmVy
KCd2aWRlby9tb2NrOyBjb2RlY3M9Im1vY2siJylgKTsKKyAgICAgICAgc291cmNlQnVmZmVyLmFk
ZEV2ZW50TGlzdGVuZXIoJ3VwZGF0ZScsIHNvdXJjZVVwZGF0ZWQpOworICAgICAgICBuZXh0UmVx
dWVzdCA9IDA7CisKKyAgICAgICAgcnVuKGBpbml0ID0gbWFrZUFJbml0KDEwMCwgW21ha2VBVHJh
Y2soMSwgJ21vY2snLCBUUkFDS19LSU5ELlZJREVPKV0pYCk7CisgICAgICAgIHJ1bihgc291cmNl
QnVmZmVyLmFwcGVuZEJ1ZmZlcihpbml0KWApOworICAgICAgICBjb25zb2xlV3JpdGUoJycpOwor
ICAgIH0KKworICAgIGZ1bmN0aW9uIHNvdXJjZVVwZGF0ZWQoKQorICAgIHsKKyAgICAgICAgaWYg
KG5leHRSZXF1ZXN0ID49IHRvdGFsTGVuZ3RoKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAg
ICAgIHNvdXJjZUJ1ZmZlci5hcHBlbmRCdWZmZXIobWFrZUFTYW1wbGUobmV4dFJlcXVlc3QsIG5l
eHRSZXF1ZXN0LCAxLCAxLCBTQU1QTEVfRkxBRy5TWU5DKSk7CisgICAgICAgICsrbmV4dFJlcXVl
c3Q7CisgICAgfQorCisgICAgZnVuY3Rpb24gY2FucGxheXRocm91Z2goKQorICAgIHsKKyAgICAg
ICAgY29uc29sZVdyaXRlKCc8YnI+Kiogc2ltdWxhdGUgY2hvb3NpbmcgYSBkZXZpY2UgZnJvbSB0
aGUgbWVudScpOworICAgICAgICBydW5XaXRoS2V5RG93bihmdW5jdGlvbigpIHsKKyAgICAgICAg
ICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAgICAgICAgICAgaW50ZXJuYWxzLnNl
dE1vY2tNZWRpYVBsYXliYWNrVGFyZ2V0UGlja2VyRW5hYmxlZCh0cnVlKTsKKyAgICAgICAgICAg
ICAgICBpbnRlcm5hbHMuc2V0TW9ja01lZGlhUGxheWJhY2tUYXJnZXRQaWNrZXJTdGF0ZSgnU2xl
ZXB5IFRWJywgJ0RldmljZUF2YWlsYWJsZScpOworICAgICAgICAgICAgICAgIHZpZGVvLndlYmtp
dFNob3dQbGF5YmFja1RhcmdldFBpY2tlcigpOworICAgICAgICAgICAgfQorICAgICAgICB9KTsK
KyAgICB9CisKKyAgICBmdW5jdGlvbiBjdXJyZW50VGFyZ2V0Q2hhbmdlZCgpCisgICAgeworICAg
ICAgICBpZiAodmlkZW8uc3JjLmluZGV4T2YoIi90ZXN0LiIpID4gMCkgeworICAgICAgICAgICAg
dGVzdEV4cGVjdGVkKCJ2aWRlby53ZWJraXRDdXJyZW50UGxheWJhY2tUYXJnZXRJc1dpcmVsZXNz
IiwgdHJ1ZSk7CisgICAgICAgICAgICBjb25zb2xlV3JpdGUoJycpOworICAgICAgICAgICAgZW5k
VGVzdCgpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CisgICAgICAgICAgICAKKyAg
ICAgICAgY29uc29sZVdyaXRlKCc8YnI+KiogY2hhbmdlIHZpZGVvLnNyYyB0byBvbmUgdGhhdCBz
dXBwb3J0cyBBaXJQbGF5Jyk7CisgICAgICAgIHZpZGVvLnNyYyA9IGZpbmRNZWRpYUZpbGUoJ3Zp
ZGVvJywgJy4uL2NvbnRlbnQvdGVzdCcpCisgICAgfQorCisgICAgZnVuY3Rpb24gdGFyZ2V0QXZh
aWxhYmlsaXR5Q2hhbmdlZChldmVudCkKKyAgICB7CisgICAgICAgIGlmIChwcmV2aW91c0F2YWls
YWJsZSA9PSBldmVudC5hdmFpbGFiaWxpdHkpCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAg
ICAgY29uc29sZVdyaXRlKGBFVkVOVCggJHtldmVudC50eXBlfSApIDogZXZlbnQuYXZhaWxhYmls
aXR5ID0gJyR7ZXZlbnQuYXZhaWxhYmlsaXR5fSdgKTsKKyAgICAgICAgcHJldmlvdXNBdmFpbGFi
bGUgPSBldmVudC5hdmFpbGFiaWxpdHk7CisgICAgfQorICAgIAorICAgIDwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHkgb25sb2FkPSJzdGFydCgpIj4KKyAgICA8dmlkZW8gY29udHJvbHM+PC92aWRl
bz4KKzwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0
RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0
RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyMDAxMTIpCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9l
ZmwvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMjYyOSw2ICsyNjI5LDkgQEAg
d2Via2l0Lm9yZy9iLzE1NjAyNCBzdmcvem9vbS9wYWdlL3pvb20tcwogd2Via2l0Lm9yZy9iLzE1
NjAyNCBzdmcvem9vbS9wYWdlL3pvb20tc3ZnLXRocm91Z2gtb2JqZWN0LXdpdGgtYWJzb2x1dGUt
c2l6ZS54aHRtbCBbIEZhaWx1cmUgXQogd2Via2l0Lm9yZy9iLzE1NjAyNCBzdmcvem9vbS9wYWdl
L3pvb20tc3ZnLXRocm91Z2gtb2JqZWN0LXdpdGgtcGVyY2VudGFnZS1zaXplLnhodG1sIFsgRmFp
bHVyZSBdCiAKKyMgV0lSRUxFU1NfUExBWUJBQ0tfVEFSR0VUIG5vdCBlbmFibGVkLgorbWVkaWEv
bWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0bWwgWyBTa2lwIF0KKwogIyBNZWRp
YSB0ZXN0cyBoYXZlIGJlZW4gZmFpbGluZyBzaW5jZSB3ZSBidW1wZWQgZ3N0cmVhbWVyIHZlci4K
IHdlYmtpdC5vcmcvYi8xNTY5NjkgbWVkaWEvbWVkaWEtc291cmNlL21lZGlhLXNvdXJjZS1jYW5w
bGF5dGhyb3VnaC5odG1sIFsgVGltZW91dCBdCiB3ZWJraXQub3JnL2IvMTU2OTY5IG1lZGlhL21l
ZGlhLXNvdXJjZS9tZWRpYS1zb3VyY2UtZW5kLW9mLXN0cmVhbS1idWZmZXJlZC5odG1sIFsgVGlt
ZW91dCBdCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwko
cmV2aXNpb24gMjAwMTEyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3Rh
dGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTE4NjcsNiArMTg2Nyw5IEBAIHdlYmtpdC5vcmcvYi8x
MjIwMjEgbWVkaWEvdmlkZW8tY29udHJvbHMKIHdlYmtpdC5vcmcvYi8xMjMwOTcgbWVkaWEvdHJh
Y2svdHJhY2stdXNlci1wcmVmZXJlbmNlcy5odG1sIFsgU2tpcCBdCiB3ZWJraXQub3JnL2IvMTIx
OTk1IG1lZGlhL3ZpZGVvLWNvbnRyb2xzLWNhcHRpb25zLXRyYWNrbWVudS1pbmNsdWRlcy1lbmFi
bGVkLXRyYWNrLmh0bWwgWyBGYWlsdXJlIF0KIAorIyBXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQg
bm90IGVuYWJsZWQuCittZWRpYS9tZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFpcnBsYXkuaHRt
bCBbIFNraXAgXQorCiBCdWcoR1RLKSBodHRwL3Rlc3RzL21lZGlhL3ZpZGVvLXBsYXktc3RhbGwt
c2Vlay5odG1sIFsgU2tpcCBdCiAKIEJ1ZyhHVEspIGh0dHAvdGVzdHMvbWlzYy9hY2lkMy5odG1s
IFsgRmFpbHVyZSBdCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rl
c3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zLXNp
bXVsYXRvci9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAyMDAxMTIpCisrKyBMYXlvdXRUZXN0
cy9wbGF0Zm9ybS9pb3Mtc2ltdWxhdG9yL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkK
QEAgLTMwNDIsNiArMzA0Miw5IEBAIGZhc3QvZm9ybXMvbGlzdGJveC1wYWRkaW5nLWNsaXAuaHRt
bCBbIEkKIGZhc3QvZm9ybXMvbGlzdGJveC1wYWRkaW5nLWNsaXAtb3ZlcmxheS5odG1sIFsgSW1h
Z2VPbmx5RmFpbHVyZSBdCiBmYXN0L2Zvcm1zL2xpc3Rib3gtcGFkZGluZy1jbGlwLXNlbGVjdGVk
Lmh0bWwgWyBJbWFnZU9ubHlGYWlsdXJlIF0KIAorIyBNU0Ugbm90IGVuYWJsZWQuCittZWRpYS9t
ZWRpYS1zb3VyY2UvbWVkaWEtc291cmNlLWFpcnBsYXkuaHRtbCBbIFNraXAgXQorCiAjIE5vIGZv
Y3VzcmluZyBvbiBpT1MuCiBmYXN0L2ltYWdlcy9pbWFnZS1tYXAtb3V0bGluZS1pbi1wb3NpdGlv
bmVkLWNvbnRhaW5lci5odG1sIFsgUGFzcyBJbWFnZU9ubHlGYWlsdXJlIF0KIGZhc3QvaW1hZ2Vz
L2ltYWdlLW1hcC1vdXRsaW5lLXdpdGgtcGFpbnQtcm9vdC1vZmZzZXQuaHRtbCBbIFBhc3MgSW1h
Z2VPbmx5RmFpbHVyZSBdCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVj
dGF0aW9ucwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVj
dGF0aW9ucwkocmV2aXNpb24gMjAwMTEyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rl
c3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTEyODcsNiArMTI4Nyw3IEBAIHdlYmtp
dC5vcmcvYi8xNTIwMDkgWyBEZWJ1ZyBFbENhcGl0YW4gXSAKICMgV0lSRUxFU1NfUExBWUJBQ0tf
VEFSR0VUIG5vdCBlbmFibGVkIG9uIFlvc2VtaXRlLgogWyBZb3NlbWl0ZSBdIG1lZGlhL2FpcnBs
YXktdGFyZ2V0LWF2YWlsYWJpbGl0eS5odG1sCiBbIFlvc2VtaXRlIF0gbWVkaWEvY29udHJvbHMv
YWlycGxheS1waWNrZXIuaHRtbAorWyBZb3NlbWl0ZSBdIG1lZGlhL21lZGlhLXNvdXJjZS9tZWRp
YS1zb3VyY2UtYWlycGxheS5odG1sCiAKIHdlYmtpdC5vcmcvYi8xNTMwODYgc3B1dG5pay9Db25m
b3JtYW5jZS8xNV9OYXRpdmVfT2JqZWN0cy8xNS4xX1RoZV9HbG9iYWxfT2JqZWN0LzE1LjEuMy8x
NS4xLjMuM19lbmNvZGVVUkkvUzE1LjEuMy4zX0EyLjRfVDIuaHRtbCBbIFBhc3MgQ3Jhc2ggXQog
CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4vVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNp
b24gMjAwMTEyKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1Rlc3RFeHBlY3RhdGlvbnMJ
KHdvcmtpbmcgY29weSkKQEAgLTMzMzcsNiArMzMzNyw3IEBAIHdlYmtpdC5vcmcvYi8xNTE3NTYg
ZmFzdC9jc3MvcHNldWRvLXZpc2kKIAogIyBXSVJFTEVTU19QTEFZQkFDS19UQVJHRVQgbm90IGVu
YWJsZWQuCiBtZWRpYS9haXJwbGF5LXRhcmdldC1hdmFpbGFiaWxpdHkuaHRtbAorbWVkaWEvbWVk
aWEtc291cmNlL21lZGlhLXNvdXJjZS1haXJwbGF5Lmh0bWwKIAogd2Via2l0Lm9yZy9iLzE1MjQx
MSBodHRwL3Rlc3RzL2NvbnRlbnRkaXNwb3NpdGlvbmF0dGFjaG1lbnRzYW5kYm94L3JlZmVyZXIt
aGVhZGVyLXN0cmlwcGVkLXdpdGgtbWV0YS1yZWZlcmVyLWFsd2F5cy5odG1sIFsgRmFpbHVyZSBd
CiB3ZWJraXQub3JnL2IvMTUyNDExIGh0dHAvdGVzdHMvY29udGVudGRpc3Bvc2l0aW9uYXR0YWNo
bWVudHNhbmRib3gvcmVmZXJlci1oZWFkZXItc3RyaXBwZWQtd2l0aC1tZXRhLXJlZmVyZXItZGVm
YXVsdC5odG1sIFsgRmFpbHVyZSBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277953</attachid>
            <date>2016-05-02 18:00:25 -0700</date>
            <delta_ts>2016-05-02 18:39:16 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>youtube_playback_patch_5.txt</filename>
            <type>text/plain</type>
            <size>1722</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwMDMxNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE2LTA1LTAyICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtNYWNdIEFpclBsYXkg
ZmFpbHMgaWYgdGFyZ2V0IGlzIHNldCBiZWZvcmUgQVZQbGF5ZXIgaGFzIGJlZW4gY3JlYXRlZAor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTU3MTQ3Cisg
ICAgICAgIDxyZGFyOi8vcHJvYmxlbS8yNDE5NzU5Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIGl0IHdvbid0IGJlIHBvc3Np
YmxlIHRvIHRlc3QgdGhpcyB1bnRpbCAKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTE1NzI5MCBoYXMgYmVlbiBmaXhlZC4KKworICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDOjpjcmVhdGVBVlBsYXllcik6CisKIDIwMTYtMDUtMDEgIENvbW1pdCBRdWV1ZSAg
PGNvbW1pdC1xdWV1ZUB3ZWJraXQub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcg
b3V0IHIyMDAyNjQgYW5kIHIyMDAyNjYuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25P
YmpDLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0JKHJl
dmlzaW9uIDIwMDMxNSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0JKHdvcmtp
bmcgY29weSkKQEAgLTEwMzYsOCArMTAzNiwxMSBAQCB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakM6CiAjZW5kaWYKIAogI2lmIEVOQUJMRShXSVJFTEVTU19QTEFZQkFDS19U
QVJHRVQpICYmICFQTEFURk9STShJT1MpCi0gICAgaWYgKG1fc2hvdWxkUGxheVRvUGxheWJhY2tU
YXJnZXQpCisgICAgaWYgKG1fc2hvdWxkUGxheVRvUGxheWJhY2tUYXJnZXQpIHsKKyAgICAgICAg
Ly8gQ2xlYXIgbV9zaG91bGRQbGF5VG9QbGF5YmFja1RhcmdldCBzbyBkb2Vzbid0IHJldHVybiB3
aXRob3V0IGRvaW5nIGFueXRoaW5nLgorICAgICAgICBtX3Nob3VsZFBsYXlUb1BsYXliYWNrVGFy
Z2V0ID0gZmFsc2U7CiAgICAgICAgIHNldFNob3VsZFBsYXlUb1BsYXliYWNrVGFyZ2V0KHRydWUp
OworICAgIH0KICNlbmRpZgogCiAgICAgaWYgKHBsYXllcigpLT5jbGllbnQoKS5tZWRpYVBsYXll
cklzVmlkZW8oKSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>