<?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>119460</bug_id>
          
          <creation_ts>2013-08-02 14:07:42 -0700</creation_ts>
          <short_desc>Remove no-arguments constructor to PropertySlot</short_desc>
          <delta_ts>2013-08-02 16:42:15 -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>JavaScriptCore</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Gavin Barraclough">barraclough</reporter>
          <assigned_to name="Gavin Barraclough">barraclough</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>914267</commentid>
    <comment_count>0</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2013-08-02 14:07:42 -0700</bug_when>
    <thetext>This is unsafe if getValue is subsequently called, and the property is a getter.  Simplest to just remove it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>914270</commentid>
    <comment_count>1</comment_count>
      <attachid>208045</attachid>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2013-08-02 14:09:43 -0700</bug_when>
    <thetext>Created attachment 208045
fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>914272</commentid>
    <comment_count>2</comment_count>
      <attachid>208045</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-08-02 14:12:51 -0700</bug_when>
    <thetext>Comment on attachment 208045
fix

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>914300</commentid>
    <comment_count>3</comment_count>
    <who name="Gavin Barraclough">barraclough</who>
    <bug_when>2013-08-02 15:31:20 -0700</bug_when>
    <thetext>Fixed in r153673</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>914326</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2013-08-02 16:42:15 -0700</bug_when>
    <thetext>Most ports are failing to build after this change.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>208045</attachid>
            <date>2013-08-02 14:09:43 -0700</date>
            <delta_ts>2013-08-02 14:12:51 -0700</delta_ts>
            <desc>fix</desc>
            <filename>119460.1.patch</filename>
            <type>text/plain</type>
            <size>31377</size>
            <attacher name="Gavin Barraclough">barraclough</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTUzNjY1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQzIEBA
