<?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>131921</bug_id>
          
          <creation_ts>2014-04-20 16:10:38 -0700</creation_ts>
          <short_desc>[iOS] runtime application checks don&apos;t work in WebKit2</short_desc>
          <delta_ts>2014-04-21 11:23:57 -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>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>andersca</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1002426</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 16:10:38 -0700</bug_when>
    <thetext>The various application checks in RuntimeApplicationChecksIOS.cpp don&apos;t work as expected when running in WebKit2 because they assume [[NSBundle mainBundle] bundleIdentifier]  returns the bundle ID of the host application.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002427</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 16:11:34 -0700</bug_when>
    <thetext>&lt;rdar://16565372&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002429</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-04-20 16:12:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/16671610&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002434</commentid>
    <comment_count>3</comment_count>
      <attachid>229777</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 17:24:17 -0700</bug_when>
    <thetext>Created attachment 229777
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002435</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-04-20 17:26:32 -0700</bug_when>
    <thetext>Attachment 229777 did not pass style-queue:


ERROR: Source/WebKit2/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
ERROR: Source/WebKit/mac/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 2 in 9 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>1002436</commentid>
    <comment_count>5</comment_count>
      <attachid>229777</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2014-04-20 17:32:01 -0700</bug_when>
    <thetext>Comment on attachment 229777
Proposed patch.

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

&gt; Source/WebCore/page/Settings.h:275
&gt; +    static void setEmbeddingApplicationBundleID(const String&amp;);
&gt; +    static const String&amp; embeddingApplicationBundleID();

These don&apos;t seem like Settings things.  Why don&apos;t we just put all this in RuntimeApplicationChecks.h/mm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002437</commentid>
    <comment_count>6</comment_count>
      <attachid>229778</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 17:34:04 -0700</bug_when>
    <thetext>Created attachment 229778
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002449</commentid>
    <comment_count>7</comment_count>
      <attachid>229778</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-04-20 20:42:20 -0700</bug_when>
    <thetext>Comment on attachment 229778
Updated patch

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

&gt; Source/WebCore/page/Settings.h:275
&gt; +    static void setEmbeddingApplicationBundleID(const String&amp;);
&gt; +    static const String&amp; embeddingApplicationBundleID();

Never sure if such things belong in Settings, but I guess it’s OK.

&gt; Source/WebKit/mac/WebView/WebView.mm:2458
&gt; +    settings.setEmbeddingApplicationBundleID(String([[NSBundle mainBundle] bundleIdentifier]));

I don’t think the explicit String() is needed here. Is it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002466</commentid>
    <comment_count>8</comment_count>
      <attachid>229783</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 21:57:02 -0700</bug_when>
    <thetext>Created attachment 229783
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002467</commentid>
    <comment_count>9</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 22:04:13 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 229778 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=229778&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/Settings.h:275
&gt; &gt; +    static void setEmbeddingApplicationBundleID(const String&amp;);
&gt; &gt; +    static const String&amp; embeddingApplicationBundleID();
&gt; 
&gt; Never sure if such things belong in Settings, but I guess it’s OK.
&gt; 
&gt; &gt; Source/WebKit/mac/WebView/WebView.mm:2458
&gt; &gt; +    settings.setEmbeddingApplicationBundleID(String([[NSBundle mainBundle] bundleIdentifier]));
&gt; 
&gt; I don’t think the explicit String() is needed here. Is it?

Oops you are right. I copied that from WebKit2 without thinking about whether or not it was necessary.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002468</commentid>
    <comment_count>10</comment_count>
      <attachid>229784</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-04-20 22:05:14 -0700</bug_when>
    <thetext>Created attachment 229784
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1002473</commentid>
    <comment_count>11</comment_count>
    <who name="">mitz</who>
    <bug_when>2014-04-20 22:10:34 -0700</bug_when>
    <thetext>I don’t understand why this is a bug, and I think the proposed fix (whatever it’s fixing) is conceptually wrong.

Of all the apps being tested for, none currently use the WebKit2 API. On what basis are we customizing behavior for apps that aren’t even clients of the framework? Future adopters of the API should get the API’s standard behavior. If that blocks adoption, they can request whatever additional API they need. If we anticipate such needs, we should provide such API.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229777</attachid>
            <date>2014-04-20 17:24:17 -0700</date>
            <delta_ts>2014-04-20 17:34:04 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>patch_3.txt</filename>
            <type>text/plain</type>
            <size>11268</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NzU1NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBACisyMDE0LTA0LTIwICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIHJ1bnRpbWUg
