<?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>165996</bug_id>
          
          <creation_ts>2016-12-17 08:15:48 -0800</creation_ts>
          <short_desc>Remove Dictionary.h/cpp</short_desc>
          <delta_ts>2016-12-17 10:06:42 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>165988</dup_id>
          
          <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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1260926</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-12-17 08:15:48 -0800</bug_when>
    <thetext>Remove Dictionary.h/cpp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1260927</commentid>
    <comment_count>1</comment_count>
      <attachid>297407</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-12-17 08:16:54 -0800</bug_when>
    <thetext>Created attachment 297407
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1260938</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2016-12-17 10:06:30 -0800</bug_when>
    <thetext>Looks like Darin already did this :).

*** This bug has been marked as a duplicate of bug 165988 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>297407</attachid>
            <date>2016-12-17 08:16:54 -0800</date>
            <delta_ts>2016-12-17 10:06:42 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-165996-20161217081559.patch</filename>
            <type>text/plain</type>
            <size>19225</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwOTk2MSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDE2LTEyLTE3ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVtb3ZlIERpY3Rpb25hcnkuaC9jcHAK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NTk5Ngor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRhc2sgY29t
cGxldGUhIERpY3Rpb25hcnkgaXMgbm8gbG9uZ2VyIHVzZWQuCisKKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6Cisg
ICAgICAgICogYmluZGluZ3MvanMvRGljdGlvbmFyeS5jcHA6IFJlbW92ZWQuCisgICAgICAgICog
YmluZGluZ3MvanMvRGljdGlvbmFyeS5oOiBSZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pz
L0pTQmluZGluZ3NBbGxJbk9uZS5jcHA6CisKIDIwMTYtMTItMTcgIFlvdWVubiBGYWJsZXQgIDx5
b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIENsb25lZCBDYWNoZWRSZXNvdXJjZSBzaG91bGQg
bm90IGhhdmUgYW4gZW1wdHkgcmVzcG9uc2UKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlz
dHMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CShyZXZp
c2lvbiAyMDk5NjEpCisrKyBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkod29ya2luZyBj
b3B5KQpAQCAtMTA3Nyw3ICsxMDc3LDYgQEAgc2V0KFdlYkNvcmVfU09VUkNFUwogICAgIGJpbmRp
bmdzL2pzL0NhbGxiYWNrRnVuY3Rpb24uY3BwCiAgICAgYmluZGluZ3MvanMvQ29tbW9uVk0uY3Bw
CiAgICAgYmluZGluZ3MvanMvRE9NV3JhcHBlcldvcmxkLmNwcAotICAgIGJpbmRpbmdzL2pzL0Rp
Y3Rpb25hcnkuY3BwCiAgICAgYmluZGluZ3MvanMvR0NDb250cm9sbGVyLmNwcAogICAgIGJpbmRp
bmdzL2pzL0lEQkJpbmRpbmdVdGlsaXRpZXMuY3BwCiAgICAgYmluZGluZ3MvanMvSlNBbmltYXRp
b25UaW1lbGluZUN1c3RvbS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDIwOTk2MSkKKysrIFNvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpA
QCAtMTMzMSw3ICsxMzMxLDYgQEAKIAkJMzEyOENBNjgxNDczMzE1MjAwNzRDNzJBIC8qIE5vdGlm
aWNhdGlvbkNvbnRyb2xsZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMzEyOENBNjcxNDczMzE1MjAwNzRDNzJBIC8qIE5vdGlmaWNhdGlvbkNvbnRy
b2xsZXIuY3BwICovOyB9OwogCQkzMTI4Q0E2QjE0NzMzMTYzMDA3NEM3MkEgLyogTm90aWZpY2F0
aW9uQ29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzEyOENBNkExNDczMzE2MzAwNzRDNzJBIC8qIE5vdGlmaWNhdGlvbkNvbnRyb2xsZXIu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkzMTJD
MEM0MTE0NkRDNkNDMDAxNkM5MTEgLyogTm90aWZpY2F0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMzNGNzA0RjBGQjQ5Q0EyMDA4RTEyQTYgLyog
Tm90aWZpY2F0aW9uLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKLQkJMzEyRDY3QjExNTM1NjkxRjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEyRDY3QjAxNTM1Njkx
RjAwNTYzRDBEIC8qIERpY3Rpb25hcnkuY3BwICovOyB9OwogCQkzMTMxM0Y2NTE0NDNCMzVGMDA2
RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzMTNGNjMxNDQzQjM1RTAwNkUyQTkwIC8qIEZpbHRl
ckVmZmVjdFJlbmRlcmVyLmNwcCAqLzsgfTsKIAkJMzEzMTNGNjYxNDQzQjM1RjAwNkUyQTkwIC8q
IEZpbHRlckVmZmVjdFJlbmRlcmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAzMTMxM0Y2NDE0NDNCMzVFMDA2RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVu
ZGVyZXIuaCAqLzsgfTsKIAkJMzE0MDM3OUIxMjRCRUE3RjAwQUY0MEU0IC8qIFdlYkNvcmVNb3Rp
b25NYW5hZ2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTQwMzc5NzEyNEJFQTdGMDBBRjQwRTQgLyogV2ViQ29yZU1vdGlvbk1hbmFnZXIuaCAqLzsg
fTsKQEAgLTEzNDYsNyArMTM0NSw2IEBACiAJCTMxNEJFM0EzMUIzMEY2RDEwMDE0MTk4MiAvKiBD
U1NOYW1lZEltYWdlVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMzE0QkUzQTIxQjMwRjZEMTAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1
ZS5jcHAgKi87IH07CiAJCTMxNEJFM0E2MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2Vu
ZXJhdGVkSW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE0QkUzQTQxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFn
ZS5jcHAgKi87IH07CiAJCTMxNEJFM0E3MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2Vu
ZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxNEJFM0E1MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2Uu
aCAqLzsgfTsKLQkJMzE2MDIzRjAxNTMyQzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjAyM0VGMTUzMkM0
MEMwMEQ1MEZGNCAvKiBEaWN0aW9uYXJ5LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzE2RkUwNzEwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5
ZnJhbWVSdWxlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxNkZFMDZEMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU0NTU0tleWZyYW1lUnVsZS5jcHAgKi87
IH07CiAJCTMxNkZFMDcyMEU2Q0NCRUUwMEJGNjA4OCAvKiBKU0NTU0tleWZyYW1lUnVsZS5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RkUwNkUwRTZD
Q0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVSdWxlLmggKi87IH07CiAJCTMxNkZFMDczMEU2
Q0NCRUUwMEJGNjA4OCAvKiBKU0NTU0tleWZyYW1lc1J1bGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RkUwNkYwRTZDQ0JFRTAwQkY2MDg4IC8q
IEpTQ1NTS2V5ZnJhbWVzUnVsZS5jcHAgKi87IH07CkBAIC04NDcwLDcgKzg0NjgsNiBAQAogCQkz
MTI4OEU3MTBFMzAwNUQ2MDAzNjE5QUUgLyogQ1NTS2V5ZnJhbWVzUnVsZS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBDU1NLZXlmcmFtZXNSdWxlLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTMxMjhDQTY3MTQ3MzMxNTIwMDc0QzcyQSAvKiBOb3RpZmljYXRpb25D
b250cm9sbGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5vdGlm
aWNhdGlvbkNvbnRyb2xsZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTI4
Q0E2QTE0NzMzMTYzMDA3NEM3MkEgLyogTm90aWZpY2F0aW9uQ29udHJvbGxlci5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOb3RpZmljYXRpb25Db250cm9sbGVyLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxMkQ2N0IwMTUzNTY5MUYwMDU2M0QwRCAvKiBEaWN0
aW9uYXJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IERpY3Rpb25h
cnkuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTMxM0Y2MzE0NDNCMzVFMDA2
RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gRmlsdGVyRWZmZWN0UmVuZGVyZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkzMTMxM0Y2NDE0NDNCMzVFMDA2RTJBOTAgLyogRmlsdGVyRWZmZWN0UmVu
ZGVyZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRmlsdGVyRWZmZWN0UmVu
ZGVyZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0MDM3OTcxMjRCRUE3RjAw
QUY0MEU0IC8qIFdlYkNvcmVNb3Rpb25NYW5hZ2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFdlYkNvcmVNb3Rpb25NYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CkBAIC04NDg2LDcgKzg0ODMsNiBAQAogCQkzMTRCRTNBMjFCMzBGNkQxMDAxNDE5ODIgLyog
Q1NTTmFtZWRJbWFnZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IENTU05hbWVkSW1hZ2VWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTMxNEJFM0E0MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuY3Bw
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmFtZWRJbWFnZUdlbmVyYXRl
ZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0QkUzQTUxQjMxMDNG
QjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJMzE2MDIzRUYxNTMyQzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnku
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRGljdGlvbmFyeS5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZGRTA2RDBFNkNDQkVFMDBCRjYwODggLyogSlNDU1NL
ZXlmcmFtZVJ1bGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlND
U1NLZXlmcmFtZVJ1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZGRTA2
RTBFNkNDQkVFMDBCRjYwODggLyogSlNDU1NLZXlmcmFtZVJ1bGUuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gSlNDU1NLZXlmcmFtZVJ1bGUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMzE2RkUwNkYwRTZDQ0JFRTAwQkY2MDg4IC8qIEpTQ1NTS2V5ZnJhbWVzUnVs
ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0NTU0tleWZyYW1l
c1J1bGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjE5NDksOCArMjE5NDUs
NiBAQAogCQkJCTkzRjhCMzA2MEEzMDBGRUEwMEY2MUFCOCAvKiBDb2RlR2VuZXJhdG9ySlMucG0g
Ki8sCiAJCQkJMEY2MEYzMjkxREZCQjEwNDAwNDE2RDZDIC8qIENvbW1vblZNLmNwcCAqLywKIAkJ
CQkwRjYwRjMyQTFERkJCMTA0MDA0MTZENkMgLyogQ29tbW9uVk0uaCAqLywKLQkJCQkzMTJENjdC
MDE1MzU2OTFGMDA1NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgKi8sCi0JCQkJMzE2MDIzRUYxNTMy
QzQwQzAwRDUwRkY0IC8qIERpY3Rpb25hcnkuaCAqLywKIAkJCQlCNTY1NzZFNzE3REE5NEUyMDBB
NTZCREMgLyogRE9NQ29uc3RydWN0b3JXaXRoRG9jdW1lbnQuaCAqLywKIAkJCQlCQzUzREE0NzEx
NDMxMzREMDAwRDgxN0UgLyogRE9NV3JhcHBlcldvcmxkLmNwcCAqLywKIAkJCQlCQzUzREEyRDEx
NDMxMjFFMDAwRDgxN0UgLyogRE9NV3JhcHBlcldvcmxkLmggKi8sCkBAIC0yNTM4Nyw3ICsyNTM4
MSw2IEBACiAJCQkJQ0VDQURGQzcxNTM3NzhGRjAwRTM3MDY4IC8qIERpY3RhdGlvbkFsdGVybmF0
aXZlLmggaW4gSGVhZGVycyAqLywKIAkJCQlDRUNBREZDOTE1Mzc3OEZGMDBFMzcwNjggLyogRGlj
dGF0aW9uQ29tbWFuZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRDBCRDRGNUQxNDA4ODUwRjAwNjgz
OUI2IC8qIERpY3RhdGlvbkNvbW1hbmRJT1MuaCBpbiBIZWFkZXJzICovLAotCQkJCTMxNjAyM0Yw
MTUzMkM0MEMwMEQ1MEZGNCAvKiBEaWN0aW9uYXJ5LmggaW4gSGVhZGVycyAqLywKIAkJCQk5MzdG
RjNENTFBMTAxMkQ2MDA4RUJBMzEgLyogRGljdGlvbmFyeUxvb2t1cC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMkQ1NjQ2QjAxQjhGODQ5MzAwM0M0OTk0IC8qIERpY3Rpb25hcnlQb3B1cEluZm8uaCBp
biBIZWFkZXJzICovLAogCQkJCUZEQUYxOTk5MTUxM0QxMzEwMDhEQjBDMyAvKiBEaXJlY3RDb252
b2x2ZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjkxNzQsNyArMjkxNjcsNiBAQAogCQkJCUNFQ0FE
RkM2MTUzNzc4RkYwMEUzNzA2OCAvKiBEaWN0YXRpb25BbHRlcm5hdGl2ZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlDRUNBREZDODE1Mzc3OEZGMDBFMzcwNjggLyogRGljdGF0aW9uQ29tbWFuZC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlEMEJENEY1QzE0MDg4NTBGMDA2ODM5QjYgLyogRGljdGF0
aW9uQ29tbWFuZElPUy5jcHAgaW4gU291cmNlcyAqLywKLQkJCQkzMTJENjdCMTE1MzU2OTFGMDA1
NjNEMEQgLyogRGljdGlvbmFyeS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5MzdGRjNENzFBMTAx
MzFCMDA4RUJBMzEgLyogRGljdGlvbmFyeUxvb2t1cC5tbSBpbiBTb3VyY2VzICovLAogCQkJCUZE
QUYxOTk4MTUxM0QxMzEwMDhEQjBDMyAvKiBEaXJlY3RDb252b2x2ZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJN0U0REUxMEQxOThCMTBCNjAwNTFDQjAyIC8qIERpc2tDYWNoZU1vbml0b3JDb2Nv
YS5tbSBpbiBTb3VyY2VzICovLApJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGlj
dGlvbmFyeS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvRGlj
dGlvbmFyeS5jcHAJKHJldmlzaW9uIDIwOTk2MSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0RpY3Rpb25hcnkuY3BwCShub25leGlzdGVudCkKQEAgLTEsMTI3ICswLDAgQEAKLS8qCi0g
KiBDb3B5cmlnaHQgKEMpIDIwMTIgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgotICoK
LSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKLSAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKLSAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAotICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAotICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCi0gKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCi0gKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
LSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQotICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiRGljdGlvbmFyeS5oIgotCi0jaW5jbHVkZSAiSlNET01Db252ZXJ0Lmgi
Ci0KLXVzaW5nIG5hbWVzcGFjZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotRGljdGlv
bmFyeTo6RGljdGlvbmFyeSgpCi17Ci19Ci0KLURpY3Rpb25hcnk6OkRpY3Rpb25hcnkoRXhlY1N0
YXRlKiBzdGF0ZSwgSlNPYmplY3QqIGluaXRpYWxpemVyT2JqZWN0KQotICAgIDogbV9zdGF0ZShz
dGF0ZSkKLXsKLSAgICBpZiAoc3RhdGUgJiYgaW5pdGlhbGl6ZXJPYmplY3QpCi0gICAgICAgIG1f
aW5pdGlhbGl6ZXJPYmplY3QgPSBTdHJvbmc8SlNPYmplY3Q+KHN0YXRlLT52bSgpLCBpbml0aWFs
aXplck9iamVjdCk7Ci19Ci0KLURpY3Rpb25hcnk6OkRpY3Rpb25hcnkoRXhlY1N0YXRlKiBzdGF0
ZSwgSlNWYWx1ZSB2YWx1ZSkKLSAgICA6IERpY3Rpb25hcnkoc3RhdGUsIHZhbHVlLmlzT2JqZWN0
KCkgPyB2YWx1ZS5nZXRPYmplY3QoKSA6IG51bGxwdHIpCi17Ci19Ci0KLURpY3Rpb25hcnk6Okdl
dFByb3BlcnR5UmVzdWx0IERpY3Rpb25hcnk6OnRyeUdldFByb3BlcnR5KGNvbnN0IGNoYXIqIHBy
b3BlcnR5TmFtZSwgSlNWYWx1ZSYgZmluYWxSZXN1bHQpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKGlz
VmFsaWQoKSk7Ci0KLSAgICBhdXRvIHNjb3BlID0gREVDTEFSRV9USFJPV19TQ09QRShtX3N0YXRl
LT52bSgpKTsKLSAgICBhdXRvIGlkZW50aWZpZXIgPSBJZGVudGlmaWVyOjpmcm9tU3RyaW5nKG1f
c3RhdGUsIHByb3BlcnR5TmFtZSk7Ci0gICAgYm9vbCBwcm9wZXJ0eUZvdW5kID0gbV9pbml0aWFs
aXplck9iamVjdC5nZXQoKS0+Z2V0UHJvcGVydHlTbG90KG1fc3RhdGUsIGlkZW50aWZpZXIsIFsm
XSAoYm9vbCBwcm9wZXJ0eUZvdW5kLCBQcm9wZXJ0eVNsb3QmIHNsb3QpIC0+IGJvb2wgewotICAg
ICAgICBpZiAoIXByb3BlcnR5Rm91bmQpCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
ICAgIGZpbmFsUmVzdWx0ID0gc2xvdC5nZXRWYWx1ZShtX3N0YXRlLCBpZGVudGlmaWVyKTsKLSAg
ICAgICAgcmV0dXJuIHRydWU7Ci0gICAgfSk7Ci0gICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29w
ZSwgRXhjZXB0aW9uVGhyb3duKTsKLSAgICByZXR1cm4gcHJvcGVydHlGb3VuZCA/IFByb3BlcnR5
Rm91bmQgOiBOb1Byb3BlcnR5Rm91bmQ7Ci19Ci0KLWJvb2wgRGljdGlvbmFyeTo6Z2V0T3duUHJv
cGVydHlOYW1lcyhWZWN0b3I8U3RyaW5nPiYgbmFtZXMpIGNvbnN0Ci17Ci0gICAgaWYgKCFpc1Zh
bGlkKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAgIFByb3BlcnR5TmFtZUFycmF5IHBy
b3BlcnR5TmFtZXMobV9zdGF0ZSwgUHJvcGVydHlOYW1lTW9kZTo6U3RyaW5ncyk7Ci0gICAgSlNP
YmplY3Q6OmdldE93blByb3BlcnR5TmFtZXMobV9pbml0aWFsaXplck9iamVjdC5nZXQoKSwgbV9z
dGF0ZSwgcHJvcGVydHlOYW1lcywgRW51bWVyYXRpb25Nb2RlKCkpOwotICAgIGZvciAoYXV0byYg
aWRlbnRpZmllciA6IHByb3BlcnR5TmFtZXMpIHsKLSAgICAgICAgYXV0byBzdHJpbmdLZXkgPSBp
ZGVudGlmaWVyLnN0cmluZygpOwotICAgICAgICBpZiAoIXN0cmluZ0tleS5pc0VtcHR5KCkpCi0g
ICAgICAgICAgICBuYW1lcy5hcHBlbmQoc3RyaW5nS2V5KTsKLSAgICB9Ci0KLSAgICByZXR1cm4g
dHJ1ZTsKLX0KLQotLy8gTUFSSzogLSBWYWx1ZSBjb252ZXJzaW9ucwotCi12b2lkIERpY3Rpb25h
cnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUmIHN0YXRlLCBKU1ZhbHVlIHZhbHVlLCBib29sJiBy
ZXN1bHQpCi17Ci0gICAgcmVzdWx0ID0gY29udmVydDxJRExCb29sZWFuPihzdGF0ZSwgdmFsdWUp
OwotfQotCi12b2lkIERpY3Rpb25hcnk6OmNvbnZlcnRWYWx1ZShFeGVjU3RhdGUmIHN0YXRlLCBK
U1ZhbHVlIHZhbHVlLCBpbnQmIHJlc3VsdCkKLXsKLSAgICByZXN1bHQgPSBjb252ZXJ0PElETExv
bmc+KHN0YXRlLCB2YWx1ZSk7Ci19Ci0KLXZvaWQgRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4
ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgdmFsdWUsIHVuc2lnbmVkJiByZXN1bHQpCi17Ci0gICAg
cmVzdWx0ID0gY29udmVydDxJRExVbnNpZ25lZExvbmc+KHN0YXRlLCB2YWx1ZSk7Ci19Ci0KLXZv
aWQgRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgdmFs
dWUsIHVuc2lnbmVkIHNob3J0JiByZXN1bHQpCi17Ci0gICAgcmVzdWx0ID0gY29udmVydDxJRExV
bnNpZ25lZFNob3J0PihzdGF0ZSwgdmFsdWUpOwotfQotCi12b2lkIERpY3Rpb25hcnk6OmNvbnZl
cnRWYWx1ZShFeGVjU3RhdGUmIHN0YXRlLCBKU1ZhbHVlIHZhbHVlLCBkb3VibGUmIHJlc3VsdCkK
LXsKLSAgICByZXN1bHQgPSBjb252ZXJ0PElETERvdWJsZT4oc3RhdGUsIHZhbHVlKTsKLX0KLQot
dm9pZCBEaWN0aW9uYXJ5Ojpjb252ZXJ0VmFsdWUoRXhlY1N0YXRlJiBzdGF0ZSwgSlNWYWx1ZSB2
YWx1ZSwgU3RyaW5nJiByZXN1bHQpCi17Ci0gICAgcmVzdWx0ID0gY29udmVydDxJRExET01TdHJp
bmc+KHN0YXRlLCB2YWx1ZSk7Ci19Ci0KLXZvaWQgRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4
ZWNTdGF0ZSYgc3RhdGUsIEpTVmFsdWUgdmFsdWUsIFZlY3RvcjxTdHJpbmc+JiByZXN1bHQpCi17
Ci0gICAgaWYgKHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCi0gICAgICAgIHJldHVybjsKLSAg
ICByZXN1bHQgPSBjb252ZXJ0PElETFNlcXVlbmNlPElETERPTVN0cmluZz4+KHN0YXRlLCB2YWx1
ZSk7Ci19Ci0KLXZvaWQgRGljdGlvbmFyeTo6Y29udmVydFZhbHVlKEV4ZWNTdGF0ZSYgc3RhdGUs
IEpTVmFsdWUgdmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCkKLXsKLSAgICByZXN1bHQgPSBEaWN0
aW9uYXJ5KCZzdGF0ZSwgdmFsdWUpOwotfQotCi19CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9EaWN0aW9uYXJ5LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvRGljdGlvbmFyeS5oCShyZXZpc2lvbiAyMDk5NjEpCisrKyBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9qcy9EaWN0aW9uYXJ5LmgJKG5vbmV4aXN0ZW50KQpAQCAtMSwxNTMgKzAsMCBAQAot
LyoKLSAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVk
LgotICogQ29weXJpZ2h0IChDKSAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
LSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1z
LCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRl
ZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAg
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3Jt
IG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJ
TVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1Q
TElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEg
UEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAot
ICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAq
LwotCi0jcHJhZ21hIG9uY2UKLQotI2luY2x1ZGUgPGhlYXAvU3Ryb25nLmg+Ci0jaW5jbHVkZSA8
aGVhcC9TdHJvbmdJbmxpbmVzLmg+Ci0jaW5jbHVkZSA8aW50ZXJwcmV0ZXIvQ2FsbEZyYW1lLmg+
Ci0jaW5jbHVkZSA8cnVudGltZS9KU0NJbmxpbmVzLmg+Ci0jaW5jbHVkZSA8d3RmL0ZvcndhcmQu
aD4KLSNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4KLSNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5n
Lmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBKU0Mgewot
Y2xhc3MgSlNPYmplY3Q7Ci1jbGFzcyBKU1ZhbHVlOwotfQotCi1uYW1lc3BhY2UgV2ViQ29yZSB7
Ci0KLWNsYXNzIERpY3Rpb25hcnkgewotcHVibGljOgotICAgIERpY3Rpb25hcnkoKTsKLSAgICBE
aWN0aW9uYXJ5KEpTQzo6RXhlY1N0YXRlKiwgSlNDOjpKU09iamVjdCopOwotICAgIERpY3Rpb25h
cnkoSlNDOjpFeGVjU3RhdGUqLCBKU0M6OkpTVmFsdWUpOwotCi0gICAgLy8gUmV0dXJucyB0cnVl
IGlmIGEgdmFsdWUgd2FzIGZvdW5kIGZvciB0aGUgcHJvdmlkZWQgcHJvcGVydHkuCi0gICAgdGVt
cGxhdGU8dHlwZW5hbWUgUmVzdWx0PiBib29sIGdldChjb25zdCBjaGFyKiBwcm9wZXJ0eU5hbWUs
IFJlc3VsdCYpIGNvbnN0OwotICAgIHRlbXBsYXRlPHR5cGVuYW1lIFJlc3VsdD4gYm9vbCBnZXQo
Y29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYpIGNvbnN0OwotICAgIHRlbXBsYXRl
PHR5cGVuYW1lIFJlc3VsdD4gc3RkOjpvcHRpb25hbDxSZXN1bHQ+IGdldChjb25zdCBjaGFyKiBw
cm9wZXJ0eU5hbWUpIGNvbnN0OwotICAgIAotICAgIGJvb2wgaXNPYmplY3QoKSBjb25zdCB7IHJl
dHVybiBpc1ZhbGlkKCk7IH0KLSAgICBib29sIGlzVW5kZWZpbmVkT3JOdWxsKCkgY29uc3QgeyBy
ZXR1cm4gIWlzVmFsaWQoKTsgfQotCi0gICAgYm9vbCBnZXRPd25Qcm9wZXJ0eU5hbWVzKFZlY3Rv
cjxTdHJpbmc+JikgY29uc3Q7Ci0gICAgYm9vbCBnZXRXaXRoVW5kZWZpbmVkT3JOdWxsQ2hlY2so
Y29uc3QgY2hhciogcHJvcGVydHlOYW1lLCBTdHJpbmcmKSBjb25zdDsKLQotICAgIEpTQzo6RXhl
Y1N0YXRlKiBleGVjU3RhdGUoKSBjb25zdCB7IHJldHVybiBtX3N0YXRlOyB9Ci0gICAgSlNDOjpK
U09iamVjdCogaW5pdGlhbGl6ZXJPYmplY3QoKSBjb25zdCB7IHJldHVybiBtX2luaXRpYWxpemVy
T2JqZWN0LmdldCgpOyB9Ci0KLXByaXZhdGU6Ci0gICAgYm9vbCBpc1ZhbGlkKCkgY29uc3QgeyBy
ZXR1cm4gbV9zdGF0ZSAmJiBtX2luaXRpYWxpemVyT2JqZWN0OyB9Ci0KLSAgICBlbnVtIEdldFBy
b3BlcnR5UmVzdWx0IHsKLSAgICAgICAgRXhjZXB0aW9uVGhyb3duLAotICAgICAgICBOb1Byb3Bl
cnR5Rm91bmQsCi0gICAgICAgIFByb3BlcnR5Rm91bmQKLSAgICB9OwotCi0gICAgdGVtcGxhdGUg
PHR5cGVuYW1lIFJlc3VsdD4KLSAgICBHZXRQcm9wZXJ0eVJlc3VsdCB0cnlHZXRQcm9wZXJ0eUFu
ZFJlc3VsdChjb25zdCBjaGFyKiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYgY29udGV4dCkgY29uc3Q7
Ci0gICAgR2V0UHJvcGVydHlSZXN1bHQgdHJ5R2V0UHJvcGVydHkoY29uc3QgY2hhciogcHJvcGVy
dHlOYW1lLCBKU0M6OkpTVmFsdWUmKSBjb25zdDsKLQotICAgIHN0YXRpYyB2b2lkIGNvbnZlcnRW
YWx1ZShKU0M6OkV4ZWNTdGF0ZSYsIEpTQzo6SlNWYWx1ZSwgYm9vbCYgcmVzdWx0KTsKLSAgICBz
dGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUmLCBKU0M6OkpTVmFsdWUsIGlu
dCYgcmVzdWx0KTsKLSAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpFeGVjU3RhdGUm
LCBKU0M6OkpTVmFsdWUsIHVuc2lnbmVkJiByZXN1bHQpOwotICAgIHN0YXRpYyB2b2lkIGNvbnZl
cnRWYWx1ZShKU0M6OkV4ZWNTdGF0ZSYsIEpTQzo6SlNWYWx1ZSwgdW5zaWduZWQgc2hvcnQmIHJl
c3VsdCk7Ci0gICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlJiwgSlND
OjpKU1ZhbHVlLCBkb3VibGUmIHJlc3VsdCk7Ci0gICAgc3RhdGljIHZvaWQgY29udmVydFZhbHVl
KEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVlLCBTdHJpbmcmIHJlc3VsdCk7Ci0gICAgc3Rh
dGljIHZvaWQgY29udmVydFZhbHVlKEpTQzo6RXhlY1N0YXRlJiwgSlNDOjpKU1ZhbHVlLCBWZWN0
b3I8U3RyaW5nPiYgcmVzdWx0KTsKLSAgICBzdGF0aWMgdm9pZCBjb252ZXJ0VmFsdWUoSlNDOjpF
eGVjU3RhdGUmLCBKU0M6OkpTVmFsdWUsIERpY3Rpb25hcnkmIHJlc3VsdCk7Ci0KLSAgICBKU0M6
OkV4ZWNTdGF0ZSogbV9zdGF0ZSB7IG51bGxwdHIgfTsKLSAgICBKU0M6OlN0cm9uZzxKU0M6OkpT
T2JqZWN0PiBtX2luaXRpYWxpemVyT2JqZWN0OwotfTsKLQotdGVtcGxhdGU8dHlwZW5hbWUgUmVz
dWx0PiBib29sIERpY3Rpb25hcnk6OmdldChjb25zdCBjaGFyKiBwcm9wZXJ0eU5hbWUsIFJlc3Vs
dCYgcmVzdWx0KSBjb25zdAotewotICAgIHJldHVybiBpc1ZhbGlkKCkgJiYgdHJ5R2V0UHJvcGVy
dHlBbmRSZXN1bHQocHJvcGVydHlOYW1lLCByZXN1bHQpID09IFByb3BlcnR5Rm91bmQ7Ci19Ci0K
LXRlbXBsYXRlPHR5cGVuYW1lIFJlc3VsdD4gYm9vbCBEaWN0aW9uYXJ5OjpnZXQoY29uc3QgU3Ry
aW5nJiBwcm9wZXJ0eU5hbWUsIFJlc3VsdCYgcmVzdWx0KSBjb25zdAotewotICAgIHJldHVybiBn
ZXQocHJvcGVydHlOYW1lLnV0ZjgoKS5kYXRhKCksIHJlc3VsdCk7Ci19Ci0KLXRlbXBsYXRlPHR5
cGVuYW1lIFJlc3VsdD4gc3RkOjpvcHRpb25hbDxSZXN1bHQ+IERpY3Rpb25hcnk6OmdldChjb25z
dCBjaGFyKiBwcm9wZXJ0eU5hbWUpIGNvbnN0Ci17Ci0gICAgUmVzdWx0IHJlc3VsdDsKLSAgICBp
ZiAoIWdldChwcm9wZXJ0eU5hbWUsIHJlc3VsdCkpCi0gICAgICAgIHJldHVybiBzdGQ6Om51bGxv
cHQ7Ci0gICAgcmV0dXJuIHJlc3VsdDsKLX0KLQotdGVtcGxhdGUgPD4KLWlubGluZSBib29sIERp
Y3Rpb25hcnk6OmdldChjb25zdCBjaGFyKiBwcm9wZXJ0eU5hbWUsIEpTQzo6SlNWYWx1ZSYgZmlu
YWxSZXN1bHQpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIHRyeUdldFByb3BlcnR5KHByb3BlcnR5TmFt
ZSwgZmluYWxSZXN1bHQpID09IFByb3BlcnR5Rm91bmQ7Ci19Ci0KLWlubGluZSBib29sIERpY3Rp
b25hcnk6OmdldFdpdGhVbmRlZmluZWRPck51bGxDaGVjayhjb25zdCBjaGFyKiBwcm9wZXJ0eU5h
bWUsIFN0cmluZyYgcmVzdWx0KSBjb25zdAotewotICAgIEFTU0VSVChpc1ZhbGlkKCkpOwotCi0g
ICAgSlNDOjpKU1ZhbHVlIHZhbHVlOwotICAgIGlmICghZ2V0KHByb3BlcnR5TmFtZSwgdmFsdWUp
IHx8IHZhbHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQot
ICAgIHJlc3VsdCA9IHZhbHVlLnRvV1RGU3RyaW5nKG1fc3RhdGUpOwotICAgIHJldHVybiB0cnVl
OwotfQotCi10ZW1wbGF0ZSA8dHlwZW5hbWUgUmVzdWx0PgotRGljdGlvbmFyeTo6R2V0UHJvcGVy
dHlSZXN1bHQgRGljdGlvbmFyeTo6dHJ5R2V0UHJvcGVydHlBbmRSZXN1bHQoY29uc3QgY2hhciog
cHJvcGVydHlOYW1lLCBSZXN1bHQmIGZpbmFsUmVzdWx0KSBjb25zdAotewotICAgIGF1dG8gc2Nv
cGUgPSBERUNMQVJFX1RIUk9XX1NDT1BFKG1fc3RhdGUtPnZtKCkpOwotCi0gICAgSlNDOjpKU1Zh
bHVlIHZhbHVlOwotICAgIEdldFByb3BlcnR5UmVzdWx0IGdldFByb3BlcnR5UmVzdWx0ID0gdHJ5
R2V0UHJvcGVydHkocHJvcGVydHlOYW1lLCB2YWx1ZSk7Ci0gICAgc3dpdGNoIChnZXRQcm9wZXJ0
eVJlc3VsdCkgewotICAgIGNhc2UgRXhjZXB0aW9uVGhyb3duOgotICAgICAgICByZXR1cm4gZ2V0
UHJvcGVydHlSZXN1bHQ7Ci0gICAgY2FzZSBQcm9wZXJ0eUZvdW5kOiB7Ci0gICAgICAgIFJlc3Vs
dCByZXN1bHQ7Ci0gICAgICAgIGNvbnZlcnRWYWx1ZSgqbV9zdGF0ZSwgdmFsdWUsIHJlc3VsdCk7
Ci0KLSAgICAgICAgUkVUVVJOX0lGX0VYQ0VQVElPTihzY29wZSwgRXhjZXB0aW9uVGhyb3duKTsK
LQotICAgICAgICBmaW5hbFJlc3VsdCA9IHJlc3VsdDsKLSAgICAgICAgYnJlYWs7Ci0gICAgfQot
ICAgIGNhc2UgTm9Qcm9wZXJ0eUZvdW5kOgotICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICBy
ZXR1cm4gZ2V0UHJvcGVydHlSZXN1bHQ7Ci19Ci0KLX0KClByb3BlcnR5IGNoYW5nZXMgb246IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0RpY3Rpb25hcnkuaApfX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkRlbGV0ZWQ6
IHN2bjplb2wtc3R5bGUKIyMgLTEgKzAsMCAjIwotbmF0aXZlClwgTm8gbmV3bGluZSBhdCBlbmQg
b2YgcHJvcGVydHkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NB
bGxJbk9uZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNC
aW5kaW5nc0FsbEluT25lLmNwcAkocmV2aXNpb24gMjA5OTYxKQorKysgU291cmNlL1dlYkNvcmUv
YmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjks
NyArMjksNiBAQAogI2luY2x1ZGUgIkNhY2hlZE1vZHVsZVNjcmlwdExvYWRlci5jcHAiCiAjaW5j
bHVkZSAiQ2FsbGJhY2tGdW5jdGlvbi5jcHAiCiAjaW5jbHVkZSAiRE9NV3JhcHBlcldvcmxkLmNw
cCIKLSNpbmNsdWRlICJEaWN0aW9uYXJ5LmNwcCIKICNpbmNsdWRlICJHQ0NvbnRyb2xsZXIuY3Bw
IgogI2luY2x1ZGUgIkpTQW5pbWF0aW9uVGltZWxpbmVDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpT
QXR0ckN1c3RvbS5jcHAiCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>