CisyMDEzLTA4LTAyICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4K
KworICAgICAgICBSZW1vdmUgbm8tYXJndW1lbnRzIGNvbnN0cnVjdG9yIHRvIFByb3BlcnR5U2xv
dAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5NDYw
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBj
b25zdHJ1Y3RvciB3YXMgdW5zYWZlIGlmIGdldFZhbHVlIGlzIHN1YnNlcXVlbnRseSBjYWxsZWQs
CisgICAgICAgIGFuZCB0aGUgcHJvcGVydHkgaXMgYSBnZXR0ZXIuIFNpbXBsZXN0IHRvIGp1c3Qg
cmVtb3ZlIGl0LgorCisgICAgICAgICogcnVudGltZS9Bcmd1bWVudHMuY3BwOgorICAgICAgICAo
SlNDOjpBcmd1bWVudHM6OmRlZmluZU93blByb3BlcnR5KToKKyAgICAgICAgKiBydW50aW1lL0pT
QWN0aXZhdGlvbi5jcHA6CisgICAgICAgIChKU0M6OkpTQWN0aXZhdGlvbjo6Z2V0T3duUHJvcGVy
dHlEZXNjcmlwdG9yKToKKyAgICAgICAgKiBydW50aW1lL0pTRnVuY3Rpb24uY3BwOgorICAgICAg
ICAoSlNDOjpKU0Z1bmN0aW9uOjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IpOgorICAgICAgICAo
SlNDOjpKU0Z1bmN0aW9uOjpnZXRPd25Ob25JbmRleFByb3BlcnR5TmFtZXMpOgorICAgICAgICAo
SlNDOjpKU0Z1bmN0aW9uOjpwdXQpOgorICAgICAgICAoSlNDOjpKU0Z1bmN0aW9uOjpkZWZpbmVP
d25Qcm9wZXJ0eSk6CisgICAgICAgICogcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHA6CisgICAg
ICAgIChKU0M6OkpTR2xvYmFsT2JqZWN0OjpkZWZpbmVPd25Qcm9wZXJ0eSk6CisgICAgICAgICog
cnVudGltZS9KU0dsb2JhbE9iamVjdC5oOgorICAgICAgICAoSlNDOjpKU0dsb2JhbE9iamVjdDo6
aGFzT3duUHJvcGVydHlGb3JXcml0ZSk6CisgICAgICAgICogcnVudGltZS9KU05hbWVTY29wZS5j
cHA6CisgICAgICAgIChKU0M6OkpTTmFtZVNjb3BlOjpwdXQpOgorICAgICAgICAqIHJ1bnRpbWUv
SlNPTk9iamVjdC5jcHA6CisgICAgICAgIChKU0M6OlN0cmluZ2lmaWVyOjpIb2xkZXI6OmFwcGVu
ZE5leHRQcm9wZXJ0eSk6CisgICAgICAgIChKU0M6OldhbGtlcjo6d2Fsayk6CisgICAgICAgICog
cnVudGltZS9KU09iamVjdC5jcHA6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpoYXNQcm9wZXJ0
eSk6CisgICAgICAgIChKU0M6OkpTT2JqZWN0OjpoYXNPd25Qcm9wZXJ0eSk6CisgICAgICAgIChK
U0M6OkpTT2JqZWN0OjpyZWlmeVN0YXRpY0Z1bmN0aW9uc0ZvckRlbGV0ZSk6CisgICAgICAgICog
cnVudGltZS9Mb29rdXAuaDoKKyAgICAgICAgKEpTQzo6Z2V0U3RhdGljUHJvcGVydHlEZXNjcmlw
dG9yKToKKyAgICAgICAgKEpTQzo6Z2V0U3RhdGljRnVuY3Rpb25EZXNjcmlwdG9yKToKKyAgICAg
ICAgKEpTQzo6Z2V0U3RhdGljVmFsdWVEZXNjcmlwdG9yKToKKyAgICAgICAgKiBydW50aW1lL09i
amVjdENvbnN0cnVjdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6ZGVmaW5lUHJvcGVydGllcyk6Cisg
ICAgICAgICogcnVudGltZS9Qcm9wZXJ0eVNsb3QuaDoKKwogMjAxMy0wOC0wMiAgSnVsaWVuIEJy
aWFuY2VhdSAgPGpicmlhbmNlYXVAbmRzLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKEZUTCk6
IEZpeCBtaXBzIGltcGxlbWVudGF0aW9uIG9mIGN0aVZNVGhyb3dUcmFtcG9saW5lU2xvd3BhdGgu
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Bcmd1bWVudHMuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50cy5jcHAJKHJl
dmlzaW9uIDE1MzUzNikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0FyZ3VtZW50
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4Nyw3ICsyODcsNyBAQCBib29sIEFyZ3VtZW50czo6
ZGVmaW5lT3duUHJvcGVydHkoSlNPYmplCiAgICAgaWYgKGkgPCB0aGlzT2JqZWN0LT5tX251bUFy
Z3VtZW50cykgewogICAgICAgICBSRUxFQVNFX0FTU0VSVChpIDwgUHJvcGVydHlOYW1lOjpOb3RB
bkluZGV4KTsKICAgICAgICAgLy8gSWYgdGhlIHByb3BlcnR5IGlzIG5vdCB5ZXQgcHJlc2VudCBv
biB0aGUgb2JqZWN0LCBhbmQgaXMgbm90IHlldCBtYXJrZWQgYXMgZGVsZXRlZCwgdGhlbiBhZGQg
aXQgbm93LgotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAgUHJvcGVydHlTbG90
IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgIGlmICghdGhpc09iamVjdC0+aXNEZWxldGVkQXJn
dW1lbnQoaSkgJiYgIUpTT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iamVjdCwgZXhl
YywgcHJvcGVydHlOYW1lLCBzbG90KSkgewogICAgICAgICAgICAgSlNWYWx1ZSB2YWx1ZSA9IHRo
aXNPYmplY3QtPnRyeUdldEFyZ3VtZW50KGkpOwogICAgICAgICAgICAgQVNTRVJUKHZhbHVlKTsK
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQWN0aXZhdGlvbi5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBY3RpdmF0aW9uLmNw
cAkocmV2aXNpb24gMTUzNTM2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
Y3RpdmF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTg0LDcgKzE4NCw3IEBAIGJvb2wgSlNB
Y3RpdmF0aW9uOjpnZXRPd25Qcm9wZXJ0eURlc2NyaXAKICAgICBpZiAocHJvcGVydHlOYW1lID09
IGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5hcmd1bWVudHMpIHsKICAgICAgICAgLy8gRGVmZW5kIGFn
YWluc3QgdGhlIGluc3BlY3RvciBhc2tpbmcgZm9yIHRoZSBhcmd1bWVudHMgb2JqZWN0IGFmdGVy
IGl0IGhhcyBiZWVuIG9wdGltaXplZCBvdXQuCiAgICAgICAgIGlmICghdGhpc09iamVjdC0+aXNU
b3JuT2ZmKCkpIHsKLSAgICAgICAgICAgIFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICAgICAg
UHJvcGVydHlTbG90IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgICAgICBKU0FjdGl2YXRpb246
OmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3Qp
OwogICAgICAgICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhl
YywgcHJvcGVydHlOYW1lKSwgRG9udEVudW0pOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7Cklu
ZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0Z1bmN0aW9uLmNwcAkocmV2
aXNpb24gMTUzNTM2KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNGdW5jdGlv
bi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwOCw3ICszMDgsNyBAQCBib29sIEpTRnVuY3Rpb246
OmdldE93blByb3BlcnR5RGVzY3JpcHRvCiAgICAgICAgIHJldHVybiBCYXNlOjpnZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3IodGhpc09iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lLCBkZXNjcmlwdG9y
KTsKICAgICAKICAgICBpZiAocHJvcGVydHlOYW1lID09IGV4ZWMtPnByb3BlcnR5TmFtZXMoKS5w
cm90b3R5cGUpIHsKLSAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAgICAgIFByb3BlcnR5
U2xvdCBzbG90KHRoaXNPYmplY3QpOwogICAgICAgICB0aGlzT2JqZWN0LT5tZXRob2RUYWJsZSgp
LT5nZXRPd25Qcm9wZXJ0eVNsb3QodGhpc09iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lLCBzbG90
KTsKICAgICAgICAgcmV0dXJuIEJhc2U6OmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0aGlzT2Jq
ZWN0LCBleGVjLCBwcm9wZXJ0eU5hbWUsIGRlc2NyaXB0b3IpOwogICAgIH0KQEAgLTM1OSw3ICsz
NTksNyBAQCB2b2lkIEpTRnVuY3Rpb246OmdldE93bk5vbkluZGV4UHJvcGVydHlOCiAgICAgSlNG
dW5jdGlvbiogdGhpc09iamVjdCA9IGpzQ2FzdDxKU0Z1bmN0aW9uKj4ob2JqZWN0KTsKICAgICBp
ZiAoIXRoaXNPYmplY3QtPmlzSG9zdEZ1bmN0aW9uKCkgJiYgKG1vZGUgPT0gSW5jbHVkZURvbnRF
bnVtUHJvcGVydGllcykpIHsKICAgICAgICAgLy8gTWFrZSBzdXJlIHByb3RvdHlwZSBoYXMgYmVl
biByZWlmaWVkLgotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAgUHJvcGVydHlT
bG90IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgIHRoaXNPYmplY3QtPm1ldGhvZFRhYmxlKCkt
PmdldE93blByb3BlcnR5U2xvdCh0aGlzT2JqZWN0LCBleGVjLCBleGVjLT5wcm9wZXJ0eU5hbWVz
KCkucHJvdG90eXBlLCBzbG90KTsKIAogICAgICAgICBwcm9wZXJ0eU5hbWVzLmFkZChleGVjLT5w
cm9wZXJ0eU5hbWVzKCkuYXJndW1lbnRzKTsKQEAgLTM4MCw3ICszODAsNyBAQCB2b2lkIEpTRnVu
Y3Rpb246OnB1dChKU0NlbGwqIGNlbGwsIEV4ZWNTCiAgICAgaWYgKHByb3BlcnR5TmFtZSA9PSBl
eGVjLT5wcm9wZXJ0eU5hbWVzKCkucHJvdG90eXBlKSB7CiAgICAgICAgIC8vIE1ha2Ugc3VyZSBw
cm90b3R5cGUgaGFzIGJlZW4gcmVpZmllZCwgc3VjaCB0aGF0IGl0IGNhbiBvbmx5IGJlIG92ZXJ3
cml0dGVuCiAgICAgICAgIC8vIGZvbGxvd2luZyB0aGUgcnVsZXMgc2V0IG91dCBpbiBFQ01BLTI2
MiA4LjEyLjkuCi0gICAgICAgIFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICBQcm9wZXJ0eVNs
b3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAgICAgICAgdGhpc09iamVjdC0+bWV0aG9kVGFibGUoKS0+
Z2V0T3duUHJvcGVydHlTbG90KHRoaXNPYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZSwgc2xvdCk7
CiAgICAgICAgIHRoaXNPYmplY3QtPm1fYWxsb2NhdGlvblByb2ZpbGUuY2xlYXIoKTsKICAgICAg
ICAgdGhpc09iamVjdC0+bV9hbGxvY2F0aW9uUHJvZmlsZVdhdGNocG9pbnQubm90aWZ5V3JpdGUo
KTsKQEAgLTQyNyw3ICs0MjcsNyBAQCBib29sIEpTRnVuY3Rpb246OmRlZmluZU93blByb3BlcnR5
KEpTT2JqCiAgICAgaWYgKHByb3BlcnR5TmFtZSA9PSBleGVjLT5wcm9wZXJ0eU5hbWVzKCkucHJv
dG90eXBlKSB7CiAgICAgICAgIC8vIE1ha2Ugc3VyZSBwcm90b3R5cGUgaGFzIGJlZW4gcmVpZmll
ZCwgc3VjaCB0aGF0IGl0IGNhbiBvbmx5IGJlIG92ZXJ3cml0dGVuCiAgICAgICAgIC8vIGZvbGxv
d2luZyB0aGUgcnVsZXMgc2V0IG91dCBpbiBFQ01BLTI2MiA4LjEyLjkuCi0gICAgICAgIFByb3Bl
cnR5U2xvdCBzbG90OworICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAg
ICAgICAgdGhpc09iamVjdC0+bWV0aG9kVGFibGUoKS0+Z2V0T3duUHJvcGVydHlTbG90KHRoaXNP
YmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiAgICAgICAgIHRoaXNPYmplY3QtPm1f
YWxsb2NhdGlvblByb2ZpbGUuY2xlYXIoKTsKICAgICAgICAgdGhpc09iamVjdC0+bV9hbGxvY2F0
aW9uUHJvZmlsZVdhdGNocG9pbnQubm90aWZ5V3JpdGUoKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5jcHAJKHJldmlzaW9uIDE1MzUz
NikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTR2xvYmFsT2JqZWN0LmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMTc4LDcgKzE3OCw3IEBAIHZvaWQgSlNHbG9iYWxPYmplY3Q6OnB1
dERpcmVjdFZpcnR1YWwoSlMKIGJvb2wgSlNHbG9iYWxPYmplY3Q6OmRlZmluZU93blByb3BlcnR5
KEpTT2JqZWN0KiBvYmplY3QsIEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5
TmFtZSwgUHJvcGVydHlEZXNjcmlwdG9yJiBkZXNjcmlwdG9yLCBib29sIHNob3VsZFRocm93KQog
ewogICAgIEpTR2xvYmFsT2JqZWN0KiB0aGlzT2JqZWN0ID0ganNDYXN0PEpTR2xvYmFsT2JqZWN0
Kj4ob2JqZWN0KTsKLSAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzT2JqZWN0KTsKICAgICAvLyBzaWxlbnRseSBpZ25vcmUgYXR0ZW1wdHMgdG8gYWRkIGFj
Y2Vzc29ycyBhbGlhc2luZyB2YXJzLgogICAgIGlmIChkZXNjcmlwdG9yLmlzQWNjZXNzb3JEZXNj
cmlwdG9yKCkgJiYgc3ltYm9sVGFibGVHZXQodGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90
KSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvSlNHbG9iYWxPYmplY3QuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oCShyZXZpc2lvbiAxNTM1MzYpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0dsb2JhbE9iamVjdC5oCSh3b3JraW5nIGNvcHkpCkBA
IC00NTksNyArNDU5LDcgQEAgaW5saW5lIEpTR2xvYmFsT2JqZWN0KiBhc0dsb2JhbE9iamVjdChK
UwogCiBpbmxpbmUgYm9vbCBKU0dsb2JhbE9iamVjdDo6aGFzT3duUHJvcGVydHlGb3JXcml0ZShF
eGVjU3RhdGUqIGV4ZWMsIFByb3BlcnR5TmFtZSBwcm9wZXJ0eU5hbWUpCiB7Ci0gICAgUHJvcGVy
dHlTbG90IHNsb3Q7CisgICAgUHJvcGVydHlTbG90IHNsb3QodGhpcyk7CiAgICAgaWYgKEJhc2U6
OmdldE93blByb3BlcnR5U2xvdCh0aGlzLCBleGVjLCBwcm9wZXJ0eU5hbWUsIHNsb3QpKQogICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICBib29sIHNsb3RJc1dyaXRlYWJsZTsKSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmFtZVNjb3BlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU05hbWVTY29wZS5jcHAJKHJldmlzaW9uIDE1
MzUzNikKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTTmFtZVNjb3BlLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtNjEsNyArNjEsNyBAQCB2b2lkIEpTTmFtZVNjb3BlOjpwdXQoSlND
ZWxsKiBjZWxsLCBFeGVjCiAgICAgICAgIC8vIChhKSBpcyB1bmxpa2VseSwgYW5kIChiKSBpcyBh
biBlcnJvci4KICAgICAgICAgLy8gQWxzbyB3aXRoIGEgc2luZ2xlIGVudHJ5IHRoZSBzeW1ib2wg
dGFibGUgbG9va3VwIHNob3VsZCBzaW1wbHkgYmUKICAgICAgICAgLy8gYSBwb2ludGVyIGNvbXBh
cmUuCi0gICAgICAgIFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzT2JqZWN0KTsKICAgICAgICAgYm9vbCBpc1dyaXRhYmxlID0gdHJ1ZTsKICAgICAgICAg
c3ltYm9sVGFibGVHZXQodGhpc09iamVjdCwgcHJvcGVydHlOYW1lLCBzbG90LCBpc1dyaXRhYmxl
KTsKICAgICAgICAgaWYgKCFpc1dyaXRhYmxlKSB7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlw
dENvcmUvcnVudGltZS9KU09OT2JqZWN0LmNwcAkocmV2aXNpb24gMTUzNTM2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNPTk9iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTUxNSwxMSArNTE1LDEyIEBAIGJvb2wgU3RyaW5naWZpZXI6OkhvbGRlcjo6YXBwZW5kTmV4dFBy
b3AKICAgICAgICAgICAgIHZhbHVlID0gYXNBcnJheShtX29iamVjdC5nZXQoKSktPmdldEluZGV4
UXVpY2tseShpbmRleCk7CiAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgUHJvcGVydHlTbG90
IHNsb3QobV9vYmplY3QuZ2V0KCkpOwotICAgICAgICAgICAgaWYgKCFtX29iamVjdC0+bWV0aG9k
VGFibGUoKS0+Z2V0T3duUHJvcGVydHlTbG90QnlJbmRleChtX29iamVjdC5nZXQoKSwgZXhlYywg
aW5kZXgsIHNsb3QpKQotICAgICAgICAgICAgICAgIHNsb3Quc2V0VW5kZWZpbmVkKCk7Ci0gICAg
ICAgICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCi0gICAgICAgICAgICAgICAgcmV0dXJu
IGZhbHNlOwotICAgICAgICAgICAgdmFsdWUgPSBzbG90LmdldFZhbHVlKGV4ZWMsIGluZGV4KTsK
KyAgICAgICAgICAgIGlmIChtX29iamVjdC0+bWV0aG9kVGFibGUoKS0+Z2V0T3duUHJvcGVydHlT
bG90QnlJbmRleChtX29iamVjdC5nZXQoKSwgZXhlYywgaW5kZXgsIHNsb3QpKSB7CisgICAgICAg
ICAgICAgICAgdmFsdWUgPSBzbG90LmdldFZhbHVlKGV4ZWMsIGluZGV4KTsKKyAgICAgICAgICAg
ICAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpCisgICAgICAgICAgICAgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgIHZhbHVlID0ganNV
bmRlZmluZWQoKTsKICAgICAgICAgfQogCiAgICAgICAgIC8vIEFwcGVuZCB0aGUgc2VwYXJhdG9y
IHN0cmluZy4KQEAgLTY3MCw3ICs2NzEsNyBAQCBORVZFUl9JTkxJTkUgSlNWYWx1ZSBXYWxrZXI6
OndhbGsoSlNWYWx1CiAgICAgICAgICAgICAgICAgaWYgKGlzSlNBcnJheShhcnJheSkgJiYgYXJy
YXktPmNhbkdldEluZGV4UXVpY2tseShpbmRleCkpCiAgICAgICAgICAgICAgICAgICAgIGluVmFs
dWUgPSBhcnJheS0+Z2V0SW5kZXhRdWlja2x5KGluZGV4KTsKICAgICAgICAgICAgICAgICBlbHNl
IHsKLSAgICAgICAgICAgICAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAgICAgICAgICAg
ICAgICAgIFByb3BlcnR5U2xvdCBzbG90KGFycmF5KTsKICAgICAgICAgICAgICAgICAgICAgaWYg
KGFycmF5LT5tZXRob2RUYWJsZSgpLT5nZXRPd25Qcm9wZXJ0eVNsb3RCeUluZGV4KGFycmF5LCBt
X2V4ZWMsIGluZGV4LCBzbG90KSkKICAgICAgICAgICAgICAgICAgICAgICAgIGluVmFsdWUgPSBz
bG90LmdldFZhbHVlKG1fZXhlYywgaW5kZXgpOwogICAgICAgICAgICAgICAgICAgICBlbHNlCkBA
IC03MjIsNyArNzIzLDcgQEAgTkVWRVJfSU5MSU5FIEpTVmFsdWUgV2Fsa2VyOjp3YWxrKEpTVmFs
dQogICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eVN0YWNrLnJlbW92ZUxhc3QoKTsKICAgICAg
ICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgfQotICAgICAgICAgICAgICAg
IFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICAgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KG9i
amVjdCk7CiAgICAgICAgICAgICAgICAgaWYgKG9iamVjdC0+bWV0aG9kVGFibGUoKS0+Z2V0T3du
UHJvcGVydHlTbG90KG9iamVjdCwgbV9leGVjLCBwcm9wZXJ0aWVzW2luZGV4XSwgc2xvdCkpCiAg
ICAgICAgICAgICAgICAgICAgIGluVmFsdWUgPSBzbG90LmdldFZhbHVlKG1fZXhlYywgcHJvcGVy
dGllc1tpbmRleF0pOwogICAgICAgICAgICAgICAgIGVsc2UKSW5kZXg6IFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvcnVudGltZS9KU09iamVjdC5jcHAJKHJldmlzaW9uIDE1MzU1NikKKysrIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTT2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTIwMywxMyArMTIwMywxMyBAQCB2b2lkIEpTT2JqZWN0OjpwdXREaXJlY3RBY2Nlc3NvcihFeGVj
U3RhCiAKIGJvb2wgSlNPYmplY3Q6Omhhc1Byb3BlcnR5KEV4ZWNTdGF0ZSogZXhlYywgUHJvcGVy
dHlOYW1lIHByb3BlcnR5TmFtZSkgY29uc3QKIHsKLSAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAg
ICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzKTsKICAgICByZXR1cm4gY29uc3RfY2FzdDxKU09iamVj
dCo+KHRoaXMpLT5nZXRQcm9wZXJ0eVNsb3QoZXhlYywgcHJvcGVydHlOYW1lLCBzbG90KTsKIH0K
IAogYm9vbCBKU09iamVjdDo6aGFzUHJvcGVydHkoRXhlY1N0YXRlKiBleGVjLCB1bnNpZ25lZCBw
cm9wZXJ0eU5hbWUpIGNvbnN0CiB7Ci0gICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAgUHJvcGVy
dHlTbG90IHNsb3QodGhpcyk7CiAgICAgcmV0dXJuIGNvbnN0X2Nhc3Q8SlNPYmplY3QqPih0aGlz
KS0+Z2V0UHJvcGVydHlTbG90KGV4ZWMsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKQEAgLTEy
NDgsNyArMTI0OCw3IEBAIGJvb2wgSlNPYmplY3Q6OmRlbGV0ZVByb3BlcnR5KEpTQ2VsbCogY2UK
IAogYm9vbCBKU09iamVjdDo6aGFzT3duUHJvcGVydHkoRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0
eU5hbWUgcHJvcGVydHlOYW1lKSBjb25zdAogewotICAgIFByb3BlcnR5U2xvdCBzbG90OworICAg
IFByb3BlcnR5U2xvdCBzbG90KHRoaXMpOwogICAgIHJldHVybiBjb25zdF9jYXN0PEpTT2JqZWN0
Kj4odGhpcyktPm1ldGhvZFRhYmxlKCktPmdldE93blByb3BlcnR5U2xvdChjb25zdF9jYXN0PEpT
T2JqZWN0Kj4odGhpcyksIGV4ZWMsIHByb3BlcnR5TmFtZSwgc2xvdCk7CiB9CiAKQEAgLTE1ODks
NyArMTU4OSw3IEBAIHZvaWQgSlNPYmplY3Q6OnJlaWZ5U3RhdGljRnVuY3Rpb25zRm9yRGUKICAg
ICAgICAgY29uc3QgSGFzaFRhYmxlKiBoYXNoVGFibGUgPSBpbmZvLT5wcm9wSGFzaFRhYmxlKGds
b2JhbE9iamVjdCgpLT5nbG9iYWxFeGVjKCkpOwogICAgICAgICBpZiAoIWhhc2hUYWJsZSkKICAg
ICAgICAgICAgIGNvbnRpbnVlOwotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAg
UHJvcGVydHlTbG90IHNsb3QodGhpcyk7CiAgICAgICAgIGZvciAoSGFzaFRhYmxlOjpDb25zdEl0
ZXJhdG9yIGl0ZXIgPSBoYXNoVGFibGUtPmJlZ2luKHZtKTsgaXRlciAhPSBoYXNoVGFibGUtPmVu
ZCh2bSk7ICsraXRlcikgewogICAgICAgICAgICAgaWYgKGl0ZXItPmF0dHJpYnV0ZXMoKSAmIEZ1
bmN0aW9uKQogICAgICAgICAgICAgICAgIHNldFVwU3RhdGljRnVuY3Rpb25TbG90KGdsb2JhbE9i
amVjdCgpLT5nbG9iYWxFeGVjKCksICppdGVyLCB0aGlzLCBJZGVudGlmaWVyKCZ2bSwgaXRlci0+
a2V5KCkpLCBzbG90KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xvb2t1
cC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0xvb2t1cC5o
CShyZXZpc2lvbiAxNTM1MzYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Mb29r
dXAuaAkod29ya2luZyBjb3B5KQpAQCAtMjYzLDcgKzI2Myw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICBpZiAoIWVudHJ5KSAvLyBub3QgZm91bmQsIGZvcndhcmQgdG8gcGFyZW50CiAgICAg
ICAgICAgICByZXR1cm4gUGFyZW50SW1wOjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGhpc09i
aiwgZXhlYywgcHJvcGVydHlOYW1lLCBkZXNjcmlwdG9yKTsKICAKLSAgICAgICAgUHJvcGVydHlT
bG90IHNsb3Q7CisgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmopOwogICAgICAgICBp
ZiAoZW50cnktPmF0dHJpYnV0ZXMoKSAmIEZ1bmN0aW9uKSB7CiAgICAgICAgICAgICBib29sIHBy
ZXNlbnQgPSBzZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdChleGVjLCBlbnRyeSwgdGhpc09iaiwgcHJv
cGVydHlOYW1lLCBzbG90KTsKICAgICAgICAgICAgIGlmIChwcmVzZW50KQpAQCAtMzA5LDcgKzMw
OSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBpZiAoIWVudHJ5KQogICAgICAgICAgICAg
cmV0dXJuIGZhbHNlOwogICAgICAgICAKLSAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAg
ICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmopOwogICAgICAgICBib29sIHByZXNlbnQgPSBz
ZXRVcFN0YXRpY0Z1bmN0aW9uU2xvdChleGVjLCBlbnRyeSwgdGhpc09iaiwgcHJvcGVydHlOYW1l
LCBzbG90KTsKICAgICAgICAgaWYgKHByZXNlbnQpCiAgICAgICAgICAgICBkZXNjcmlwdG9yLnNl
dERlc2NyaXB0b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUpLCBlbnRyeS0+YXR0
cmlidXRlcygpKTsKQEAgLTM0Nyw3ICszNDcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAg
ICAgIHJldHVybiBQYXJlbnRJbXA6OmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0aGlzT2JqLCBl
eGVjLCBwcm9wZXJ0eU5hbWUsIGRlc2NyaXB0b3IpOwogICAgICAgICAKICAgICAgICAgQVNTRVJU
KCEoZW50cnktPmF0dHJpYnV0ZXMoKSAmIEZ1bmN0aW9uKSk7Ci0gICAgICAgIFByb3BlcnR5U2xv
dCBzbG90OworICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqKTsKICAgICAgICAgc2xv
dC5zZXRDdXN0b20odGhpc09iaiwgZW50cnktPnByb3BlcnR5R2V0dGVyKCkpOwogICAgICAgICBk
ZXNjcmlwdG9yLnNldERlc2NyaXB0b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUp
LCBlbnRyeS0+YXR0cmlidXRlcygpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkluZGV4OiBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmplY3RDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvT2JqZWN0Q29uc3RydWN0b3IuY3Bw
CShyZXZpc2lvbiAxNTM1MzYpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9PYmpl
Y3RDb25zdHJ1Y3Rvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMxNSw3ICszMTUsNiBAQCBzdGF0
aWMgSlNWYWx1ZSBkZWZpbmVQcm9wZXJ0aWVzKEV4ZWNTdGF0CiAgICAgVmVjdG9yPFByb3BlcnR5
RGVzY3JpcHRvcj4gZGVzY3JpcHRvcnM7CiAgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgbWFya0J1
ZmZlcjsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IG51bVByb3BlcnRpZXM7IGkrKykgewot
ICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKICAgICAgICAgSlNWYWx1ZSBwcm9wID0gcHJvcGVy
dGllcy0+Z2V0KGV4ZWMsIHByb3BlcnR5TmFtZXNbaV0pOwogICAgICAgICBpZiAoZXhlYy0+aGFk
RXhjZXB0aW9uKCkpCiAgICAgICAgICAgICByZXR1cm4ganNOdWxsKCk7CkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVNsb3QuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Qcm9wZXJ0eVNsb3QuaAkocmV2aXNpb24gMTUzNTU2
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvUHJvcGVydHlTbG90LmgJKHdvcmtp
bmcgY29weSkKQEAgLTQzLDEyICs0Myw2IEBAIGNsYXNzIFByb3BlcnR5U2xvdCB7CiAgICAgfTsK
IAogcHVibGljOgotICAgIFByb3BlcnR5U2xvdCgpCi0gICAgICAgIDogbV9wcm9wZXJ0eVR5cGUo
VHlwZVVuc2V0KQotICAgICAgICAsIG1fb2Zmc2V0KGludmFsaWRPZmZzZXQpCi0gICAgewotICAg
IH0KLQogICAgIGV4cGxpY2l0IFByb3BlcnR5U2xvdChjb25zdCBKU1ZhbHVlIHRoaXNWYWx1ZSkK
ICAgICAgICAgOiBtX3Byb3BlcnR5VHlwZShUeXBlVW5zZXQpCiAgICAgICAgICwgbV9vZmZzZXQo
aW52YWxpZE9mZnNldCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1MzY2NSkKKysrIFNvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM0IEBACisyMDEz
LTA4LTAyICBHYXZpbiBCYXJyYWNsb3VnaCAgPGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KKworICAg
ICAgICBSZW1vdmUgbm8tYXJndW1lbnRzIGNvbnN0cnVjdG9yIHRvIFByb3BlcnR5U2xvdAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE5NDYwCisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVGhpcyBjb25zdHJ1
Y3RvciB3YXMgdW5zYWZlIGlmIGdldFZhbHVlIGlzIHN1YnNlcXVlbnRseSBjYWxsZWQsCisgICAg
ICAgIGFuZCB0aGUgcHJvcGVydHkgaXMgYSBnZXR0ZXIuIFNpbXBsZXN0IHRvIGp1c3QgcmVtb3Zl
IGl0LgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNET01XaW5kb3dDdXN0b20uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SlNET01XaW5kb3c6OmdldE93blByb3BlcnR5RGVzY3JpcHRvcik6Cisg
ICAgICAgIChXZWJDb3JlOjpEaWFsb2dIYW5kbGVyOjpyZXR1cm5WYWx1ZSk6CisgICAgICAgICog
YmluZGluZ3MvanMvSlNIaXN0b3J5Q3VzdG9tLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkpTSGlz
dG9yeTo6Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yRGVsZWdhdGUpOgorICAgICAgICAqIGJpbmRp
bmdzL2pzL0pTTG9jYXRpb25DdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNMb2NhdGlv
bjo6Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yRGVsZWdhdGUpOgorICAgICAgICAqIGJpbmRpbmdz
L2pzL0pTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpydW50
aW1lT2JqZWN0Q3VzdG9tR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKToKKyAgICAgICAgKiBiaW5k
aW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwOgorICAgICAgICAoV2ViQ29yZTo6SlNTdG9yYWdl
OjpkZWxldGVQcm9wZXJ0eSk6CisgICAgICAgIChXZWJDb3JlOjpKU1N0b3JhZ2U6OnB1dERlbGVn
YXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JKUy5wbToKKyAg
ICAgICAgKEdlbmVyYXRlR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keSk6CisgICAgICAgICog
YnJpZGdlL3J1bnRpbWVfYXJyYXkuY3BwOgorICAgICAgICAoSlNDOjpSdW50aW1lQXJyYXk6Omdl
dE93blByb3BlcnR5RGVzY3JpcHRvcik6CisgICAgICAgICogYnJpZGdlL3J1bnRpbWVfbWV0aG9k
LmNwcDoKKyAgICAgICAgKEpTQzo6UnVudGltZU1ldGhvZDo6Z2V0T3duUHJvcGVydHlEZXNjcmlw
dG9yKToKKyAgICAgICAgKiBicmlkZ2UvcnVudGltZV9vYmplY3QuY3BwOgorICAgICAgICAoSlND
OjpCaW5kaW5nczo6UnVudGltZU9iamVjdDo6Z2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKToKKwog
MjAxMy0wOC0wMiAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBG
b3JtQXNzb2NpYXRlZEVsZW1lbnQgc2hvdWxkbid0IGNyZWF0ZSBvdXQtb2YtdHJlZSBGb3JtQXR0
cmlidXRlVGFyZ2V0T2JzZXJ2ZXIKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NV2luZG93Q3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9qcy9KU0RPTVdpbmRvd0N1c3RvbS5jcHAJKHJldmlzaW9uIDE1MzUzMikKKysrIFNvdXJjZS9X
ZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMzUyLDcgKzM1Miw3IEBAIGJvb2wgSlNET01XaW5kb3c6OmdldE93blByb3BlcnR5RGVzY3Jp
cHQKICAgICAgICAgfQogICAgICAgICBlbnRyeSA9IEpTRE9NV2luZG93UHJvdG90eXBlOjpzX2lu
Zm8ucHJvcEhhc2hUYWJsZShleGVjKS0+ZW50cnkoZXhlYywgcHJvcGVydHlOYW1lKTsKICAgICAg
ICAgaWYgKGVudHJ5ICYmIChlbnRyeS0+YXR0cmlidXRlcygpICYgSlNDOjpGdW5jdGlvbikgJiYg
ZW50cnktPmZ1bmN0aW9uKCkgPT0ganNET01XaW5kb3dQcm90b3R5cGVGdW5jdGlvbkNsb3NlKSB7
Ci0gICAgICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAgICAgIFByb3BlcnR5U2xv
dCBzbG90KHRoaXNPYmplY3QpOwogICAgICAgICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09iamVj
dCwgbm9uQ2FjaGluZ1N0YXRpY0Z1bmN0aW9uR2V0dGVyPGpzRE9NV2luZG93UHJvdG90eXBlRnVu
Y3Rpb25DbG9zZSwgMD4pOwogICAgICAgICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHNs
b3QuZ2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1lKSwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwg
RG9udEVudW0pOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zNjMsNyArMzYzLDcgQEAg
Ym9vbCBKU0RPTVdpbmRvdzo6Z2V0T3duUHJvcGVydHlEZXNjcmlwdAogCiAgICAgZW50cnkgPSBK
U0RPTVdpbmRvdzo6c19pbmZvLnByb3BIYXNoVGFibGUoZXhlYyktPmVudHJ5KGV4ZWMsIHByb3Bl
cnR5TmFtZSk7CiAgICAgaWYgKGVudHJ5KSB7Ci0gICAgICAgIFByb3BlcnR5U2xvdCBzbG90Owor
ICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAgICAgICAgc2xvdC5zZXRD
dXN0b20odGhpc09iamVjdCwgZW50cnktPnByb3BlcnR5R2V0dGVyKCkpOwogICAgICAgICBkZXNj
cmlwdG9yLnNldERlc2NyaXB0b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUpLCBl
bnRyeS0+YXR0cmlidXRlcygpKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC0zNzUsNyArMzc1
LDcgQEAgYm9vbCBKU0RPTVdpbmRvdzo6Z2V0T3duUHJvcGVydHlEZXNjcmlwdAogICAgIC8vIGFy
ZSBpbiBNb3ogYnV0IG5vdCBJRS4gU2luY2Ugd2UgaGF2ZSBzb21lIG9mIHRoZXNlLCB3ZSBoYXZl
IHRvIGRvCiAgICAgLy8gaXQgdGhlIE1veiB3YXkuCiAgICAgaWYgKHRoaXNPYmplY3QtPmltcGwo
KS0+ZnJhbWUoKS0+dHJlZSgpLT5zY29wZWRDaGlsZChwcm9wZXJ0eU5hbWVUb0F0b21pY1N0cmlu
Zyhwcm9wZXJ0eU5hbWUpKSkgewotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAg
UHJvcGVydHlTbG90IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRo
aXNPYmplY3QsIGNoaWxkRnJhbWVHZXR0ZXIpOwogICAgICAgICBkZXNjcmlwdG9yLnNldERlc2Ny
aXB0b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUpLCBSZWFkT25seSB8IERvbnRE
ZWxldGUgfCBEb250RW51bSk7CiAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMzg0LDcgKzM4NCw3
IEBAIGJvb2wgSlNET01XaW5kb3c6OmdldE93blByb3BlcnR5RGVzY3JpcHQKICAgICB1bnNpZ25l
ZCBpID0gcHJvcGVydHlOYW1lLmFzSW5kZXgoKTsKICAgICBpZiAoaSA8IHRoaXNPYmplY3QtPmlt
cGwoKS0+ZnJhbWUoKS0+dHJlZSgpLT5zY29wZWRDaGlsZENvdW50KCkpIHsKICAgICAgICAgQVNT
RVJUKGkgIT0gUHJvcGVydHlOYW1lOjpOb3RBbkluZGV4KTsKLSAgICAgICAgUHJvcGVydHlTbG90
IHNsb3Q7CisgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmplY3QpOwogICAgICAgICBz
bG90LnNldEN1c3RvbUluZGV4KHRoaXNPYmplY3QsIGksIGluZGV4R2V0dGVyKTsKICAgICAgICAg
ZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1l
KSwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0pOwogICAgICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTM5NSw3ICszOTUsNyBAQCBib29sIEpTRE9NV2luZG93OjpnZXRPd25Qcm9wZXJ0eURl
c2NyaXB0CiAgICAgaWYgKGRvY3VtZW50LT5pc0hUTUxEb2N1bWVudCgpKSB7CiAgICAgICAgIEF0
b21pY1N0cmluZ0ltcGwqIGF0b21pY1Byb3BlcnR5TmFtZSA9IGZpbmRBdG9taWNTdHJpbmcocHJv
cGVydHlOYW1lKTsKICAgICAgICAgaWYgKGF0b21pY1Byb3BlcnR5TmFtZSAmJiB0b0hUTUxEb2N1
bWVudChkb2N1bWVudCktPndpbmRvd05hbWVkSXRlbU1hcCgpLmNvbnRhaW5zKGF0b21pY1Byb3Bl
cnR5TmFtZSkpIHsKLSAgICAgICAgICAgIFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICAgICAg
UHJvcGVydHlTbG90IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgICAgICBzbG90LnNldEN1c3Rv
bSh0aGlzT2JqZWN0LCBuYW1lZEl0ZW1HZXR0ZXIpOwogICAgICAgICAgICAgZGVzY3JpcHRvci5z
ZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1lKSwgUmVhZE9ubHkg
fCBEb250RGVsZXRlIHwgRG9udEVudW0pOwogICAgICAgICAgICAgcmV0dXJuIHRydWU7CkBAIC01
ODQsNyArNTg0LDcgQEAgaW5saW5lIEpTVmFsdWUgRGlhbG9nSGFuZGxlcjo6cmV0dXJuVmFsdQog
ICAgIGlmICghZ2xvYmFsT2JqZWN0KQogICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKICAg
ICBJZGVudGlmaWVyIGlkZW50aWZpZXIobV9leGVjLCAicmV0dXJuVmFsdWUiKTsKLSAgICBQcm9w
ZXJ0eVNsb3Qgc2xvdDsKKyAgICBQcm9wZXJ0eVNsb3Qgc2xvdChnbG9iYWxPYmplY3QpOwogICAg
IGlmICghSlNHbG9iYWxPYmplY3Q6OmdldE93blByb3BlcnR5U2xvdChnbG9iYWxPYmplY3QsIG1f
ZXhlYywgaWRlbnRpZmllciwgc2xvdCkpCiAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwog
ICAgIHJldHVybiBzbG90LmdldFZhbHVlKG1fZXhlYywgaWRlbnRpZmllcik7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hpc3RvcnlDdXN0b20uY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5jcHAJKHJldmlzaW9u
IDE1MzUzMSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTSGlzdG9yeUN1c3RvbS5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNyw3ICsxMDcsNyBAQCBib29sIEpTSGlzdG9yeTo6Z2V0
T3duUHJvcGVydHlEZXNjcmlwdG9yCiAgICAgLy8gQ2hlY2sgZm9yIHRoZSBmZXcgZnVuY3Rpb25z
IHRoYXQgd2UgYWxsb3csIGV2ZW4gd2hlbiBjYWxsZWQgY3Jvc3MtZG9tYWluLgogICAgIGNvbnN0
IEhhc2hFbnRyeSogZW50cnkgPSBKU0hpc3RvcnlQcm90b3R5cGU6OnNfaW5mby5wcm9wSGFzaFRh
YmxlKGV4ZWMpLT5lbnRyeShleGVjLCBwcm9wZXJ0eU5hbWUpOwogICAgIGlmIChlbnRyeSkgewot
ICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAgICAgUHJvcGVydHlTbG90IHNsb3QodGhp
cyk7CiAgICAgICAgIC8vIEFsbG93IGFjY2VzcyB0byBiYWNrKCksIGZvcndhcmQoKSBhbmQgZ28o
KSBmcm9tIGFueSBmcmFtZS4KICAgICAgICAgaWYgKGVudHJ5LT5hdHRyaWJ1dGVzKCkgJiBKU0M6
OkZ1bmN0aW9uKSB7CiAgICAgICAgICAgICBpZiAoZW50cnktPmZ1bmN0aW9uKCkgPT0ganNIaXN0
b3J5UHJvdG90eXBlRnVuY3Rpb25CYWNrKSB7CkBAIC0xMjcsNyArMTI3LDcgQEAgYm9vbCBKU0hp
c3Rvcnk6OmdldE93blByb3BlcnR5RGVzY3JpcHRvcgogICAgIH0gZWxzZSB7CiAgICAgICAgIC8v
IEFsbG93IGFjY2VzcyB0byB0b1N0cmluZygpIGNyb3NzLWRvbWFpbiwgYnV0IGFsd2F5cyBPYmpl
Y3QudG9TdHJpbmcuCiAgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT0gZXhlYy0+cHJvcGVydHlO
YW1lcygpLnRvU3RyaW5nKSB7Ci0gICAgICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICAg
ICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXMpOwogICAgICAgICAgICAgc2xvdC5zZXRDdXN0
b20odGhpcywgb2JqZWN0VG9TdHJpbmdGdW5jdGlvbkdldHRlcik7CiAgICAgICAgICAgICBkZXNj
cmlwdG9yLnNldERlc2NyaXB0b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUpLCBl
bnRyeS0+YXR0cmlidXRlcygpKTsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwpJbmRleDogU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNMb2NhdGlvbkN1c3RvbS5jcHAJKHJldmlz
aW9uIDE1MzUzMSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTTG9jYXRpb25DdXN0
b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDAsNyArMTAwLDcgQEAgYm9vbCBKU0xvY2F0aW9u
OjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0bwogICAgIAogICAgIC8vIENoZWNrIGZvciB0aGUgZmV3
IGZ1bmN0aW9ucyB0aGF0IHdlIGFsbG93LCBldmVuIHdoZW4gY2FsbGVkIGNyb3NzLWRvbWFpbi4K
ICAgICBjb25zdCBIYXNoRW50cnkqIGVudHJ5ID0gSlNMb2NhdGlvblByb3RvdHlwZTo6c19pbmZv
LnByb3BIYXNoVGFibGUoZXhlYyktPmVudHJ5KGV4ZWMsIHByb3BlcnR5TmFtZSk7Ci0gICAgUHJv
cGVydHlTbG90IHNsb3Q7CisgICAgUHJvcGVydHlTbG90IHNsb3QodGhpcyk7CiAgICAgaWYgKGVu
dHJ5ICYmIChlbnRyeS0+YXR0cmlidXRlcygpICYgSlNDOjpGdW5jdGlvbikpIHsKICAgICAgICAg
aWYgKGVudHJ5LT5mdW5jdGlvbigpID09IGpzTG9jYXRpb25Qcm90b3R5cGVGdW5jdGlvblJlcGxh
Y2UpIHsKICAgICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXMsIG5vbkNhY2hpbmdTdGF0aWNS
ZXBsYWNlRnVuY3Rpb25HZXR0ZXIpOwpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCShyZXZpc2lvbiAxNTM1
MzEpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlv
bnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjksNyArMTI5LDcgQEAgYm9vbCBydW50aW1lT2Jq
ZWN0Q3VzdG9tR2V0T3duUHJvcGVydHlEZQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgaWYg
KCFzY3JpcHRPYmplY3QtPmhhc1Byb3BlcnR5KGV4ZWMsIHByb3BlcnR5TmFtZSkpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKLSAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsKKyAgICBQcm9wZXJ0eVNsb3Qg
c2xvdChlbGVtZW50KTsKICAgICBzbG90LnNldEN1c3RvbShlbGVtZW50LCBydW50aW1lT2JqZWN0
UHJvcGVydHlHZXR0ZXIpOwogICAgIC8vIFdoaWxlIHdlIGRvbid0IGtub3cgd2hhdCB0aGUgcGx1
Z2luIGFsbG93cywgd2UgZG8ga25vdyB0aGF0IHdlIHByZXZlbnQKICAgICAvLyBlbnVtZXJhdGlv
biBvciBkZWxldGlvbiBvZiBwcm9wZXJ0aWVzLCBzbyB3ZSBtYXJrIHBsdWdpbiBwcm9wZXJ0aWVz
CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1N0b3JhZ2VDdXN0b20uY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU3RvcmFnZUN1c3RvbS5j
cHAJKHJldmlzaW9uIDE1MzUzMSkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTU3Rv
cmFnZUN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYyLDcgKzYyLDcgQEAgYm9vbCBKU1N0
b3JhZ2U6OmRlbGV0ZVByb3BlcnR5KEpTQ2VsbCogYwogICAgIC8vIE9ubHkgcGVyZm9ybSB0aGUg
Y3VzdG9tIGRlbGV0ZSBpZiB0aGUgb2JqZWN0IGRvZXNuJ3QgaGF2ZSBhIG5hdGl2ZSBwcm9wZXJ0
eSBieSB0aGlzIG5hbWUuCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHkoKSB3b3VsZCBlbmQgdXAg
Y2FsbGluZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVkLCB3ZSBuZWVkIHRvIGNo
ZWNrCiAgICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51YWxseS4KLSAgICBQcm9w
ZXJ0eVNsb3Qgc2xvdDsKKyAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAgICBp
ZiAoZ2V0U3RhdGljVmFsdWVTbG90PEpTU3RvcmFnZSwgQmFzZT4oZXhlYywgc19pbmZvLnByb3BI
YXNoVGFibGUoZXhlYyksIHRoaXNPYmplY3QsIHByb3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKICAgICAgICAgCkBAIC0xMDQsNyArMTA0LDcgQEAgYm9vbCBKU1N0b3Jh
Z2U6OnB1dERlbGVnYXRlKEV4ZWNTdGF0ZSogZQogICAgIC8vIE9ubHkgcGVyZm9ybSB0aGUgY3Vz
dG9tIHB1dCBpZiB0aGUgb2JqZWN0IGRvZXNuJ3QgaGF2ZSBhIG5hdGl2ZSBwcm9wZXJ0eSBieSB0
aGlzIG5hbWUuCiAgICAgLy8gU2luY2UgaGFzUHJvcGVydHkoKSB3b3VsZCBlbmQgdXAgY2FsbGlu
ZyBjYW5HZXRJdGVtc0Zvck5hbWUoKSBhbmQgYmUgZm9vbGVkLCB3ZSBuZWVkIHRvIGNoZWNrCiAg
ICAgLy8gdGhlIG5hdGl2ZSBwcm9wZXJ0eSBzbG90cyBtYW51YWxseS4KLSAgICBQcm9wZXJ0eVNs
b3Qgc2xvdDsKKyAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzKTsKICAgICBpZiAoZ2V0U3RhdGlj
VmFsdWVTbG90PEpTU3RvcmFnZSwgQmFzZT4oZXhlYywgc19pbmZvLnByb3BIYXNoVGFibGUoZXhl
YyksIHRoaXMsIHByb3BlcnR5TmFtZSwgc2xvdCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAg
ICAgICAgCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0
b3JKUy5wbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQkocmV2aXNpb24gMTUzNTMyKQorKysgU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0JKHdvcmtpbmcgY29weSkKQEAgLTQ1OSw3
ICs0NTksNyBAQCBzdWIgR2VuZXJhdGVHZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JCb2R5CiAgICAg
ICAgIGlmICgkcmVxdWlyZXNNYW51YWxMb29rdXApIHsKICAgICAgICAgICAgIHB1c2goQGdldE93
blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgY29uc3QgJHtuYW1lc3BhY2VNYXliZX1IYXNo
RW50cnkqIGVudHJ5ID0gJHtjbGFzc05hbWV9VGFibGUuZW50cnkoZXhlYywgcHJvcGVydHlOYW1l
KTtcbiIpOwogICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ySW1wbCwg
IiAgICBpZiAoZW50cnkpIHtcbiIpOwotICAgICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlE
ZXNjcmlwdG9ySW1wbCwgIiAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7XG4iKTsKKyAgICAgICAg
ICAgIHB1c2goQGdldE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgICAgIFByb3BlcnR5
U2xvdCBzbG90KHRoaXNPYmplY3QpO1xuIik7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9w
ZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgICAgICBzbG90LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBl
bnRyeS0+cHJvcGVydHlHZXR0ZXIoKSk7XG4iKTsKICAgICAgICAgICAgIHB1c2goQGdldE93blBy
b3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgICAgIGRlc2NyaXB0b3Iuc2V0RGVzY3JpcHRvcihz
bG90LmdldFZhbHVlKGV4ZWMsIHByb3BlcnR5TmFtZSksIGVudHJ5LT5hdHRyaWJ1dGVzKCkpO1xu
Iik7CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAg
ICAgICByZXR1cm4gdHJ1ZTtcbiIpOwpAQCAtNDgyLDcgKzQ4Miw3IEBAIHN1YiBHZW5lcmF0ZUdl
dE93blByb3BlcnR5RGVzY3JpcHRvckJvZHkKICAgICAgICAgICAgICAgICBwdXNoKEBnZXRPd25Q
cm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgICAgICBkZXNjcmlwdG9yLnNldERlc2NyaXB0b3Io
dGhpc09iamVjdC0+Z2V0QnlJbmRleChleGVjLCBpbmRleCksICR7bmFtZXNwYWNlTWF5YmV9RG9u
dERlbGV0ZSB8ICR7bmFtZXNwYWNlTWF5YmV9UmVhZE9ubHkpO1xuIik7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2Ny
aXB0b3JJbXBsLCAiICAgICAgICAke25hbWVzcGFjZU1heWJlfVByb3BlcnR5U2xvdCBzbG90O1xu
Iik7CisgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAg
ICAgICAke25hbWVzcGFjZU1heWJlfVByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmplY3QpO1xuIik7
CiAgICAgICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgICAg
ICBzbG90LnNldEN1c3RvbUluZGV4KHRoaXNPYmplY3QsIGluZGV4LCBpbmRleEdldHRlcik7XG4i
KTsKICAgICAgICAgICAgICMgQXNzdW1lIHRoYXQgaWYgdGhlcmUncyBhIHNldHRlciwgdGhlIGlu
ZGV4IHdpbGwgYmUgd3JpdGFibGUKICAgICAgICAgICAgIGlmICgkaW50ZXJmYWNlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tSW5kZXhlZFNldHRlciJ9KSB7CkBAIC00OTcsNyArNDk3LDcg
QEAgc3ViIEdlbmVyYXRlR2V0T3duUHJvcGVydHlEZXNjcmlwdG9yQm9keQogCiAgICAgaWYgKCRu
YW1lZEdldHRlckZ1bmN0aW9uIHx8ICRpbnRlcmZhY2UtPmV4dGVuZGVkQXR0cmlidXRlcy0+eyJD
dXN0b21OYW1lZEdldHRlciJ9KSB7CiAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5RGVzY3Jp
cHRvckltcGwsICIgICAgaWYgKGNhbkdldEl0ZW1zRm9yTmFtZShleGVjLCBzdGF0aWNfY2FzdDwk
aW50ZXJmYWNlTmFtZSo+KHRoaXNPYmplY3QtPmltcGwoKSksIHByb3BlcnR5TmFtZSkpIHtcbiIp
OwotICAgICAgICBwdXNoKEBnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JJbXBsLCAiICAgICAgICAk
e25hbWVzcGFjZU1heWJlfVByb3BlcnR5U2xvdCBzbG90O1xuIik7CisgICAgICAgIHB1c2goQGdl
dE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgICAgICR7bmFtZXNwYWNlTWF5YmV9UHJv
cGVydHlTbG90IHNsb3QodGhpc09iamVjdCk7XG4iKTsKICAgICAgICAgcHVzaChAZ2V0T3duUHJv
cGVydHlEZXNjcmlwdG9ySW1wbCwgIiAgICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09iamVjdCwg
bmFtZUdldHRlcik7XG4iKTsKICAgICAgICAgcHVzaChAZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9y
SW1wbCwgIiAgICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhl
YywgcHJvcGVydHlOYW1lKSwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0pO1xuIik7
CiAgICAgICAgIHB1c2goQGdldE93blByb3BlcnR5RGVzY3JpcHRvckltcGwsICIgICAgICAgIHJl
dHVybiB0cnVlO1xuIik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9hcnJh
eS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYnJpZGdlL3J1bnRpbWVfYXJyYXku
Y3BwCShyZXZpc2lvbiAxNTM1MzIpCisrKyBTb3VyY2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9h
cnJheS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwNyw3ICsxMDcsNyBAQCBib29sIFJ1bnRpbWVB
cnJheTo6Z2V0T3duUHJvcGVydHlEZXNjcmlwCiB7CiAgICAgUnVudGltZUFycmF5KiB0aGlzT2Jq
ZWN0ID0ganNDYXN0PFJ1bnRpbWVBcnJheSo+KG9iamVjdCk7CiAgICAgaWYgKHByb3BlcnR5TmFt
ZSA9PSBleGVjLT5wcm9wZXJ0eU5hbWVzKCkubGVuZ3RoKSB7Ci0gICAgICAgIFByb3BlcnR5U2xv
dCBzbG90OworICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAgICAgICAg
c2xvdC5zZXRDdXN0b20odGhpc09iamVjdCwgbGVuZ3RoR2V0dGVyKTsKICAgICAgICAgZGVzY3Jp
cHRvci5zZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1lKSwgUmVh
ZE9ubHkgfCBEb250RGVsZXRlIHwgRG9udEVudW0pOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAg
LTExNiw3ICsxMTYsNyBAQCBib29sIFJ1bnRpbWVBcnJheTo6Z2V0T3duUHJvcGVydHlEZXNjcmlw
CiAgICAgdW5zaWduZWQgaW5kZXggPSBwcm9wZXJ0eU5hbWUuYXNJbmRleCgpOwogICAgIGlmIChp
bmRleCA8IHRoaXNPYmplY3QtPmdldExlbmd0aCgpKSB7CiAgICAgICAgIEFTU0VSVChpbmRleCAh
PSBQcm9wZXJ0eU5hbWU6Ok5vdEFuSW5kZXgpOwotICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdDsK
KyAgICAgICAgUHJvcGVydHlTbG90IHNsb3QodGhpc09iamVjdCk7CiAgICAgICAgIHNsb3Quc2V0
Q3VzdG9tSW5kZXgodGhpc09iamVjdCwgaW5kZXgsIGluZGV4R2V0dGVyKTsKICAgICAgICAgZGVz
Y3JpcHRvci5zZXREZXNjcmlwdG9yKHNsb3QuZ2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1lKSwg
RG9udERlbGV0ZSB8IERvbnRFbnVtKTsKICAgICAgICAgcmV0dXJuIHRydWU7CkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcnVudGltZV9tZXRob2QuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAJKHJldmlzaW9uIDE1MzUzMikKKysr
IFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9ydW50aW1lX21ldGhvZC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTc2LDcgKzc2LDcgQEAgYm9vbCBSdW50aW1lTWV0aG9kOjpnZXRPd25Qcm9wZXJ0eURlc2Ny
aQogewogICAgIFJ1bnRpbWVNZXRob2QqIHRoaXNPYmplY3QgPSBqc0Nhc3Q8UnVudGltZU1ldGhv
ZCo+KG9iamVjdCk7CiAgICAgaWYgKHByb3BlcnR5TmFtZSA9PSBleGVjLT5wcm9wZXJ0eU5hbWVz
KCkubGVuZ3RoKSB7Ci0gICAgICAgIFByb3BlcnR5U2xvdCBzbG90OworICAgICAgICBQcm9wZXJ0
eVNsb3Qgc2xvdCh0aGlzT2JqZWN0KTsKICAgICAgICAgc2xvdC5zZXRDdXN0b20odGhpc09iamVj
dCwgbGVuZ3RoR2V0dGVyKTsKICAgICAgICAgZGVzY3JpcHRvci5zZXREZXNjcmlwdG9yKHNsb3Qu
Z2V0VmFsdWUoZXhlYywgcHJvcGVydHlOYW1lKSwgUmVhZE9ubHkgfCBEb250RGVsZXRlIHwgRG9u
dEVudW0pOwogICAgICAgICByZXR1cm4gdHJ1ZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9ydW50aW1lX29iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYnJpZGdl
L3J1bnRpbWVfb2JqZWN0LmNwcAkocmV2aXNpb24gMTUzNTMyKQorKysgU291cmNlL1dlYkNvcmUv
YnJpZGdlL3J1bnRpbWVfb2JqZWN0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTc4LDcgKzE3OCw3
IEBAIGJvb2wgUnVudGltZU9iamVjdDo6Z2V0T3duUHJvcGVydHlEZXNjcmkKICAgICAgICAgLy8g
U2VlIGlmIHRoZSBpbnN0YW5jZSBoYXMgYSBmaWVsZCB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZS4K
ICAgICAgICAgRmllbGQgKmFGaWVsZCA9IGFDbGFzcy0+ZmllbGROYW1lZChwcm9wZXJ0eU5hbWUs
IGluc3RhbmNlLmdldCgpKTsKICAgICAgICAgaWYgKGFGaWVsZCkgewotICAgICAgICAgICAgUHJv
cGVydHlTbG90IHNsb3Q7CisgICAgICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xvdCh0aGlzT2JqZWN0
KTsKICAgICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXNPYmplY3QsIGZpZWxkR2V0dGVyKTsK
ICAgICAgICAgICAgIGluc3RhbmNlLT5lbmQoKTsKICAgICAgICAgICAgIGRlc2NyaXB0b3Iuc2V0
RGVzY3JpcHRvcihzbG90LmdldFZhbHVlKGV4ZWMsIHByb3BlcnR5TmFtZSksIERvbnREZWxldGUp
OwpAQCAtMTg3LDcgKzE4Nyw3IEBAIGJvb2wgUnVudGltZU9iamVjdDo6Z2V0T3duUHJvcGVydHlE
ZXNjcmkKICAgICAgICAgICAgIC8vIE5vdyBjaGVjayBpZiBhIG1ldGhvZCB3aXRoIHNwZWNpZmll
ZCBuYW1lIGV4aXN0cywgaWYgc28gcmV0dXJuIGEgZnVuY3Rpb24gb2JqZWN0IGZvcgogICAgICAg
ICAgICAgLy8gdGhhdCBtZXRob2QuCiAgICAgICAgICAgICBpZiAoYUNsYXNzLT5tZXRob2ROYW1l
ZChwcm9wZXJ0eU5hbWUsIGluc3RhbmNlLmdldCgpKSkgewotICAgICAgICAgICAgICAgIFByb3Bl
cnR5U2xvdCBzbG90OworICAgICAgICAgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmpl
Y3QpOwogICAgICAgICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXNPYmplY3QsIG1ldGhvZEdl
dHRlcik7CiAgICAgICAgICAgICAgICAgaW5zdGFuY2UtPmVuZCgpOwogICAgICAgICAgICAgICAg
IGRlc2NyaXB0b3Iuc2V0RGVzY3JpcHRvcihzbG90LmdldFZhbHVlKGV4ZWMsIHByb3BlcnR5TmFt
ZSksIERvbnREZWxldGUgfCBSZWFkT25seSk7CkBAIC0xOTcsNyArMTk3LDcgQEAgYm9vbCBSdW50
aW1lT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eURlc2NyaQogICAgICAgICAKICAgICAgICAgLy8gVHJ5
IGEgZmFsbGJhY2sgb2JqZWN0LgogICAgICAgICBpZiAoIWFDbGFzcy0+ZmFsbGJhY2tPYmplY3Qo
ZXhlYywgaW5zdGFuY2UuZ2V0KCksIHByb3BlcnR5TmFtZSkuaXNVbmRlZmluZWQoKSkgewotICAg
ICAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAgICAgICAgICBQcm9wZXJ0eVNsb3Qgc2xv
dCh0aGlzT2JqZWN0KTsKICAgICAgICAgICAgIHNsb3Quc2V0Q3VzdG9tKHRoaXNPYmplY3QsIGZh
bGxiYWNrT2JqZWN0R2V0dGVyKTsKICAgICAgICAgICAgIGluc3RhbmNlLT5lbmQoKTsKICAgICAg
ICAgICAgIGRlc2NyaXB0b3Iuc2V0RGVzY3JpcHRvcihzbG90LmdldFZhbHVlKGV4ZWMsIHByb3Bl
cnR5TmFtZSksIERvbnREZWxldGUgfCBSZWFkT25seSB8IERvbnRFbnVtKTsKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cJKHJldmlzaW9uIDE1MzY2NSkKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDEzLTA4LTAyICBHYXZpbiBCYXJyYWNsb3VnaCAg
PGJhcnJhY2xvdWdoQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgbm8tYXJndW1lbnRzIGNv
bnN0cnVjdG9yIHRvIFByb3BlcnR5U2xvdAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTE5NDYwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVGhpcyBjb25zdHJ1Y3RvciB3YXMgdW5zYWZlIGlmIGdldFZhbHVl
IGlzIHN1YnNlcXVlbnRseSBjYWxsZWQsCisgICAgICAgIGFuZCB0aGUgcHJvcGVydHkgaXMgYSBn
ZXR0ZXIuIFNpbXBsZXN0IHRvIGp1c3QgcmVtb3ZlIGl0LgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpKU05Q
T2JqZWN0OjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IpOgorCiAyMDEzLTA4LTAxICBSdXRoIEZv
bmcgIDxydXRoX2ZvbmdAYXBwbGUuY29tPgogCiAgICAgICAgIFtGb3JtczogY29sb3JdIDxpbnB1
dCB0eXBlPSdjb2xvcic+IHBvcG92ZXIgY29sb3Igd2VsbCBpbXBsZW1lbnRhdGlvbgpJbmRleDog
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2Fw
ZS9KU05QT2JqZWN0LmNwcAkocmV2aXNpb24gMTUzNTMyKQorKysgU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL0pTTlBPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC0zMDcsNyArMzA3LDcgQEAgYm9vbCBKU05QT2JqZWN0OjpnZXRPd25Qcm9wZXJ0eURlc2NyaXB0
bwogCiAgICAgLy8gRmlyc3QsIGNoZWNrIGlmIHRoZSBOUE9iamVjdCBoYXMgYSBwcm9wZXJ0eSB3
aXRoIHRoaXMgbmFtZS4KICAgICBpZiAodGhpc09iamVjdC0+bV9ucE9iamVjdC0+X2NsYXNzLT5o
YXNQcm9wZXJ0eSAmJiB0aGlzT2JqZWN0LT5tX25wT2JqZWN0LT5fY2xhc3MtPmhhc1Byb3BlcnR5
KHRoaXNPYmplY3QtPm1fbnBPYmplY3QsIG5wSWRlbnRpZmllcikpIHsKLSAgICAgICAgUHJvcGVy
dHlTbG90IHNsb3Q7CisgICAgICAgIFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmplY3QpOwogICAg
ICAgICBzbG90LnNldEN1c3RvbSh0aGlzT2JqZWN0LCBwcm9wZXJ0eUdldHRlcik7CiAgICAgICAg
IGRlc2NyaXB0b3Iuc2V0RGVzY3JpcHRvcihzbG90LmdldFZhbHVlKGV4ZWMsIHByb3BlcnR5TmFt
ZSksIERvbnREZWxldGUpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKQEAgLTMxNSw3ICszMTUsNyBA
QCBib29sIEpTTlBPYmplY3Q6OmdldE93blByb3BlcnR5RGVzY3JpcHRvCiAKICAgICAvLyBTZWNv
bmQsIGNoZWNrIGlmIHRoZSBOUE9iamVjdCBoYXMgYSBtZXRob2Qgd2l0aCB0aGlzIG5hbWUuCiAg
ICAgaWYgKHRoaXNPYmplY3QtPm1fbnBPYmplY3QtPl9jbGFzcy0+aGFzTWV0aG9kICYmIHRoaXNP
YmplY3QtPm1fbnBPYmplY3QtPl9jbGFzcy0+aGFzTWV0aG9kKHRoaXNPYmplY3QtPm1fbnBPYmpl
Y3QsIG5wSWRlbnRpZmllcikpIHsKLSAgICAgICAgUHJvcGVydHlTbG90IHNsb3Q7CisgICAgICAg
IFByb3BlcnR5U2xvdCBzbG90KHRoaXNPYmplY3QpOwogICAgICAgICBzbG90LnNldEN1c3RvbSh0
aGlzT2JqZWN0LCBtZXRob2RHZXR0ZXIpOwogICAgICAgICBkZXNjcmlwdG9yLnNldERlc2NyaXB0
b3Ioc2xvdC5nZXRWYWx1ZShleGVjLCBwcm9wZXJ0eU5hbWUpLCBEb250RGVsZXRlIHwgUmVhZE9u
bHkpOwogICAgICAgICByZXR1cm4gdHJ1ZTsK
</data>
<flag name="review"
          id="229910"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>