<?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>135738</bug_id>
          
          <creation_ts>2014-08-07 19:38:47 -0700</creation_ts>
          <short_desc>[mac] Dynamically update serviceability when the set of services changes</short_desc>
          <delta_ts>2014-08-08 18:15:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit2</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>enrica</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1027734</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-07 19:38:47 -0700</bug_when>
    <thetext>&lt;rdar://problem/17533459&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027737</commentid>
    <comment_count>1</comment_count>
      <attachid>236253</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-07 19:45:08 -0700</bug_when>
    <thetext>Created attachment 236253
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027738</commentid>
    <comment_count>2</comment_count>
      <attachid>236254</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-07 19:48:05 -0700</bug_when>
    <thetext>Created attachment 236254
rebase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027739</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-08-07 19:48:58 -0700</bug_when>
    <thetext>Attachment 236254 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/mac/ServicesController.mm:80:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 5 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>1027753</commentid>
    <comment_count>4</comment_count>
      <attachid>236254</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-07 20:55:26 -0700</bug_when>
    <thetext>Comment on attachment 236254
rebase

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

&gt; Source/WebKit2/UIProcess/WebContext.cpp:-92
&gt;  
&gt; -#if ENABLE(SERVICE_CONTROLS)
&gt; -#include &quot;ServicesController.h&quot;
&gt; -#endif

I see, this was here because the header is in a directory that isn&apos;t in the search path for the other ports. I will undo this part!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027858</commentid>
    <comment_count>5</comment_count>
      <attachid>236254</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-08 09:26:49 -0700</bug_when>
    <thetext>Comment on attachment 236254
rebase

Going to improve this a little.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027864</commentid>
    <comment_count>6</comment_count>
      <attachid>236284</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-08 09:56:19 -0700</bug_when>
    <thetext>Created attachment 236284
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027866</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-08-08 09:57:20 -0700</bug_when>
    <thetext>Attachment 236284 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/mac/ServicesController.mm:80:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 5 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>1027979</commentid>
    <comment_count>8</comment_count>
      <attachid>236284</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-08-08 15:40:52 -0700</bug_when>
    <thetext>Comment on attachment 236284
patch

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

&gt; Source/WebKit2/UIProcess/mac/ServicesController.mm:134
&gt; +            WTFLogAlways(&quot;refreshed %d&quot;, m_hasSelectionServices);

