<?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>160454</bug_id>
          
          <creation_ts>2016-08-02 09:44:33 -0700</creation_ts>
          <short_desc>Allow building with content filtering disabled</short_desc>
          <delta_ts>2016-08-02 17:03:00 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Enrica Casucci">enrica</reporter>
          <assigned_to name="Enrica Casucci">enrica</assigned_to>
          <cc>aestes</cc>
    
    <cc>commit-queue</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1216506</commentid>
    <comment_count>0</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 09:44:33 -0700</bug_when>
    <thetext>We need to fix the build if we want to disable content filtering.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216532</commentid>
    <comment_count>1</comment_count>
      <attachid>285121</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 11:11:39 -0700</bug_when>
    <thetext>Created attachment 285121
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216533</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-02 11:12:27 -0700</bug_when>
    <thetext>Attachment 285121 did not pass style-queue:


ERROR: Source/WebKit/mac/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/WebCore/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/WebKit2/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
Total errors found: 4 in 18 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>1216535</commentid>
    <comment_count>3</comment_count>
      <attachid>285121</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2016-08-02 11:25:12 -0700</bug_when>
    <thetext>Comment on attachment 285121
Patch

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

&gt; Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:57
&gt; +ENABLE_CONTENT_FILTERING[sdk=iphonesimulator*] = ENABLE_CONTENT_FILTERING;

Looks like we usually just use the prefix, so these could be e.g. iphone* and only mentioned once (and the same above).

&gt; Source/WebCore/platform/PlatformContentFilter.h:63
&gt;      virtual String unblockRequestDeniedScript() const { return emptyString(); }

This seems related, too, no?

&gt; Source/WebCore/testing/MockContentFilter.h:49
&gt;      String unblockRequestDeniedScript() const override;

Ditto</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216536</commentid>
    <comment_count>4</comment_count>
      <attachid>285121</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 11:31:48 -0700</bug_when>
    <thetext>Comment on attachment 285121
Patch

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

&gt;&gt; Source/WebCore/platform/PlatformContentFilter.h:63
&gt;&gt;      virtual String unblockRequestDeniedScript() const { return emptyString(); }
&gt; 
&gt; This seems related, too, no?

It is relevant because ContentFilterUnblockHandler is only defined if ENABLED_CONTENT_FILTERING.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216549</commentid>
    <comment_count>5</comment_count>
      <attachid>285124</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 12:11:43 -0700</bug_when>
    <thetext>Created attachment 285124
Patch2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216552</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-02 12:13:00 -0700</bug_when>
    <thetext>Attachment 285124 did not pass style-queue:


ERROR: Source/WebKit/mac/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/JavaScriptCore/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/WebCore/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
ERROR: Source/WebKit2/Configurations/FeatureDefines.xcconfig:0:  Any changes made to FeatureDefines should be made to all of them (changed file does not match Tools/TestWebKitAPI/Configurations/FeatureDefines.xcconfig).  [featuredefines/equality] [5]
Total errors found: 4 in 18 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>1216637</commentid>
    <comment_count>7</comment_count>
      <attachid>285148</attachid>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 15:32:11 -0700</bug_when>
    <thetext>Created attachment 285148
Patch3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1216698</commentid>
    <comment_count>8</comment_count>
    <who name="Enrica Casucci">enrica</who>
    <bug_when>2016-08-02 17:03:00 -0700</bug_when>
    <thetext>Committed revision 204053</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285121</attachid>
            <date>2016-08-02 11:11:39 -0700</date>
            <delta_ts>2016-08-02 12:11:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>contentfiltering.txt</filename>
            <type>text/plain</type>
            <size>14760</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBA
CisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBkaXNhYmxlZC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDQ1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTYtMDgtMDIgIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBEaXNhYmxlIElubGluZSBD
YWNoaW5nIG9uIEFSTXY3IHRyYWRpdGlvbmFsIHVudGlsIHByb3BlciBmaXgKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5
KQpAQCAtNTEsNyArNTEsMTEgQEAgRU5BQkxFX0NBTlZBU19QQVRIID0gRU5BQkxFX0NBTlZBU19Q
QVRIOwogRU5BQkxFX0NBTlZBU19QUk9YWSA9IDsKIEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORyA9
IEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORzsKIEVOQUJMRV9FUzZfTU9EVUxFUyA9IDsKLUVOQUJM
RV9DT05URU5UX0ZJTFRFUklORyA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKK0VOQUJMRV9D
T05URU5UX0ZJTFRFUklOR1tzZGs9YXBwbGV0dm9zKl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxU
RVJJTkdbc2RrPWFwcGxldHZzaW11bGF0b3IqXSA9IDsKK0VOQUJMRV9DT05URU5UX0ZJTFRFUklO
R1tzZGs9aXBob25lb3MqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKK0VOQUJMRV9DT05U
RU5UX0ZJTFRFUklOR1tzZGs9aXBob25lc2ltdWxhdG9yKl0gPSBFTkFCTEVfQ09OVEVOVF9GSUxU
RVJJTkc7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPW1hY29zeCpdID0gRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HOwogRU5BQkxFX0NTUF9ORVhUID0gOwogRU5BQkxFX0NTU19BTklNQVRJ
T05TX0xFVkVMXzIgPSBFTkFCTEVfQ1NTX0FOSU1BVElPTlNfTEVWRUxfMjsKIEVOQUJMRV9DU1Nf
Qk9YX0RFQ09SQVRJT05fQlJFQUsgPSBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTYtMDgtMDIgIEVucmljYSBD
YXN1Y2NpICA8ZW5yaWNhQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyBidWlsZGluZyB3aXRo
IGNvbnRlbnQgZmlsdGVyaW5nIGRpc2FibGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYwNDU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZzoKKyAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybUNvbnRlbnRGaWx0ZXIuaDoKKyAgICAg
ICAgKFdlYkNvcmU6OlBsYXRmb3JtQ29udGVudEZpbHRlcjo6dW5ibG9ja1JlcXVlc3REZW5pZWRT
Y3JpcHQpOgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50
RmlsdGVyLmg6CisgICAgICAgICogcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRl
bnRGaWx0ZXIubW06CisgICAgICAgIChXZWJDb3JlOjpOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZp
bHRlcjo6dW5ibG9ja0hhbmRsZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2NvY29hL1BhcmVudGFs
Q29udHJvbHNDb250ZW50RmlsdGVyLmg6CisgICAgICAgICogdGVzdGluZy9Nb2NrQ29udGVudEZp
bHRlci5oOgorCiAyMDE2LTA4LTAyICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4K
IAogICAgICAgICBSZW1vdmUgQ2FjaGVkUmVzb3VyY2VSZXF1ZXN0IGluaXRpYXRpbmdEb2N1bWVu
dExvYWRlcgpJbmRleDogU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmlu
ZXMueGNjb25maWcKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJD
b3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCSh3b3JraW5nIGNvcHkp
CkBAIC01MSw3ICs1MSwxMSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BB
VEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0g
RU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxF
X0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2b3MqXSA9IDsKK0VOQUJMRV9DT05URU5UX0ZJTFRF
UklOR1tzZGs9YXBwbGV0dnNpbXVsYXRvcipdID0gOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5H
W3Nkaz1pcGhvbmVvcypdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HW3Nkaz1pcGhvbmVzaW11bGF0b3IqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRF
UklORzsKK0VOQUJMRV9DT05URU5UX0ZJTFRFUklOR1tzZGs9bWFjb3N4Kl0gPSBFTkFCTEVfQ09O
VEVOVF9GSUxURVJJTkc7CiBFTkFCTEVfQ1NQX05FWFQgPSA7CiBFTkFCTEVfQ1NTX0FOSU1BVElP
TlNfTEVWRUxfMiA9IEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yOwogRU5BQkxFX0NTU19C
T1hfREVDT1JBVElPTl9CUkVBSyA9IEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUs7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUNvbnRlbnRGaWx0ZXIuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUNvbnRlbnRGaWx0ZXIu
aAkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxhdGZvcm1D
b250ZW50RmlsdGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDcgKzU3LDkgQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgdm9pZCBhZGREYXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgpID0g
MDsKICAgICB2aXJ0dWFsIHZvaWQgZmluaXNoZWRBZGRpbmdEYXRhKCkgPSAwOwogICAgIHZpcnR1
YWwgUmVmPFNoYXJlZEJ1ZmZlcj4gcmVwbGFjZW1lbnREYXRhKCkgY29uc3QgPSAwOworI2lmIEVO
QUJMRShDT05URU5UX0ZJTFRFUklORykKICAgICB2aXJ0dWFsIENvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlciB1bmJsb2NrSGFuZGxlcigpIGNvbnN0ID0gMDsKKyNlbmRpZgogICAgIHZpcnR1YWwg
U3RyaW5nIHVuYmxvY2tSZXF1ZXN0RGVuaWVkU2NyaXB0KCkgY29uc3QgeyByZXR1cm4gZW1wdHlT
dHJpbmcoKTsgfQogCiBwcm90ZWN0ZWQ6CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9j
b2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgJ
KHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdv
cmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTUyLDcgKzUyLDkg
QEAgcHVibGljOgogICAgIHZvaWQgYWRkRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3Ro
KSBvdmVycmlkZTsKICAgICB2b2lkIGZpbmlzaGVkQWRkaW5nRGF0YSgpIG92ZXJyaWRlOwogICAg
IFJlZjxTaGFyZWRCdWZmZXI+IHJlcGxhY2VtZW50RGF0YSgpIGNvbnN0IG92ZXJyaWRlOworI2lm
IEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKICAgICBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRs
ZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25zdCBvdmVycmlkZTsKKyNlbmRpZgogCiBwcml2YXRlOgog
ICAgIHN0YXRpYyBib29sIGVuYWJsZWQoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVy
Lm1tCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9O
ZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5tbQkod29ya2luZyBjb3B5KQpAQCAtMTk2LDYg
KzE5Niw3IEBAIFJlZjxTaGFyZWRCdWZmZXI+IE5ldHdvcmtFeHRlbnNpb25Db250ZW4KICAgICBy
ZXR1cm4gU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKG1fcmVwbGFjZW1lbnREYXRhLmdldCgpKTsK
IH0KIAorI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKIENvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlciBOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcjo6dW5ibG9ja0hhbmRsZXIoKSBj
b25zdAogewogI2lmIEhBVkUoTU9ERVJOX05FX0ZJTFRFUl9TT1VSQ0UpCkBAIC0yMTQsNiArMjE1
LDcgQEAgQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIE5ldHdvcmtFeHRlbgogICAgIHJldHVy
biB7IH07CiAjZW5kaWYKIH0KKyNlbmRpZgogCiB2b2lkIE5ldHdvcmtFeHRlbnNpb25Db250ZW50
RmlsdGVyOjpoYW5kbGVEZWNpc2lvbihORUZpbHRlclNvdXJjZVN0YXR1cyBzdGF0dXMsIE5TRGF0
YSAqcmVwbGFjZW1lbnREYXRhKQogewpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlci5oCShy
ZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QYXJlbnRh
bENvbnRyb2xzQ29udGVudEZpbHRlci5oCSh3b3JraW5nIGNvcHkpCkBAIC00Niw4ICs0Niw5IEBA
IHB1YmxpYzoKICAgICB2b2lkIGFkZERhdGEoY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCkg
b3ZlcnJpZGU7CiAgICAgdm9pZCBmaW5pc2hlZEFkZGluZ0RhdGEoKSBvdmVycmlkZTsKICAgICBS
ZWY8U2hhcmVkQnVmZmVyPiByZXBsYWNlbWVudERhdGEoKSBjb25zdCBvdmVycmlkZTsKKyNpZiBF
TkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCiAgICAgQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVy
IHVuYmxvY2tIYW5kbGVyKCkgY29uc3Qgb3ZlcnJpZGU7Ci0KKyNlbmRpZgogcHJpdmF0ZToKICAg
ICBzdGF0aWMgYm9vbCBlbmFibGVkKCk7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLm1tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVy
Lm1tCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9Q
YXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlci5tbQkod29ya2luZyBjb3B5KQpAQCAtOTYsNiAr
OTYsNyBAQCBSZWY8U2hhcmVkQnVmZmVyPiBQYXJlbnRhbENvbnRyb2xzQ29udGVuCiAgICAgcmV0
dXJuIFNoYXJlZEJ1ZmZlcjo6d3JhcE5TRGF0YShtX3JlcGxhY2VtZW50RGF0YS5nZXQoKSk7CiB9
CiAKKyNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCiBDb250ZW50RmlsdGVyVW5ibG9ja0hh
bmRsZXIgUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXI6OnVuYmxvY2tIYW5kbGVyKCkgY29u
c3QKIHsKICNpZiBQTEFURk9STShJT1MpCkBAIC0xMDQsNiArMTA1LDcgQEAgQ29udGVudEZpbHRl
clVuYmxvY2tIYW5kbGVyIFBhcmVudGFsQ29udAogICAgIHJldHVybiB7IH07CiAjZW5kaWYKIH0K
KyNlbmRpZgogCiB2b2lkIFBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyOjp1cGRhdGVGaWx0
ZXJTdGF0ZSgpCiB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tDb250ZW50Rmls
dGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9Nb2NrQ29udGVudEZp
bHRlci5oCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tD
b250ZW50RmlsdGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQzLDcgKzQzLDkgQEAgcHVibGljOgog
ICAgIHZvaWQgYWRkRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsK
ICAgICB2b2lkIGZpbmlzaGVkQWRkaW5nRGF0YSgpIG92ZXJyaWRlOwogICAgIFJlZjxTaGFyZWRC
dWZmZXI+IHJlcGxhY2VtZW50RGF0YSgpIGNvbnN0IG92ZXJyaWRlOworI2lmIEVOQUJMRShDT05U
RU5UX0ZJTFRFUklORykKICAgICBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hh
bmRsZXIoKSBjb25zdCBvdmVycmlkZTsKKyNlbmRpZgogICAgIFN0cmluZyB1bmJsb2NrUmVxdWVz
dERlbmllZFNjcmlwdCgpIGNvbnN0IG92ZXJyaWRlOwogCiBwcml2YXRlOgpJbmRleDogU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxv
ZwkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTYtMDgtMDIgIEVucmljYSBDYXN1Y2NpICA8ZW5y
aWNhQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyBidWlsZGluZyB3aXRoIGNvbnRlbnQgZmls
dGVyaW5nIGRpc2FibGVkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTYwNDU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzoKKyAgICAg
ICAgKiBTaGFyZWQvbWFjL1dlYkNvcmVBcmd1bWVudENvZGVyc01hYy5tbToKKyAgICAgICAgKElQ
Qzo6QXJndW1lbnRDb2RlcjxLZXlwcmVzc0NvbW1hbmQ+OjpkZWNvZGUpOgorICAgICAgICAoSVBD
OjpBcmd1bWVudENvZGVyPENvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcj46OmVuY29kZSk6Cisg
ICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Q29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyPjo6
ZGVjb2RlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJFcnJv
cnNNYWMubW06CisgICAgICAgIChXZWJLaXQ6OmJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcik6
CisKIDIwMTYtMDgtMDIgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJlZmFjdG9yIGRhdGEgcGFzc2VkIGFsb25nIGZvciBhICJHZXRSZWNvcmQiIHJlcXVlc3Qu
CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJl
RGVmaW5lcy54Y2NvbmZpZwkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYktpdDIvQ29u
ZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcJKHdvcmtpbmcgY29weSkKQEAgLTUx
LDcgKzUxLDExIEBAIEVOQUJMRV9DQU5WQVNfUEFUSCA9IEVOQUJMRV9DQU5WQVNfUEFUSDsKIEVO
QUJMRV9DQU5WQVNfUFJPWFkgPSA7CiBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcgPSBFTkFCTEVf
Q0hBTk5FTF9NRVNTQUdJTkc7CiBFTkFCTEVfRVM2X01PRFVMRVMgPSA7Ci1FTkFCTEVfQ09OVEVO
VF9GSUxURVJJTkcgPSBFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkc7CitFTkFCTEVfQ09OVEVOVF9G
SUxURVJJTkdbc2RrPWFwcGxldHZvcypdID0gOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nk
az1hcHBsZXR2c2ltdWxhdG9yKl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWlw
aG9uZW9zKl0gPSBFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkc7CitFTkFCTEVfQ09OVEVOVF9GSUxU
RVJJTkdbc2RrPWlwaG9uZXNpbXVsYXRvcipdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOwor
RU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJ
TFRFUklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZF
TF8yID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNP
UkFUSU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNv
dXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFjLm1tCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJz
TWFjLm1tCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dl
YkNvcmVBcmd1bWVudENvZGVyc01hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDc1LDYgKzQ3NSw3
IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxLZXlwcmVzc0NvbW1hbmQ+OjpkZWMKICAgICByZXR1cm4g
dHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKIHZvaWQgQXJndW1lbnRD
b2RlcjxDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXI+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVy
JiBlbmNvZGVyLCBjb25zdCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXImIGNvbnRlbnRGaWx0
ZXJVbmJsb2NrSGFuZGxlcikKIHsKICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlRGF0YT4gZGF0YSA9
IGFkb3B0TlMoW1tOU011dGFibGVEYXRhIGFsbG9jXSBpbml0XSk7CkBAIC00OTksNiArNTAwLDcg
QEAgYm9vbCBBcmd1bWVudENvZGVyPENvbnRlbnRGaWx0ZXJVbmJsb2NrSAogICAgIFt1bmFyY2hp
dmVyIGZpbmlzaERlY29kaW5nXTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KKyNlbmRpZgogCiAjaWYg
RU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApJbmRleDogU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFjLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkVycm9y
c01hYy5tbQkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC04Miwx
MCArODIsMTIgQEAgUmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZQogICAg
IHJldHVybiBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVycm9yRG9tYWluKCksIGtX
S0Vycm9yQ29kZUZyYW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFuZ2UsIHJlcXVlc3QudXJs
KCksIFdFQl9VSV9TVFJJTkcoIkZyYW1lIGxvYWQgaW50ZXJydXB0ZWQiLCAiV2ViS2l0RXJyb3JG
cmFtZUxvYWRJbnRlcnJ1cHRlZEJ5UG9saWN5Q2hhbmdlIGRlc2NyaXB0aW9uIikpOwogfQogCisj
aWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogUmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250
ZW50RmlsdGVyRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIHJl
dHVybiBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVycm9yRG9tYWluKCksIGtXS0Vy
cm9yQ29kZUZyYW1lTG9hZEJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIsIHJlcXVlc3QudXJsKCksIFdF
Ql9VSV9TVFJJTkcoIlRoZSBVUkwgd2FzIGJsb2NrZWQgYnkgYSBjb250ZW50IGZpbHRlciIsICJX
ZWJLaXRFcnJvckJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIiKSk7CiB9CisjZW5kaWYKIAogUmVzb3Vy
Y2VFcnJvciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiBy
ZXNwb25zZSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwNDAyNikKKysrIFNv
dXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBA
CisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBkaXNhYmxlZC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDQ1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxv
YWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpibG9ja2VkQnlD
b250ZW50RmlsdGVyRXJyb3IpOgorCiAyMDE2LTA4LTAxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRl
cnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgQnJpbmcgYmFjayBhIGZpbGUgLSBpdCBuZWVkcyB0
byBiZSBjb3BpZWQgYnkgV2ViQ29yZS4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3Vy
YXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAy
MDQwMjYpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5l
cy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsMTEgQEAgRU5BQkxFX0NBTlZB
U19QQVRIID0gRU5BQkxFX0NBTlZBU19QQVRIOwogRU5BQkxFX0NBTlZBU19QUk9YWSA9IDsKIEVO
QUJMRV9DSEFOTkVMX01FU1NBR0lORyA9IEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORzsKIEVOQUJM
RV9FUzZfTU9EVUxFUyA9IDsKLUVOQUJMRV9DT05URU5UX0ZJTFRFUklORyA9IEVOQUJMRV9DT05U
RU5UX0ZJTFRFUklORzsKK0VOQUJMRV9DT05URU5UX0ZJTFRFUklOR1tzZGs9YXBwbGV0dm9zKl0g
PSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWFwcGxldHZzaW11bGF0b3IqXSA9IDsK
K0VOQUJMRV9DT05URU5UX0ZJTFRFUklOR1tzZGs9aXBob25lb3MqXSA9IEVOQUJMRV9DT05URU5U
X0ZJTFRFUklORzsKK0VOQUJMRV9DT05URU5UX0ZJTFRFUklOR1tzZGs9aXBob25lc2ltdWxhdG9y
Kl0gPSBFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkc7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdb
c2RrPW1hY29zeCpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOwogRU5BQkxFX0NTUF9ORVhU
ID0gOwogRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzIgPSBFTkFCTEVfQ1NTX0FOSU1BVElP
TlNfTEVWRUxfMjsKIEVOQUJMRV9DU1NfQk9YX0RFQ09SQVRJT05fQlJFQUsgPSBFTkFCTEVfQ1NT
X0JPWF9ERUNPUkFUSU9OX0JSRUFLOwpJbmRleDogU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCShyZXZpc2lvbiAyMDQw
MjYpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNs
aWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNjIsNyArMTYyLDkgQEAgcHJpdmF0ZToKICAgICBX
ZWJDb3JlOjpSZXNvdXJjZUVycm9yIGJsb2NrZWRCeUNvbnRlbnRCbG9ja2VyRXJyb3IoY29uc3Qg
V2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3Vy
Y2VFcnJvciBjYW5ub3RTaG93VVJMRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBv
bGljeUNoYW5nZUVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRl
OworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKICAgICBXZWJDb3JlOjpSZXNvdXJjZUVy
cm9yIGJsb2NrZWRCeUNvbnRlbnRGaWx0ZXJFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJl
cXVlc3QmKSBvdmVycmlkZTsKKyNlbmRpZgogCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBj
YW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlc3BvbnNlJikg
b3ZlcnJpZGU7CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBmaWxlRG9lc05vdEV4aXN0RXJy
b3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwpJbmRleDogU291
cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQubW0KPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQubW0JKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJLaXQvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xMTQ4
LDEwICsxMTQ4LDEyIEBAIFJlc291cmNlRXJyb3IgV2ViRnJhbWVMb2FkZXJDbGllbnQ6OmludGUK
ICAgICByZXR1cm4gW05TRXJyb3IgX3dlYktpdEVycm9yV2l0aERvbWFpbjpXZWJLaXRFcnJvckRv
bWFpbiBjb2RlOldlYktpdEVycm9yRnJhbWVMb2FkSW50ZXJydXB0ZWRCeVBvbGljeUNoYW5nZSBV
Ukw6cmVxdWVzdC51cmwoKV07CiB9CiAKKyNpZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCiBS
ZXNvdXJjZUVycm9yIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpibG9ja2VkQnlDb250ZW50RmlsdGVy
RXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIHJldHVybiBbTlNF
cnJvciBfd2ViS2l0RXJyb3JXaXRoRG9tYWluOldlYktpdEVycm9yRG9tYWluIGNvZGU6V2ViS2l0
RXJyb3JGcmFtZUxvYWRCbG9ja2VkQnlDb250ZW50RmlsdGVyIFVSTDpyZXF1ZXN0LnVybCgpXTsK
IH0KKyNlbmRpZgogCiBSZXNvdXJjZUVycm9yIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpjYW5ub3RT
aG93TUlNRVR5cGVFcnJvcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285124</attachid>
            <date>2016-08-02 12:11:43 -0700</date>
            <delta_ts>2016-08-02 15:32:11 -0700</delta_ts>
            <desc>Patch2</desc>
            <filename>contentfiltering.txt</filename>
            <type>text/plain</type>
            <size>14224</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBA
CisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBkaXNhYmxlZC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDQ1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTYtMDgtMDIgIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBEaXNhYmxlIElubGluZSBD
YWNoaW5nIG9uIEFSTXY3IHRyYWRpdGlvbmFsIHVudGlsIHByb3BlciBmaXgKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5
KQpAQCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BB
VEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0g
RU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxF
X0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJ
Tkdbc2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVO
QUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxF
X0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFL
ID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlz
aW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE5IEBACisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBk
aXNhYmxlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2MDQ1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogcGxh
dGZvcm0vUGxhdGZvcm1Db250ZW50RmlsdGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bUNvbnRlbnRGaWx0ZXI6OnVuYmxvY2tSZXF1ZXN0RGVuaWVkU2NyaXB0KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tOgorICAgICAg
ICAoV2ViQ29yZTo6TmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OnVuYmxvY2tIYW5kbGVy
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9QYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRl
ci5oOgorICAgICAgICAqIHRlc3RpbmcvTW9ja0NvbnRlbnRGaWx0ZXIuaDoKKwogMjAxNi0wOC0w
MiAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVtb3ZlIENh
Y2hlZFJlc291cmNlUmVxdWVzdCBpbml0aWF0aW5nRG9jdW1lbnRMb2FkZXIKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9G
ZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsOSBAQCBF
TkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7CiBFTkFCTEVfQ0FOVkFTX1BS
T1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0gRU5BQkxFX0NIQU5ORUxfTUVTU0FH
SU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HID0g
RU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1h
cHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWlwaG9uZSpdID0gRU5B
QkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1tYWNv
c3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsKIEVO
QUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVM
XzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hfREVD
T1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtQ29u
dGVudEZpbHRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRm
b3JtQ29udGVudEZpbHRlci5oCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9QbGF0Zm9ybUNvbnRlbnRGaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNTcsNyAr
NTcsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGFkZERhdGEoY29uc3QgY2hhciogZGF0
YSwgaW50IGxlbmd0aCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBmaW5pc2hlZEFkZGluZ0RhdGEo
KSA9IDA7CiAgICAgdmlydHVhbCBSZWY8U2hhcmVkQnVmZmVyPiByZXBsYWNlbWVudERhdGEoKSBj
b25zdCA9IDA7CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogICAgIHZpcnR1YWwgQ29u
dGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIHVuYmxvY2tIYW5kbGVyKCkgY29uc3QgPSAwOworI2Vu
ZGlmCiAgICAgdmlydHVhbCBTdHJpbmcgdW5ibG9ja1JlcXVlc3REZW5pZWRTY3JpcHQoKSBjb25z
dCB7IHJldHVybiBlbXB0eVN0cmluZygpOyB9CiAKIHByb3RlY3RlZDoKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lv
bkNvbnRlbnRGaWx0ZXIuaAkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaAkod29ya2luZyBjb3B5
KQpAQCAtNTIsNyArNTIsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGREYXRhKGNvbnN0IGNoYXIq
IGRhdGEsIGludCBsZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZmluaXNoZWRBZGRpbmdEYXRh
KCkgb3ZlcnJpZGU7CiAgICAgUmVmPFNoYXJlZEJ1ZmZlcj4gcmVwbGFjZW1lbnREYXRhKCkgY29u
c3Qgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogICAgIENvbnRlbnRG
aWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcigpIGNvbnN0IG92ZXJyaWRlOworI2Vu
ZGlmCiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGJvb2wgZW5hYmxlZCgpOwpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVu
c2lvbkNvbnRlbnRGaWx0ZXIubW0JKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC0xOTYsNiArMTk2LDcgQEAgUmVmPFNoYXJlZEJ1ZmZlcj4gTmV0d29ya0V4dGVu
c2lvbkNvbnRlbgogICAgIHJldHVybiBTaGFyZWRCdWZmZXI6OndyYXBOU0RhdGEobV9yZXBsYWNl
bWVudERhdGEuZ2V0KCkpOwogfQogCisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogQ29u
dGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIE5ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyOjp1
bmJsb2NrSGFuZGxlcigpIGNvbnN0CiB7CiAjaWYgSEFWRShNT0RFUk5fTkVfRklMVEVSX1NPVVJD
RSkKQEAgLTIxNCw2ICsyMTUsNyBAQCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgTmV0d29y
a0V4dGVuCiAgICAgcmV0dXJuIHsgfTsKICNlbmRpZgogfQorI2VuZGlmCiAKIHZvaWQgTmV0d29y
a0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OmhhbmRsZURlY2lzaW9uKE5FRmlsdGVyU291cmNlU3Rh
dHVzIHN0YXR1cywgTlNEYXRhICpyZXBsYWNlbWVudERhdGEpCiB7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9jb2NvYS9QYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHND
b250ZW50RmlsdGVyLmgJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLmgJKHdvcmtpbmcgY29weSkK
QEAgLTQ2LDggKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgYWRkRGF0YShjb25zdCBjaGFyKiBk
YXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGZpbmlzaGVkQWRkaW5nRGF0YSgp
IG92ZXJyaWRlOwogICAgIFJlZjxTaGFyZWRCdWZmZXI+IHJlcGxhY2VtZW50RGF0YSgpIGNvbnN0
IG92ZXJyaWRlOworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKICAgICBDb250ZW50Rmls
dGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25zdCBvdmVycmlkZTsKLQorI2Vu
ZGlmCiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIGVuYWJsZWQoKTsKIApJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIubW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGFyZW50YWxDb250
cm9sc0NvbnRlbnRGaWx0ZXIubW0JKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC05Niw2ICs5Niw3IEBAIFJlZjxTaGFyZWRCdWZmZXI+IFBhcmVudGFsQ29udHJv
bHNDb250ZW4KICAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjp3cmFwTlNEYXRhKG1fcmVwbGFjZW1l
bnREYXRhLmdldCgpKTsKIH0KIAorI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKIENvbnRl
bnRGaWx0ZXJVbmJsb2NrSGFuZGxlciBQYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlcjo6dW5i
bG9ja0hhbmRsZXIoKSBjb25zdAogewogI2lmIFBMQVRGT1JNKElPUykKQEAgLTEwNCw2ICsxMDUs
NyBAQCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgUGFyZW50YWxDb250CiAgICAgcmV0dXJu
IHsgfTsKICNlbmRpZgogfQorI2VuZGlmCiAKIHZvaWQgUGFyZW50YWxDb250cm9sc0NvbnRlbnRG
aWx0ZXI6OnVwZGF0ZUZpbHRlclN0YXRlKCkKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvTW9ja0NvbnRlbnRGaWx0ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL01vY2tDb250ZW50RmlsdGVyLmgJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvTW9ja0NvbnRlbnRGaWx0ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDMsNyAr
NDMsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGREYXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBs
ZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZmluaXNoZWRBZGRpbmdEYXRhKCkgb3ZlcnJpZGU7
CiAgICAgUmVmPFNoYXJlZEJ1ZmZlcj4gcmVwbGFjZW1lbnREYXRhKCkgY29uc3Qgb3ZlcnJpZGU7
CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogICAgIENvbnRlbnRGaWx0ZXJVbmJsb2Nr
SGFuZGxlciB1bmJsb2NrSGFuZGxlcigpIGNvbnN0IG92ZXJyaWRlOworI2VuZGlmCiAgICAgU3Ry
aW5nIHVuYmxvY2tSZXF1ZXN0RGVuaWVkU2NyaXB0KCkgY29uc3Qgb3ZlcnJpZGU7CiAKIHByaXZh
dGU6CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBAQAorMjAxNi0wOC0wMiAgRW5y
aWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IGJ1aWxkaW5n
IHdpdGggY29udGVudCBmaWx0ZXJpbmcgZGlzYWJsZWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA0NTQKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVz
LnhjY29uZmlnOgorICAgICAgICAqIFNoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFj
Lm1tOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEtleXByZXNzQ29tbWFuZD46OmRlY29k
ZSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Q29udGVudEZpbHRlclVuYmxvY2tIYW5k
bGVyPjo6ZW5jb2RlKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRDb2RlcjxDb250ZW50RmlsdGVy
VW5ibG9ja0hhbmRsZXI+OjpkZWNvZGUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvbWFjL1dlYkVycm9yc01hYy5tbToKKyAgICAgICAgKFdlYktpdDo6YmxvY2tlZEJ5Q29u
dGVudEZpbHRlckVycm9yKToKKwogMjAxNi0wOC0wMiAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBh
cHBsZS5jb20+CiAKICAgICAgICAgUmVmYWN0b3IgZGF0YSBwYXNzZWQgYWxvbmcgZm9yIGEgIkdl
dFJlY29yZCIgcmVxdWVzdC4KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAyMDQwMjYpCisrKyBT
b3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29y
a2luZyBjb3B5KQpAQCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVf
Q0FOVkFTX1BBVEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HID0gRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0g
OwotRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOwor
RU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVO
VF9GSUxURVJJTkdbc2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5B
QkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRF
UklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8y
ID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFU
SU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFjLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29kZXJzTWFj
Lm1tCShyZXZpc2lvbiAyMDQwMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvbWFjL1dlYkNv
cmVBcmd1bWVudENvZGVyc01hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtNDc1LDYgKzQ3NSw3IEBA
IGJvb2wgQXJndW1lbnRDb2RlcjxLZXlwcmVzc0NvbW1hbmQ+OjpkZWMKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAorI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykKIHZvaWQgQXJndW1lbnRDb2Rl
cjxDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXI+OjplbmNvZGUoQXJndW1lbnRFbmNvZGVyJiBl
bmNvZGVyLCBjb25zdCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXImIGNvbnRlbnRGaWx0ZXJV
bmJsb2NrSGFuZGxlcikKIHsKICAgICBSZXRhaW5QdHI8TlNNdXRhYmxlRGF0YT4gZGF0YSA9IGFk
b3B0TlMoW1tOU011dGFibGVEYXRhIGFsbG9jXSBpbml0XSk7CkBAIC00OTksNiArNTAwLDcgQEAg
Ym9vbCBBcmd1bWVudENvZGVyPENvbnRlbnRGaWx0ZXJVbmJsb2NrSAogICAgIFt1bmFyY2hpdmVy
IGZpbmlzaERlY29kaW5nXTsKICAgICByZXR1cm4gdHJ1ZTsKIH0KKyNlbmRpZgogCiAjaWYgRU5B
QkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApJbmRleDogU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFjLm1tCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkVycm9yc01h
Yy5tbQkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFjLm1tCSh3b3JraW5nIGNvcHkpCkBAIC04MiwxMCAr
ODIsMTIgQEAgUmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBvbGljeUNoYW5nZQogICAgIHJl
dHVybiBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVycm9yRG9tYWluKCksIGtXS0Vy
cm9yQ29kZUZyYW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFuZ2UsIHJlcXVlc3QudXJsKCks
IFdFQl9VSV9TVFJJTkcoIkZyYW1lIGxvYWQgaW50ZXJydXB0ZWQiLCAiV2ViS2l0RXJyb3JGcmFt
ZUxvYWRJbnRlcnJ1cHRlZEJ5UG9saWN5Q2hhbmdlIGRlc2NyaXB0aW9uIikpOwogfQogCisjaWYg
RU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogUmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50
RmlsdGVyRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1ZXN0KQogewogICAgIHJldHVy
biBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVycm9yRG9tYWluKCksIGtXS0Vycm9y
Q29kZUZyYW1lTG9hZEJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIsIHJlcXVlc3QudXJsKCksIFdFQl9V
SV9TVFJJTkcoIlRoZSBVUkwgd2FzIGJsb2NrZWQgYnkgYSBjb250ZW50IGZpbHRlciIsICJXZWJL
aXRFcnJvckJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIiKSk7CiB9CisjZW5kaWYKIAogUmVzb3VyY2VF
cnJvciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNw
b25zZSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwNDAyNikKKysrIFNvdXJj
ZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisy
MDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAgICAg
QWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBkaXNhYmxlZC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDQ1NAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViRnJh
bWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xpZW50OjpibG9ja2VkQnlDb250
ZW50RmlsdGVyRXJyb3IpOgorCiAyMDE2LTA4LTAxICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CiAKICAgICAgICAgQnJpbmcgYmFjayBhIGZpbGUgLSBpdCBuZWVkcyB0byBi
ZSBjb3BpZWQgYnkgV2ViQ29yZS4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQv
bWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAyMDQw
MjYpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54
Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BB
VEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HID0gRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VT
Nl9NT0RVTEVTID0gOwotRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRf
RklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitF
TkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklM
VEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9D
T05URU5UX0ZJTFRFUklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFU
SU9OU19MRVZFTF8yID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NT
X0JPWF9ERUNPUkFUSU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
RnJhbWVMb2FkZXJDbGllbnQuaAkocmV2aXNpb24gMjA0MDI2KQorKysgU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMTYyLDcgKzE2Miw5IEBAIHByaXZhdGU6CiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVz
dCYpIG92ZXJyaWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd1VSTEVy
cm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwogICAgIFdlYkNv
cmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lDaGFuZ2VFcnJvcihjb25zdCBX
ZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyNpZiBFTkFCTEUoQ09OVEVOVF9G
SUxURVJJTkcpCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50Rmls
dGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0Jikgb3ZlcnJpZGU7CisjZW5k
aWYKIAogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90U2hvd01JTUVUeXBlRXJyb3Io
Y29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJyaWRlOwogICAgIFdlYkNvcmU6
OlJlc291cmNlRXJyb3IgZmlsZURvZXNOb3RFeGlzdEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291
cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCShyZXZpc2lvbiAy
MDQwMjYpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRl
ckNsaWVudC5tbQkod29ya2luZyBjb3B5KQpAQCAtMTE0OCwxMCArMTE0OCwxMiBAQCBSZXNvdXJj
ZUVycm9yIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjppbnRlCiAgICAgcmV0dXJuIFtOU0Vycm9yIF93
ZWJLaXRFcnJvcldpdGhEb21haW46V2ViS2l0RXJyb3JEb21haW4gY29kZTpXZWJLaXRFcnJvckZy
YW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFuZ2UgVVJMOnJlcXVlc3QudXJsKCldOwogfQog
CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogUmVzb3VyY2VFcnJvciBXZWJGcmFtZUxv
YWRlckNsaWVudDo6YmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKGNvbnN0IFJlc291cmNlUmVx
dWVzdCYgcmVxdWVzdCkKIHsKICAgICByZXR1cm4gW05TRXJyb3IgX3dlYktpdEVycm9yV2l0aERv
bWFpbjpXZWJLaXRFcnJvckRvbWFpbiBjb2RlOldlYktpdEVycm9yRnJhbWVMb2FkQmxvY2tlZEJ5
Q29udGVudEZpbHRlciBVUkw6cmVxdWVzdC51cmwoKV07CiB9CisjZW5kaWYKIAogUmVzb3VyY2VF
cnJvciBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2Fubm90U2hvd01JTUVUeXBlRXJyb3IoY29uc3Qg
UmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>285148</attachid>
            <date>2016-08-02 15:32:11 -0700</date>
            <delta_ts>2016-08-02 16:18:02 -0700</delta_ts>
            <desc>Patch3</desc>
            <filename>contentfiltering.txt</filename>
            <type>text/plain</type>
            <size>15648</size>
            <attacher name="Enrica Casucci">enrica</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjA0MDQzKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBA
CisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBkaXNhYmxlZC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2MDQ1NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTYtMDgtMDIgIENzYWJhIE9zenRyb2dv
bsOhYyAgPG9zc3lAd2Via2l0Lm9yZz4KIAogICAgICAgICBbQVJNXSBEaXNhYmxlIElubGluZSBD
YWNoaW5nIG9uIEFSTXY3IHRyYWRpdGlvbmFsIHVudGlsIHByb3BlciBmaXgKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ29uZmlndXJhdGlvbnMvRmVhdHVy
ZURlZmluZXMueGNjb25maWcJKHJldmlzaW9uIDIwNDA0MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5
KQpAQCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BB
VEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0g
RU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxF
X0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJ
Tkdbc2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVO
QUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxF
X0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFL
ID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlz
aW9uIDIwNDA0MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE5IEBACisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBk
aXNhYmxlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2MDQ1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogcGxh
dGZvcm0vUGxhdGZvcm1Db250ZW50RmlsdGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpQbGF0Zm9y
bUNvbnRlbnRGaWx0ZXI6OnVuYmxvY2tSZXF1ZXN0RGVuaWVkU2NyaXB0KToKKyAgICAgICAgKiBw
bGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlci5oOgorICAgICAgICAq
IHBsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50RmlsdGVyLm1tOgorICAgICAg
ICAoV2ViQ29yZTo6TmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OnVuYmxvY2tIYW5kbGVy
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9jb2NvYS9QYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRl
ci5oOgorICAgICAgICAqIHRlc3RpbmcvTW9ja0NvbnRlbnRGaWx0ZXIuaDoKKwogMjAxNi0wOC0w
MiAgQ2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFtXZWJJRExdIEV4
dGVuZCBuZXcgb3ZlcmxvYWQgcmVzb2x1dGlvbiBhbGdvcml0aG0gc3VwcG9ydCB0byBjb25zdHJ1
Y3RvcnMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVz
LnhjY29uZmlnCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0Zl
YXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZpc2lvbiAyMDQwNDMpCisrKyBTb3VyY2UvV2ViQ29y
ZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpA
QCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7
CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0gRU5B
QkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdb
c2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRf
RklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVOQUJM
RV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxFX0NT
U19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLID0g
RU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1BsYXRmb3JtQ29udGVudEZpbHRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL1BsYXRmb3JtQ29udGVudEZpbHRlci5oCShyZXZpc2lvbiAyMDQwNDMpCisr
KyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9QbGF0Zm9ybUNvbnRlbnRGaWx0ZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNTcsNyArNTcsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIGFkZERh
dGEoY29uc3QgY2hhciogZGF0YSwgaW50IGxlbmd0aCkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBm
aW5pc2hlZEFkZGluZ0RhdGEoKSA9IDA7CiAgICAgdmlydHVhbCBSZWY8U2hhcmVkQnVmZmVyPiBy
ZXBsYWNlbWVudERhdGEoKSBjb25zdCA9IDA7CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5H
KQogICAgIHZpcnR1YWwgQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIHVuYmxvY2tIYW5kbGVy
KCkgY29uc3QgPSAwOworI2VuZGlmCiAgICAgdmlydHVhbCBTdHJpbmcgdW5ibG9ja1JlcXVlc3RE
ZW5pZWRTY3JpcHQoKSBjb25zdCB7IHJldHVybiBlbXB0eVN0cmluZygpOyB9CiAKIHByb3RlY3Rl
ZDoKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25D
b250ZW50RmlsdGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29j
b2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaAkocmV2aXNpb24gMjA0MDQzKQorKysg
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0
ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNTIsNyArNTIsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBh
ZGREYXRhKGNvbnN0IGNoYXIqIGRhdGEsIGludCBsZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQg
ZmluaXNoZWRBZGRpbmdEYXRhKCkgb3ZlcnJpZGU7CiAgICAgUmVmPFNoYXJlZEJ1ZmZlcj4gcmVw
bGFjZW1lbnREYXRhKCkgY29uc3Qgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVS
SU5HKQogICAgIENvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcigpIGNv
bnN0IG92ZXJyaWRlOworI2VuZGlmCiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGJvb2wgZW5hYmxl
ZCgpOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lv
bkNvbnRlbnRGaWx0ZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIubW0JKHJldmlzaW9uIDIwNDA0MykK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25Db250ZW50
RmlsdGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0xOTYsNiArMTk2LDcgQEAgUmVmPFNoYXJlZEJ1
ZmZlcj4gTmV0d29ya0V4dGVuc2lvbkNvbnRlbgogICAgIHJldHVybiBTaGFyZWRCdWZmZXI6Ondy
YXBOU0RhdGEobV9yZXBsYWNlbWVudERhdGEuZ2V0KCkpOwogfQogCisjaWYgRU5BQkxFKENPTlRF
TlRfRklMVEVSSU5HKQogQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIE5ldHdvcmtFeHRlbnNp
b25Db250ZW50RmlsdGVyOjp1bmJsb2NrSGFuZGxlcigpIGNvbnN0CiB7CiAjaWYgSEFWRShNT0RF
Uk5fTkVfRklMVEVSX1NPVVJDRSkKQEAgLTIxNCw2ICsyMTUsNyBAQCBDb250ZW50RmlsdGVyVW5i
bG9ja0hhbmRsZXIgTmV0d29ya0V4dGVuCiAgICAgcmV0dXJuIHsgfTsKICNlbmRpZgogfQorI2Vu
ZGlmCiAKIHZvaWQgTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXI6OmhhbmRsZURlY2lzaW9u
KE5FRmlsdGVyU291cmNlU3RhdHVzIHN0YXR1cywgTlNEYXRhICpyZXBsYWNlbWVudERhdGEpCiB7
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9QYXJlbnRhbENvbnRyb2xzQ29u
dGVudEZpbHRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29h
L1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLmgJKHJldmlzaW9uIDIwNDA0MykKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVy
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDggKzQ2LDkgQEAgcHVibGljOgogICAgIHZvaWQgYWRk
RGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKICAgICB2b2lkIGZp
bmlzaGVkQWRkaW5nRGF0YSgpIG92ZXJyaWRlOwogICAgIFJlZjxTaGFyZWRCdWZmZXI+IHJlcGxh
Y2VtZW50RGF0YSgpIGNvbnN0IG92ZXJyaWRlOworI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklO
RykKICAgICBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25z
dCBvdmVycmlkZTsKLQorI2VuZGlmCiBwcml2YXRlOgogICAgIHN0YXRpYyBib29sIGVuYWJsZWQo
KTsKIApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvUGFyZW50YWxDb250cm9s
c0NvbnRlbnRGaWx0ZXIubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Y29jb2EvUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIubW0JKHJldmlzaW9uIDIwNDA0MykK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL1BhcmVudGFsQ29udHJvbHNDb250ZW50
RmlsdGVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05Niw2ICs5Niw3IEBAIFJlZjxTaGFyZWRCdWZm
ZXI+IFBhcmVudGFsQ29udHJvbHNDb250ZW4KICAgICByZXR1cm4gU2hhcmVkQnVmZmVyOjp3cmFw
TlNEYXRhKG1fcmVwbGFjZW1lbnREYXRhLmdldCgpKTsKIH0KIAorI2lmIEVOQUJMRShDT05URU5U
X0ZJTFRFUklORykKIENvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlciBQYXJlbnRhbENvbnRyb2xz
Q29udGVudEZpbHRlcjo6dW5ibG9ja0hhbmRsZXIoKSBjb25zdAogewogI2lmIFBMQVRGT1JNKElP
UykKQEAgLTEwNCw2ICsxMDUsNyBAQCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgUGFyZW50
YWxDb250CiAgICAgcmV0dXJuIHsgfTsKICNlbmRpZgogfQorI2VuZGlmCiAKIHZvaWQgUGFyZW50
YWxDb250cm9sc0NvbnRlbnRGaWx0ZXI6OnVwZGF0ZUZpbHRlclN0YXRlKCkKIHsKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja0NvbnRlbnRGaWx0ZXIuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL01vY2tDb250ZW50RmlsdGVyLmgJKHJldmlzaW9uIDIwNDA0
MykKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvTW9ja0NvbnRlbnRGaWx0ZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNDMsNyArNDMsOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBhZGREYXRhKGNvbnN0
IGNoYXIqIGRhdGEsIGludCBsZW5ndGgpIG92ZXJyaWRlOwogICAgIHZvaWQgZmluaXNoZWRBZGRp
bmdEYXRhKCkgb3ZlcnJpZGU7CiAgICAgUmVmPFNoYXJlZEJ1ZmZlcj4gcmVwbGFjZW1lbnREYXRh
KCkgY29uc3Qgb3ZlcnJpZGU7CisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogICAgIENv
bnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlciB1bmJsb2NrSGFuZGxlcigpIGNvbnN0IG92ZXJyaWRl
OworI2VuZGlmCiAgICAgU3RyaW5nIHVuYmxvY2tSZXF1ZXN0RGVuaWVkU2NyaXB0KCkgY29uc3Qg
b3ZlcnJpZGU7CiAKIHByaXZhdGU6CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMDQwNDMpCisr
KyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOCBA
QAorMjAxNi0wOC0wMiAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgorCisgICAg
ICAgIEFsbG93IGJ1aWxkaW5nIHdpdGggY29udGVudCBmaWx0ZXJpbmcgZGlzYWJsZWQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA0NTQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRp
b25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnOgorICAgICAgICAqIFNoYXJlZC9tYWMvV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzTWFjLm1tOgorICAgICAgICAoSVBDOjpBcmd1bWVudENvZGVyPEtleXBy
ZXNzQ29tbWFuZD46OmRlY29kZSk6CisgICAgICAgIChJUEM6OkFyZ3VtZW50Q29kZXI8Q29udGVu
dEZpbHRlclVuYmxvY2tIYW5kbGVyPjo6ZW5jb2RlKToKKyAgICAgICAgKElQQzo6QXJndW1lbnRD
b2RlcjxDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXI+OjpkZWNvZGUpOgorICAgICAgICAqIFdl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYkVycm9yc01hYy5tbToKKyAgICAgICAgKFdl
YktpdDo6YmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9yKToKKwogMjAxNi0wOC0wMiAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmVmYWN0b3IgZGF0YSBwYXNz
ZWQgYWxvbmcgZm9yIGEgIkdldFJlY29yZCIgcmVxdWVzdC4KSW5kZXg6IFNvdXJjZS9XZWJLaXQy
L0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCShyZXZp
c2lvbiAyMDQwNDMpCisrKyBTb3VyY2UvV2ViS2l0Mi9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FO
VkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7CiBFTkFCTEVfQ0FOVkFTX1BST1hZID0gOwog
RU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0gRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HOwogRU5B
QkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HID0gRU5BQkxFX0NP
TlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0g
PSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWlwaG9uZSpdID0gRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVO
QUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsKIEVOQUJMRV9DU1Nf
QU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xFVkVMXzI7CiBFTkFC
TEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9C
UkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29yZUFyZ3VtZW50Q29k
ZXJzTWFjLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9tYWMvV2ViQ29y
ZUFyZ3VtZW50Q29kZXJzTWFjLm1tCShyZXZpc2lvbiAyMDQwNDMpCisrKyBTb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvbWFjL1dlYkNvcmVBcmd1bWVudENvZGVyc01hYy5tbQkod29ya2luZyBjb3B5KQpA
QCAtNDc1LDYgKzQ3NSw3IEBAIGJvb2wgQXJndW1lbnRDb2RlcjxLZXlwcmVzc0NvbW1hbmQ+Ojpk
ZWMKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAorI2lmIEVOQUJMRShDT05URU5UX0ZJTFRFUklORykK
IHZvaWQgQXJndW1lbnRDb2RlcjxDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXI+OjplbmNvZGUo
QXJndW1lbnRFbmNvZGVyJiBlbmNvZGVyLCBjb25zdCBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRs
ZXImIGNvbnRlbnRGaWx0ZXJVbmJsb2NrSGFuZGxlcikKIHsKICAgICBSZXRhaW5QdHI8TlNNdXRh
YmxlRGF0YT4gZGF0YSA9IGFkb3B0TlMoW1tOU011dGFibGVEYXRhIGFsbG9jXSBpbml0XSk7CkBA
IC00OTksNiArNTAwLDcgQEAgYm9vbCBBcmd1bWVudENvZGVyPENvbnRlbnRGaWx0ZXJVbmJsb2Nr
SAogICAgIFt1bmFyY2hpdmVyIGZpbmlzaERlY29kaW5nXTsKICAgICByZXR1cm4gdHJ1ZTsKIH0K
KyNlbmRpZgogCiAjaWYgRU5BQkxFKFdJUkVMRVNTX1BMQVlCQUNLX1RBUkdFVCkKIApJbmRleDog
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFj
Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvbWFjL1dlYkVycm9yc01hYy5tbQkocmV2aXNpb24gMjA0MDQzKQorKysgU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViRXJyb3JzTWFjLm1tCSh3b3JraW5n
IGNvcHkpCkBAIC04MiwxMCArODIsMTIgQEAgUmVzb3VyY2VFcnJvciBpbnRlcnJ1cHRlZEZvclBv
bGljeUNoYW5nZQogICAgIHJldHVybiBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVy
cm9yRG9tYWluKCksIGtXS0Vycm9yQ29kZUZyYW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFu
Z2UsIHJlcXVlc3QudXJsKCksIFdFQl9VSV9TVFJJTkcoIkZyYW1lIGxvYWQgaW50ZXJydXB0ZWQi
LCAiV2ViS2l0RXJyb3JGcmFtZUxvYWRJbnRlcnJ1cHRlZEJ5UG9saWN5Q2hhbmdlIGRlc2NyaXB0
aW9uIikpOwogfQogCisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogUmVzb3VyY2VFcnJv
ciBibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXF1
ZXN0KQogewogICAgIHJldHVybiBSZXNvdXJjZUVycm9yKEFQSTo6RXJyb3I6OndlYktpdEVycm9y
RG9tYWluKCksIGtXS0Vycm9yQ29kZUZyYW1lTG9hZEJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIsIHJl
cXVlc3QudXJsKCksIFdFQl9VSV9TVFJJTkcoIlRoZSBVUkwgd2FzIGJsb2NrZWQgYnkgYSBjb250
ZW50IGZpbHRlciIsICJXZWJLaXRFcnJvckJsb2NrZWRCeUNvbnRlbnRGaWx0ZXIiKSk7CiB9Cisj
ZW5kaWYKIAogUmVzb3VyY2VFcnJvciBjYW5ub3RTaG93TUlNRVR5cGVFcnJvcihjb25zdCBSZXNv
dXJjZVJlc3BvbnNlJiByZXNwb25zZSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5n
ZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cJKHJldmlzaW9u
IDIwNDA0MykKKysrIFNvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE1IEBACisyMDE2LTA4LTAyICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBs
ZS5jb20+CisKKyAgICAgICAgQWxsb3cgYnVpbGRpbmcgd2l0aCBjb250ZW50IGZpbHRlcmluZyBk
aXNhYmxlZC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE2MDQ1NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisgICAgICAgICogV2Vi
Q29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaDoKKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbToKKyAgICAgICAgKFdlYkZyYW1lTG9hZGVyQ2xp
ZW50OjpibG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IpOgorCiAyMDE2LTA4LTAxICBBbmRlcnMg
Q2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgQnJpbmcgYmFjayBhIGZp
bGUgLSBpdCBuZWVkcyB0byBiZSBjb3BpZWQgYnkgV2ViQ29yZS4KSW5kZXg6IFNvdXJjZS9XZWJL
aXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCShyZXZpc2lvbiAyMDQwNDMpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAtNTEsNyArNTEsOSBA
QCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7CiBFTkFCTEVfQ0FOVkFT
X1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0gRU5BQkxFX0NIQU5ORUxfTUVT
U0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5H
ID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nk
az1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2RrPWlwaG9uZSpdID0g
RU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HW3Nkaz1t
YWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVOQUJMRV9DU1BfTkVYVCA9IDsK
IEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxFX0NTU19BTklNQVRJT05TX0xF
VkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLID0gRU5BQkxFX0NTU19CT1hf
REVDT1JBVElPTl9CUkVBSzsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9tYWMv
V2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQuaAkocmV2aXNpb24gMjA0MDQzKQor
KysgU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2FkZXJDbGllbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMTYyLDcgKzE2Miw5IEBAIHByaXZhdGU6CiAgICAgV2ViQ29y
ZTo6UmVzb3VyY2VFcnJvciBibG9ja2VkQnlDb250ZW50QmxvY2tlckVycm9yKGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYpIG92ZXJyaWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJy
b3IgY2Fubm90U2hvd1VSTEVycm9yKGNvbnN0IFdlYkNvcmU6OlJlc291cmNlUmVxdWVzdCYpIG92
ZXJyaWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgaW50ZXJydXB0ZWRGb3JQb2xpY3lD
aGFuZ2VFcnJvcihjb25zdCBXZWJDb3JlOjpSZXNvdXJjZVJlcXVlc3QmKSBvdmVycmlkZTsKKyNp
ZiBFTkFCTEUoQ09OVEVOVF9GSUxURVJJTkcpCiAgICAgV2ViQ29yZTo6UmVzb3VyY2VFcnJvciBi
bG9ja2VkQnlDb250ZW50RmlsdGVyRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXF1ZXN0
Jikgb3ZlcnJpZGU7CisjZW5kaWYKIAogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgY2Fubm90
U2hvd01JTUVUeXBlRXJyb3IoY29uc3QgV2ViQ29yZTo6UmVzb3VyY2VSZXNwb25zZSYpIG92ZXJy
aWRlOwogICAgIFdlYkNvcmU6OlJlc291cmNlRXJyb3IgZmlsZURvZXNOb3RFeGlzdEVycm9yKGNv
bnN0IFdlYkNvcmU6OlJlc291cmNlUmVzcG9uc2UmKSBvdmVycmlkZTsKSW5kZXg6IFNvdXJjZS9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50Lm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xp
ZW50Lm1tCShyZXZpc2lvbiAyMDQwNDMpCisrKyBTb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3Vw
cG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5tbQkod29ya2luZyBjb3B5KQpAQCAtMTE0OCwxMCAr
MTE0OCwxMiBAQCBSZXNvdXJjZUVycm9yIFdlYkZyYW1lTG9hZGVyQ2xpZW50OjppbnRlCiAgICAg
cmV0dXJuIFtOU0Vycm9yIF93ZWJLaXRFcnJvcldpdGhEb21haW46V2ViS2l0RXJyb3JEb21haW4g
Y29kZTpXZWJLaXRFcnJvckZyYW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFuZ2UgVVJMOnJl
cXVlc3QudXJsKCldOwogfQogCisjaWYgRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQogUmVzb3Vy
Y2VFcnJvciBXZWJGcmFtZUxvYWRlckNsaWVudDo6YmxvY2tlZEJ5Q29udGVudEZpbHRlckVycm9y
KGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCkKIHsKICAgICByZXR1cm4gW05TRXJyb3Ig
X3dlYktpdEVycm9yV2l0aERvbWFpbjpXZWJLaXRFcnJvckRvbWFpbiBjb2RlOldlYktpdEVycm9y
RnJhbWVMb2FkQmxvY2tlZEJ5Q29udGVudEZpbHRlciBVUkw6cmVxdWVzdC51cmwoKV07CiB9Cisj
ZW5kaWYKIAogUmVzb3VyY2VFcnJvciBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y2Fubm90U2hvd01J
TUVUeXBlRXJyb3IoY29uc3QgUmVzb3VyY2VSZXNwb25zZSYgcmVzcG9uc2UpCiB7CkluZGV4OiBU
b29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAy
MDQwNDYpCisrKyBUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMiBA
QAorMjAxNi0wOC0wMiAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgorCisgICAg
ICAgIEFsbG93IGJ1aWxkaW5nIHdpdGggY29udGVudCBmaWx0ZXJpbmcgZGlzYWJsZWQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjA0NTQKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRB
UEkvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWc6CisKIDIwMTYtMDgtMDIg
IEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJlbW92aW5nIElu
ZGV4ZWREQiBXZWJzaXRlRGF0YSBjYW4gZmFpbCBmb3Igc29tZSB1c2Vycy4KSW5kZXg6IFRvb2xz
L1Rlc3RXZWJLaXRBUEkvQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZwkocmV2aXNpb24gMjA0MDQzKQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9D
b25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZwkod29ya2luZyBjb3B5KQpAQCAt
NTEsNyArNTEsOSBAQCBFTkFCTEVfQ0FOVkFTX1BBVEggPSBFTkFCTEVfQ0FOVkFTX1BBVEg7CiBF
TkFCTEVfQ0FOVkFTX1BST1hZID0gOwogRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HID0gRU5BQkxF
X0NIQU5ORUxfTUVTU0FHSU5HOwogRU5BQkxFX0VTNl9NT0RVTEVTID0gOwotRU5BQkxFX0NPTlRF
TlRfRklMVEVSSU5HID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRf
RklMVEVSSU5HW3Nkaz1hcHBsZXR2Kl0gPSA7CitFTkFCTEVfQ09OVEVOVF9GSUxURVJJTkdbc2Rr
PWlwaG9uZSpdID0gRU5BQkxFX0NPTlRFTlRfRklMVEVSSU5HOworRU5BQkxFX0NPTlRFTlRfRklM
VEVSSU5HW3Nkaz1tYWNvc3gqXSA9IEVOQUJMRV9DT05URU5UX0ZJTFRFUklORzsKIEVOQUJMRV9D
U1BfTkVYVCA9IDsKIEVOQUJMRV9DU1NfQU5JTUFUSU9OU19MRVZFTF8yID0gRU5BQkxFX0NTU19B
TklNQVRJT05TX0xFVkVMXzI7CiBFTkFCTEVfQ1NTX0JPWF9ERUNPUkFUSU9OX0JSRUFLID0gRU5B
QkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSzsK
</data>
<flag name="review"
          id="308785"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>