YXBwbGljYXRpb24gY2hlY2tzIGRvbid0IHdvcmsgaW4gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxOTIxCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xNjU2NTM3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOiBFeHBvcnQgU2V0dGluZzo6c2V0RW1iZWRkaW5n
QXBwbGljYXRpb25CdW5kbGVJRC4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6c2hhcmVkRW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4K
KyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKTogTmV3LgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0
aW9uQnVuZGxlSUQpOiBOZXcuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorCisgICAgICAg
ICogcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6YXBwbGljYXRpb25Jc01vYmlsZU1haWwpOiBHZXQgYnVuZGxlIElEIGZyb20gc2V0dGlu
Z3MuCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTW9iaWxlU2FmYXJpKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzRHVtcFJlbmRlclRyZWUpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNNb2JpbGVTdG9yZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc1dlYkFwcCk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6YXBwbGljYXRpb25Jc09rQ3VwaWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNGYWNlYm9vayk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6YXBwbGljYXRp
b25Jc0VwaWN1cmlvdXMpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNE
YWlqaXNlbkRpY3Rpb25hcnkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9u
SXNOQVNBSEQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNNQVNIKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzVGhlRWNvbm9taXN0T25JUGhv
bmUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNJQm9va3NPbklPUyk6
IERpdHRvLgorCiAyMDE0LTA0LTE5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtVSS1zaWRlIGNvbXBvc2l0aW5nXSBJbXBsZW1lbnQgYmxlbmQgbW9k
ZXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmV4cC5pbgkod29ya2luZyBjb3B5KQpAQCAtMjY0Myw2ICsyNjQzLDcg
QEAgX19aTjdXZWJDb3JlOFNWR05hbWVzNGluaXRFdgogX19aTjdXZWJDb3JlOFNldHRpbmdzMTNn
QVZLaXRFbmFibGVkRQogX19aTjdXZWJDb3JlOFNldHRpbmdzMjNzZXROZXR3b3JrSW50ZXJmYWNl
TmFtZUVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZThTZXR0aW5nczMxc2V0QXVkaW9TZXNz
aW9uQ2F0ZWdvcnlPdmVycmlkZUVqCitfX1pON1dlYkNvcmU4U2V0dGluZ3MzMXNldEVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSURFUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmU4U2V0dGlu
Z3MzNHNldE5ldHdvcmtEYXRhVXNhZ2VUcmFja2luZ0VuYWJsZWRFYgogX19aTjdXZWJDb3JlOFNl
dHRpbmdzMzhnU2hvdWxkT3B0T3V0T2ZOZXR3b3JrU3RhdGVPYnNlcnZhdGlvbkUKIF9fWk43V2Vi
Q29yZTlGb250Q2FjaGUxN2dldENhY2hlZEZvbnREYXRhRVJLTlNfMTVGb250RGVzY3JpcHRpb25F
UktOM1dURjEyQXRvbWljU3RyaW5nRWJOUzBfMTJTaG91bGRSZXRhaW5FCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcAkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9TZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcyMCw2ICs3MjAsMjIgQEAgY29uc3Qg
U3RyaW5nJiBTZXR0aW5nczo6bmV0d29ya0ludGVyZmFjZQogewogICAgIHJldHVybiBzaGFyZWRO
ZXR3b3JrSW50ZXJmYWNlTmFtZUdsb2JhbCgpOwogfQorCitzdGF0aWMgU3RyaW5nJiBzaGFyZWRF
bWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95
ZWQ8U3RyaW5nPiBhcHBsaWNhdGlvbkJ1bmRsZUlEOworICAgIHJldHVybiBhcHBsaWNhdGlvbkJ1
bmRsZUlEOworfQorCit2b2lkIFNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpCit7CisgICAgc2hhcmVkRW1iZWRkaW5nQXBwbGlj
YXRpb25CdW5kbGVJRCgpID0gYnVuZGxlSUQ7Cit9CisKK2NvbnN0IFN0cmluZyYgU2V0dGluZ3M6
OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKQoreworICAgIHJldHVybiBzaGFyZWRFbWJl
ZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCk7Cit9CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkocmV2aXNpb24gMTY3NTAxKQorKysg
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNzAsNiAr
MjcwLDkgQEAgcHVibGljOgogCiAgICAgc3RhdGljIHZvaWQgc2V0U2hvdWxkT3B0T3V0T2ZOZXR3
b3JrU3RhdGVPYnNlcnZhdGlvbihib29sIGZsYWcpIHsgZ1Nob3VsZE9wdE91dE9mTmV0d29ya1N0
YXRlT2JzZXJ2YXRpb24gPSBmbGFnOyB9CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkT3B0T3V0T2ZO
ZXR3b3JrU3RhdGVPYnNlcnZhdGlvbigpIHsgcmV0dXJuIGdTaG91bGRPcHRPdXRPZk5ldHdvcmtT
dGF0ZU9ic2VydmF0aW9uOyB9CisKKyAgICBzdGF0aWMgdm9pZCBzZXRFbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKGNvbnN0IFN0cmluZyYpOworICAgIHN0YXRpYyBjb25zdCBTdHJpbmcmIGVt
YmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKTsKICNlbmRpZgogCiBwcml2YXRlOgpJbmRleDog
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bnRpbWVBcHBsaWNhdGlvbkNo
ZWNrc0lPUy5tbQkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw2ICsy
NSw3IEBACiAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiUnVudGltZUFwcGxpY2F0aW9u
Q2hlY2tzSU9TLmgiCisjaW1wb3J0ICJTZXR0aW5ncy5oIgogCiAvLyBGSVhNRTogV2Ugc2hvdWxk
IGNvbnNpZGVyIG1lcmdpbmcgdGhpcyBmaWxlIHdpdGggUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tz
LmNwcC4KICNpZiBQTEFURk9STShJT1MpCkBAIC0zMyw3NyArMzQsNzcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBib29sIGFwcGxpY2F0aW9uSXNNb2JpbGVNYWlsKCkKIHsKLSAgICBzdGF0aWMg
Ym9vbCBpc01vYmlsZU1haWwgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20uYXBwbGUubW9iaWxlbWFpbCJdOworICAgIHN0YXRp
YyBib29sIGlzTW9iaWxlTWFpbCA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5hcHBsZS5tb2JpbGVtYWlsIjsKICAgICByZXR1cm4gaXNNb2JpbGVNYWls
OwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNNb2JpbGVTYWZhcmkoKQogewotICAgIHN0YXRpYyBi
b29sIGlzTW9iaWxlU2FmYXJpID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRp
Zmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLm1vYmlsZXNhZmFyaSJdOworICAgIHN0
YXRpYyBib29sIGlzTW9iaWxlU2FmYXJpID0gU2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9u
QnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLm1vYmlsZXNhZmFyaSI7CiAgICAgcmV0dXJuIGlzTW9i
aWxlU2FmYXJpOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNEdW1wUmVuZGVyVHJlZSgpCiB7Ci0g
ICAgc3RhdGljIGJvb2wgaXNEdW1wUmVuZGVyVHJlZSA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVd
IGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS5EdW1wUmVuZGVy
VHJlZSJdOworICAgIHN0YXRpYyBib29sIGlzRHVtcFJlbmRlclRyZWUgPSBTZXR0aW5nczo6ZW1i
ZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uYXBwbGUuRHVtcFJlbmRlclRyZWUi
OwogICAgIHJldHVybiBpc0R1bXBSZW5kZXJUcmVlOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNN
b2JpbGVTdG9yZSgpCiB7Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgaXNNb2JpbGVTdG9yZSA9IFtb
W05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpA
ImNvbS5hcHBsZS5Nb2JpbGVTdG9yZSJdOworICAgIHN0YXRpYyBjb25zdCBib29sIGlzTW9iaWxl
U3RvcmUgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20u
YXBwbGUuTW9iaWxlU3RvcmUiOwogICAgIHJldHVybiBpc01vYmlsZVN0b3JlOwogfQogCiBib29s
IGFwcGxpY2F0aW9uSXNXZWJBcHAoKQogewotICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gW1tb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAi
Y29tLmFwcGxlLndlYmFwcCJdOworICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gU2V0dGluZ3M6
OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLndlYmFwcCI7CiAg
ICAgcmV0dXJuIGlzV2ViQXBwOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNPa0N1cGlkKCkKIHsK
LSAgICBzdGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5k
bGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20ub2tjdXBpZC5hcHAiXTsKKyAgICBz
dGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5k
bGVJRCgpID09ICJjb20ub2tjdXBpZC5hcHAiOwogICAgIHJldHVybiBpc09rQ3VwaWQ7CiB9CiAK
IGJvb2wgYXBwbGljYXRpb25Jc0ZhY2Vib29rKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc0ZhY2Vi
b29rID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRv
U3RyaW5nOkAiY29tLmZhY2Vib29rLkZhY2Vib29rIl07CisgICAgc3RhdGljIGJvb2wgaXNGYWNl
Ym9vayA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5m
YWNlYm9vay5GYWNlYm9vayI7CiAgICAgcmV0dXJuIGlzRmFjZWJvb2s7CiB9CiAKIGJvb2wgYXBw
bGljYXRpb25Jc0VwaWN1cmlvdXMoKQogewotICAgIHN0YXRpYyBib29sIGlzRXBpY3VyaW91cyA9
IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmlu
ZzpAImNvbS5jb25kZW5ldC5FcGljdXJpb3VzIl07CisgICAgc3RhdGljIGJvb2wgaXNFcGljdXJp
b3VzID0gU2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmNv
bmRlbmV0LkVwaWN1cmlvdXMiOwogICAgIHJldHVybiBpc0VwaWN1cmlvdXM7CiB9CiAKIGJvb2wg
YXBwbGljYXRpb25Jc0RhaWppc2VuRGljdGlvbmFyeSgpCiB7Ci0gICAgc3RhdGljIGJvb2wgaXNE
YWlqaXNlbkRpY3Rpb25hcnkgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJqcC5jby5zaG9nYWt1a2FuLmRhaWppc2VuMjAwOWkiXTsK
KyAgICBzdGF0aWMgYm9vbCBpc0RhaWppc2VuRGljdGlvbmFyeSA9IFNldHRpbmdzOjplbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImpwLmNvLnNob2dha3VrYW4uZGFpamlzZW4yMDA5
aSI7CiAgICAgcmV0dXJuIGlzRGFpamlzZW5EaWN0aW9uYXJ5OwogfQogCiBib29sIGFwcGxpY2F0
aW9uSXNOQVNBSEQoKQogewotICAgIHN0YXRpYyBib29sIGlzTkFTQUhEID0gW1tbTlNCdW5kbGUg
bWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiZ292Lm5hc2Eu
TkFTQUhEIl07CisgICAgc3RhdGljIGJvb2wgaXNOQVNBSEQgPSBTZXR0aW5nczo6ZW1iZWRkaW5n
QXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJnb3YubmFzYS5OQVNBSEQiOwogICAgIHJldHVybiBp
c05BU0FIRDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzTUFTSCgpCiB7Ci0gICAgc3RhdGljIGJv
b2wgaXNNQVNIID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNF
cXVhbFRvU3RyaW5nOkAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoZ2FtZSJdCi0gICAgICAg
IHx8IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0
cmluZzpAImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGxpdGVnYW1lIl0KLSAgICAgICAgfHwg
W1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5n
OkAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoY2hyaXN0bWFzIl0KLSAgICAgICAgfHwgW1tb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAi
Y29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoaGFsbG93ZWVuIl0KLSAgICAgICAgfHwgW1tbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29t
Lm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNodmFsZW50aW5lcyJdOworICAgIHN0YXRpYyBib29sIGlz
TUFTSCA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5t
YWduYXRlaW50ZXJhY3RpdmUubWFzaGdhbWUiCisgICAgICAgIHx8IFNldHRpbmdzOjplbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGxp
dGVnYW1lIgorICAgICAgICB8fCBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RCgpID09ICJjb20ubWFnbmF0ZWludGVyYWN0aXZlLm1hc2hjaHJpc3RtYXMiCisgICAgICAgIHx8
IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRl
aW50ZXJhY3RpdmUubWFzaGhhbGxvd2VlbiIKKyAgICAgICAgfHwgU2V0dGluZ3M6OmVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNodmFs
ZW50aW5lcyI7CiAgICAgcmV0dXJuIGlzTUFTSDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzVGhl
RWNvbm9taXN0T25JUGhvbmUoKQogewotICAgIHN0YXRpYyBib29sIGlzVGhlRWNvbm9taXN0T25J
UGhvbmUgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFs
VG9TdHJpbmc6QCJjb20uZWNvbm9taXN0LmlwaG9uZSJdOworICAgIHN0YXRpYyBib29sIGlzVGhl
RWNvbm9taXN0T25JUGhvbmUgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RCgpID09ICJjb20uZWNvbm9taXN0LmlwaG9uZSI7CiAgICAgcmV0dXJuIGlzVGhlRWNvbm9taXN0
T25JUGhvbmU7CiB9CiAKQEAgLTExNiw3ICsxMTcsNyBAQCBib29sIGFwcGxpY2F0aW9uSXNXZWJQ
cm9jZXNzKCkKIAogYm9vbCBhcHBsaWNhdGlvbklzSUJvb2tzT25JT1MoKQogewotICAgIHN0YXRp
YyBib29sIGlzSUJvb2tzT25JT1MgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVu
dGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20uYXBwbGUuaUJvb2tzIl07CisgICAgc3RhdGlj
IGJvb2wgaXNJQm9va3NPbklPUyA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5hcHBsZS5pQm9va3MiOwogICAgIHJldHVybiBpc0lCb29rc09uSU9TOwog
fQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxNC0wNC0yMCAgRXJp
YyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBOZWVkIGEgc2hv
cnQgZGVzY3JpcHRpb24gKE9PUFMhKS4KKyAgICAgICAgTmVlZCB0aGUgYnVnIFVSTCAoT09QUyEp
LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjp1
cGRhdGVQcmVmZXJlbmNlcyk6IENhbGwgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRC4K
KwogMjAxNC0wNC0xOCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAg
ICAgICAgIEhhbmRsZSBwbHVnaW5PcmlnaW4gYmVpbmcgbnVsbApJbmRleDogU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkocmV2aXNpb24gMTY3NTAxKQor
KysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yNjYxLDYgKzI2NjEsMTAgQEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJl
bmNlcyhjb25zdCBXZQogICAgICAgICBtX2RyYXdpbmdBcmVhLT51cGRhdGVQcmVmZXJlbmNlcyhz
dG9yZSk7CiAKICAgICBtX3BhZ2VPdmVybGF5Q29udHJvbGxlci5kaWRDaGFuZ2VQcmVmZXJlbmNl
cygpOworCisjaWYgUExBVEZPUk0oSU9TKQorICAgIHNldHRpbmdzLnNldEVtYmVkZGluZ0FwcGxp
Y2F0aW9uQnVuZGxlSUQoU2Vzc2lvblRyYWNrZXI6OmdldElkZW50aWZpZXJCYXNlKCkpOworI2Vu
ZGlmCiB9CiAKICNpZiBQTEFURk9STShDT0NPQSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlz
aW9uIDE2NzUwMSkKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5
KQpAQCAtMSwzICsxLDEzIEBACisyMDE0LTA0LTIwICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxz
b25AYXBwbGUuY29tPgorCisgICAgICAgIE5lZWQgYSBzaG9ydCBkZXNjcmlwdGlvbiAoT09QUyEp
LgorICAgICAgICBOZWVkIHRoZSBidWcgVVJMIChPT1BTISkuCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06CisgICAg
ICAgICgtW1dlYlZpZXcgX3ByZWZlcmVuY2VzQ2hhbmdlZDpdKTogQ2FsbCBzZXRFbWJlZGRpbmdB
cHBsaWNhdGlvbkJ1bmRsZUlELgorCiAyMDE0LTA0LTE3ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVz
QGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBIb29rIHVwIHNjcmVlbi57YXZhaWxIZWlnaHQs
IGF2YWlsV2lkdGgsIGhlaWdodCwgd2lkdGh9CkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYlZpZXcubW0JKHdvcmtpbmcgY29weSkKQEAgLTI0NTQsNiArMjQ1NCw4IEBAIC0gKHZvaWQp
X3ByZWZlcmVuY2VzQ2hhbmdlZDooV2ViUHJlZmVyZW4KICAgICAvLyBQYXNzd29yZCBlY2hvCiAg
ICAgc2V0dGluZ3Muc2V0UGFzc3dvcmRFY2hvRW5hYmxlZChbcHJlZmVyZW5jZXMgX2FsbG93UGFz
c3dvcmRFY2hvXSk7CiAgICAgc2V0dGluZ3Muc2V0UGFzc3dvcmRFY2hvRHVyYXRpb25JblNlY29u
ZHMoW3ByZWZlcmVuY2VzIF9wYXNzd29yZEVjaG9EdXJhdGlvbl0pOworCisgICAgc2V0dGluZ3Mu
c2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRChTdHJpbmcoW1tOU0J1bmRsZSBtYWluQnVu
ZGxlXSBidW5kbGVJZGVudGlmaWVyXSkpOwogI2VuZGlmCiB9CiAK
</data>
<flag name="review"
          id="254144"
          type_id="1"
          status="-"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229778</attachid>
            <date>2014-04-20 17:34:04 -0700</date>
            <delta_ts>2014-04-20 21:57:02 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_4.txt</filename>
            <type>text/plain</type>
            <size>11422</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NzU1NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBACisyMDE0LTA0LTIwICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIHJ1bnRpbWUg
