<?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>142313</bug_id>
          
          <creation_ts>2015-03-04 15:45:23 -0800</creation_ts>
          <short_desc>[Content Filtering] Rename ContentFilterMac.mm to ContentFilter.cpp</short_desc>
          <delta_ts>2015-03-04 15:52:54 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>128858</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Andy Estes">aestes</reporter>
          <assigned_to name="Andy Estes">aestes</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1074265</commentid>
    <comment_count>0</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2015-03-04 15:45:23 -0800</bug_when>
    <thetext>[Content Filtering] Rename ContentFilterMac.mm to ContentFilter.cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074268</commentid>
    <comment_count>1</comment_count>
      <attachid>247904</attachid>
    <who name="Andy Estes">aestes</who>
    <bug_when>2015-03-04 15:47:59 -0800</bug_when>
    <thetext>Created attachment 247904
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1074271</commentid>
    <comment_count>2</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2015-03-04 15:52:54 -0800</bug_when>
    <thetext>Committed r181044: &lt;http://trac.webkit.org/changeset/181044&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>247904</attachid>
            <date>2015-03-04 15:47:59 -0800</date>
            <delta_ts>2015-03-04 15:50:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-142313-20150304154740.patch</filename>
            <type>text/plain</type>
            <size>20159</size>
            <attacher name="Andy Estes">aestes</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgxMDM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTAxMDc4NDUyNGZjZTk0