:(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1027997</commentid>
    <comment_count>9</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-08 16:33:26 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/172366</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1028029</commentid>
    <comment_count>10</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-08-08 18:15:33 -0700</bug_when>
    <thetext>32-bit build fix http://trac.webkit.org/changeset/172369</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236253</attachid>
            <date>2014-08-07 19:45:08 -0700</date>
            <delta_ts>2014-08-07 19:48:05 -0700</delta_ts>
            <desc>patch</desc>
            <filename>dynamic-update.diff</filename>
            <type>text/plain</type>
            <size>10310</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBiMmRiOGQ3MjAuLjdmYmIzZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSw0
MiBAQAorMjAxNC0wOC0wNyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4K
KworICAgICAgICBbbWFjXSBEeW5hbWljYWxseSB1cGRhdGUgc2VydmljZWFiaWxpdHkgd2hlbiB0
aGUgc2V0IG9mIHNlcnZpY2VzIGNoYW5nZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEzNTczOAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTc1MzM0
NTk+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBV
SVByb2Nlc3MvV2ViQ29udGV4dC5jcHA6CisgICAgICAgIE1vdmUgU2VydmljZXNDb250cm9sbGVy
LmggaW5jbHVkZSB1cCBpbnRvIHRoZSBtYWluIGJsb2NrOyB0aGUgI2lmIGlzIGFscmVhZHkgaW5z
aWRlIG9mIGl0LgorCisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OmNyZWF0ZU5ld1dlYlBy
b2Nlc3MpOgorICAgICAgICBBZG9wdCB0aGUgbmV3IHVuaXZlcnNhbCByZWZyZXNoRXhpc3RpbmdT
ZXJ2aWNlcy4KKworICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpyZWZyZXNoRXhpc3RpbmdT
ZXJ2aWNlcyk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL1dlYkNvbnRleHQuaDoKKyAg
ICAgICAgUmVtb3ZlIFdlYkNvbnRleHQ6OnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzOyB0aGVyZSdz
IG5vIG5lZWQgZm9yIGl0LgorCisgICAgICAgICogVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRy
b2xsZXIuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5tbToK
KyAgICAgICAgRml4IHRoZSBidWlsZCB3aXRoIG9ubHkgcHVibGljIGhlYWRlcnMgYnkgaW5jbHVk
aW5nIE5TU2hhcmluZ1NlcnZpY2UuaCBpdHNlbGYuCisgICAgICAgIFBsYWNlIHRoZSBOU1NoYXJp
bmdTZXJ2aWNlUGlja2VyIChEZXRhaWxzKSBjYXRlZ29yeSBvdXRzaWRlIHRoZSAjaWZkZWYuCisg
ICAgICAgIEZvcndhcmQtZGVjbGFyZSBhbmQgcG9zc2libHkgaW1wb3J0IE5TRXh0ZW5zaW9uIFNQ
SS4KKworICAgICAgICAoV2ViS2l0OjpTZXJ2aWNlc0NvbnRyb2xsZXI6OlNlcnZpY2VzQ29udHJv
bGxlcik6CisgICAgICAgIFJlZ2lzdGVyIGEgY2FsbGJhY2sgdG8gYmUgbm90aWZpZWQgd2hlbmV2
ZXIgdGhlIHNldCBvZiBzZXJ2aWNlcyBjaGFuZ2VzLgorICAgICAgICBXaGVuIHRoaXMgb2NjdXJz
LCBjYWxsIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzLgorCisgICAgICAgIChXZWJLaXQ6OlNlcnZp
Y2VzQ29udHJvbGxlcjo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMpOgorICAgICAgICBEaXNwYXRj
aCBjaGFuZ2VzIGluIHNlcnZpY2UgYXZhaWxhYmlsaXR5IHRvIGFsbCBwcm9jZXNzZXMgaW4gYWxs
IGNvbnRleHRzLgorCisgICAgICAgICogVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWVudVByb3h5
TWFjLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0TWVudVByb3h5TWFjOjpzZXR1cFNl
cnZpY2VzTWVudSk6CisgICAgICAgIEFkanVzdCB0aGUgcmVmZXJlbmNlZCByZGFyOi8vIGFuZCBj
YWxsIFNlcnZpY2VzQ29udHJvbGxlcjo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMKKyAgICAgICAg
aW5zdGVhZCBvZiB0aGUgbm93LXJlbW92ZWQgV2ViQ29udGV4dDo6IHZhcmlhbnQuIFdlIGNhbid0
IHJlbW92ZSB0aGlzCisgICAgICAgIHlldCBiZWNhdXNlIG91ciBzZXJ2aWNlcyBzdGF0ZSBjYW4g
c3RpbGwgYmUgc3RhbGUgYmVjYXVzZSBOU1NlcnZpY2VTaGFyaW5nUGlja2VyCisgICAgICAgIGNh
biBzdGlsbCBzb21ldGltZXMgbGllIGFib3V0IHRoZSBjdXJyZW50IHNlcnZpY2Ugc3RhdGUgaW1t
ZWRpYXRlbHkgYWZ0ZXIgYSBjaGFuZ2Ugb2NjdXJzOworICAgICAgICBvbmNlIHRoYXQgaXMgZml4
ZWQsIHdlIHNob3VsZCBnZXQgcmlkIG9mIHRoaXMgYXMgd2VsbCBhcyB0aGUgcmVmcmVzaCBpbiBX
ZWIgUHJvY2VzcyBjcmVhdGlvbi4KKwogMjAxNC0wOC0wNyAgVGltb3RoeSBIb3J0b24gIDx0aW1v
dGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgc2V0Q3VzdG9tU3dpcGVWaWV3cyBpbnNp
ZGUgZGlkQ2hhbmdlQmFja0ZvcndhcmRMaXN0IGNsaWVudCBjYWxsYmFjayBpcyBpZ25vcmVkCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKaW5kZXggNjc1MzM5YS4uN2QyZjE0
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcApAQCAtMzQsNiArMzQs
NyBAQAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJNdXRhYmxlRGljdGlvbmFyeS5o
IgogI2luY2x1ZGUgIlNhbmRib3hFeHRlbnNpb24uaCIKKyNpbmNsdWRlICJTZXJ2aWNlc0NvbnRy
b2xsZXIuaCIKICNpbmNsdWRlICJTdGF0aXN0aWNzRGF0YS5oIgogI2luY2x1ZGUgIlRleHRDaGVj
a2VyLmgiCiAjaW5jbHVkZSAiV0tDb250ZXh0UHJpdmF0ZS5oIgpAQCAtODcsMTAgKzg4LDYgQEAK
ICNpbmNsdWRlICJOZXR3b3JrUHJvY2Vzc1Byb3h5LmgiCiAjZW5kaWYKIAotI2lmIEVOQUJMRShT
RVJWSUNFX0NPTlRST0xTKQotI2luY2x1ZGUgIlNlcnZpY2VzQ29udHJvbGxlci5oIgotI2VuZGlm
Ci0KICNpZiBFTkFCTEUoQ1VTVE9NX1BST1RPQ09MUykKICNpbmNsdWRlICJDdXN0b21Qcm90b2Nv
bE1hbmFnZXJNZXNzYWdlcy5oIgogI2VuZGlmCkBAIC02ODEsNyArNjc4LDcgQEAgV2ViUHJvY2Vz
c1Byb3h5JiBXZWJDb250ZXh0OjpjcmVhdGVOZXdXZWJQcm9jZXNzKCkKICNpZiBFTkFCTEUoU0VS
VklDRV9DT05UUk9MUykKICAgICBwYXJhbWV0ZXJzLmhhc0ltYWdlU2VydmljZXMgPSBTZXJ2aWNl
c0NvbnRyb2xsZXI6OnNoYXJlZCgpLmhhc0ltYWdlU2VydmljZXMoKTsKICAgICBwYXJhbWV0ZXJz
Lmhhc1NlbGVjdGlvblNlcnZpY2VzID0gU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5oYXNT
ZWxlY3Rpb25TZXJ2aWNlcygpOwotICAgIFNlcnZpY2VzQ29udHJvbGxlcjo6c2hhcmVkKCkucmVm
cmVzaEV4aXN0aW5nU2VydmljZXModGhpcyk7CisgICAgU2VydmljZXNDb250cm9sbGVyOjpzaGFy
ZWQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwogI2VuZGlmCiAKICAgICAvLyBBZGQgYW55
IHBsYXRmb3JtIHNwZWNpZmljIHBhcmFtZXRlcnMKQEAgLTEzNjAsMTQgKzEzNTcsNiBAQCB2b2lk
IFdlYkNvbnRleHQ6OmRpZEdldFN0YXRpc3RpY3MoY29uc3QgU3RhdGlzdGljc0RhdGEmIHN0YXRp
c3RpY3NEYXRhLCB1aW50NjRfdAogICAgIHJlcXVlc3QtPmNvbXBsZXRlZFJlcXVlc3QocmVxdWVz
dElELCBzdGF0aXN0aWNzRGF0YSk7CiB9CiAKLSNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9MUykK
LXZvaWQgV2ViQ29udGV4dDo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoKQotewotICAgIFNlcnZp
Y2VzQ29udHJvbGxlcjo6c2hhcmVkKCkucmVmcmVzaEV4aXN0aW5nU2VydmljZXModGhpcyk7Ci19
Ci0jZW5kaWYKLQotICAgIAogdm9pZCBXZWJDb250ZXh0OjpnYXJiYWdlQ29sbGVjdEphdmFTY3Jp
cHRPYmplY3RzKCkKIHsKICAgICBzZW5kVG9BbGxQcm9jZXNzZXMoTWVzc2FnZXM6OldlYlByb2Nl
c3M6OkdhcmJhZ2VDb2xsZWN0SmF2YVNjcmlwdE9iamVjdHMoKSk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkNvbnRleHQuaAppbmRleCAzMjc3NWQ4Li5kMzZmMTk2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJDb250ZXh0LmgKQEAgLTM1MiwxMCArMzUyLDYgQEAgcHVibGljOgogCiAgICAg
dm9pZCBzZXRNZW1vcnlDYWNoZURpc2FibGVkKGJvb2wpOwogCi0jaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCi0gICAgdm9pZCByZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwotI2VuZGlmCi0K
IHByaXZhdGU6CiAgICAgdm9pZCBwbGF0Zm9ybUluaXRpYWxpemUoKTsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIuaCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLmgKaW5kZXggYWEzMzg2
My4uNmM5YTFmMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9TZXJ2
aWNlc0NvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1NlcnZp
Y2VzQ29udHJvbGxlci5oCkBAIC0yOCwxMCArMjgsOSBAQAogCiAjaWYgRU5BQkxFKFNFUlZJQ0Vf
Q09OVFJPTFMpCiAKLSNpbmNsdWRlIDx3dGYvSGFzaFNldC5oPgorI2luY2x1ZGUgPHd0Zi9Gb3J3
YXJkLmg+CiAjaW5jbHVkZSA8d3RmL05vbmNvcHlhYmxlLmg+Ci0jaW5jbHVkZSA8d3RmL1JlZlB0
ci5oPgotI2luY2x1ZGUgPHd0Zi9SdW5Mb29wLmg+CisjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5o
PgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIApAQCAtNDcsMTMgKzQ2LDExIEBAIHB1YmxpYzoKICAg
ICBib29sIGhhc1NlbGVjdGlvblNlcnZpY2VzKCkgY29uc3QgeyByZXR1cm4gbV9oYXNTZWxlY3Rp
b25TZXJ2aWNlczsgfQogICAgIGJvb2wgaGFzUmljaENvbnRlbnRTZXJ2aWNlcygpIGNvbnN0IHsg
cmV0dXJuIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlczsgfQogCi0gICAgdm9pZCByZWZyZXNoRXhp
c3RpbmdTZXJ2aWNlcyhXZWJDb250ZXh0Kik7CisgICAgdm9pZCByZWZyZXNoRXhpc3RpbmdTZXJ2
aWNlcygpOwogCiBwcml2YXRlOgogICAgIFNlcnZpY2VzQ29udHJvbGxlcigpOwogCi0gICAgdm9p
ZCByZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwotCiAgICAgZGlzcGF0Y2hfcXVldWVfdCBtX3Jl
ZnJlc2hRdWV1ZTsKICAgICBib29sIG1faXNSZWZyZXNoaW5nOwogCkBAIC02MSw3ICs1OCw4IEBA
IHByaXZhdGU6CiAgICAgYm9vbCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzOwogICAgIGJvb2wgbV9o
YXNSaWNoQ29udGVudFNlcnZpY2VzOwogCi0gICAgSGFzaFNldDxSZWZQdHI8V2ViQ29udGV4dD4+
IG1fY29udGV4dHNUb05vdGlmeTsKKyAgICBSZXRhaW5QdHI8aWQ+IG1fZXh0ZW5zaW9uV2F0Y2hl
cjsKKyAgICBSZXRhaW5QdHI8aWQ+IG1fdWlFeHRlbnNpb25XYXRjaGVyOwogfTsKIAogfSAvLyBu
YW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFj
L1NlcnZpY2VzQ29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2Vy
dmljZXNDb250cm9sbGVyLm1tCmluZGV4IDA3ZjkwMjQuLjA4YTEyNGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLm1tCkBAIC0zMCw2
ICszMCw3IEBACiAKICNpbXBvcnQgIldlYkNvbnRleHQuaCIKICNpbXBvcnQgIldlYlByb2Nlc3NN
ZXNzYWdlcy5oIgorI2ltcG9ydCA8QXBwS2l0L05TU2hhcmluZ1NlcnZpY2UuaD4KICNpbXBvcnQg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCiAjaWYgX19oYXNfaW5jbHVkZSg8QXBwS2l0L05TU2hh
cmluZ1NlcnZpY2VfUHJpdmF0ZS5oPikKQEAgLTQxLDEzICs0MiwyNCBAQCB0eXBlZGVmIGVudW0g
ewogICAgIE5TU2hhcmluZ1NlcnZpY2VQaWNrZXJTdHlsZVRleHRTZWxlY3Rpb24gPSAyLAogICAg
IE5TU2hhcmluZ1NlcnZpY2VQaWNrZXJTdHlsZURhdGFEZXRlY3RvciA9IDMKIH0gTlNTaGFyaW5n
U2VydmljZVBpY2tlclN0eWxlOworI2VuZGlmCiAKIEBpbnRlcmZhY2UgTlNTaGFyaW5nU2Vydmlj
ZVBpY2tlciAoRGV0YWlscykKIEBwcm9wZXJ0eSBOU1NoYXJpbmdTZXJ2aWNlUGlja2VyU3R5bGUg
c3R5bGU7CiAtIChOU01lbnUgKiltZW51OwogQGVuZAorCisjaWYgX19oYXNfaW5jbHVkZSg8Rm91
bmRhdGlvbi9OU0V4dGVuc2lvbi5oPikKKyNpbXBvcnQgPEZvdW5kYXRpb24vTlNFeHRlbnNpb24u
aD4KKyNlbHNlCitAaW50ZXJmYWNlIE5TRXh0ZW5zaW9uCitAZW5kCiAjZW5kaWYKIAorQGludGVy
ZmFjZSBOU0V4dGVuc2lvbiAoRGV0YWlscykKKysgKGlkKWJlZ2luTWF0Y2hpbmdFeHRlbnNpb25z
V2l0aEF0dHJpYnV0ZXM6KE5TRGljdGlvbmFyeSAqKWF0dHJpYnV0ZXMgY29tcGxldGlvbjoodm9p
ZCAoXikoTlNBcnJheSAqbWF0Y2hpbmdFeHRlbnNpb25zLCBOU0Vycm9yICplcnJvcikpaGFuZGxl
cjsKK0BlbmQKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIFNlcnZpY2VzQ29udHJvbGxlciYgU2Vy
dmljZXNDb250cm9sbGVyOjpzaGFyZWQoKQpAQCAtNjQsMTkgKzc2LDIzIEBAIFNlcnZpY2VzQ29u
dHJvbGxlcjo6U2VydmljZXNDb250cm9sbGVyKCkKICAgICAsIG1faGFzUmljaENvbnRlbnRTZXJ2
aWNlcyhmYWxzZSkKIHsKICAgICByZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwotfQogCi12b2lk
IFNlcnZpY2VzQ29udHJvbGxlcjo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoV2ViQ29udGV4dCog
Y29udGV4dCkKLXsKLSAgICBBU1NFUlRfQVJHKGNvbnRleHQsIGNvbnRleHQpOwotICAgIEFTU0VS
VChbTlNUaHJlYWQgaXNNYWluVGhyZWFkXSk7CisgICAgYXV0byByZWZyZXNoQ2FsbGJhY2sgPSBb
XShOU0FycmF5ICosIE5TRXJyb3IgKikgeworICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRj
aF9nZXRfbWFpbl9xdWV1ZSgpLCBeeworICAgICAgICAgICAgU2VydmljZXNDb250cm9sbGVyOjpz
aGFyZWQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOworICAgICAgICB9KTsKKyAgICB9Owog
Ci0gICAgbV9jb250ZXh0c1RvTm90aWZ5LmFkZChjb250ZXh0KTsKLSAgICByZWZyZXNoRXhpc3Rp
bmdTZXJ2aWNlcygpOworICAgIGF1dG8gZXh0ZW5zaW9uQXR0cmlidXRlcyA9IEB7IEAiTlNFeHRl
bnNpb25Qb2ludE5hbWUiIDogQCJjb20uYXBwbGUuc2VydmljZXMiIH07CisgICAgbV9leHRlbnNp
b25XYXRjaGVyID0gW05TRXh0ZW5zaW9uIGJlZ2luTWF0Y2hpbmdFeHRlbnNpb25zV2l0aEF0dHJp
YnV0ZXM6ZXh0ZW5zaW9uQXR0cmlidXRlcyBjb21wbGV0aW9uOnJlZnJlc2hDYWxsYmFja107Cisg
ICAgYXV0byB1aUV4dGVuc2lvbkF0dHJpYnV0ZXMgPSBAeyBAIk5TRXh0ZW5zaW9uUG9pbnROYW1l
IiA6IEAiY29tLmFwcGxlLnVpLXNlcnZpY2VzIiB9OworICAgIG1fdWlFeHRlbnNpb25XYXRjaGVy
ID0gW05TRXh0ZW5zaW9uIGJlZ2luTWF0Y2hpbmdFeHRlbnNpb25zV2l0aEF0dHJpYnV0ZXM6dWlF
eHRlbnNpb25BdHRyaWJ1dGVzIGNvbXBsZXRpb246cmVmcmVzaENhbGxiYWNrXTsKIH0KIAogdm9p
ZCBTZXJ2aWNlc0NvbnRyb2xsZXI6OnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCkKIHsKKyAgICBB
U1NFUlQoaXNVSVRocmVhZCgpKTsKKwogICAgIGlmIChtX2lzUmVmcmVzaGluZykKICAgICAgICAg
cmV0dXJuOwogCkBAIC0xMTAsMTggKzEyNiwxNyBAQCB2b2lkIFNlcnZpY2VzQ29udHJvbGxlcjo6
cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoKQogICAgICAgICBib29sIGhhc1JpY2hDb250ZW50U2Vy
dmljZXMgPSBwaWNrZXIuZ2V0KCkubWVudTsKICAgICAgICAgCiAgICAgICAgIGRpc3BhdGNoX2Fz
eW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57Ci0gICAgICAgICAgICBib29sIG5vdGlm
eUNvbnRleHRzID0gKGhhc0ltYWdlU2VydmljZXMgIT0gbV9oYXNJbWFnZVNlcnZpY2VzKSB8fCAo
aGFzU2VsZWN0aW9uU2VydmljZXMgIT0gbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcykgfHwgKGhhc1Jp
Y2hDb250ZW50U2VydmljZXMgIT0gbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKTsKKyAgICAgICAg
ICAgIGJvb2wgYXZhaWxhYmxlU2VydmljZXNDaGFuZ2VkID0gKGhhc0ltYWdlU2VydmljZXMgIT0g
bV9oYXNJbWFnZVNlcnZpY2VzKSB8fCAoaGFzU2VsZWN0aW9uU2VydmljZXMgIT0gbV9oYXNTZWxl
Y3Rpb25TZXJ2aWNlcykgfHwgKGhhc1JpY2hDb250ZW50U2VydmljZXMgIT0gbV9oYXNSaWNoQ29u
dGVudFNlcnZpY2VzKTsKKwogICAgICAgICAgICAgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcyA9IGhh
c1NlbGVjdGlvblNlcnZpY2VzOwogICAgICAgICAgICAgbV9oYXNJbWFnZVNlcnZpY2VzID0gaGFz
SW1hZ2VTZXJ2aWNlczsKICAgICAgICAgICAgIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyA9IGhh
c1JpY2hDb250ZW50U2VydmljZXM7CiAKLSAgICAgICAgICAgIGlmIChub3RpZnlDb250ZXh0cykg
ewotICAgICAgICAgICAgICAgIGZvciAoY29uc3QgUmVmUHRyPFdlYkNvbnRleHQ+JiBjb250ZXh0
IDogbV9jb250ZXh0c1RvTm90aWZ5KQorICAgICAgICAgICAgaWYgKGF2YWlsYWJsZVNlcnZpY2Vz
Q2hhbmdlZCkgeworICAgICAgICAgICAgICAgIGZvciAoYXV0byYgY29udGV4dCA6IFdlYkNvbnRl
eHQ6OmFsbENvbnRleHRzKCkpCiAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQtPnNlbmRUb0Fs
bFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6U2V0RW5hYmxlZFNlcnZpY2VzKG1faGFz
SW1hZ2VTZXJ2aWNlcywgbV9oYXNTZWxlY3Rpb25TZXJ2aWNlcywgbV9oYXNSaWNoQ29udGVudFNl
cnZpY2VzKSk7CiAgICAgICAgICAgICB9CiAKLSAgICAgICAgICAgIG1fY29udGV4dHNUb05vdGlm
eS5jbGVhcigpOwotCiAgICAgICAgICAgICBtX2lzUmVmcmVzaGluZyA9IGZhbHNlOwogICAgICAg
ICB9KTsKICAgICB9KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V2ViQ29udGV4dE1lbnVQcm94eU1hYy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMv
V2ViQ29udGV4dE1lbnVQcm94eU1hYy5tbQppbmRleCAwOWY1ZDFmLi5lMWM2NWQ2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNZW51UHJveHlNYWMu
bW0KKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250ZXh0TWVudVByb3h5
TWFjLm1tCkBAIC0zMSw2ICszMSw3IEBACiAjaW1wb3J0ICJEYXRhUmVmZXJlbmNlLmgiCiAjaW1w
b3J0ICJNZW51VXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJQYWdlQ2xpZW50SW1wbC5oIgorI2ltcG9y
dCAiU2VydmljZXNDb250cm9sbGVyLmgiCiAjaW1wb3J0ICJTaGFyZWFibGVCaXRtYXAuaCIKICNp
bXBvcnQgIlN0cmluZ1V0aWxpdGllcy5oIgogI2ltcG9ydCAiV2ViQ29udGV4dC5oIgpAQCAtNDA5
LDExICs0MTAsMTAgQEAgdm9pZCBXZWJDb250ZXh0TWVudVByb3h5TWFjOjpzZXR1cFNlcnZpY2Vz
TWVudShjb25zdCBDb250ZXh0TWVudUNvbnRleHREYXRhJiBjb24KICAgICAgICAgfQogICAgIH0K
IAotICAgIC8vIElmIHRoZXJlIGlzIG5vIHNlcnZpY2VzIG1lbnUsIHRoZW4gdGhlIGV4aXN0aW5n
IHNlcnZpY2VzIG9uIHRoZSBzeXN0ZW0gaGF2ZSBjaGFuZ2VkLgotICAgIC8vIEFzayB0aGUgVUlQ
cm9jZXNzIHRvIHJlZnJlc2ggdGhhdCBsaXN0IG9mIHNlcnZpY2VzLgotICAgIC8vIElmIDxyZGFy
Oi8vcHJvYmxlbS8xNjc3NjgzMT4gaXMgcmVzb2x2ZWQgdGhlbiB3ZSBjYW4gbW9yZSBhY2N1cmF0
ZWx5IGtlZXAgdGhlIGxpc3QgdXAgdG8gZGF0ZSB3aXRob3V0IHRoaXMgY2FsbC4KKyAgICAvLyBJ
ZiB0aGVyZSBpcyBubyBzZXJ2aWNlcyBtZW51LCB0aGVuIHRoZSBleGlzdGluZyBzZXJ2aWNlcyBv
biB0aGUgc3lzdGVtIGhhdmUgY2hhbmdlZCwgc28gcmVmcmVzaCB0aGF0IGxpc3Qgb2Ygc2Vydmlj
ZXMuCisgICAgLy8gSWYgPHJkYXI6Ly9wcm9ibGVtLzE3OTU0NzA5PiBpcyByZXNvbHZlZCB0aGVu
IHdlIGNhbiBtb3JlIGFjY3VyYXRlbHkga2VlcCB0aGUgbGlzdCB1cCB0byBkYXRlIHdpdGhvdXQg
dGhpcyBjYWxsLgogICAgIGlmICghbV9zZXJ2aWNlc01lbnUpCi0gICAgICAgIG1fcGFnZS0+cHJv
Y2VzcygpLmNvbnRleHQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOworICAgICAgICBTZXJ2
aWNlc0NvbnRyb2xsZXI6OnNoYXJlZCgpLnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CiB9CiAK
IHZvaWQgV2ViQ29udGV4dE1lbnVQcm94eU1hYzo6Y2xlYXJTZXJ2aWNlc01lbnUoKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236254</attachid>
            <date>2014-08-07 19:48:05 -0700</date>
            <delta_ts>2014-08-08 09:56:19 -0700</delta_ts>
            <desc>rebase</desc>
            <filename>dynamic-update.diff</filename>
            <type>text/plain</type>
            <size>10474</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA1NDhiM2QwLi41YTRlMTIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDQg
QEAKIDIwMTQtMDgtMDcgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAK
KyAgICAgICAgW21hY10gRHluYW1pY2FsbHkgdXBkYXRlIHNlcnZpY2VhYmlsaXR5IHdoZW4gdGhl
IHNldCBvZiBzZXJ2aWNlcyBjaGFuZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzU3MzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE3NTMzNDU5
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQ
cm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICBNb3ZlIFNlcnZpY2VzQ29udHJvbGxlci5o
IGluY2x1ZGUgdXAgaW50byB0aGUgbWFpbiBibG9jazsgdGhlICNpZiBpcyBhbHJlYWR5IGluc2lk
ZSBvZiBpdC4KKworICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpjcmVhdGVOZXdXZWJQcm9j
ZXNzKToKKyAgICAgICAgQWRvcHQgdGhlIG5ldyB1bml2ZXJzYWwgcmVmcmVzaEV4aXN0aW5nU2Vy
dmljZXMuCisKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cmVmcmVzaEV4aXN0aW5nU2Vy
dmljZXMpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250ZXh0Lmg6CisgICAg
ICAgIFJlbW92ZSBXZWJDb250ZXh0OjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlczsgdGhlcmUncyBu
byBuZWVkIGZvciBpdC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9s
bGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIubW06Cisg
ICAgICAgIEZpeCB0aGUgYnVpbGQgd2l0aCBvbmx5IHB1YmxpYyBoZWFkZXJzIGJ5IGluY2x1ZGlu
ZyBOU1NoYXJpbmdTZXJ2aWNlLmggaXRzZWxmLgorICAgICAgICBQbGFjZSB0aGUgTlNTaGFyaW5n
U2VydmljZVBpY2tlciAoRGV0YWlscykgY2F0ZWdvcnkgb3V0c2lkZSB0aGUgI2lmZGVmLgorICAg
ICAgICBGb3J3YXJkLWRlY2xhcmUgYW5kIHBvc3NpYmx5IGltcG9ydCBOU0V4dGVuc2lvbiBTUEku
CisKKyAgICAgICAgKFdlYktpdDo6U2VydmljZXNDb250cm9sbGVyOjpTZXJ2aWNlc0NvbnRyb2xs
ZXIpOgorICAgICAgICBSZWdpc3RlciBhIGNhbGxiYWNrIHRvIGJlIG5vdGlmaWVkIHdoZW5ldmVy
IHRoZSBzZXQgb2Ygc2VydmljZXMgY2hhbmdlcy4KKyAgICAgICAgV2hlbiB0aGlzIG9jY3Vycywg
Y2FsbCByZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcy4KKworICAgICAgICAoV2ViS2l0OjpTZXJ2aWNl
c0NvbnRyb2xsZXI6OnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKToKKyAgICAgICAgRGlzcGF0Y2gg
Y2hhbmdlcyBpbiBzZXJ2aWNlIGF2YWlsYWJpbGl0eSB0byBhbGwgcHJvY2Vzc2VzIGluIGFsbCBj
b250ZXh0cy4KKworICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1lbnVQcm94eU1h
Yy5tbToKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dE1lbnVQcm94eU1hYzo6c2V0dXBTZXJ2
aWNlc01lbnUpOgorICAgICAgICBBZGp1c3QgdGhlIHJlZmVyZW5jZWQgcmRhcjovLyBhbmQgY2Fs
bCBTZXJ2aWNlc0NvbnRyb2xsZXI6OnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzCisgICAgICAgIGlu
c3RlYWQgb2YgdGhlIG5vdy1yZW1vdmVkIFdlYkNvbnRleHQ6OiB2YXJpYW50LiBXZSBjYW4ndCBy
ZW1vdmUgdGhpcworICAgICAgICB5ZXQgYmVjYXVzZSBvdXIgc2VydmljZXMgc3RhdGUgY2FuIHN0
aWxsIGJlIHN0YWxlIGJlY2F1c2UgTlNTZXJ2aWNlU2hhcmluZ1BpY2tlcgorICAgICAgICBjYW4g
c3RpbGwgc29tZXRpbWVzIGxpZSBhYm91dCB0aGUgY3VycmVudCBzZXJ2aWNlIHN0YXRlIGltbWVk
aWF0ZWx5IGFmdGVyIGEgY2hhbmdlIG9jY3VyczsKKyAgICAgICAgb25jZSB0aGF0IGlzIGZpeGVk
LCB3ZSBzaG91bGQgZ2V0IHJpZCBvZiB0aGlzIGFzIHdlbGwgYXMgdGhlIHJlZnJlc2ggaW4gV2Vi
IFByb2Nlc3MgY3JlYXRpb24uCisKKzIwMTQtMDgtMDcgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hv
cnRvbkBhcHBsZS5jb20+CisKICAgICAgICAgW1NlcnZpY2VzIHdpdGggVUldIEFjdGlvbiBtZW51
IGRvZXMgbm90IGFwcGVhciBpZiBzZWxlY3Rpb24gaW5jbHVkZXMgYm90aCB0ZXh0IGFuZCBhbiBp
bWFnZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM1
NzMxCiAgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNzgzNzQ5MT4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9XZWJDb250ZXh0LmNwcAppbmRleCA0NDdhNjg0Li5hMjM1NjZjIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYkNvbnRleHQuY3BwCkBAIC0zNCw2ICszNCw3IEBACiAjaW5jbHVkZSAi
TG9nZ2luZy5oIgogI2luY2x1ZGUgIk11dGFibGVEaWN0aW9uYXJ5LmgiCiAjaW5jbHVkZSAiU2Fu
ZGJveEV4dGVuc2lvbi5oIgorI2luY2x1ZGUgIlNlcnZpY2VzQ29udHJvbGxlci5oIgogI2luY2x1
ZGUgIlN0YXRpc3RpY3NEYXRhLmgiCiAjaW5jbHVkZSAiVGV4dENoZWNrZXIuaCIKICNpbmNsdWRl
ICJXS0NvbnRleHRQcml2YXRlLmgiCkBAIC04NywxMCArODgsNiBAQAogI2luY2x1ZGUgIk5ldHdv
cmtQcm9jZXNzUHJveHkuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKFNFUlZJQ0VfQ09OVFJPTFMp
Ci0jaW5jbHVkZSAiU2VydmljZXNDb250cm9sbGVyLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShD
VVNUT01fUFJPVE9DT0xTKQogI2luY2x1ZGUgIkN1c3RvbVByb3RvY29sTWFuYWdlck1lc3NhZ2Vz
LmgiCiAjZW5kaWYKQEAgLTY4Miw3ICs2NzksNyBAQCBXZWJQcm9jZXNzUHJveHkmIFdlYkNvbnRl
eHQ6OmNyZWF0ZU5ld1dlYlByb2Nlc3MoKQogICAgIHBhcmFtZXRlcnMuaGFzSW1hZ2VTZXJ2aWNl
cyA9IFNlcnZpY2VzQ29udHJvbGxlcjo6c2hhcmVkKCkuaGFzSW1hZ2VTZXJ2aWNlcygpOwogICAg
IHBhcmFtZXRlcnMuaGFzU2VsZWN0aW9uU2VydmljZXMgPSBTZXJ2aWNlc0NvbnRyb2xsZXI6OnNo
YXJlZCgpLmhhc1NlbGVjdGlvblNlcnZpY2VzKCk7CiAgICAgcGFyYW1ldGVycy5oYXNSaWNoQ29u
dGVudFNlcnZpY2VzID0gU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5oYXNSaWNoQ29udGVu
dFNlcnZpY2VzKCk7Ci0gICAgU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5yZWZyZXNoRXhp
c3RpbmdTZXJ2aWNlcyh0aGlzKTsKKyAgICBTZXJ2aWNlc0NvbnRyb2xsZXI6OnNoYXJlZCgpLnJl
ZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CiAjZW5kaWYKIAogICAgIC8vIEFkZCBhbnkgcGxhdGZv
cm0gc3BlY2lmaWMgcGFyYW1ldGVycwpAQCAtMTM2MSwxNCArMTM1OCw2IEBAIHZvaWQgV2ViQ29u
dGV4dDo6ZGlkR2V0U3RhdGlzdGljcyhjb25zdCBTdGF0aXN0aWNzRGF0YSYgc3RhdGlzdGljc0Rh
dGEsIHVpbnQ2NF90CiAgICAgcmVxdWVzdC0+Y29tcGxldGVkUmVxdWVzdChyZXF1ZXN0SUQsIHN0
YXRpc3RpY3NEYXRhKTsKIH0KIAotI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotdm9pZCBX
ZWJDb250ZXh0OjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpCi17Ci0gICAgU2VydmljZXNDb250
cm9sbGVyOjpzaGFyZWQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcyh0aGlzKTsKLX0KLSNlbmRp
ZgotCi0gICAgCiB2b2lkIFdlYkNvbnRleHQ6OmdhcmJhZ2VDb2xsZWN0SmF2YVNjcmlwdE9iamVj
dHMoKQogewogICAgIHNlbmRUb0FsbFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6R2Fy
YmFnZUNvbGxlY3RKYXZhU2NyaXB0T2JqZWN0cygpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
Q29udGV4dC5oCmluZGV4IDMyNzc1ZDguLmQzNmYxOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkNvbnRleHQuaApAQCAtMzUyLDEwICszNTIsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNl
dE1lbW9yeUNhY2hlRGlzYWJsZWQoYm9vbCk7CiAKLSNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9M
UykKLSAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7Ci0jZW5kaWYKLQogcHJpdmF0
ZToKICAgICB2b2lkIHBsYXRmb3JtSW5pdGlhbGl6ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIuaAppbmRleCBhYTMzODYzLi42Yzlh
MWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29u
dHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250
cm9sbGVyLmgKQEAgLTI4LDEwICsyOCw5IEBACiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9M
UykKIAotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
ICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0j
aW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKyNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKIG5h
bWVzcGFjZSBXZWJLaXQgewogCkBAIC00NywxMyArNDYsMTEgQEAgcHVibGljOgogICAgIGJvb2wg
aGFzU2VsZWN0aW9uU2VydmljZXMoKSBjb25zdCB7IHJldHVybiBtX2hhc1NlbGVjdGlvblNlcnZp
Y2VzOyB9CiAgICAgYm9vbCBoYXNSaWNoQ29udGVudFNlcnZpY2VzKCkgY29uc3QgeyByZXR1cm4g
bV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOyB9CiAKLSAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1Nl
cnZpY2VzKFdlYkNvbnRleHQqKTsKKyAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7
CiAKIHByaXZhdGU6CiAgICAgU2VydmljZXNDb250cm9sbGVyKCk7CiAKLSAgICB2b2lkIHJlZnJl
c2hFeGlzdGluZ1NlcnZpY2VzKCk7Ci0KICAgICBkaXNwYXRjaF9xdWV1ZV90IG1fcmVmcmVzaFF1
ZXVlOwogICAgIGJvb2wgbV9pc1JlZnJlc2hpbmc7CiAKQEAgLTYxLDcgKzU4LDggQEAgcHJpdmF0
ZToKICAgICBib29sIG1faGFzU2VsZWN0aW9uU2VydmljZXM7CiAgICAgYm9vbCBtX2hhc1JpY2hD
b250ZW50U2VydmljZXM7CiAKLSAgICBIYXNoU2V0PFJlZlB0cjxXZWJDb250ZXh0Pj4gbV9jb250
ZXh0c1RvTm90aWZ5OworICAgIFJldGFpblB0cjxpZD4gbV9leHRlbnNpb25XYXRjaGVyOworICAg
IFJldGFpblB0cjxpZD4gbV91aUV4dGVuc2lvbldhdGNoZXI7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2Vydmlj
ZXNDb250cm9sbGVyLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0Nv
bnRyb2xsZXIubW0KaW5kZXggMDdmOTAyNC4uMDhhMTI0YSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIubW0KKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIubW0KQEAgLTMwLDYgKzMwLDcg
QEAKIAogI2ltcG9ydCAiV2ViQ29udGV4dC5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzc01lc3NhZ2Vz
LmgiCisjaW1wb3J0IDxBcHBLaXQvTlNTaGFyaW5nU2VydmljZS5oPgogI2ltcG9ydCA8d3RmL05l
dmVyRGVzdHJveWVkLmg+CiAKICNpZiBfX2hhc19pbmNsdWRlKDxBcHBLaXQvTlNTaGFyaW5nU2Vy
dmljZV9Qcml2YXRlLmg+KQpAQCAtNDEsMTMgKzQyLDI0IEBAIHR5cGVkZWYgZW51bSB7CiAgICAg
TlNTaGFyaW5nU2VydmljZVBpY2tlclN0eWxlVGV4dFNlbGVjdGlvbiA9IDIsCiAgICAgTlNTaGFy
aW5nU2VydmljZVBpY2tlclN0eWxlRGF0YURldGVjdG9yID0gMwogfSBOU1NoYXJpbmdTZXJ2aWNl
UGlja2VyU3R5bGU7CisjZW5kaWYKIAogQGludGVyZmFjZSBOU1NoYXJpbmdTZXJ2aWNlUGlja2Vy
IChEZXRhaWxzKQogQHByb3BlcnR5IE5TU2hhcmluZ1NlcnZpY2VQaWNrZXJTdHlsZSBzdHlsZTsK
IC0gKE5TTWVudSAqKW1lbnU7CiBAZW5kCisKKyNpZiBfX2hhc19pbmNsdWRlKDxGb3VuZGF0aW9u
L05TRXh0ZW5zaW9uLmg+KQorI2ltcG9ydCA8Rm91bmRhdGlvbi9OU0V4dGVuc2lvbi5oPgorI2Vs
c2UKK0BpbnRlcmZhY2UgTlNFeHRlbnNpb24KK0BlbmQKICNlbmRpZgogCitAaW50ZXJmYWNlIE5T
RXh0ZW5zaW9uIChEZXRhaWxzKQorKyAoaWQpYmVnaW5NYXRjaGluZ0V4dGVuc2lvbnNXaXRoQXR0
cmlidXRlczooTlNEaWN0aW9uYXJ5ICopYXR0cmlidXRlcyBjb21wbGV0aW9uOih2b2lkICheKShO
U0FycmF5ICptYXRjaGluZ0V4dGVuc2lvbnMsIE5TRXJyb3IgKmVycm9yKSloYW5kbGVyOworQGVu
ZAorCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogU2VydmljZXNDb250cm9sbGVyJiBTZXJ2aWNlc0Nv
bnRyb2xsZXI6OnNoYXJlZCgpCkBAIC02NCwxOSArNzYsMjMgQEAgU2VydmljZXNDb250cm9sbGVy
OjpTZXJ2aWNlc0NvbnRyb2xsZXIoKQogICAgICwgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzKGZh
bHNlKQogewogICAgIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7Ci19CiAKLXZvaWQgU2Vydmlj
ZXNDb250cm9sbGVyOjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcyhXZWJDb250ZXh0KiBjb250ZXh0
KQotewotICAgIEFTU0VSVF9BUkcoY29udGV4dCwgY29udGV4dCk7Ci0gICAgQVNTRVJUKFtOU1Ro
cmVhZCBpc01haW5UaHJlYWRdKTsKKyAgICBhdXRvIHJlZnJlc2hDYWxsYmFjayA9IFtdKE5TQXJy
YXkgKiwgTlNFcnJvciAqKSB7CisgICAgICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9t
YWluX3F1ZXVlKCksIF57CisgICAgICAgICAgICBTZXJ2aWNlc0NvbnRyb2xsZXI6OnNoYXJlZCgp
LnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CisgICAgICAgIH0pOworICAgIH07CiAKLSAgICBt
X2NvbnRleHRzVG9Ob3RpZnkuYWRkKGNvbnRleHQpOwotICAgIHJlZnJlc2hFeGlzdGluZ1NlcnZp
Y2VzKCk7CisgICAgYXV0byBleHRlbnNpb25BdHRyaWJ1dGVzID0gQHsgQCJOU0V4dGVuc2lvblBv
aW50TmFtZSIgOiBAImNvbS5hcHBsZS5zZXJ2aWNlcyIgfTsKKyAgICBtX2V4dGVuc2lvbldhdGNo
ZXIgPSBbTlNFeHRlbnNpb24gYmVnaW5NYXRjaGluZ0V4dGVuc2lvbnNXaXRoQXR0cmlidXRlczpl
eHRlbnNpb25BdHRyaWJ1dGVzIGNvbXBsZXRpb246cmVmcmVzaENhbGxiYWNrXTsKKyAgICBhdXRv
IHVpRXh0ZW5zaW9uQXR0cmlidXRlcyA9IEB7IEAiTlNFeHRlbnNpb25Qb2ludE5hbWUiIDogQCJj
b20uYXBwbGUudWktc2VydmljZXMiIH07CisgICAgbV91aUV4dGVuc2lvbldhdGNoZXIgPSBbTlNF
eHRlbnNpb24gYmVnaW5NYXRjaGluZ0V4dGVuc2lvbnNXaXRoQXR0cmlidXRlczp1aUV4dGVuc2lv
bkF0dHJpYnV0ZXMgY29tcGxldGlvbjpyZWZyZXNoQ2FsbGJhY2tdOwogfQogCiB2b2lkIFNlcnZp
Y2VzQ29udHJvbGxlcjo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoKQogeworICAgIEFTU0VSVChp
c1VJVGhyZWFkKCkpOworCiAgICAgaWYgKG1faXNSZWZyZXNoaW5nKQogICAgICAgICByZXR1cm47
CiAKQEAgLTExMCwxOCArMTI2LDE3IEBAIHZvaWQgU2VydmljZXNDb250cm9sbGVyOjpyZWZyZXNo
RXhpc3RpbmdTZXJ2aWNlcygpCiAgICAgICAgIGJvb2wgaGFzUmljaENvbnRlbnRTZXJ2aWNlcyA9
IHBpY2tlci5nZXQoKS5tZW51OwogICAgICAgICAKICAgICAgICAgZGlzcGF0Y2hfYXN5bmMoZGlz
cGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKLSAgICAgICAgICAgIGJvb2wgbm90aWZ5Q29udGV4
dHMgPSAoaGFzSW1hZ2VTZXJ2aWNlcyAhPSBtX2hhc0ltYWdlU2VydmljZXMpIHx8IChoYXNTZWxl
Y3Rpb25TZXJ2aWNlcyAhPSBtX2hhc1NlbGVjdGlvblNlcnZpY2VzKSB8fCAoaGFzUmljaENvbnRl
bnRTZXJ2aWNlcyAhPSBtX2hhc1JpY2hDb250ZW50U2VydmljZXMpOworICAgICAgICAgICAgYm9v
bCBhdmFpbGFibGVTZXJ2aWNlc0NoYW5nZWQgPSAoaGFzSW1hZ2VTZXJ2aWNlcyAhPSBtX2hhc0lt
YWdlU2VydmljZXMpIHx8IChoYXNTZWxlY3Rpb25TZXJ2aWNlcyAhPSBtX2hhc1NlbGVjdGlvblNl
cnZpY2VzKSB8fCAoaGFzUmljaENvbnRlbnRTZXJ2aWNlcyAhPSBtX2hhc1JpY2hDb250ZW50U2Vy
dmljZXMpOworCiAgICAgICAgICAgICBtX2hhc1NlbGVjdGlvblNlcnZpY2VzID0gaGFzU2VsZWN0
aW9uU2VydmljZXM7CiAgICAgICAgICAgICBtX2hhc0ltYWdlU2VydmljZXMgPSBoYXNJbWFnZVNl
cnZpY2VzOwogICAgICAgICAgICAgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzID0gaGFzUmljaENv
bnRlbnRTZXJ2aWNlczsKIAotICAgICAgICAgICAgaWYgKG5vdGlmeUNvbnRleHRzKSB7Ci0gICAg
ICAgICAgICAgICAgZm9yIChjb25zdCBSZWZQdHI8V2ViQ29udGV4dD4mIGNvbnRleHQgOiBtX2Nv
bnRleHRzVG9Ob3RpZnkpCisgICAgICAgICAgICBpZiAoYXZhaWxhYmxlU2VydmljZXNDaGFuZ2Vk
KSB7CisgICAgICAgICAgICAgICAgZm9yIChhdXRvJiBjb250ZXh0IDogV2ViQ29udGV4dDo6YWxs
Q29udGV4dHMoKSkKICAgICAgICAgICAgICAgICAgICAgY29udGV4dC0+c2VuZFRvQWxsUHJvY2Vz
c2VzKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpTZXRFbmFibGVkU2VydmljZXMobV9oYXNJbWFnZVNl
cnZpY2VzLCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzLCBtX2hhc1JpY2hDb250ZW50U2VydmljZXMp
KTsKICAgICAgICAgICAgIH0KIAotICAgICAgICAgICAgbV9jb250ZXh0c1RvTm90aWZ5LmNsZWFy
KCk7Ci0KICAgICAgICAgICAgIG1faXNSZWZyZXNoaW5nID0gZmFsc2U7CiAgICAgICAgIH0pOwog
ICAgIH0pOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250
ZXh0TWVudVByb3h5TWFjLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJDb250
ZXh0TWVudVByb3h5TWFjLm1tCmluZGV4IDA5ZjVkMWYuLmUxYzY1ZDYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1lbnVQcm94eU1hYy5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNZW51UHJveHlNYWMubW0K
QEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIkRhdGFSZWZlcmVuY2UuaCIKICNpbXBvcnQgIk1l
bnVVdGlsaXRpZXMuaCIKICNpbXBvcnQgIlBhZ2VDbGllbnRJbXBsLmgiCisjaW1wb3J0ICJTZXJ2
aWNlc0NvbnRyb2xsZXIuaCIKICNpbXBvcnQgIlNoYXJlYWJsZUJpdG1hcC5oIgogI2ltcG9ydCAi
U3RyaW5nVXRpbGl0aWVzLmgiCiAjaW1wb3J0ICJXZWJDb250ZXh0LmgiCkBAIC00MDksMTEgKzQx
MCwxMCBAQCB2b2lkIFdlYkNvbnRleHRNZW51UHJveHlNYWM6OnNldHVwU2VydmljZXNNZW51KGNv
bnN0IENvbnRleHRNZW51Q29udGV4dERhdGEmIGNvbgogICAgICAgICB9CiAgICAgfQogCi0gICAg
Ly8gSWYgdGhlcmUgaXMgbm8gc2VydmljZXMgbWVudSwgdGhlbiB0aGUgZXhpc3Rpbmcgc2Vydmlj
ZXMgb24gdGhlIHN5c3RlbSBoYXZlIGNoYW5nZWQuCi0gICAgLy8gQXNrIHRoZSBVSVByb2Nlc3Mg
dG8gcmVmcmVzaCB0aGF0IGxpc3Qgb2Ygc2VydmljZXMuCi0gICAgLy8gSWYgPHJkYXI6Ly9wcm9i
bGVtLzE2Nzc2ODMxPiBpcyByZXNvbHZlZCB0aGVuIHdlIGNhbiBtb3JlIGFjY3VyYXRlbHkga2Vl
cCB0aGUgbGlzdCB1cCB0byBkYXRlIHdpdGhvdXQgdGhpcyBjYWxsLgorICAgIC8vIElmIHRoZXJl
IGlzIG5vIHNlcnZpY2VzIG1lbnUsIHRoZW4gdGhlIGV4aXN0aW5nIHNlcnZpY2VzIG9uIHRoZSBz
eXN0ZW0gaGF2ZSBjaGFuZ2VkLCBzbyByZWZyZXNoIHRoYXQgbGlzdCBvZiBzZXJ2aWNlcy4KKyAg
ICAvLyBJZiA8cmRhcjovL3Byb2JsZW0vMTc5NTQ3MDk+IGlzIHJlc29sdmVkIHRoZW4gd2UgY2Fu
IG1vcmUgYWNjdXJhdGVseSBrZWVwIHRoZSBsaXN0IHVwIHRvIGRhdGUgd2l0aG91dCB0aGlzIGNh
bGwuCiAgICAgaWYgKCFtX3NlcnZpY2VzTWVudSkKLSAgICAgICAgbV9wYWdlLT5wcm9jZXNzKCku
Y29udGV4dCgpLnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CisgICAgICAgIFNlcnZpY2VzQ29u
dHJvbGxlcjo6c2hhcmVkKCkucmVmcmVzaEV4aXN0aW5nU2VydmljZXMoKTsKIH0KIAogdm9pZCBX
ZWJDb250ZXh0TWVudVByb3h5TWFjOjpjbGVhclNlcnZpY2VzTWVudSgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>236284</attachid>
            <date>2014-08-08 09:56:19 -0700</date>
            <delta_ts>2014-08-08 15:40:51 -0700</delta_ts>
            <desc>patch</desc>
            <filename>dynamic-update.diff</filename>
            <type>text/plain</type>
            <size>11082</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA0NjViYmQ1Li40OWUwMmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEg
QEAKKzIwMTQtMDgtMDggIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisK
KyAgICAgICAgW21hY10gRHluYW1pY2FsbHkgdXBkYXRlIHNlcnZpY2VhYmlsaXR5IHdoZW4gdGhl
IHNldCBvZiBzZXJ2aWNlcyBjaGFuZ2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzU3MzgKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE3NTMzNDU5
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVUlQ
cm9jZXNzL1dlYkNvbnRleHQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJDb250ZXh0OjpjcmVh
dGVOZXdXZWJQcm9jZXNzKToKKyAgICAgICAgQWRvcHQgdGhlIG5ldyB1bml2ZXJzYWwgcmVmcmVz
aEV4aXN0aW5nU2VydmljZXMuCisKKyAgICAgICAgKFdlYktpdDo6V2ViQ29udGV4dDo6cmVmcmVz
aEV4aXN0aW5nU2VydmljZXMpOiBEZWxldGVkLgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJDb250
ZXh0Lmg6CisgICAgICAgIFJlbW92ZSBXZWJDb250ZXh0OjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNl
czsgdGhlcmUncyBubyBuZWVkIGZvciBpdC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9tYWMvU2Vy
dmljZXNDb250cm9sbGVyLmg6CisgICAgICAgICogVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRy
b2xsZXIubW06CisgICAgICAgIEZpeCB0aGUgYnVpbGQgd2l0aCBvbmx5IHB1YmxpYyBoZWFkZXJz
IGJ5IGluY2x1ZGluZyBOU1NoYXJpbmdTZXJ2aWNlLmggaXRzZWxmLgorICAgICAgICBQbGFjZSB0
aGUgTlNTaGFyaW5nU2VydmljZVBpY2tlciAoRGV0YWlscykgY2F0ZWdvcnkgb3V0c2lkZSB0aGUg
I2lmZGVmLgorICAgICAgICBGb3J3YXJkLWRlY2xhcmUgYW5kIHBvc3NpYmx5IGltcG9ydCBOU0V4
dGVuc2lvbiBTUEkuCisKKyAgICAgICAgKFdlYktpdDo6U2VydmljZXNDb250cm9sbGVyOjpTZXJ2
aWNlc0NvbnRyb2xsZXIpOgorICAgICAgICBSZWdpc3RlciBhIGNhbGxiYWNrIHRvIGJlIG5vdGlm
aWVkIHdoZW5ldmVyIHRoZSBzZXQgb2Ygc2VydmljZXMgY2hhbmdlcy4KKyAgICAgICAgV2hlbiB0
aGlzIG9jY3VycywgY2FsbCByZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcy4gV2UgbGV0IHJlZnJlc2hF
eGlzdGluZ1NlcnZpY2VzCisgICAgICAgIGNvYWxlc2NlIHVwZGF0ZXMgYmVjYXVzZSB0aGVzZSBu
b3RpZmljYXRpb25zIGNhbiBjb21lIGluIHNtYWxsIGJhdGNoZXMuCisKKyAgICAgICAgKFdlYktp
dDo6U2VydmljZXNDb250cm9sbGVyOjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcyk6CisgICAgICAg
IERpc3BhdGNoIGNoYW5nZXMgaW4gc2VydmljZSBhdmFpbGFiaWxpdHkgdG8gYWxsIHByb2Nlc3Nl
cyBpbiBhbGwgY29udGV4dHMuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRN
ZW51UHJveHlNYWMubW06CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHRNZW51UHJveHlNYWM6
OnNldHVwU2VydmljZXNNZW51KToKKyAgICAgICAgQWRqdXN0IHRoZSByZWZlcmVuY2VkIHJkYXI6
Ly8gYW5kIGNhbGwgU2VydmljZXNDb250cm9sbGVyOjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcwor
ICAgICAgICBpbnN0ZWFkIG9mIHRoZSBub3ctcmVtb3ZlZCBXZWJDb250ZXh0OjogdmFyaWFudC4g
V2UgY2FuJ3QgcmVtb3ZlIHRoaXMKKyAgICAgICAgeWV0IGJlY2F1c2Ugb3VyIHNlcnZpY2VzIHN0
YXRlIGNhbiBzdGlsbCBiZSBzdGFsZSBiZWNhdXNlIE5TU2VydmljZVNoYXJpbmdQaWNrZXIKKyAg
ICAgICAgY2FuIHN0aWxsIHNvbWV0aW1lcyBsaWUgYWJvdXQgdGhlIGN1cnJlbnQgc2VydmljZSBz
dGF0ZSBpbW1lZGlhdGVseSBhZnRlciBhIGNoYW5nZSBvY2N1cnM7CisgICAgICAgIG9uY2UgdGhh
dCBpcyBmaXhlZCwgd2Ugc2hvdWxkIGdldCByaWQgb2YgdGhpcyBhcyB3ZWxsIGFzIHRoZSByZWZy
ZXNoIGluIFdlYiBQcm9jZXNzIGNyZWF0aW9uLgorCiAyMDE0LTA4LTA4ICBUaW1vdGh5IEhvcnRv
biAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KIAogICAgICAgICBTZXJ2aWNlcyBvdmVybGF5
IGRyb3Bkb3duIGlzIG9mdGVuIGluIHRoZSB3cm9uZyBwbGFjZSB3aXRoIHpvb21lZCBwYWdlcyBv
ciBob3Jpem9udGFsIHNjcm9sbGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYkNvbnRleHQuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYkNvbnRleHQu
Y3BwCmluZGV4IDQ0N2E2ODQuLmMzMTlmMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJDb250ZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
Q29udGV4dC5jcHAKQEAgLTY4Miw3ICs2ODIsNyBAQCBXZWJQcm9jZXNzUHJveHkmIFdlYkNvbnRl
eHQ6OmNyZWF0ZU5ld1dlYlByb2Nlc3MoKQogICAgIHBhcmFtZXRlcnMuaGFzSW1hZ2VTZXJ2aWNl
cyA9IFNlcnZpY2VzQ29udHJvbGxlcjo6c2hhcmVkKCkuaGFzSW1hZ2VTZXJ2aWNlcygpOwogICAg
IHBhcmFtZXRlcnMuaGFzU2VsZWN0aW9uU2VydmljZXMgPSBTZXJ2aWNlc0NvbnRyb2xsZXI6OnNo
YXJlZCgpLmhhc1NlbGVjdGlvblNlcnZpY2VzKCk7CiAgICAgcGFyYW1ldGVycy5oYXNSaWNoQ29u
dGVudFNlcnZpY2VzID0gU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5oYXNSaWNoQ29udGVu
dFNlcnZpY2VzKCk7Ci0gICAgU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5yZWZyZXNoRXhp
c3RpbmdTZXJ2aWNlcyh0aGlzKTsKKyAgICBTZXJ2aWNlc0NvbnRyb2xsZXI6OnNoYXJlZCgpLnJl
ZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7CiAjZW5kaWYKIAogICAgIC8vIEFkZCBhbnkgcGxhdGZv
cm0gc3BlY2lmaWMgcGFyYW1ldGVycwpAQCAtMTM2MSwxNCArMTM2MSw2IEBAIHZvaWQgV2ViQ29u
dGV4dDo6ZGlkR2V0U3RhdGlzdGljcyhjb25zdCBTdGF0aXN0aWNzRGF0YSYgc3RhdGlzdGljc0Rh
dGEsIHVpbnQ2NF90CiAgICAgcmVxdWVzdC0+Y29tcGxldGVkUmVxdWVzdChyZXF1ZXN0SUQsIHN0
YXRpc3RpY3NEYXRhKTsKIH0KIAotI2lmIEVOQUJMRShTRVJWSUNFX0NPTlRST0xTKQotdm9pZCBX
ZWJDb250ZXh0OjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpCi17Ci0gICAgU2VydmljZXNDb250
cm9sbGVyOjpzaGFyZWQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcyh0aGlzKTsKLX0KLSNlbmRp
ZgotCi0gICAgCiB2b2lkIFdlYkNvbnRleHQ6OmdhcmJhZ2VDb2xsZWN0SmF2YVNjcmlwdE9iamVj
dHMoKQogewogICAgIHNlbmRUb0FsbFByb2Nlc3NlcyhNZXNzYWdlczo6V2ViUHJvY2Vzczo6R2Fy
YmFnZUNvbGxlY3RKYXZhU2NyaXB0T2JqZWN0cygpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
Q29udGV4dC5oCmluZGV4IDMyNzc1ZDguLmQzNmYxOTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJDb250ZXh0LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYkNvbnRleHQuaApAQCAtMzUyLDEwICszNTIsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNl
dE1lbW9yeUNhY2hlRGlzYWJsZWQoYm9vbCk7CiAKLSNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9M
UykKLSAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7Ci0jZW5kaWYKLQogcHJpdmF0
ZToKICAgICB2b2lkIHBsYXRmb3JtSW5pdGlhbGl6ZSgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5oIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL21hYy9TZXJ2aWNlc0NvbnRyb2xsZXIuaAppbmRleCBhYTMzODYzLi45ODhl
ZDY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29u
dHJvbGxlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250
cm9sbGVyLmgKQEAgLTI4LDEwICsyOCw5IEBACiAKICNpZiBFTkFCTEUoU0VSVklDRV9DT05UUk9M
UykKIAotI2luY2x1ZGUgPHd0Zi9IYXNoU2V0Lmg+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
ICNpbmNsdWRlIDx3dGYvTm9uY29weWFibGUuaD4KLSNpbmNsdWRlIDx3dGYvUmVmUHRyLmg+Ci0j
aW5jbHVkZSA8d3RmL1J1bkxvb3AuaD4KKyNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+CiAKIG5h
bWVzcGFjZSBXZWJLaXQgewogCkBAIC00NywyMSArNDYsMjAgQEAgcHVibGljOgogICAgIGJvb2wg
aGFzU2VsZWN0aW9uU2VydmljZXMoKSBjb25zdCB7IHJldHVybiBtX2hhc1NlbGVjdGlvblNlcnZp
Y2VzOyB9CiAgICAgYm9vbCBoYXNSaWNoQ29udGVudFNlcnZpY2VzKCkgY29uc3QgeyByZXR1cm4g
bV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOyB9CiAKLSAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1Nl
cnZpY2VzKFdlYkNvbnRleHQqKTsKKyAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKGJv
b2wgcmVmcmVzaEltbWVkaWF0ZWx5ID0gdHJ1ZSk7CiAKIHByaXZhdGU6CiAgICAgU2VydmljZXND
b250cm9sbGVyKCk7CiAKLSAgICB2b2lkIHJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCk7Ci0KICAg
ICBkaXNwYXRjaF9xdWV1ZV90IG1fcmVmcmVzaFF1ZXVlOwotICAgIGJvb2wgbV9pc1JlZnJlc2hp
bmc7CisgICAgc3RkOjphdG9taWNfYm9vbCBtX2hhc1BlbmRpbmdSZWZyZXNoOwogCiAgICAgYm9v
bCBtX2hhc0ltYWdlU2VydmljZXM7CiAgICAgYm9vbCBtX2hhc1NlbGVjdGlvblNlcnZpY2VzOwog
ICAgIGJvb2wgbV9oYXNSaWNoQ29udGVudFNlcnZpY2VzOwogCi0gICAgSGFzaFNldDxSZWZQdHI8
V2ViQ29udGV4dD4+IG1fY29udGV4dHNUb05vdGlmeTsKKyAgICBSZXRhaW5QdHI8aWQ+IG1fZXh0
ZW5zaW9uV2F0Y2hlcjsKKyAgICBSZXRhaW5QdHI8aWQ+IG1fdWlFeHRlbnNpb25XYXRjaGVyOwog
fTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvbWFjL1NlcnZpY2VzQ29udHJvbGxlci5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVyLm1tCmluZGV4IDA3ZjkwMjQuLmM2YmRkMzcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVy
Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvU2VydmljZXNDb250cm9sbGVy
Lm1tCkBAIC0zMCw2ICszMCw3IEBACiAKICNpbXBvcnQgIldlYkNvbnRleHQuaCIKICNpbXBvcnQg
IldlYlByb2Nlc3NNZXNzYWdlcy5oIgorI2ltcG9ydCA8QXBwS2l0L05TU2hhcmluZ1NlcnZpY2Uu
aD4KICNpbXBvcnQgPHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCiAjaWYgX19oYXNfaW5jbHVkZSg8
QXBwS2l0L05TU2hhcmluZ1NlcnZpY2VfUHJpdmF0ZS5oPikKQEAgLTQxLDEzICs0MiwyNCBAQCB0
eXBlZGVmIGVudW0gewogICAgIE5TU2hhcmluZ1NlcnZpY2VQaWNrZXJTdHlsZVRleHRTZWxlY3Rp
b24gPSAyLAogICAgIE5TU2hhcmluZ1NlcnZpY2VQaWNrZXJTdHlsZURhdGFEZXRlY3RvciA9IDMK
IH0gTlNTaGFyaW5nU2VydmljZVBpY2tlclN0eWxlOworI2VuZGlmCiAKIEBpbnRlcmZhY2UgTlNT
aGFyaW5nU2VydmljZVBpY2tlciAoRGV0YWlscykKIEBwcm9wZXJ0eSBOU1NoYXJpbmdTZXJ2aWNl
UGlja2VyU3R5bGUgc3R5bGU7CiAtIChOU01lbnUgKiltZW51OwogQGVuZAorCisjaWYgX19oYXNf
aW5jbHVkZSg8Rm91bmRhdGlvbi9OU0V4dGVuc2lvbi5oPikKKyNpbXBvcnQgPEZvdW5kYXRpb24v
TlNFeHRlbnNpb24uaD4KKyNlbHNlCitAaW50ZXJmYWNlIE5TRXh0ZW5zaW9uCitAZW5kCiAjZW5k
aWYKIAorQGludGVyZmFjZSBOU0V4dGVuc2lvbiAoRGV0YWlscykKKysgKGlkKWJlZ2luTWF0Y2hp
bmdFeHRlbnNpb25zV2l0aEF0dHJpYnV0ZXM6KE5TRGljdGlvbmFyeSAqKWF0dHJpYnV0ZXMgY29t
cGxldGlvbjoodm9pZCAoXikoTlNBcnJheSAqbWF0Y2hpbmdFeHRlbnNpb25zLCBOU0Vycm9yICpl
cnJvcikpaGFuZGxlcjsKK0BlbmQKKwogbmFtZXNwYWNlIFdlYktpdCB7CiAKIFNlcnZpY2VzQ29u
dHJvbGxlciYgU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKQpAQCAtNTgsMzAgKzcwLDMzIEBA
IFNlcnZpY2VzQ29udHJvbGxlciYgU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKQogCiBTZXJ2
aWNlc0NvbnRyb2xsZXI6OlNlcnZpY2VzQ29udHJvbGxlcigpCiAgICAgOiBtX3JlZnJlc2hRdWV1
ZShkaXNwYXRjaF9xdWV1ZV9jcmVhdGUoImNvbS5hcHBsZS5XZWJLaXQuU2VydmljZXNDb250cm9s
bGVyIiwgRElTUEFUQ0hfUVVFVUVfU0VSSUFMKSkKLSAgICAsIG1faXNSZWZyZXNoaW5nKGZhbHNl
KQorICAgICwgbV9oYXNQZW5kaW5nUmVmcmVzaChmYWxzZSkKICAgICAsIG1faGFzSW1hZ2VTZXJ2
aWNlcyhmYWxzZSkKICAgICAsIG1faGFzU2VsZWN0aW9uU2VydmljZXMoZmFsc2UpCiAgICAgLCBt
X2hhc1JpY2hDb250ZW50U2VydmljZXMoZmFsc2UpCiB7CiAgICAgcmVmcmVzaEV4aXN0aW5nU2Vy
dmljZXMoKTsKLX0KIAotdm9pZCBTZXJ2aWNlc0NvbnRyb2xsZXI6OnJlZnJlc2hFeGlzdGluZ1Nl
cnZpY2VzKFdlYkNvbnRleHQqIGNvbnRleHQpCi17Ci0gICAgQVNTRVJUX0FSRyhjb250ZXh0LCBj
b250ZXh0KTsKLSAgICBBU1NFUlQoW05TVGhyZWFkIGlzTWFpblRocmVhZF0pOworICAgIGF1dG8g
cmVmcmVzaENhbGxiYWNrID0gW10oTlNBcnJheSAqLCBOU0Vycm9yICopIHsKKyAgICAgICAgLy8g
V2UgY29hbGVzZSByZWZyZXNoZXMgZnJvbSB0aGUgbm90aWZpY2F0aW9uIGNhbGxiYWNrcyBiZWNh
dXNlIHRoZXkgY2FuIGNvbWUgaW4gc21hbGwgYmF0Y2hlcy4KKyAgICAgICAgU2VydmljZXNDb250
cm9sbGVyOjpzaGFyZWQoKS5yZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcyhmYWxzZSk7CisgICAgfTsK
IAotICAgIG1fY29udGV4dHNUb05vdGlmeS5hZGQoY29udGV4dCk7Ci0gICAgcmVmcmVzaEV4aXN0
aW5nU2VydmljZXMoKTsKKyAgICBhdXRvIGV4dGVuc2lvbkF0dHJpYnV0ZXMgPSBAeyBAIk5TRXh0
ZW5zaW9uUG9pbnROYW1lIiA6IEAiY29tLmFwcGxlLnNlcnZpY2VzIiB9OworICAgIG1fZXh0ZW5z
aW9uV2F0Y2hlciA9IFtOU0V4dGVuc2lvbiBiZWdpbk1hdGNoaW5nRXh0ZW5zaW9uc1dpdGhBdHRy
aWJ1dGVzOmV4dGVuc2lvbkF0dHJpYnV0ZXMgY29tcGxldGlvbjpyZWZyZXNoQ2FsbGJhY2tdOwor
ICAgIGF1dG8gdWlFeHRlbnNpb25BdHRyaWJ1dGVzID0gQHsgQCJOU0V4dGVuc2lvblBvaW50TmFt
ZSIgOiBAImNvbS5hcHBsZS51aS1zZXJ2aWNlcyIgfTsKKyAgICBtX3VpRXh0ZW5zaW9uV2F0Y2hl
ciA9IFtOU0V4dGVuc2lvbiBiZWdpbk1hdGNoaW5nRXh0ZW5zaW9uc1dpdGhBdHRyaWJ1dGVzOnVp
RXh0ZW5zaW9uQXR0cmlidXRlcyBjb21wbGV0aW9uOnJlZnJlc2hDYWxsYmFja107CiB9CiAKLXZv
aWQgU2VydmljZXNDb250cm9sbGVyOjpyZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpCit2b2lkIFNl
cnZpY2VzQ29udHJvbGxlcjo6cmVmcmVzaEV4aXN0aW5nU2VydmljZXMoYm9vbCByZWZyZXNoSW1t
ZWRpYXRlbHkpCiB7Ci0gICAgaWYgKG1faXNSZWZyZXNoaW5nKQorICAgIGlmIChtX2hhc1BlbmRp
bmdSZWZyZXNoKQogICAgICAgICByZXR1cm47CiAKLSAgICBtX2lzUmVmcmVzaGluZyA9IHRydWU7
Ci0gICAgZGlzcGF0Y2hfYXN5bmMobV9yZWZyZXNoUXVldWUsIF57CisgICAgbV9oYXNQZW5kaW5n
UmVmcmVzaCA9IHRydWU7CisKKyAgICBhdXRvIHJlZnJlc2hUaW1lID0gZGlzcGF0Y2hfdGltZShE
SVNQQVRDSF9USU1FX05PVywgcmVmcmVzaEltbWVkaWF0ZWx5ID8gMCA6IChpbnQ2NF90KSgxICog
TlNFQ19QRVJfU0VDKSk7CisgICAgZGlzcGF0Y2hfYWZ0ZXIocmVmcmVzaFRpbWUsIG1fcmVmcmVz
aFF1ZXVlLCBeewogICAgICAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8TlNJbWFnZSAqPiBpbWFn
ZShbW05TSW1hZ2UgYWxsb2NdIGluaXRdKTsKICAgICAgICAgUmV0YWluUHRyPE5TU2hhcmluZ1Nl
cnZpY2VQaWNrZXI+ICBwaWNrZXIgPSBhZG9wdE5TKFtbTlNTaGFyaW5nU2VydmljZVBpY2tlciBh
bGxvY10gaW5pdFdpdGhJdGVtczpAWyBpbWFnZSBdXSk7CiAgICAgICAgIFtwaWNrZXIgc2V0U3R5
bGU6TlNTaGFyaW5nU2VydmljZVBpY2tlclN0eWxlUm9sbG92ZXJdOwpAQCAtMTEwLDE5ICsxMjUs
MjAgQEAgdm9pZCBTZXJ2aWNlc0NvbnRyb2xsZXI6OnJlZnJlc2hFeGlzdGluZ1NlcnZpY2VzKCkK
ICAgICAgICAgYm9vbCBoYXNSaWNoQ29udGVudFNlcnZpY2VzID0gcGlja2VyLmdldCgpLm1lbnU7
CiAgICAgICAgIAogICAgICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfbWFpbl9xdWV1
ZSgpLCBeewotICAgICAgICAgICAgYm9vbCBub3RpZnlDb250ZXh0cyA9IChoYXNJbWFnZVNlcnZp
Y2VzICE9IG1faGFzSW1hZ2VTZXJ2aWNlcykgfHwgKGhhc1NlbGVjdGlvblNlcnZpY2VzICE9IG1f
aGFzU2VsZWN0aW9uU2VydmljZXMpIHx8IChoYXNSaWNoQ29udGVudFNlcnZpY2VzICE9IG1faGFz
UmljaENvbnRlbnRTZXJ2aWNlcyk7CisgICAgICAgICAgICBib29sIGF2YWlsYWJsZVNlcnZpY2Vz
Q2hhbmdlZCA9IChoYXNJbWFnZVNlcnZpY2VzICE9IG1faGFzSW1hZ2VTZXJ2aWNlcykgfHwgKGhh
c1NlbGVjdGlvblNlcnZpY2VzICE9IG1faGFzU2VsZWN0aW9uU2VydmljZXMpIHx8IChoYXNSaWNo
Q29udGVudFNlcnZpY2VzICE9IG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcyk7CisKICAgICAgICAg
ICAgIG1faGFzU2VsZWN0aW9uU2VydmljZXMgPSBoYXNTZWxlY3Rpb25TZXJ2aWNlczsKICAgICAg
ICAgICAgIG1faGFzSW1hZ2VTZXJ2aWNlcyA9IGhhc0ltYWdlU2VydmljZXM7CiAgICAgICAgICAg
ICBtX2hhc1JpY2hDb250ZW50U2VydmljZXMgPSBoYXNSaWNoQ29udGVudFNlcnZpY2VzOwogCi0g
ICAgICAgICAgICBpZiAobm90aWZ5Q29udGV4dHMpIHsKLSAgICAgICAgICAgICAgICBmb3IgKGNv
bnN0IFJlZlB0cjxXZWJDb250ZXh0PiYgY29udGV4dCA6IG1fY29udGV4dHNUb05vdGlmeSkKKyAg
ICAgICAgICAgIFdURkxvZ0Fsd2F5cygicmVmcmVzaGVkICVkIiwgbV9oYXNTZWxlY3Rpb25TZXJ2
aWNlcyk7CisKKyAgICAgICAgICAgIGlmIChhdmFpbGFibGVTZXJ2aWNlc0NoYW5nZWQpIHsKKyAg
ICAgICAgICAgICAgICBmb3IgKGF1dG8mIGNvbnRleHQgOiBXZWJDb250ZXh0OjphbGxDb250ZXh0
cygpKQogICAgICAgICAgICAgICAgICAgICBjb250ZXh0LT5zZW5kVG9BbGxQcm9jZXNzZXMoTWVz
c2FnZXM6OldlYlByb2Nlc3M6OlNldEVuYWJsZWRTZXJ2aWNlcyhtX2hhc0ltYWdlU2VydmljZXMs
IG1faGFzU2VsZWN0aW9uU2VydmljZXMsIG1faGFzUmljaENvbnRlbnRTZXJ2aWNlcykpOwogICAg
ICAgICAgICAgfQogCi0gICAgICAgICAgICBtX2NvbnRleHRzVG9Ob3RpZnkuY2xlYXIoKTsKLQot
ICAgICAgICAgICAgbV9pc1JlZnJlc2hpbmcgPSBmYWxzZTsKKyAgICAgICAgICAgIG1faGFzUGVu
ZGluZ1JlZnJlc2ggPSBmYWxzZTsKICAgICAgICAgfSk7CiAgICAgfSk7CiB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNZW51UHJveHlNYWMubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYkNvbnRleHRNZW51UHJveHlNYWMubW0K
aW5kZXggYTA3NDUyMi4uN2VhOTUzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL21hYy9XZWJDb250ZXh0TWVudVByb3h5TWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9tYWMvV2ViQ29udGV4dE1lbnVQcm94eU1hYy5tbQpAQCAtMzEsNiArMzEsNyBAQAog
I2ltcG9ydCAiRGF0YVJlZmVyZW5jZS5oIgogI2ltcG9ydCAiTWVudVV0aWxpdGllcy5oIgogI2lt
cG9ydCAiUGFnZUNsaWVudEltcGwuaCIKKyNpbXBvcnQgIlNlcnZpY2VzQ29udHJvbGxlci5oIgog
I2ltcG9ydCAiU2hhcmVhYmxlQml0bWFwLmgiCiAjaW1wb3J0ICJTdHJpbmdVdGlsaXRpZXMuaCIK
ICNpbXBvcnQgIldlYkNvbnRleHQuaCIKQEAgLTQxMywxMSArNDE0LDEwIEBAIHZvaWQgV2ViQ29u
dGV4dE1lbnVQcm94eU1hYzo6c2V0dXBTZXJ2aWNlc01lbnUoY29uc3QgQ29udGV4dE1lbnVDb250
ZXh0RGF0YSYgY29uCiAgICAgICAgIH0KICAgICB9CiAKLSAgICAvLyBJZiB0aGVyZSBpcyBubyBz
ZXJ2aWNlcyBtZW51LCB0aGVuIHRoZSBleGlzdGluZyBzZXJ2aWNlcyBvbiB0aGUgc3lzdGVtIGhh
dmUgY2hhbmdlZC4KLSAgICAvLyBBc2sgdGhlIFVJUHJvY2VzcyB0byByZWZyZXNoIHRoYXQgbGlz
dCBvZiBzZXJ2aWNlcy4KLSAgICAvLyBJZiA8cmRhcjovL3Byb2JsZW0vMTY3NzY4MzE+IGlzIHJl
c29sdmVkIHRoZW4gd2UgY2FuIG1vcmUgYWNjdXJhdGVseSBrZWVwIHRoZSBsaXN0IHVwIHRvIGRh
dGUgd2l0aG91dCB0aGlzIGNhbGwuCisgICAgLy8gSWYgdGhlcmUgaXMgbm8gc2VydmljZXMgbWVu
dSwgdGhlbiB0aGUgZXhpc3Rpbmcgc2VydmljZXMgb24gdGhlIHN5c3RlbSBoYXZlIGNoYW5nZWQs
IHNvIHJlZnJlc2ggdGhhdCBsaXN0IG9mIHNlcnZpY2VzLgorICAgIC8vIElmIDxyZGFyOi8vcHJv
YmxlbS8xNzk1NDcwOT4gaXMgcmVzb2x2ZWQgdGhlbiB3ZSBjYW4gbW9yZSBhY2N1cmF0ZWx5IGtl
ZXAgdGhlIGxpc3QgdXAgdG8gZGF0ZSB3aXRob3V0IHRoaXMgY2FsbC4KICAgICBpZiAoIW1fc2Vy
dmljZXNNZW51KQotICAgICAgICBtX3BhZ2UtPnByb2Nlc3MoKS5jb250ZXh0KCkucmVmcmVzaEV4
aXN0aW5nU2VydmljZXMoKTsKKyAgICAgICAgU2VydmljZXNDb250cm9sbGVyOjpzaGFyZWQoKS5y
ZWZyZXNoRXhpc3RpbmdTZXJ2aWNlcygpOwogfQogCiB2b2lkIFdlYkNvbnRleHRNZW51UHJveHlN
YWM6OmNsZWFyU2VydmljZXNNZW51KCkK
</data>
<flag name="review"
          id="260886"
          type_id="1"
          status="+"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>