YXBwbGljYXRpb24gY2hlY2tzIGRvbid0IHdvcmsgaW4gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxOTIxCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xNjU2NTM3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOiBFeHBvcnQgU2V0dGluZzo6c2V0RW1iZWRkaW5n
QXBwbGljYXRpb25CdW5kbGVJRC4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6c2hhcmVkRW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4K
KyAgICAgICAgKFdlYkNvcmU6OlNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKTogTmV3LgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0
aW9uQnVuZGxlSUQpOiBOZXcuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorCisgICAgICAg
ICogcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6YXBwbGljYXRpb25Jc01vYmlsZU1haWwpOiBHZXQgYnVuZGxlIElEIGZyb20gc2V0dGlu
Z3MuCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTW9iaWxlU2FmYXJpKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzRHVtcFJlbmRlclRyZWUpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNNb2JpbGVTdG9yZSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc1dlYkFwcCk6IERpdHRvLgorICAgICAgICAoV2Vi
Q29yZTo6YXBwbGljYXRpb25Jc09rQ3VwaWQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNGYWNlYm9vayk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6YXBwbGljYXRp
b25Jc0VwaWN1cmlvdXMpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNE
YWlqaXNlbkRpY3Rpb25hcnkpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9u
SXNOQVNBSEQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNNQVNIKTog
RGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzVGhlRWNvbm9taXN0T25JUGhv
bmUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNJQm9va3NPbklPUyk6
IERpdHRvLgorCiAyMDE0LTA0LTE5ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIFtVSS1zaWRlIGNvbXBvc2l0aW5nXSBJbXBsZW1lbnQgYmxlbmQgbW9k
ZXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmV4cC5pbgkod29ya2luZyBjb3B5KQpAQCAtMjY0Myw2ICsyNjQzLDcg
QEAgX19aTjdXZWJDb3JlOFNWR05hbWVzNGluaXRFdgogX19aTjdXZWJDb3JlOFNldHRpbmdzMTNn
QVZLaXRFbmFibGVkRQogX19aTjdXZWJDb3JlOFNldHRpbmdzMjNzZXROZXR3b3JrSW50ZXJmYWNl
TmFtZUVSS04zV1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZThTZXR0aW5nczMxc2V0QXVkaW9TZXNz
aW9uQ2F0ZWdvcnlPdmVycmlkZUVqCitfX1pON1dlYkNvcmU4U2V0dGluZ3MzMXNldEVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSURFUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNvcmU4U2V0dGlu
Z3MzNHNldE5ldHdvcmtEYXRhVXNhZ2VUcmFja2luZ0VuYWJsZWRFYgogX19aTjdXZWJDb3JlOFNl
dHRpbmdzMzhnU2hvdWxkT3B0T3V0T2ZOZXR3b3JrU3RhdGVPYnNlcnZhdGlvbkUKIF9fWk43V2Vi
Q29yZTlGb250Q2FjaGUxN2dldENhY2hlZEZvbnREYXRhRVJLTlNfMTVGb250RGVzY3JpcHRpb25F
UktOM1dURjEyQXRvbWljU3RyaW5nRWJOUzBfMTJTaG91bGRSZXRhaW5FCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9wYWdlL1NldHRpbmdzLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9w
YWdlL1NldHRpbmdzLmNwcAkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvcGFn
ZS9TZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTcyMCw2ICs3MjAsMjIgQEAgY29uc3Qg
U3RyaW5nJiBTZXR0aW5nczo6bmV0d29ya0ludGVyZmFjZQogewogICAgIHJldHVybiBzaGFyZWRO
ZXR3b3JrSW50ZXJmYWNlTmFtZUdsb2JhbCgpOwogfQorCitzdGF0aWMgU3RyaW5nJiBzaGFyZWRF
bWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95
ZWQ8U3RyaW5nPiBhcHBsaWNhdGlvbkJ1bmRsZUlEOworICAgIHJldHVybiBhcHBsaWNhdGlvbkJ1
bmRsZUlEOworfQorCit2b2lkIFNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKGNvbnN0IFN0cmluZyYgYnVuZGxlSUQpCit7CisgICAgc2hhcmVkRW1iZWRkaW5nQXBwbGlj
YXRpb25CdW5kbGVJRCgpID0gYnVuZGxlSUQ7Cit9CisKK2NvbnN0IFN0cmluZyYgU2V0dGluZ3M6
OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKQoreworICAgIHJldHVybiBzaGFyZWRFbWJl
ZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCk7Cit9CiAjZW5kaWYKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpJbmRleDogU291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BhZ2UvU2V0dGluZ3MuaAkocmV2aXNpb24gMTY3NTAxKQorKysg
U291cmNlL1dlYkNvcmUvcGFnZS9TZXR0aW5ncy5oCSh3b3JraW5nIGNvcHkpCkBAIC0yNzAsNiAr
MjcwLDkgQEAgcHVibGljOgogCiAgICAgc3RhdGljIHZvaWQgc2V0U2hvdWxkT3B0T3V0T2ZOZXR3
b3JrU3RhdGVPYnNlcnZhdGlvbihib29sIGZsYWcpIHsgZ1Nob3VsZE9wdE91dE9mTmV0d29ya1N0
YXRlT2JzZXJ2YXRpb24gPSBmbGFnOyB9CiAgICAgc3RhdGljIGJvb2wgc2hvdWxkT3B0T3V0T2ZO
ZXR3b3JrU3RhdGVPYnNlcnZhdGlvbigpIHsgcmV0dXJuIGdTaG91bGRPcHRPdXRPZk5ldHdvcmtT
dGF0ZU9ic2VydmF0aW9uOyB9CisKKyAgICBzdGF0aWMgdm9pZCBzZXRFbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKGNvbnN0IFN0cmluZyYpOworICAgIHN0YXRpYyBjb25zdCBTdHJpbmcmIGVt
YmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKTsKICNlbmRpZgogCiBwcml2YXRlOgpJbmRleDog
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bnRpbWVBcHBsaWNhdGlvbkNo
ZWNrc0lPUy5tbQkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw2ICsy
NSw3IEBACiAKICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiUnVudGltZUFwcGxpY2F0aW9u
Q2hlY2tzSU9TLmgiCisjaW1wb3J0ICJTZXR0aW5ncy5oIgogCiAvLyBGSVhNRTogV2Ugc2hvdWxk
IGNvbnNpZGVyIG1lcmdpbmcgdGhpcyBmaWxlIHdpdGggUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tz
LmNwcC4KICNpZiBQTEFURk9STShJT1MpCkBAIC0zMyw3NyArMzQsNzcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogCiBib29sIGFwcGxpY2F0aW9uSXNNb2JpbGVNYWlsKCkKIHsKLSAgICBzdGF0aWMg
Ym9vbCBpc01vYmlsZU1haWwgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20uYXBwbGUubW9iaWxlbWFpbCJdOworICAgIHN0YXRp
YyBib29sIGlzTW9iaWxlTWFpbCA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5hcHBsZS5tb2JpbGVtYWlsIjsKICAgICByZXR1cm4gaXNNb2JpbGVNYWls
OwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNNb2JpbGVTYWZhcmkoKQogewotICAgIHN0YXRpYyBi
b29sIGlzTW9iaWxlU2FmYXJpID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRp
Zmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLm1vYmlsZXNhZmFyaSJdOworICAgIHN0
YXRpYyBib29sIGlzTW9iaWxlU2FmYXJpID0gU2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9u
QnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLm1vYmlsZXNhZmFyaSI7CiAgICAgcmV0dXJuIGlzTW9i
aWxlU2FmYXJpOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNEdW1wUmVuZGVyVHJlZSgpCiB7Ci0g
ICAgc3RhdGljIGJvb2wgaXNEdW1wUmVuZGVyVHJlZSA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVd
IGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS5EdW1wUmVuZGVy
VHJlZSJdOworICAgIHN0YXRpYyBib29sIGlzRHVtcFJlbmRlclRyZWUgPSBTZXR0aW5nczo6ZW1i
ZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uYXBwbGUuRHVtcFJlbmRlclRyZWUi
OwogICAgIHJldHVybiBpc0R1bXBSZW5kZXJUcmVlOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNN
b2JpbGVTdG9yZSgpCiB7Ci0gICAgc3RhdGljIGNvbnN0IGJvb2wgaXNNb2JpbGVTdG9yZSA9IFtb
W05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpA
ImNvbS5hcHBsZS5Nb2JpbGVTdG9yZSJdOworICAgIHN0YXRpYyBjb25zdCBib29sIGlzTW9iaWxl
U3RvcmUgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20u
YXBwbGUuTW9iaWxlU3RvcmUiOwogICAgIHJldHVybiBpc01vYmlsZVN0b3JlOwogfQogCiBib29s
IGFwcGxpY2F0aW9uSXNXZWJBcHAoKQogewotICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gW1tb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAi
Y29tLmFwcGxlLndlYmFwcCJdOworICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gU2V0dGluZ3M6
OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLndlYmFwcCI7CiAg
ICAgcmV0dXJuIGlzV2ViQXBwOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNPa0N1cGlkKCkKIHsK
LSAgICBzdGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5k
bGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20ub2tjdXBpZC5hcHAiXTsKKyAgICBz
dGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5k
bGVJRCgpID09ICJjb20ub2tjdXBpZC5hcHAiOwogICAgIHJldHVybiBpc09rQ3VwaWQ7CiB9CiAK
IGJvb2wgYXBwbGljYXRpb25Jc0ZhY2Vib29rKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc0ZhY2Vi
b29rID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRv
U3RyaW5nOkAiY29tLmZhY2Vib29rLkZhY2Vib29rIl07CisgICAgc3RhdGljIGJvb2wgaXNGYWNl
Ym9vayA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5m
YWNlYm9vay5GYWNlYm9vayI7CiAgICAgcmV0dXJuIGlzRmFjZWJvb2s7CiB9CiAKIGJvb2wgYXBw
bGljYXRpb25Jc0VwaWN1cmlvdXMoKQogewotICAgIHN0YXRpYyBib29sIGlzRXBpY3VyaW91cyA9
IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmlu
ZzpAImNvbS5jb25kZW5ldC5FcGljdXJpb3VzIl07CisgICAgc3RhdGljIGJvb2wgaXNFcGljdXJp
b3VzID0gU2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmNv
bmRlbmV0LkVwaWN1cmlvdXMiOwogICAgIHJldHVybiBpc0VwaWN1cmlvdXM7CiB9CiAKIGJvb2wg
YXBwbGljYXRpb25Jc0RhaWppc2VuRGljdGlvbmFyeSgpCiB7Ci0gICAgc3RhdGljIGJvb2wgaXNE
YWlqaXNlbkRpY3Rpb25hcnkgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlm
aWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJqcC5jby5zaG9nYWt1a2FuLmRhaWppc2VuMjAwOWkiXTsK
KyAgICBzdGF0aWMgYm9vbCBpc0RhaWppc2VuRGljdGlvbmFyeSA9IFNldHRpbmdzOjplbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImpwLmNvLnNob2dha3VrYW4uZGFpamlzZW4yMDA5
aSI7CiAgICAgcmV0dXJuIGlzRGFpamlzZW5EaWN0aW9uYXJ5OwogfQogCiBib29sIGFwcGxpY2F0
aW9uSXNOQVNBSEQoKQogewotICAgIHN0YXRpYyBib29sIGlzTkFTQUhEID0gW1tbTlNCdW5kbGUg
bWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiZ292Lm5hc2Eu
TkFTQUhEIl07CisgICAgc3RhdGljIGJvb2wgaXNOQVNBSEQgPSBTZXR0aW5nczo6ZW1iZWRkaW5n
QXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJnb3YubmFzYS5OQVNBSEQiOwogICAgIHJldHVybiBp
c05BU0FIRDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzTUFTSCgpCiB7Ci0gICAgc3RhdGljIGJv
b2wgaXNNQVNIID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNF
cXVhbFRvU3RyaW5nOkAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoZ2FtZSJdCi0gICAgICAg
IHx8IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0
cmluZzpAImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGxpdGVnYW1lIl0KLSAgICAgICAgfHwg
W1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5n
OkAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoY2hyaXN0bWFzIl0KLSAgICAgICAgfHwgW1tb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAi
Y29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoaGFsbG93ZWVuIl0KLSAgICAgICAgfHwgW1tbTlNC
dW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29t
Lm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNodmFsZW50aW5lcyJdOworICAgIHN0YXRpYyBib29sIGlz
TUFTSCA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5t
YWduYXRlaW50ZXJhY3RpdmUubWFzaGdhbWUiCisgICAgICAgIHx8IFNldHRpbmdzOjplbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGxp
dGVnYW1lIgorICAgICAgICB8fCBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RCgpID09ICJjb20ubWFnbmF0ZWludGVyYWN0aXZlLm1hc2hjaHJpc3RtYXMiCisgICAgICAgIHx8
IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRl
aW50ZXJhY3RpdmUubWFzaGhhbGxvd2VlbiIKKyAgICAgICAgfHwgU2V0dGluZ3M6OmVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNodmFs
ZW50aW5lcyI7CiAgICAgcmV0dXJuIGlzTUFTSDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzVGhl
RWNvbm9taXN0T25JUGhvbmUoKQogewotICAgIHN0YXRpYyBib29sIGlzVGhlRWNvbm9taXN0T25J
UGhvbmUgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFs
VG9TdHJpbmc6QCJjb20uZWNvbm9taXN0LmlwaG9uZSJdOworICAgIHN0YXRpYyBib29sIGlzVGhl
RWNvbm9taXN0T25JUGhvbmUgPSBTZXR0aW5nczo6ZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RCgpID09ICJjb20uZWNvbm9taXN0LmlwaG9uZSI7CiAgICAgcmV0dXJuIGlzVGhlRWNvbm9taXN0
T25JUGhvbmU7CiB9CiAKQEAgLTExNiw3ICsxMTcsNyBAQCBib29sIGFwcGxpY2F0aW9uSXNXZWJQ
cm9jZXNzKCkKIAogYm9vbCBhcHBsaWNhdGlvbklzSUJvb2tzT25JT1MoKQogewotICAgIHN0YXRp
YyBib29sIGlzSUJvb2tzT25JT1MgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVu
dGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20uYXBwbGUuaUJvb2tzIl07CisgICAgc3RhdGlj
IGJvb2wgaXNJQm9va3NPbklPUyA9IFNldHRpbmdzOjplbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5hcHBsZS5pQm9va3MiOwogICAgIHJldHVybiBpc0lCb29rc09uSU9TOwog
fQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxNC0wNC0yMCAgRXJp
YyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBydW50
aW1lIGFwcGxpY2F0aW9uIGNoZWNrcyBkb24ndCB3b3JrIGluIFdlYktpdDIKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTkyMQorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vMTY1NjUzNzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKTogQ2FsbCBzZXRFbWJlZGRpbmdB
cHBsaWNhdGlvbkJ1bmRsZUlELgorCiAyMDE0LTA0LTE4ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgSGFuZGxlIHBsdWdpbk9yaWdpbiBiZWluZyBudWxs
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3Bw
CShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2NjEsNiArMjY2MSwxMCBAQCB2b2lkIFdl
YlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlCiAgICAgICAgIG1fZHJhd2luZ0FyZWEt
PnVwZGF0ZVByZWZlcmVuY2VzKHN0b3JlKTsKIAogICAgIG1fcGFnZU92ZXJsYXlDb250cm9sbGVy
LmRpZENoYW5nZVByZWZlcmVuY2VzKCk7CisKKyNpZiBQTEFURk9STShJT1MpCisgICAgc2V0dGlu
Z3Muc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRChTZXNzaW9uVHJhY2tlcjo6Z2V0SWRl
bnRpZmllckJhc2UoKSk7CisjZW5kaWYKIH0KIAogI2lmIFBMQVRGT1JNKENPQ09BKQpJbmRleDog
U291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
bWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYktpdC9tYWMvQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMDQtMjAgIEVyaWMg
Q2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gcnVudGlt
ZSBhcHBsaWNhdGlvbiBjaGVja3MgZG9uJ3Qgd29yayBpbiBXZWJLaXQyCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE5MjEKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzE2NTY1MzcyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3IF9w
cmVmZXJlbmNlc0NoYW5nZWQ6XSk6IENhbGwgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RC4KKwogMjAxNC0wNC0xNyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAg
ICAgICAgW2lPU10gSG9vayB1cCBzY3JlZW4ue2F2YWlsSGVpZ2h0LCBhdmFpbFdpZHRoLCBoZWln
aHQsIHdpZHRofQpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQkocmV2aXNp
b24gMTY3NTAxKQorKysgU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC0yNDU0LDYgKzI0NTQsOCBAQCAtICh2b2lkKV9wcmVmZXJlbmNlc0NoYW5n
ZWQ6KFdlYlByZWZlcmVuCiAgICAgLy8gUGFzc3dvcmQgZWNobwogICAgIHNldHRpbmdzLnNldFBh
c3N3b3JkRWNob0VuYWJsZWQoW3ByZWZlcmVuY2VzIF9hbGxvd1Bhc3N3b3JkRWNob10pOwogICAg
IHNldHRpbmdzLnNldFBhc3N3b3JkRWNob0R1cmF0aW9uSW5TZWNvbmRzKFtwcmVmZXJlbmNlcyBf
cGFzc3dvcmRFY2hvRHVyYXRpb25dKTsKKworICAgIHNldHRpbmdzLnNldEVtYmVkZGluZ0FwcGxp
Y2F0aW9uQnVuZGxlSUQoU3RyaW5nKFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRp
Zmllcl0pKTsKICNlbmRpZgogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>229783</attachid>
            <date>2014-04-20 21:57:02 -0700</date>
            <delta_ts>2014-04-20 22:05:14 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_5.txt</filename>
            <type>text/plain</type>
            <size>11892</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NzU1NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE0LTA0LTIwICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIHJ1bnRpbWUg