ZTU1YWQ4YTM1N2Y1OTA0OWQ5MTg0YTBiNi4uMTY4YzFiYWExOWNhODJhYWJiMmY5Y2UxM2M0ZDZl
YWUzYjdmZWVhYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDE1LTAzLTA0ICBBbmR5
IEVzdGVzICA8YWVzdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbQ29udGVudCBGaWx0ZXJpbmdd
IFJlbmFtZSBDb250ZW50RmlsdGVyTWFjLm1tIHRvIENvbnRlbnRGaWx0ZXIuY3BwCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDIzMTMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDb250ZW50RmlsdGVyTWFj
Lm1tIG5vIGxvbmdlciBjb250YWlucyBhbnkgT2JqZWN0aXZlLUMgY29kZSwgc28gcmVuYW1lIGl0
IHRvIENvbnRlbnRGaWx0ZXIuY3BwLiBJdCBpcyBhbHNvIG5vIGxvbmdlciBNYWMtc3BlY2lmaWMs
IHNvIG1vdmUgaXQgdXAgdG8gcGxhdGZvcm0vLgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIHBsYXRmb3JtL0NvbnRlbnRGaWx0ZXIuY3Bw
OiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRlbnRGaWx0ZXJN
YWMubW0uCisgICAgICAgICogcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaDogUmVwbGFjZWQgTlNJbnRlZ2VyIHdpdGggbG9uZy4KKwogMjAxNS0wMy0wMyAgQW5k
eSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgW0NvbnRlbnQgRmlsdGVyaW5n
XSBNYWtlIGl0IGVhc2llciB0byBhZGQgbmV3IGNvbnRlbnQgZmlsdGVycwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDczMDE5ODJh
YzE3YThkYWNlZGQyM2E4OTM5ZjYzMDg4YTBiODQ5MGQuLjNhNTAwZTVjMzJiZmNjODZlZjI3NmVh
NzAzYWY0ZWMxOGMyYWI3NTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEwNDksNyArMTA0OSw2IEBACiAJCTI5MTdCNTYzMTQ3
MzQ5NkMwMDUyQzlEMCAvKiBMYXllckZsdXNoU2NoZWR1bGVyQ2xpZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyOTE3QjU2MDE0NzM0OTZDMDA1MkM5
RDAgLyogTGF5ZXJGbHVzaFNjaGVkdWxlckNsaWVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTI5MTdCNTY2MTQ3MzQ5OTUwMDUyQzlEMCAvKiBM
YXllckZsdXNoU2NoZWR1bGVyTWFjLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDI5MTdCNTY1MTQ3MzQ5OTUwMDUyQzlEMCAvKiBMYXllckZsdXNoU2No
ZWR1bGVyTWFjLmNwcCAqLzsgfTsKIAkJMjkxOUExRTkxNkIzMzc2NjAwNzg3MjEzIC8qIENvbnRl
bnRGaWx0ZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDI5MTlBMUU4MTZCMzM3NjYwMDc4NzIxMyAvKiBDb250ZW50RmlsdGVyLmggKi87IH07Ci0JCTI5
MTlBMUVCMTZCMzM3ODkwMDc4NzIxMyAvKiBDb250ZW50RmlsdGVyTWFjLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMjkxOUExRUExNkIzMzc4OTAwNzg3
MjEzIC8qIENvbnRlbnRGaWx0ZXJNYWMubW0gKi87IH07CiAJCTI5MzQ5NDBBMTZDMDJDMDcwMDkw
MTMxOCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNlLmNwcCBpbiBTb3VyY2VzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI1MjdDQzkzMTZCRjkyRUMwMDlEREFDMCAv
KiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1ZvaWNlLmNwcCAqLzsgfTsKIAkJMjkzNDk0MEIxNkMw
MkMwQTAwOTAxMzE4IC8qIFBsYXRmb3JtU3BlZWNoU3ludGhlc2lzVXR0ZXJhbmNlLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI1MjdDQzk1MTZCRjk1
REQwMDlEREFDMCAvKiBQbGF0Zm9ybVNwZWVjaFN5bnRoZXNpc1V0dGVyYW5jZS5jcHAgKi87IH07
CiAJCTI5M0VBRTFGMTM1NkIyRkUwMDY3QUNGOSAvKiBSdW50aW1lQXBwbGljYXRpb25DaGVja3Mu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDI5M0VBRTFF
MTM1NkIyRkUwMDY3QUNGOSAvKiBSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMzgwMiw2ICszODAxLDcg
QEAKIAkJQTE0ODMyQ0QxODdGNjgyRTAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTYWZlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBMTQ4MzI5RjE4N0Y1
MDg3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZFNhZmUuaCAqLzsgfTsKIAkJQTE0ODMyQ0UxODdG
NjgzNDAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQTAxODdGNTA4NzAw
REE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuY3BwICovOyB9OwogCQlBMTQ4
MzJDRjE4N0Y2ODQ3MDBEQTYzQTYgLyogV2ViQ29yZVRocmVhZFN5c3RlbUludGVyZmFjZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE0ODMyQTExODdG
NTA4NzAwREE2M0E2IC8qIFdlYkNvcmVUaHJlYWRTeXN0ZW1JbnRlcmZhY2UuaCAqLzsgc2V0dGlu
Z3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQlBMTVEMzI5RDFBQTdDRjNC
MDA5QTIzNEEgLyogQ29udGVudEZpbHRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBBMTVEMzI5QzFBQTdDRjNCMDA5QTIzNEEgLyogQ29udGVudEZp
bHRlci5jcHAgKi87IH07CiAJCUExN0M4MTIyMEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVu
dEZhY3RvcnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gQTE3QzgxMjAwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVtZW50RmFjdG9yeS5jcHAgKi87
IH07CiAJCUExN0M4MTIzMEYyQTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZhY3RvcnkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEExN0M4MTIxMEYy
QTVDRjcwMDVEQUFFQiAvKiBIVE1MRWxlbWVudEZhY3RvcnkuaCAqLzsgfTsKIAkJQTE4ODkwQUUx
QUExM0YyNTAwMjZDMzAxIC8qIFBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTE4ODkwQUMxQUExM0Yy
NTAwMjZDMzAxIC8qIFBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLm1tICovOyB9OwpAQCAt
ODEwNCw3ICs4MTA0LDYgQEAKIAkJMjkxN0I1NjAxNDczNDk2QzAwNTJDOUQwIC8qIExheWVyRmx1
c2hTY2hlZHVsZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gTGF5
ZXJGbHVzaFNjaGVkdWxlckNsaWVudC5oOyBwYXRoID0gY2EvTGF5ZXJGbHVzaFNjaGVkdWxlckNs
aWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyOTE3QjU2NTE0NzM0OTk1MDA1
MkM5RDAgLyogTGF5ZXJGbHVzaFNjaGVkdWxlck1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IG5hbWUgPSBMYXllckZsdXNoU2NoZWR1bGVyTWFjLmNwcDsgcGF0aCA9IGNhL21h
Yy9MYXllckZsdXNoU2NoZWR1bGVyTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMjkxOUExRTgxNkIzMzc2NjAwNzg3MjEzIC8qIENvbnRlbnRGaWx0ZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ29udGVudEZpbHRlci5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwotCQkyOTE5QTFFQTE2QjMzNzg5MDA3ODcyMTMgLyogQ29udGVudEZpbHRlck1h
Yy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IENvbnRlbnRGaWx0
ZXJNYWMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTI5M0VBRTFFMTM1NkIyRkUw
MDY3QUNGOSAvKiBSdW50aW1lQXBwbGljYXRpb25DaGVja3MuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gUnVudGltZUFwcGxpY2F0aW9uQ2hlY2tzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTI5M0VBRTIwMTM1NkIzMkUwMDY3QUNGOSAvKiBSdW50aW1lQXBwbGlj
YXRpb25DaGVja3MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUnVu
dGltZUFwcGxpY2F0aW9uQ2hlY2tzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
Mjk0ODlGQzUxMkMwMEYwMzAwRDgzRjBGIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMTAzNSw2ICsxMTAzNCw3IEBACiAJCUEx
NDgzMkE5MTg3RjUwODcwMERBNjNBNiAvKiBXS1ZpZXcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gV0tWaWV3Lmg7IHBhdGggPSBpb3Mvd2FrL1dLVmlldy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQlBMTQ4MzJBQTE4N0Y1MDg3MDBEQTYzQTYgLyogV0tWaWV3Lm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gV0tWaWV3Lm1tOyBwYXRo
ID0gaW9zL3dhay9XS1ZpZXcubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUExNDgz
MkFCMTg3RjUwODcwMERBNjNBNiAvKiBXS1ZpZXdQcml2YXRlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgbmFtZSA9IFdLVmlld1ByaXZhdGUuaDsgcGF0aCA9IGlvcy93YWsvV0tWaWV3UHJp
dmF0ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBMTVEMzI5QzFBQTdDRjNCMDA5
QTIzNEEgLyogQ29udGVudEZpbHRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDb250ZW50RmlsdGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QTE3QzgxMjAwRjJBNUNGNzAwNURBQUVCIC8qIEhUTUxFbGVtZW50RmFjdG9yeS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBIVE1MRWxlbWVudEZhY3RvcnkuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTdDODEyMTBGMkE1Q0Y3MDA1REFBRUIgLyog
SFRNTEVsZW1lbnRGYWN0b3J5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEhU
TUxFbGVtZW50RmFjdG9yeS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBMTg4OTBB
QzFBQTEzRjI1MDAyNkMzMDEgLyogUGFyZW50YWxDb250cm9sc0NvbnRlbnRGaWx0ZXIubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBQYXJlbnRhbENvbnRyb2xzQ29u
dGVudEZpbHRlci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2NTg1LDcgKzE2
NTg1LDYgQEAKIAkJCQlGNDc4NzU1MzE5OTgzQUZGMDAyNEEyODcgLyogQXhpc1Njcm9sbFNuYXBB
bmltYXRvci5tbSAqLywKIAkJCQk2NUE2NDBGMDA1MzNCQjFGMDA4NUU3NzcgLyogQmxvY2tFeGNl
cHRpb25zLmggKi8sCiAJCQkJNjVGODA2OTcwNTREOUY4NjAwOEJGNzc2IC8qIEJsb2NrRXhjZXB0
aW9ucy5tbSAqLywKLQkJCQkyOTE5QTFFQTE2QjMzNzg5MDA3ODcyMTMgLyogQ29udGVudEZpbHRl
ck1hYy5tbSAqLywKIAkJCQkwNjAyN0NCMjBCMUNDMDNEMDA4ODRCMkQgLyogQ29udGV4dE1lbnVJ
dGVtTWFjLm1tICovLAogCQkJCTkzQjZBMEU5MEIwQkNBODQwMEY1MDI3QSAvKiBDb250ZXh0TWVu
dU1hYy5tbSAqLywKIAkJCQlGNTg3ODRGMDAyREUzNzU5MDFFQTQxMjIgLyogQ3Vyc29yTWFjLm1t
ICovLApAQCAtMjE1MTEsNiArMjE1MTAsNyBAQAogCQkJCUMzMzBBMjIxMTNFQzE5NkIwMDAwQjQ1
QiAvKiBDb2xvckNob29zZXIuaCAqLywKIAkJCQlDMzdDREVCQzE0OUVGMjAzMDA0MjA5MEQgLyog
Q29sb3JDaG9vc2VyQ2xpZW50LmggKi8sCiAJCQkJQkNDOENGQ0EwOTg2Q0QyNDAwMTQwQkYyIC8q
IENvbG9yRGF0YS5ncGVyZiAqLywKKwkJCQlBMTVEMzI5QzFBQTdDRjNCMDA5QTIzNEEgLyogQ29u
dGVudEZpbHRlci5jcHAgKi8sCiAJCQkJMjkxOUExRTgxNkIzMzc2NjAwNzg3MjEzIC8qIENvbnRl
bnRGaWx0ZXIuaCAqLywKIAkJCQlBMTQwOTBGQzFBQTUxRTQ4MDA5MTE5MUEgLyogQ29udGVudEZp
bHRlclVuYmxvY2tIYW5kbGVyLmggKi8sCiAJCQkJNDFEMDE1QzkwRjRCNUM3MTAwNEE2NjJGIC8q
IENvbnRlbnRUeXBlLmNwcCAqLywKQEAgLTI3NDk0LDcgKzI3NDk0LDYgQEAKIAkJCQlBN0E3OENE
NTE1MzJCQTYyMDA2QzIxRTQgLyogQ29udGFpbmVyTm9kZUFsZ29yaXRobXMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJQkM1RUI5ODAwRTgyMDcyNTAwQjI1OTY1IC8qIENvbnRlbnREYXRhLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTU3Qjc5MUEzMTRDNkE2MjkwMEYyMDJEMSAvKiBDb250ZW50RGlz
dHJpYnV0b3IuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMjkxOUExRUIxNkIzMzc4OTAwNzg3MjEz
IC8qIENvbnRlbnRGaWx0ZXJNYWMubW0gaW4gU291cmNlcyAqLywKIAkJCQk5N0M0NzFEQjEyRjky
NUJEMDA4NjM1NEIgLyogQ29udGVudFNlY3VyaXR5UG9saWN5LmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTQxRDAxNUNCMEY0QjVDNzEwMDRBNjYyRiAvKiBDb250ZW50VHlwZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk5NzYyN0I4RDE0RkIzQ0VFMDAyQ0RDQTEgLyogQ29udGV4dERlc3RydWN0aW9u
T2JzZXJ2ZXIuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yOTEwMyw2ICsyOTEwMiw3IEBACiAJCQkJ
Q0RCODU5RjcxNjBENDhBNDAwRTVCMDdGIC8qIE1lZGlhS2V5RXZlbnQuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQ0RBOThERDgxNjAyNUJFRjAwRkVBM0IxIC8qIE1lZGlhS2V5TWVzc2FnZUV2ZW50
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEMUI0QTY1MTYwNzg2QUUwMDI4MkRGOSAvKiBNZWRp
YUtleU5lZWRlZEV2ZW50LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCUExNUQzMjlEMUFBN0NGM0Iw
MDlBMjM0QSAvKiBDb250ZW50RmlsdGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTZDNTY4Q0Iw
MTlEQUZFQTAwMDQzMENBMiAvKiBNYXNrSW1hZ2VPcGVyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQ0RBOThFMEQxNjAzRkU0QTAwRkVBM0IxIC8qIE1lZGlhS2V5cy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk3QzkzRjM0RDFBQTZCRjA3MDBBOThCQUIgLyogQ29udGVudEV4dGVuc2lvbkNv
bXBpbGVyLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vQ29udGVudEZpbHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZW50
RmlsdGVyLmNwcApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jOTU4NTZmYzc3YjVjZTRkZTQ0YTdlMTQ3YThhNGNiZjE5
MTVjNTI4Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ29udGVu
dEZpbHRlci5jcHAKQEAgLTAsMCArMSwxNjQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMg
QXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBt
YXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09G
VFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFT
IElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVU
T1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBT
UEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT
CisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YK
KyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29u
ZmlnLmgiCisjaW5jbHVkZSAiQ29udGVudEZpbHRlci5oIgorCisjaWYgRU5BQkxFKENPTlRFTlRf
RklMVEVSSU5HKQorCisjaW5jbHVkZSAiTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaCIK
KyNpbmNsdWRlICJQYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlci5oIgorI2luY2x1ZGUgPHd0
Zi9OZXZlckRlc3Ryb3llZC5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitzdHJ1Y3QgQ29udGVudEZpbHRlclR5cGUgeworICAgIGNvbnN0IHN0ZDo6
ZnVuY3Rpb248Ym9vbChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik+IGNhbkhhbmRsZVJlc3BvbnNl
OworICAgIGNvbnN0IHN0ZDo6ZnVuY3Rpb248c3RkOjp1bmlxdWVfcHRyPENvbnRlbnRGaWx0ZXI+
KGNvbnN0IFJlc291cmNlUmVzcG9uc2UmKT4gY3JlYXRlOworfTsKKwordGVtcGxhdGUgPHR5cGVu
YW1lIFQ+CitzdGF0aWMgaW5saW5lIENvbnRlbnRGaWx0ZXJUeXBlIGNvbnRlbnRGaWx0ZXJUeXBl
KCkKK3sKKyAgICByZXR1cm4geyBUOjpjYW5IYW5kbGVSZXNwb25zZSwgVDo6Y3JlYXRlIH07Cit9
CisKK3N0YXRpYyBjb25zdCBWZWN0b3I8Q29udGVudEZpbHRlclR5cGU+JiBjb250ZW50RmlsdGVy
VHlwZXMoKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxWZWN0b3I8Q29udGVudEZpbHRl
clR5cGU+PiB0eXBlcygKKyAgICAgICAgVmVjdG9yPENvbnRlbnRGaWx0ZXJUeXBlPih7CisgICAg
ICAgICAgICBjb250ZW50RmlsdGVyVHlwZTxQYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlcj4o
KSwKKyNpZiBIQVZFKE5FX0ZJTFRFUl9TT1VSQ0UpCisgICAgICAgICAgICBjb250ZW50RmlsdGVy
VHlwZTxOZXR3b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcj4oKQorI2VuZGlmCisgICAgICAgIH0p
CisgICAgKTsKKyAgICByZXR1cm4gdHlwZXM7Cit9CisKK2NsYXNzIENvbnRlbnRGaWx0ZXJDb2xs
ZWN0aW9uIGZpbmFsIDogcHVibGljIENvbnRlbnRGaWx0ZXIgeworcHVibGljOgorICAgIHVzaW5n
IENvbnRhaW5lciA9IFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8Q29udGVudEZpbHRlcj4+OworCisg
ICAgZXhwbGljaXQgQ29udGVudEZpbHRlckNvbGxlY3Rpb24oQ29udGFpbmVyKTsKKworICAgIHZv
aWQgYWRkRGF0YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKKyAgICB2
b2lkIGZpbmlzaGVkQWRkaW5nRGF0YSgpIG92ZXJyaWRlOworICAgIGJvb2wgbmVlZHNNb3JlRGF0
YSgpIGNvbnN0IG92ZXJyaWRlOworICAgIGJvb2wgZGlkQmxvY2tEYXRhKCkgY29uc3Qgb3ZlcnJp
ZGU7CisgICAgY29uc3QgY2hhciogZ2V0UmVwbGFjZW1lbnREYXRhKGludCYgbGVuZ3RoKSBjb25z
dCBvdmVycmlkZTsKKyAgICBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRs
ZXIoKSBjb25zdCBvdmVycmlkZTsKKworcHJpdmF0ZToKKyAgICBDb250YWluZXIgbV9jb250ZW50
RmlsdGVyczsKK307CisKK3N0ZDo6dW5pcXVlX3B0cjxDb250ZW50RmlsdGVyPiBDb250ZW50Rmls
dGVyOjpjcmVhdGVJZk5lZWRlZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKK3sK
KyAgICBDb250ZW50RmlsdGVyQ29sbGVjdGlvbjo6Q29udGFpbmVyIGZpbHRlcnM7CisgICAgZm9y
IChhdXRvJiB0eXBlIDogY29udGVudEZpbHRlclR5cGVzKCkpIHsKKyAgICAgICAgaWYgKHR5cGUu
Y2FuSGFuZGxlUmVzcG9uc2UocmVzcG9uc2UpKQorICAgICAgICAgICAgZmlsdGVycy5hcHBlbmQo
dHlwZS5jcmVhdGUocmVzcG9uc2UpKTsKKyAgICB9CisKKyAgICBpZiAoZmlsdGVycy5pc0VtcHR5
KCkpCisgICAgICAgIHJldHVybiBudWxscHRyOworCisgICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlx
dWU8Q29udGVudEZpbHRlckNvbGxlY3Rpb24+KFdURjo6bW92ZShmaWx0ZXJzKSk7Cit9CisKK0Nv
bnRlbnRGaWx0ZXJDb2xsZWN0aW9uOjpDb250ZW50RmlsdGVyQ29sbGVjdGlvbihDb250YWluZXIg
Y29udGVudEZpbHRlcnMpCisgICAgOiBtX2NvbnRlbnRGaWx0ZXJzIHsgV1RGOjptb3ZlKGNvbnRl
bnRGaWx0ZXJzKSB9Cit7CisgICAgQVNTRVJUKCFtX2NvbnRlbnRGaWx0ZXJzLmlzRW1wdHkoKSk7
Cit9CisKK3ZvaWQgQ29udGVudEZpbHRlckNvbGxlY3Rpb246OmFkZERhdGEoY29uc3QgY2hhciog
ZGF0YSwgaW50IGxlbmd0aCkKK3sKKyAgICBBU1NFUlQobmVlZHNNb3JlRGF0YSgpKTsKKworICAg
IGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpCisgICAgICAgIGNv
bnRlbnRGaWx0ZXItPmFkZERhdGEoZGF0YSwgbGVuZ3RoKTsKK30KKyAgICAKK3ZvaWQgQ29udGVu
dEZpbHRlckNvbGxlY3Rpb246OmZpbmlzaGVkQWRkaW5nRGF0YSgpCit7CisgICAgQVNTRVJUKG5l
ZWRzTW9yZURhdGEoKSk7CisKKyAgICBmb3IgKGF1dG8mIGNvbnRlbnRGaWx0ZXIgOiBtX2NvbnRl
bnRGaWx0ZXJzKQorICAgICAgICBjb250ZW50RmlsdGVyLT5maW5pc2hlZEFkZGluZ0RhdGEoKTsK
KworICAgIEFTU0VSVCghbmVlZHNNb3JlRGF0YSgpKTsKK30KKworYm9vbCBDb250ZW50RmlsdGVy
Q29sbGVjdGlvbjo6bmVlZHNNb3JlRGF0YSgpIGNvbnN0Cit7CisgICAgZm9yIChhdXRvJiBjb250
ZW50RmlsdGVyIDogbV9jb250ZW50RmlsdGVycykgeworICAgICAgICBpZiAoY29udGVudEZpbHRl
ci0+bmVlZHNNb3JlRGF0YSgpKQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisg
ICAgcmV0dXJuIGZhbHNlOworfQorCitib29sIENvbnRlbnRGaWx0ZXJDb2xsZWN0aW9uOjpkaWRC
bG9ja0RhdGEoKSBjb25zdAoreworICAgIGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29u
dGVudEZpbHRlcnMpIHsKKyAgICAgICAgaWYgKGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgp
KQorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfQorCisgICAgcmV0dXJuIGZhbHNlOwor
fQorCitjb25zdCBjaGFyKiBDb250ZW50RmlsdGVyQ29sbGVjdGlvbjo6Z2V0UmVwbGFjZW1lbnRE
YXRhKGludCYgbGVuZ3RoKSBjb25zdAoreworICAgIEFTU0VSVCghbmVlZHNNb3JlRGF0YSgpKTsK
KworICAgIGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpIHsKKyAg
ICAgICAgaWYgKGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgpKQorICAgICAgICAgICAgcmV0
dXJuIGNvbnRlbnRGaWx0ZXItPmdldFJlcGxhY2VtZW50RGF0YShsZW5ndGgpOworICAgIH0KKwor
ICAgIHJldHVybiBtX2NvbnRlbnRGaWx0ZXJzWzBdLT5nZXRSZXBsYWNlbWVudERhdGEobGVuZ3Ro
KTsKK30KKworQ29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIENvbnRlbnRGaWx0ZXJDb2xsZWN0
aW9uOjp1bmJsb2NrSGFuZGxlcigpIGNvbnN0Cit7CisgICAgQVNTRVJUKGRpZEJsb2NrRGF0YSgp
KTsKKworICAgIGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpIHsK
KyAgICAgICAgaWYgKGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgpKQorICAgICAgICAgICAg
cmV0dXJuIGNvbnRlbnRGaWx0ZXItPnVuYmxvY2tIYW5kbGVyKCk7CisgICAgfQorCisgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CisgICAgcmV0dXJuIHsgfTsKK30KKworfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQorCisjZW5kaWYgLy8gRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NvY29hL05ldHdvcmtFeHRlbnNpb25D
b250ZW50RmlsdGVyLmgKaW5kZXggNjliYmE5ZTFhMDA2ZDYyZjFjZTFkY2M5NTcyODQ4MDAxYjFi
YzI4MS4uZjE5Y2MxMTZiMzljOTE4ZDk4NmE0NDMxZmVmMDg2YTQ5NTkyZWRhNSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY29jb2EvTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRG
aWx0ZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jb2NvYS9OZXR3b3JrRXh0ZW5z
aW9uQ29udGVudEZpbHRlci5oCkBAIC01MSw3ICs1MSw3IEBAIHB1YmxpYzoKICAgICBDb250ZW50
RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25zdCBvdmVycmlkZTsKIAog
cHJpdmF0ZToKLSAgICBOU0ludGVnZXIgbV9uZUZpbHRlclNvdXJjZVN0YXR1czsKKyAgICBsb25n
IG1fbmVGaWx0ZXJTb3VyY2VTdGF0dXM7CiAgICAgUmV0YWluUHRyPE5FRmlsdGVyU291cmNlPiBt
X25lRmlsdGVyU291cmNlOwogICAgIGRpc3BhdGNoX3F1ZXVlX3QgbV9uZUZpbHRlclNvdXJjZVF1
ZXVlOwogICAgIFJldGFpblB0cjxOU011dGFibGVEYXRhPiBtX29yaWdpbmFsRGF0YTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZW50RmlsdGVyTWFjLm1tIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRlbnRGaWx0ZXJNYWMubW0KZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDhmMDllNTBjZDlhMTJjMzU3MDZjNTIzZDg2MGM1NDgwNGI3
NGEyM2IuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRlbnRGaWx0ZXJNYWMubW0KKysrIC9kZXYvbnVs
bApAQCAtMSwxNjYgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLS8vIEZJWE1FOiBSZW5hbWUgdG8gQ29u
dGVudEZpbHRlci5jcHAgYW5kIG1vdmUgdG8gcGxhdGZvcm0vLgotCi0jaW1wb3J0ICJjb25maWcu
aCIKLSNpbXBvcnQgIkNvbnRlbnRGaWx0ZXIuaCIKLQotI2lmIEVOQUJMRShDT05URU5UX0ZJTFRF
UklORykKLQotI2ltcG9ydCAiTmV0d29ya0V4dGVuc2lvbkNvbnRlbnRGaWx0ZXIuaCIKLSNpbXBv
cnQgIlBhcmVudGFsQ29udHJvbHNDb250ZW50RmlsdGVyLmgiCi0jaW1wb3J0IDx3dGYvTmV2ZXJE
ZXN0cm95ZWQuaD4KLSNpbXBvcnQgPHd0Zi9WZWN0b3IuaD4KLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1zdHJ1Y3QgQ29udGVudEZpbHRlclR5cGUgewotICAgIGNvbnN0IHN0ZDo6ZnVuY3Rpb248
Ym9vbChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJik+IGNhbkhhbmRsZVJlc3BvbnNlOwotICAgIGNv
bnN0IHN0ZDo6ZnVuY3Rpb248c3RkOjp1bmlxdWVfcHRyPENvbnRlbnRGaWx0ZXI+KGNvbnN0IFJl
c291cmNlUmVzcG9uc2UmKT4gY3JlYXRlOwotfTsKLQotdGVtcGxhdGUgPHR5cGVuYW1lIFQ+Ci1z
dGF0aWMgaW5saW5lIENvbnRlbnRGaWx0ZXJUeXBlIGNvbnRlbnRGaWx0ZXJUeXBlKCkKLXsKLSAg
ICByZXR1cm4geyBUOjpjYW5IYW5kbGVSZXNwb25zZSwgVDo6Y3JlYXRlIH07Ci19Ci0KLXN0YXRp
YyBjb25zdCBWZWN0b3I8Q29udGVudEZpbHRlclR5cGU+JiBjb250ZW50RmlsdGVyVHlwZXMoKQot
ewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxWZWN0b3I8Q29udGVudEZpbHRlclR5cGU+PiB0
eXBlcygKLSAgICAgICAgVmVjdG9yPENvbnRlbnRGaWx0ZXJUeXBlPih7Ci0gICAgICAgICAgICBj
b250ZW50RmlsdGVyVHlwZTxQYXJlbnRhbENvbnRyb2xzQ29udGVudEZpbHRlcj4oKSwKLSNpZiBI
QVZFKE5FX0ZJTFRFUl9TT1VSQ0UpCi0gICAgICAgICAgICBjb250ZW50RmlsdGVyVHlwZTxOZXR3
b3JrRXh0ZW5zaW9uQ29udGVudEZpbHRlcj4oKQotI2VuZGlmCi0gICAgICAgIH0pCi0gICAgKTsK
LSAgICByZXR1cm4gdHlwZXM7Ci19Ci0KLWNsYXNzIENvbnRlbnRGaWx0ZXJDb2xsZWN0aW9uIGZp
bmFsIDogcHVibGljIENvbnRlbnRGaWx0ZXIgewotcHVibGljOgotICAgIHVzaW5nIENvbnRhaW5l
ciA9IFZlY3RvcjxzdGQ6OnVuaXF1ZV9wdHI8Q29udGVudEZpbHRlcj4+OwotCi0gICAgZXhwbGlj
aXQgQ29udGVudEZpbHRlckNvbGxlY3Rpb24oQ29udGFpbmVyKTsKLQotICAgIHZvaWQgYWRkRGF0
YShjb25zdCBjaGFyKiBkYXRhLCBpbnQgbGVuZ3RoKSBvdmVycmlkZTsKLSAgICB2b2lkIGZpbmlz
aGVkQWRkaW5nRGF0YSgpIG92ZXJyaWRlOwotICAgIGJvb2wgbmVlZHNNb3JlRGF0YSgpIGNvbnN0
IG92ZXJyaWRlOwotICAgIGJvb2wgZGlkQmxvY2tEYXRhKCkgY29uc3Qgb3ZlcnJpZGU7Ci0gICAg
Y29uc3QgY2hhciogZ2V0UmVwbGFjZW1lbnREYXRhKGludCYgbGVuZ3RoKSBjb25zdCBvdmVycmlk
ZTsKLSAgICBDb250ZW50RmlsdGVyVW5ibG9ja0hhbmRsZXIgdW5ibG9ja0hhbmRsZXIoKSBjb25z
dCBvdmVycmlkZTsKLQotcHJpdmF0ZToKLSAgICBDb250YWluZXIgbV9jb250ZW50RmlsdGVyczsK
LX07Ci0KLXN0ZDo6dW5pcXVlX3B0cjxDb250ZW50RmlsdGVyPiBDb250ZW50RmlsdGVyOjpjcmVh
dGVJZk5lZWRlZChjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25zZSkKLXsKLSAgICBDb250
ZW50RmlsdGVyQ29sbGVjdGlvbjo6Q29udGFpbmVyIGZpbHRlcnM7Ci0gICAgZm9yIChhdXRvJiB0
eXBlIDogY29udGVudEZpbHRlclR5cGVzKCkpIHsKLSAgICAgICAgaWYgKHR5cGUuY2FuSGFuZGxl
UmVzcG9uc2UocmVzcG9uc2UpKQotICAgICAgICAgICAgZmlsdGVycy5hcHBlbmQodHlwZS5jcmVh
dGUocmVzcG9uc2UpKTsKLSAgICB9Ci0KLSAgICBpZiAoZmlsdGVycy5pc0VtcHR5KCkpCi0gICAg
ICAgIHJldHVybiBudWxscHRyOwotCi0gICAgcmV0dXJuIHN0ZDo6bWFrZV91bmlxdWU8Q29udGVu
dEZpbHRlckNvbGxlY3Rpb24+KFdURjo6bW92ZShmaWx0ZXJzKSk7Ci19Ci0KLUNvbnRlbnRGaWx0
ZXJDb2xsZWN0aW9uOjpDb250ZW50RmlsdGVyQ29sbGVjdGlvbihDb250YWluZXIgY29udGVudEZp
bHRlcnMpCi0gICAgOiBtX2NvbnRlbnRGaWx0ZXJzIHsgV1RGOjptb3ZlKGNvbnRlbnRGaWx0ZXJz
KSB9Ci17Ci0gICAgQVNTRVJUKCFtX2NvbnRlbnRGaWx0ZXJzLmlzRW1wdHkoKSk7Ci19Ci0KLXZv
aWQgQ29udGVudEZpbHRlckNvbGxlY3Rpb246OmFkZERhdGEoY29uc3QgY2hhciogZGF0YSwgaW50
IGxlbmd0aCkKLXsKLSAgICBBU1NFUlQobmVlZHNNb3JlRGF0YSgpKTsKLQotICAgIGZvciAoYXV0
byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpCi0gICAgICAgIGNvbnRlbnRGaWx0
ZXItPmFkZERhdGEoZGF0YSwgbGVuZ3RoKTsKLX0KLSAgICAKLXZvaWQgQ29udGVudEZpbHRlckNv
bGxlY3Rpb246OmZpbmlzaGVkQWRkaW5nRGF0YSgpCi17Ci0gICAgQVNTRVJUKG5lZWRzTW9yZURh
dGEoKSk7Ci0KLSAgICBmb3IgKGF1dG8mIGNvbnRlbnRGaWx0ZXIgOiBtX2NvbnRlbnRGaWx0ZXJz
KQotICAgICAgICBjb250ZW50RmlsdGVyLT5maW5pc2hlZEFkZGluZ0RhdGEoKTsKLQotICAgIEFT
U0VSVCghbmVlZHNNb3JlRGF0YSgpKTsKLX0KLQotYm9vbCBDb250ZW50RmlsdGVyQ29sbGVjdGlv
bjo6bmVlZHNNb3JlRGF0YSgpIGNvbnN0Ci17Ci0gICAgZm9yIChhdXRvJiBjb250ZW50RmlsdGVy
IDogbV9jb250ZW50RmlsdGVycykgewotICAgICAgICBpZiAoY29udGVudEZpbHRlci0+bmVlZHNN
b3JlRGF0YSgpKQotICAgICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0gICAgcmV0dXJu
IGZhbHNlOwotfQotCi1ib29sIENvbnRlbnRGaWx0ZXJDb2xsZWN0aW9uOjpkaWRCbG9ja0RhdGEo
KSBjb25zdAotewotICAgIGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRl
cnMpIHsKLSAgICAgICAgaWYgKGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgpKQotICAgICAg
ICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfQotCi0gICAgcmV0dXJuIGZhbHNlOwotfQotCi1jb25z
dCBjaGFyKiBDb250ZW50RmlsdGVyQ29sbGVjdGlvbjo6Z2V0UmVwbGFjZW1lbnREYXRhKGludCYg
bGVuZ3RoKSBjb25zdAotewotICAgIEFTU0VSVCghbmVlZHNNb3JlRGF0YSgpKTsKLQotICAgIGZv
ciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpIHsKLSAgICAgICAgaWYg
KGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgpKQotICAgICAgICAgICAgcmV0dXJuIGNvbnRl
bnRGaWx0ZXItPmdldFJlcGxhY2VtZW50RGF0YShsZW5ndGgpOwotICAgIH0KLQotICAgIHJldHVy
biBtX2NvbnRlbnRGaWx0ZXJzWzBdLT5nZXRSZXBsYWNlbWVudERhdGEobGVuZ3RoKTsKLX0KLQot
Q29udGVudEZpbHRlclVuYmxvY2tIYW5kbGVyIENvbnRlbnRGaWx0ZXJDb2xsZWN0aW9uOjp1bmJs
b2NrSGFuZGxlcigpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGRpZEJsb2NrRGF0YSgpKTsKLQotICAg
IGZvciAoYXV0byYgY29udGVudEZpbHRlciA6IG1fY29udGVudEZpbHRlcnMpIHsKLSAgICAgICAg
aWYgKGNvbnRlbnRGaWx0ZXItPmRpZEJsb2NrRGF0YSgpKQotICAgICAgICAgICAgcmV0dXJuIGNv
bnRlbnRGaWx0ZXItPnVuYmxvY2tIYW5kbGVyKCk7Ci0gICAgfQotCi0gICAgQVNTRVJUX05PVF9S
RUFDSEVEKCk7Ci0gICAgcmV0dXJuIHsgfTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQot
Ci0jZW5kaWYgLy8gRU5BQkxFKENPTlRFTlRfRklMVEVSSU5HKQo=
</data>
<flag name="review"
          id="272825"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>