YXBwbGljYXRpb24gY2hlY2tzIGRvbid0IHdvcmsgaW4gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxOTIxCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xNjU2NTM3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOiBFeHBvcnQgc2V0RW1iZWRkaW5nQXBwbGljYXRp
b25CdW5kbGVJRC4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6c2hhcmVkRW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4KKyAgICAgICAg
KFdlYkNvcmU6OlNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKTogTmV3
LgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxl
SUQpOiBOZXcuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorCisgICAgICAgICogcGxhdGZv
cm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tOgorICAgICAgICAoV2ViQ29yZTo6c2V0
RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4KKyAgICAgICAgKFdlYkNvcmU6OmVt
YmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNNb2JpbGVNYWlsKTogR2V0IGJ1bmRsZSBJRCBmcm9tIHNldHRpbmdzLgorICAg
ICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc01vYmlsZVNhZmFyaSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc0R1bXBSZW5kZXJUcmVlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjphcHBsaWNhdGlvbklzTW9iaWxlU3RvcmUpOiBEaXR0by4KKyAgICAgICAgKFdl
YkNvcmU6OmFwcGxpY2F0aW9uSXNXZWJBcHApOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNPa0N1cGlkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlv
bklzRmFjZWJvb2spOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNFcGlj
dXJpb3VzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzRGFpamlzZW5E
aWN0aW9uYXJ5KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTkFTQUhE
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTUFTSCk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc1RoZUVjb25vbWlzdE9uSVBob25lKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzSUJvb2tzT25JT1MpOiBEaXR0by4K
KyAgICAgICAgKiBwbGF0Zm9ybS9SdW50aW1lQXBwbGljYXRpb25DaGVja3NJT1MuazoKKwogMjAx
NC0wNC0xOSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbVUktc2lkZSBjb21wb3NpdGluZ10gSW1wbGVtZW50IGJsZW5kIG1vZGVzCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmV4cC5pbgkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4JKHdvcmtpbmcgY29weSkKQEAgLTI1OTEsNiArMjU5MSw3IEBAIF9fWk43V2ViQ29y
ZTMxTm9uU2hhcmVkQ2hhcmFjdGVyQnJlYWtJdGUKIF9fWk43V2ViQ29yZTMxYXBwbGljYXRpb25J
c0RhaWppc2VuRGljdGlvbmFyeUV2CiBfX1pON1dlYkNvcmUzMWFwcGxpY2F0aW9uSXNNaWNyb3Nv
ZnRNZXNzZW5nZXJFdgogX19aTjdXZWJDb3JlMzFlbmFibGVVUkxTY2hlbWVDYW5vbmljYWxpemF0
aW9uRWIKK19fWk43V2ViQ29yZTMxc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJREVSS04z
V1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTMzYXBwbGljYXRpb25Jc1RoZUVjb25vbWlzdE9uSVBo
b25lRXYKIF9fWk43V2ViQ29yZTM1cG9zaXRpb25PZk5leHRCb3VuZGFyeU9mR3JhbnVsYXJpdHlF
UktOU18xNVZpc2libGVQb3NpdGlvbkVOU18xNVRleHRHcmFudWxhcml0eUVOU18xOFNlbGVjdGlv
bkRpcmVjdGlvbkUKIF9fWk43V2ViQ29yZTQxaW5pdGlhbGl6ZUhUVFBDb25uZWN0aW9uU2V0dGlu
Z3NPblN0YXJ0dXBFdgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxp
Y2F0aW9uQ2hlY2tzSU9TLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLmgJKHJldmlzaW9uIDE2NzUwMSkKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPUy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw2ICsyNiw4IEBACiAjaWZuZGVmIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNr
c0lPU19oCiAjZGVmaW5lIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPU19oCiAKKyNpbXBvcnQg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCiAvLyBGSVhNRTogV2Ugc2hvdWxkIGNvbnNpZGVyIG1l
cmdpbmcgdGhpcyBmaWxlIHdpdGggUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmguCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTQ0LDYgKzQ2LDkgQEAgYm9vbCBhcHBsaWNhdGlvbklzVGhlRWNv
bm9taXN0T25JUGhvbmUoKQogYm9vbCBhcHBsaWNhdGlvbklzV2ViUHJvY2VzcygpOwogYm9vbCBh
cHBsaWNhdGlvbklzSUJvb2tzT25JT1MoKTsKIAordm9pZCBzZXRFbWJlZGRpbmdBcHBsaWNhdGlv
bkJ1bmRsZUlEKGNvbnN0IFN0cmluZyYpOworY29uc3QgU3RyaW5nJiBlbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKCk7CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIFJ1
bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPU19oCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9SdW50aW1lQXBwbGljYXRpb25DaGVja3NJT1MubW0KPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCShyZXZpc2lvbiAx
Njc1MDEpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW50aW1lQXBwbGljYXRpb25DaGVj
a3NJT1MubW0JKHdvcmtpbmcgY29weSkKQEAgLTI1LDg1ICsyNSwxMDIgQEAKIAogI2ltcG9ydCAi
Y29uZmlnLmgiCiAjaW1wb3J0ICJSdW50aW1lQXBwbGljYXRpb25DaGVja3NJT1MuaCIKKyNpbmNs
dWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIAogLy8gRklYTUU6IFdlIHNob3VsZCBjb25zaWRl
ciBtZXJnaW5nIHRoaXMgZmlsZSB3aXRoIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5jcHAuCiAj
aWYgUExBVEZPUk0oSU9TKQogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK3N0YXRpYyBTdHJpbmcm
IHNoYXJlZEVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKQoreworICAgIHN0YXRpYyBOZXZl
ckRlc3Ryb3llZDxTdHJpbmc+IGFwcGxpY2F0aW9uQnVuZGxlSUQ7CisgICAgcmV0dXJuIGFwcGxp
Y2F0aW9uQnVuZGxlSUQ7Cit9CisKK3ZvaWQgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJ
RChjb25zdCBTdHJpbmcmIGJ1bmRsZUlEKQoreworICAgIHNoYXJlZEVtYmVkZGluZ0FwcGxpY2F0
aW9uQnVuZGxlSUQoKSA9IGJ1bmRsZUlEOworfQorCitjb25zdCBTdHJpbmcmIGVtYmVkZGluZ0Fw
cGxpY2F0aW9uQnVuZGxlSUQoKQoreworICAgIHJldHVybiBzaGFyZWRFbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKCk7Cit9CisKIGJvb2wgYXBwbGljYXRpb25Jc01vYmlsZU1haWwoKQogewot
ICAgIHN0YXRpYyBib29sIGlzTW9iaWxlTWFpbCA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1
bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS5tb2JpbGVtYWlsIl07
CisgICAgc3RhdGljIGJvb2wgaXNNb2JpbGVNYWlsID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5k
bGVJRCgpID09ICJjb20uYXBwbGUubW9iaWxlbWFpbCI7CiAgICAgcmV0dXJuIGlzTW9iaWxlTWFp
bDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzTW9iaWxlU2FmYXJpKCkKIHsKLSAgICBzdGF0aWMg
Ym9vbCBpc01vYmlsZVNhZmFyaSA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50
aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS5tb2JpbGVzYWZhcmkiXTsKKyAgICBz
dGF0aWMgYm9vbCBpc01vYmlsZVNhZmFyaSA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQo
KSA9PSAiY29tLmFwcGxlLm1vYmlsZXNhZmFyaSI7CiAgICAgcmV0dXJuIGlzTW9iaWxlU2FmYXJp
OwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNEdW1wUmVuZGVyVHJlZSgpCiB7Ci0gICAgc3RhdGlj
IGJvb2wgaXNEdW1wUmVuZGVyVHJlZSA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlk
ZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS5EdW1wUmVuZGVyVHJlZSJdOwor
ICAgIHN0YXRpYyBib29sIGlzRHVtcFJlbmRlclRyZWUgPSBlbWJlZGRpbmdBcHBsaWNhdGlvbkJ1
bmRsZUlEKCkgPT0gImNvbS5hcHBsZS5EdW1wUmVuZGVyVHJlZSI7CiAgICAgcmV0dXJuIGlzRHVt
cFJlbmRlclRyZWU7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25Jc01vYmlsZVN0b3JlKCkKIHsKLSAg
ICBzdGF0aWMgY29uc3QgYm9vbCBpc01vYmlsZVN0b3JlID0gW1tbTlNCdW5kbGUgbWFpbkJ1bmRs
ZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLk1vYmlsZVN0
b3JlIl07CisgICAgc3RhdGljIGNvbnN0IGJvb2wgaXNNb2JpbGVTdG9yZSA9IGVtYmVkZGluZ0Fw
cGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLk1vYmlsZVN0b3JlIjsKICAgICByZXR1
cm4gaXNNb2JpbGVTdG9yZTsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzV2ViQXBwKCkKIHsKLSAg
ICBzdGF0aWMgYm9vbCBpc1dlYkFwcCA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlk
ZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5hcHBsZS53ZWJhcHAiXTsKKyAgICBzdGF0
aWMgYm9vbCBpc1dlYkFwcCA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29t
LmFwcGxlLndlYmFwcCI7CiAgICAgcmV0dXJuIGlzV2ViQXBwOwogfQogCiBib29sIGFwcGxpY2F0
aW9uSXNPa0N1cGlkKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBbW1tOU0J1bmRs
ZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20ub2tj
dXBpZC5hcHAiXTsKKyAgICBzdGF0aWMgYm9vbCBpc09rQ3VwaWQgPSBlbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5va2N1cGlkLmFwcCI7CiAgICAgcmV0dXJuIGlzT2tDdXBp
ZDsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzRmFjZWJvb2soKQogewotICAgIHN0YXRpYyBib29s
IGlzRmFjZWJvb2sgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBp
c0VxdWFsVG9TdHJpbmc6QCJjb20uZmFjZWJvb2suRmFjZWJvb2siXTsKKyAgICBzdGF0aWMgYm9v
bCBpc0ZhY2Vib29rID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uZmFj
ZWJvb2suRmFjZWJvb2siOwogICAgIHJldHVybiBpc0ZhY2Vib29rOwogfQogCiBib29sIGFwcGxp
Y2F0aW9uSXNFcGljdXJpb3VzKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc0VwaWN1cmlvdXMgPSBb
W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6
QCJjb20uY29uZGVuZXQuRXBpY3VyaW91cyJdOworICAgIHN0YXRpYyBib29sIGlzRXBpY3VyaW91
cyA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmNvbmRlbmV0LkVwaWN1
cmlvdXMiOwogICAgIHJldHVybiBpc0VwaWN1cmlvdXM7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25J
c0RhaWppc2VuRGljdGlvbmFyeSgpCiB7Ci0gICAgc3RhdGljIGJvb2wgaXNEYWlqaXNlbkRpY3Rp
b25hcnkgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFs
VG9TdHJpbmc6QCJqcC5jby5zaG9nYWt1a2FuLmRhaWppc2VuMjAwOWkiXTsKKyAgICBzdGF0aWMg
Ym9vbCBpc0RhaWppc2VuRGljdGlvbmFyeSA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQo
KSA9PSAianAuY28uc2hvZ2FrdWthbi5kYWlqaXNlbjIwMDlpIjsKICAgICByZXR1cm4gaXNEYWlq
aXNlbkRpY3Rpb25hcnk7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25Jc05BU0FIRCgpCiB7Ci0gICAg
c3RhdGljIGJvb2wgaXNOQVNBSEQgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVu
dGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJnb3YubmFzYS5OQVNBSEQiXTsKKyAgICBzdGF0aWMg
Ym9vbCBpc05BU0FIRCA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiZ292Lm5h
c2EuTkFTQUhEIjsKICAgICByZXR1cm4gaXNOQVNBSEQ7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25J
c01BU0goKQogewotICAgIHN0YXRpYyBib29sIGlzTUFTSCA9IFtbW05TQnVuZGxlIG1haW5CdW5k
bGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5tYWduYXRlaW50ZXJh
Y3RpdmUubWFzaGdhbWUiXQotICAgICAgICB8fCBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5k
bGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJjb20ubWFnbmF0ZWludGVyYWN0aXZlLm1h
c2hsaXRlZ2FtZSJdCi0gICAgICAgIHx8IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlk
ZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGNo
cmlzdG1hcyJdCi0gICAgICAgIHx8IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50
aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGhhbGxv
d2VlbiJdCi0gICAgICAgIHx8IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZp
ZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaHZhbGVudGlu
ZXMiXTsKKyAgICBzdGF0aWMgYm9vbCBpc01BU0ggPSBlbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaGdhbWUiCisgICAgICAgIHx8IGVt
YmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5t
YXNobGl0ZWdhbWUiCisgICAgICAgIHx8IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9
PSAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoY2hyaXN0bWFzIgorICAgICAgICB8fCBlbWJl
ZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFz
aGhhbGxvd2VlbiIKKyAgICAgICAgfHwgZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09
ICJjb20ubWFnbmF0ZWludGVyYWN0aXZlLm1hc2h2YWxlbnRpbmVzIjsKICAgICByZXR1cm4gaXNN
QVNIOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNUaGVFY29ub21pc3RPbklQaG9uZSgpCiB7Ci0g
ICAgc3RhdGljIGJvb2wgaXNUaGVFY29ub21pc3RPbklQaG9uZSA9IFtbW05TQnVuZGxlIG1haW5C
dW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5lY29ub21pc3Qu
aXBob25lIl07CisgICAgc3RhdGljIGJvb2wgaXNUaGVFY29ub21pc3RPbklQaG9uZSA9IGVtYmVk
ZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmVjb25vbWlzdC5pcGhvbmUiOwogICAg
IHJldHVybiBpc1RoZUVjb25vbWlzdE9uSVBob25lOwogfQogCkBAIC0xMTYsNyArMTMzLDcgQEAg
Ym9vbCBhcHBsaWNhdGlvbklzV2ViUHJvY2VzcygpCiAKIGJvb2wgYXBwbGljYXRpb25Jc0lCb29r
c09uSU9TKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc0lCb29rc09uSU9TID0gW1tbTlNCdW5kbGUg
bWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxl
LmlCb29rcyJdOworICAgIHN0YXRpYyBib29sIGlzSUJvb2tzT25JT1MgPSBlbWJlZGRpbmdBcHBs
aWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5hcHBsZS5pQm9va3MiOwogICAgIHJldHVybiBpc0lC
b29rc09uSU9TOwogfQogCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNjc1MDEpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAx
NC0wNC0yMCAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAg
ICBbaU9TXSBydW50aW1lIGFwcGxpY2F0aW9uIGNoZWNrcyBkb24ndCB3b3JrIGluIFdlYktpdDIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMTkyMQor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTY1NjUzNzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOiBDYWxsIHNldEVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSUQuCisKIDIwMTQtMDQtMTggIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBIYW5kbGUgcGx1Z2luT3JpZ2luIGJlaW5nIG51
bGwKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAJKHJldmlzaW9uIDE2NzUwMSkKKysrIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg0LDYgKzE4NCw3IEBACiAKICNpZiBQ
TEFURk9STShJT1MpCiAjaW5jbHVkZSAiV2ViVmlkZW9GdWxsc2NyZWVuTWFuYWdlci5oIgorI2lu
Y2x1ZGUgPFdlYkNvcmUvUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLmg+CiAjZW5kaWYKIAog
I2lmbmRlZiBOREVCVUcKQEAgLTMwOSw2ICszMTAsMTAgQEAgV2ViUGFnZTo6V2ViUGFnZSh1aW50
NjRfdCBwYWdlSUQsIGNvbnN0IAogICAgIC8vIDRtcyBzaG91bGQgYmUgYWRvcHRlZCBwcm9qZWN0
LXdpZGUgbm93LCBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjEyMTQK
ICAgICBTZXR0aW5nczo6c2V0RGVmYXVsdE1pbkRPTVRpbWVySW50ZXJ2YWwoMC4wMDQpOwogCisj
aWYgUExBVEZPUk0oSU9TKQorICAgIHNldEVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoU2Vz
c2lvblRyYWNrZXI6OmdldElkZW50aWZpZXJCYXNlKCkpOworI2VuZGlmCisKICAgICBQYWdlOjpQ
YWdlQ2xpZW50cyBwYWdlQ2xpZW50czsKICAgICBwYWdlQ2xpZW50cy5jaHJvbWVDbGllbnQgPSBu
ZXcgV2ViQ2hyb21lQ2xpZW50KHRoaXMpOwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQpJbmRl
eDogU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvbWFjL0NoYW5nZUxvZwkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTQtMDQtMjAgIEVy
aWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gcnVu
dGltZSBhcHBsaWNhdGlvbiBjaGVja3MgZG9uJ3Qgd29yayBpbiBXZWJLaXQyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzE5MjEKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzE2NTY1MzcyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOgorICAgICAgICAoLVtXZWJWaWV3
IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOl0pOiBDYWxsIHNl
dEVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQuCisKIDIwMTQtMDQtMTcgIERhbmllbCBCYXRl
cyAgPGRhYmF0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFtpT1NdIEhvb2sgdXAgc2NyZWVuLnth
dmFpbEhlaWdodCwgYXZhaWxXaWR0aCwgaGVpZ2h0LCB3aWR0aH0KSW5kZXg6IFNvdXJjZS9XZWJL
aXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21h
Yy9XZWJWaWV3L1dlYlZpZXcubW0JKHJldmlzaW9uIDE2NzUwMSkKKysrIFNvdXJjZS9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVmlldy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjgxLDYgKzI4MSwxMCBA
QAogI2ltcG9ydCA8V2ViQ29yZS9EaXNrSW1hZ2VDYWNoZUlPUy5oPgogI2VuZGlmCiAKKyNpZiBQ
TEFURk9STShJT1MpCisjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3NJ
T1MuaD4KKyNlbmRpZgorCiAjaWYgIVBMQVRGT1JNKElPUykKIEBpbnRlcmZhY2UgTlNTcGVsbENo
ZWNrZXIgKFdlYk5TU3BlbGxDaGVja2VyRGV0YWlscykKIC0gKHZvaWQpX3ByZWZsaWdodENob3Nl
blNwZWxsU2VydmVyOwpAQCAtODc0LDYgKzg3OCwxMCBAQCAtICh2b2lkKV9jb21tb25Jbml0aWFs
aXphdGlvbldpdGhGcmFtZU5hCiAgICAgICAgIFdlYkNvcmU6OmluaXRpYWxpemVMb2dnaW5nQ2hh
bm5lbHNJZk5lY2Vzc2FyeSgpOwogI2VuZGlmIC8vICFMT0dfRElTQUJMRUQKIAorI2lmIFBMQVRG
T1JNKElPUykKKyAgICAgICAgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRChTdHJpbmco
W1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSkpOworI2VuZGlmCisKICAg
ICAgICAgLy8gSW5pdGlhbGl6ZSBvdXIgcGxhdGZvcm0gc3RyYXRlZ2llcyBmaXJzdCBiZWZvcmUg
aW52b2tpbmcgdGhlIHJlc3QKICAgICAgICAgLy8gb2YgdGhlIGluaXRpYWxpemF0aW9uIGNvZGUg
d2hpY2ggbWF5IGRlcGVuZCBvbiB0aGUgc3RyYXRlZ2llcy4KICAgICAgICAgV2ViUGxhdGZvcm1T
dHJhdGVnaWVzOjppbml0aWFsaXplSWZOZWNlc3NhcnkoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>229784</attachid>
            <date>2014-04-20 22:05:14 -0700</date>
            <delta_ts>2014-04-21 11:23:47 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_5.txt</filename>
            <type>text/plain</type>
            <size>11844</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2NzU1NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBACisyMDE0LTA0LTIwICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIHJ1bnRpbWUg
YXBwbGljYXRpb24gY2hlY2tzIGRvbid0IHdvcmsgaW4gV2ViS2l0MgorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTMxOTIxCisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS8xNjU2NTM3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFdlYkNvcmUuZXhwLmluOiBFeHBvcnQgc2V0RW1iZWRkaW5nQXBwbGljYXRp
b25CdW5kbGVJRC4KKworICAgICAgICAqIHBhZ2UvU2V0dGluZ3MuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6c2hhcmVkRW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4KKyAgICAgICAg
KFdlYkNvcmU6OlNldHRpbmdzOjpzZXRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKTogTmV3
LgorICAgICAgICAoV2ViQ29yZTo6U2V0dGluZ3M6OmVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxl
SUQpOiBOZXcuCisgICAgICAgICogcGFnZS9TZXR0aW5ncy5oOgorCisgICAgICAgICogcGxhdGZv
cm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tOgorICAgICAgICAoV2ViQ29yZTo6c2V0
RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCk6IE5ldy4KKyAgICAgICAgKFdlYkNvcmU6OmVt
YmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNNb2JpbGVNYWlsKTogR2V0IGJ1bmRsZSBJRCBmcm9tIHNldHRpbmdzLgorICAg
ICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc01vYmlsZVNhZmFyaSk6IERpdHRvLgorICAgICAg
ICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc0R1bXBSZW5kZXJUcmVlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjphcHBsaWNhdGlvbklzTW9iaWxlU3RvcmUpOiBEaXR0by4KKyAgICAgICAgKFdl
YkNvcmU6OmFwcGxpY2F0aW9uSXNXZWJBcHApOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFw
cGxpY2F0aW9uSXNPa0N1cGlkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlv
bklzRmFjZWJvb2spOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OmFwcGxpY2F0aW9uSXNFcGlj
dXJpb3VzKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzRGFpamlzZW5E
aWN0aW9uYXJ5KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTkFTQUhE
KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzTUFTSCk6IERpdHRvLgor
ICAgICAgICAoV2ViQ29yZTo6YXBwbGljYXRpb25Jc1RoZUVjb25vbWlzdE9uSVBob25lKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjphcHBsaWNhdGlvbklzSUJvb2tzT25JT1MpOiBEaXR0by4K
KyAgICAgICAgKiBwbGF0Zm9ybS9SdW50aW1lQXBwbGljYXRpb25DaGVja3NJT1MuazoKKwogMjAx
NC0wNC0xOSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbVUktc2lkZSBjb21wb3NpdGluZ10gSW1wbGVtZW50IGJsZW5kIG1vZGVzCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmV4cC5pbgkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4JKHdvcmtpbmcgY29weSkKQEAgLTI1OTEsNiArMjU5MSw3IEBAIF9fWk43V2ViQ29y
ZTMxTm9uU2hhcmVkQ2hhcmFjdGVyQnJlYWtJdGUKIF9fWk43V2ViQ29yZTMxYXBwbGljYXRpb25J
c0RhaWppc2VuRGljdGlvbmFyeUV2CiBfX1pON1dlYkNvcmUzMWFwcGxpY2F0aW9uSXNNaWNyb3Nv
ZnRNZXNzZW5nZXJFdgogX19aTjdXZWJDb3JlMzFlbmFibGVVUkxTY2hlbWVDYW5vbmljYWxpemF0
aW9uRWIKK19fWk43V2ViQ29yZTMxc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJREVSS04z
V1RGNlN0cmluZ0UKIF9fWk43V2ViQ29yZTMzYXBwbGljYXRpb25Jc1RoZUVjb25vbWlzdE9uSVBo
b25lRXYKIF9fWk43V2ViQ29yZTM1cG9zaXRpb25PZk5leHRCb3VuZGFyeU9mR3JhbnVsYXJpdHlF
UktOU18xNVZpc2libGVQb3NpdGlvbkVOU18xNVRleHRHcmFudWxhcml0eUVOU18xOFNlbGVjdGlv
bkRpcmVjdGlvbkUKIF9fWk43V2ViQ29yZTQxaW5pdGlhbGl6ZUhUVFBDb25uZWN0aW9uU2V0dGlu
Z3NPblN0YXJ0dXBFdgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxp
Y2F0aW9uQ2hlY2tzSU9TLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLmgJKHJldmlzaW9uIDE2NzUwMSkKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPUy5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yNiw2ICsyNiw4IEBACiAjaWZuZGVmIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNr
c0lPU19oCiAjZGVmaW5lIFJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPU19oCiAKKyNpbXBvcnQg
PHd0Zi90ZXh0L1dURlN0cmluZy5oPgorCiAvLyBGSVhNRTogV2Ugc2hvdWxkIGNvbnNpZGVyIG1l
cmdpbmcgdGhpcyBmaWxlIHdpdGggUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmguCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKQEAgLTQ0LDYgKzQ2LDggQEAgYm9vbCBhcHBsaWNhdGlvbklzVGhlRWNv
bm9taXN0T25JUGhvbmUoKQogYm9vbCBhcHBsaWNhdGlvbklzV2ViUHJvY2VzcygpOwogYm9vbCBh
cHBsaWNhdGlvbklzSUJvb2tzT25JT1MoKTsKIAordm9pZCBzZXRFbWJlZGRpbmdBcHBsaWNhdGlv
bkJ1bmRsZUlEKGNvbnN0IFN0cmluZyYpOworCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNl
bmRpZiAvLyBSdW50aW1lQXBwbGljYXRpb25DaGVja3NJT1NfaApJbmRleDogU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9TLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bnRpbWVBcHBsaWNhdGlvbkNoZWNrc0lPUy5tbQko
cmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVudGltZUFwcGxp
Y2F0aW9uQ2hlY2tzSU9TLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw4NSArMjUsMTAyIEBACiAK
ICNpbXBvcnQgImNvbmZpZy5oIgogI2ltcG9ydCAiUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzSU9T
LmgiCisjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKIC8vIEZJWE1FOiBXZSBzaG91
bGQgY29uc2lkZXIgbWVyZ2luZyB0aGlzIGZpbGUgd2l0aCBSdW50aW1lQXBwbGljYXRpb25DaGVj
a3MuY3BwLgogI2lmIFBMQVRGT1JNKElPUykKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitzdGF0
aWMgU3RyaW5nJiBzaGFyZWRFbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkKK3sKKyAgICBz
dGF0aWMgTmV2ZXJEZXN0cm95ZWQ8U3RyaW5nPiBhcHBsaWNhdGlvbkJ1bmRsZUlEOworICAgIHJl
dHVybiBhcHBsaWNhdGlvbkJ1bmRsZUlEOworfQorCit2b2lkIHNldEVtYmVkZGluZ0FwcGxpY2F0
aW9uQnVuZGxlSUQoY29uc3QgU3RyaW5nJiBidW5kbGVJRCkKK3sKKyAgICBzaGFyZWRFbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPSBidW5kbGVJRDsKK30KKworc3RhdGljIGNvbnN0IFN0
cmluZyYgZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpCit7CisgICAgcmV0dXJuIHNoYXJl
ZEVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKTsKK30KKwogYm9vbCBhcHBsaWNhdGlvbklz
TW9iaWxlTWFpbCgpCiB7Ci0gICAgc3RhdGljIGJvb2wgaXNNb2JpbGVNYWlsID0gW1tbTlNCdW5k
bGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFw
cGxlLm1vYmlsZW1haWwiXTsKKyAgICBzdGF0aWMgYm9vbCBpc01vYmlsZU1haWwgPSBlbWJlZGRp
bmdBcHBsaWNhdGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5hcHBsZS5tb2JpbGVtYWlsIjsKICAgICBy
ZXR1cm4gaXNNb2JpbGVNYWlsOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNNb2JpbGVTYWZhcmko
KQogewotICAgIHN0YXRpYyBib29sIGlzTW9iaWxlU2FmYXJpID0gW1tbTlNCdW5kbGUgbWFpbkJ1
bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLm1vYmls
ZXNhZmFyaSJdOworICAgIHN0YXRpYyBib29sIGlzTW9iaWxlU2FmYXJpID0gZW1iZWRkaW5nQXBw
bGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uYXBwbGUubW9iaWxlc2FmYXJpIjsKICAgICByZXR1
cm4gaXNNb2JpbGVTYWZhcmk7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25Jc0R1bXBSZW5kZXJUcmVl
KCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc0R1bXBSZW5kZXJUcmVlID0gW1tbTlNCdW5kbGUgbWFp
bkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLkR1
bXBSZW5kZXJUcmVlIl07CisgICAgc3RhdGljIGJvb2wgaXNEdW1wUmVuZGVyVHJlZSA9IGVtYmVk
ZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLkR1bXBSZW5kZXJUcmVlIjsK
ICAgICByZXR1cm4gaXNEdW1wUmVuZGVyVHJlZTsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklzTW9i
aWxlU3RvcmUoKQogewotICAgIHN0YXRpYyBjb25zdCBib29sIGlzTW9iaWxlU3RvcmUgPSBbW1tO
U0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJj
b20uYXBwbGUuTW9iaWxlU3RvcmUiXTsKKyAgICBzdGF0aWMgY29uc3QgYm9vbCBpc01vYmlsZVN0
b3JlID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uYXBwbGUuTW9iaWxl
U3RvcmUiOwogICAgIHJldHVybiBpc01vYmlsZVN0b3JlOwogfQogCiBib29sIGFwcGxpY2F0aW9u
SXNXZWJBcHAoKQogewotICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gW1tbTlNCdW5kbGUgbWFp
bkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLmFwcGxlLndl
YmFwcCJdOworICAgIHN0YXRpYyBib29sIGlzV2ViQXBwID0gZW1iZWRkaW5nQXBwbGljYXRpb25C
dW5kbGVJRCgpID09ICJjb20uYXBwbGUud2ViYXBwIjsKICAgICByZXR1cm4gaXNXZWJBcHA7CiB9
CiAKIGJvb2wgYXBwbGljYXRpb25Jc09rQ3VwaWQoKQogewotICAgIHN0YXRpYyBib29sIGlzT2tD
dXBpZCA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxU
b1N0cmluZzpAImNvbS5va2N1cGlkLmFwcCJdOworICAgIHN0YXRpYyBib29sIGlzT2tDdXBpZCA9
IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm9rY3VwaWQuYXBwIjsKICAg
ICByZXR1cm4gaXNPa0N1cGlkOwogfQogCiBib29sIGFwcGxpY2F0aW9uSXNGYWNlYm9vaygpCiB7
Ci0gICAgc3RhdGljIGJvb2wgaXNGYWNlYm9vayA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1
bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5mYWNlYm9vay5GYWNlYm9vayJd
OworICAgIHN0YXRpYyBib29sIGlzRmFjZWJvb2sgPSBlbWJlZGRpbmdBcHBsaWNhdGlvbkJ1bmRs
ZUlEKCkgPT0gImNvbS5mYWNlYm9vay5GYWNlYm9vayI7CiAgICAgcmV0dXJuIGlzRmFjZWJvb2s7
CiB9CiAKIGJvb2wgYXBwbGljYXRpb25Jc0VwaWN1cmlvdXMoKQogewotICAgIHN0YXRpYyBib29s
IGlzRXBpY3VyaW91cyA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJd
IGlzRXF1YWxUb1N0cmluZzpAImNvbS5jb25kZW5ldC5FcGljdXJpb3VzIl07CisgICAgc3RhdGlj
IGJvb2wgaXNFcGljdXJpb3VzID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJj
b20uY29uZGVuZXQuRXBpY3VyaW91cyI7CiAgICAgcmV0dXJuIGlzRXBpY3VyaW91czsKIH0KIAog
Ym9vbCBhcHBsaWNhdGlvbklzRGFpamlzZW5EaWN0aW9uYXJ5KCkKIHsKLSAgICBzdGF0aWMgYm9v
bCBpc0RhaWppc2VuRGljdGlvbmFyeSA9IFtbW05TQnVuZGxlIG1haW5CdW5kbGVdIGJ1bmRsZUlk
ZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImpwLmNvLnNob2dha3VrYW4uZGFpamlzZW4yMDA5
aSJdOworICAgIHN0YXRpYyBib29sIGlzRGFpamlzZW5EaWN0aW9uYXJ5ID0gZW1iZWRkaW5nQXBw
bGljYXRpb25CdW5kbGVJRCgpID09ICJqcC5jby5zaG9nYWt1a2FuLmRhaWppc2VuMjAwOWkiOwog
ICAgIHJldHVybiBpc0RhaWppc2VuRGljdGlvbmFyeTsKIH0KIAogYm9vbCBhcHBsaWNhdGlvbklz
TkFTQUhEKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc05BU0FIRCA9IFtbW05TQnVuZGxlIG1haW5C
dW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImdvdi5uYXNhLk5BU0FI
RCJdOworICAgIHN0YXRpYyBib29sIGlzTkFTQUhEID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5k
bGVJRCgpID09ICJnb3YubmFzYS5OQVNBSEQiOwogICAgIHJldHVybiBpc05BU0FIRDsKIH0KIAog
Ym9vbCBhcHBsaWNhdGlvbklzTUFTSCgpCiB7Ci0gICAgc3RhdGljIGJvb2wgaXNNQVNIID0gW1tb
TlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAi
Y29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoZ2FtZSJdCi0gICAgICAgIHx8IFtbW05TQnVuZGxl
IG1haW5CdW5kbGVdIGJ1bmRsZUlkZW50aWZpZXJdIGlzRXF1YWxUb1N0cmluZzpAImNvbS5tYWdu
YXRlaW50ZXJhY3RpdmUubWFzaGxpdGVnYW1lIl0KLSAgICAgICAgfHwgW1tbTlNCdW5kbGUgbWFp
bkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLm1hZ25hdGVp
bnRlcmFjdGl2ZS5tYXNoY2hyaXN0bWFzIl0KLSAgICAgICAgfHwgW1tbTlNCdW5kbGUgbWFpbkJ1
bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLm1hZ25hdGVpbnRl
cmFjdGl2ZS5tYXNoaGFsbG93ZWVuIl0KLSAgICAgICAgfHwgW1tbTlNCdW5kbGUgbWFpbkJ1bmRs
ZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5nOkAiY29tLm1hZ25hdGVpbnRlcmFj
dGl2ZS5tYXNodmFsZW50aW5lcyJdOworICAgIHN0YXRpYyBib29sIGlzTUFTSCA9IGVtYmVkZGlu
Z0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm1hZ25hdGVpbnRlcmFjdGl2ZS5tYXNoZ2Ft
ZSIKKyAgICAgICAgfHwgZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20ubWFn
bmF0ZWludGVyYWN0aXZlLm1hc2hsaXRlZ2FtZSIKKyAgICAgICAgfHwgZW1iZWRkaW5nQXBwbGlj
YXRpb25CdW5kbGVJRCgpID09ICJjb20ubWFnbmF0ZWludGVyYWN0aXZlLm1hc2hjaHJpc3RtYXMi
CisgICAgICAgIHx8IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLm1hZ25h
dGVpbnRlcmFjdGl2ZS5tYXNoaGFsbG93ZWVuIgorICAgICAgICB8fCBlbWJlZGRpbmdBcHBsaWNh
dGlvbkJ1bmRsZUlEKCkgPT0gImNvbS5tYWduYXRlaW50ZXJhY3RpdmUubWFzaHZhbGVudGluZXMi
OwogICAgIHJldHVybiBpc01BU0g7CiB9CiAKIGJvb2wgYXBwbGljYXRpb25Jc1RoZUVjb25vbWlz
dE9uSVBob25lKCkKIHsKLSAgICBzdGF0aWMgYm9vbCBpc1RoZUVjb25vbWlzdE9uSVBob25lID0g
W1tbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0gaXNFcXVhbFRvU3RyaW5n
OkAiY29tLmVjb25vbWlzdC5pcGhvbmUiXTsKKyAgICBzdGF0aWMgYm9vbCBpc1RoZUVjb25vbWlz
dE9uSVBob25lID0gZW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRCgpID09ICJjb20uZWNvbm9t
aXN0LmlwaG9uZSI7CiAgICAgcmV0dXJuIGlzVGhlRWNvbm9taXN0T25JUGhvbmU7CiB9CiAKQEAg
LTExNiw3ICsxMzMsNyBAQCBib29sIGFwcGxpY2F0aW9uSXNXZWJQcm9jZXNzKCkKIAogYm9vbCBh
cHBsaWNhdGlvbklzSUJvb2tzT25JT1MoKQogewotICAgIHN0YXRpYyBib29sIGlzSUJvb2tzT25J
T1MgPSBbW1tOU0J1bmRsZSBtYWluQnVuZGxlXSBidW5kbGVJZGVudGlmaWVyXSBpc0VxdWFsVG9T
dHJpbmc6QCJjb20uYXBwbGUuaUJvb2tzIl07CisgICAgc3RhdGljIGJvb2wgaXNJQm9va3NPbklP
UyA9IGVtYmVkZGluZ0FwcGxpY2F0aW9uQnVuZGxlSUQoKSA9PSAiY29tLmFwcGxlLmlCb29rcyI7
CiAgICAgcmV0dXJuIGlzSUJvb2tzT25JT1M7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9u
IDE2NzUwMSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAt
MSwzICsxLDE0IEBACisyMDE0LTA0LTIwICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBw
bGUuY29tPgorCisgICAgICAgIFtpT1NdIHJ1bnRpbWUgYXBwbGljYXRpb24gY2hlY2tzIGRvbid0
IHdvcmsgaW4gV2ViS2l0MgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTMxOTIxCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjU2NTM3Mj4KKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6V2ViUGFnZSk6
IENhbGwgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRC4KKwogMjAxNC0wNC0xOCAgQW5k
ZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIEhhbmRsZSBwbHVn
aW5PcmlnaW4gYmVpbmcgbnVsbApJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcAkocmV2aXNpb24gMTY3NTAxKQorKysgU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xODQsNiAr
MTg0LDcgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKICNpbmNsdWRlICJXZWJWaWRlb0Z1bGxzY3Jl
ZW5NYW5hZ2VyLmgiCisjaW5jbHVkZSA8V2ViQ29yZS9SdW50aW1lQXBwbGljYXRpb25DaGVja3NJ
T1MuaD4KICNlbmRpZgogCiAjaWZuZGVmIE5ERUJVRwpAQCAtMzA5LDYgKzMxMCwxMCBAQCBXZWJQ
YWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgCiAgICAgLy8gNG1zIHNob3VsZCBi
ZSBhZG9wdGVkIHByb2plY3Qtd2lkZSBub3csIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02MTIxNAogICAgIFNldHRpbmdzOjpzZXREZWZhdWx0TWluRE9NVGltZXJJbnRl
cnZhbCgwLjAwNCk7CiAKKyNpZiBQTEFURk9STShJT1MpCisgICAgc2V0RW1iZWRkaW5nQXBwbGlj
YXRpb25CdW5kbGVJRChTZXNzaW9uVHJhY2tlcjo6Z2V0SWRlbnRpZmllckJhc2UoKSk7CisjZW5k
aWYKKwogICAgIFBhZ2U6OlBhZ2VDbGllbnRzIHBhZ2VDbGllbnRzOwogICAgIHBhZ2VDbGllbnRz
LmNocm9tZUNsaWVudCA9IG5ldyBXZWJDaHJvbWVDbGllbnQodGhpcyk7CiAjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVVMpCkluZGV4OiBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNjc1MDEpCisrKyBT
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBA
QAorMjAxNC0wNC0yMCAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKwor
ICAgICAgICBbaU9TXSBydW50aW1lIGFwcGxpY2F0aW9uIGNoZWNrcyBkb24ndCB3b3JrIGluIFdl
YktpdDIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
MTkyMQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMTY1NjUzNzI+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJWaWV3L1dlYlZpZXcubW06Cisg
ICAgICAgICgtW1dlYlZpZXcgX2NvbW1vbkluaXRpYWxpemF0aW9uV2l0aEZyYW1lTmFtZTpncm91
cE5hbWU6XSk6IENhbGwgc2V0RW1iZWRkaW5nQXBwbGljYXRpb25CdW5kbGVJRC4KKwogMjAxNC0w
NC0xNyAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW2lPU10g
SG9vayB1cCBzY3JlZW4ue2F2YWlsSGVpZ2h0LCBhdmFpbFdpZHRoLCBoZWlnaHQsIHdpZHRofQpJ
bmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQkocmV2aXNpb24gMTY3NTAxKQor
KysgU291cmNlL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yODEsNiArMjgxLDEwIEBACiAjaW1wb3J0IDxXZWJDb3JlL0Rpc2tJbWFnZUNhY2hlSU9TLmg+
CiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKElPUykKKyNpbmNsdWRlIDxXZWJDb3JlL1J1bnRpbWVB
cHBsaWNhdGlvbkNoZWNrc0lPUy5oPgorI2VuZGlmCisKICNpZiAhUExBVEZPUk0oSU9TKQogQGlu
dGVyZmFjZSBOU1NwZWxsQ2hlY2tlciAoV2ViTlNTcGVsbENoZWNrZXJEZXRhaWxzKQogLSAodm9p
ZClfcHJlZmxpZ2h0Q2hvc2VuU3BlbGxTZXJ2ZXI7CkBAIC04NzQsNiArODc4LDEwIEBAIC0gKHZv
aWQpX2NvbW1vbkluaXRpYWxpemF0aW9uV2l0aEZyYW1lTmEKICAgICAgICAgV2ViQ29yZTo6aW5p
dGlhbGl6ZUxvZ2dpbmdDaGFubmVsc0lmTmVjZXNzYXJ5KCk7CiAjZW5kaWYgLy8gIUxPR19ESVNB
QkxFRAogCisjaWYgUExBVEZPUk0oSU9TKQorICAgICAgICBzZXRFbWJlZGRpbmdBcHBsaWNhdGlv
bkJ1bmRsZUlEKFtbTlNCdW5kbGUgbWFpbkJ1bmRsZV0gYnVuZGxlSWRlbnRpZmllcl0pOworI2Vu
ZGlmCisKICAgICAgICAgLy8gSW5pdGlhbGl6ZSBvdXIgcGxhdGZvcm0gc3RyYXRlZ2llcyBmaXJz
dCBiZWZvcmUgaW52b2tpbmcgdGhlIHJlc3QKICAgICAgICAgLy8gb2YgdGhlIGluaXRpYWxpemF0
aW9uIGNvZGUgd2hpY2ggbWF5IGRlcGVuZCBvbiB0aGUgc3RyYXRlZ2llcy4KICAgICAgICAgV2Vi
UGxhdGZvcm1TdHJhdGVnaWVzOjppbml0aWFsaXplSWZOZWNlc3NhcnkoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>