<?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>61351</bug_id>
          
          <creation_ts>2011-05-24 02:32:11 -0700</creation_ts>
          <short_desc>Use Element::shadowPseudoId() for text field decoration elements</short_desc>
          <delta_ts>2011-05-24 17:19:55 -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>DOM</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>61166</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Kent Tamura">tkent</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>morrita</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>408742</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 02:32:11 -0700</bug_when>
    <thetext>Use Element::shodowPseudoId() for text field decoration elements</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408746</commentid>
    <comment_count>1</comment_count>
      <attachid>94587</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 02:45:23 -0700</bug_when>
    <thetext>Created attachment 94587
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408747</commentid>
    <comment_count>2</comment_count>
      <attachid>94587</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 02:47:18 -0700</bug_when>
    <thetext>Comment on attachment 94587
Patch

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

&gt; Source/WebCore/html/shadow/TextControlInnerElements.cpp:129
&gt; +    Node* host = const_cast&lt;SearchFieldResultsButtonElement*&gt;(this)-&gt;shadowAncestorNode();

Unfortunately const_cast&lt;&gt; is required.  Too bad.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408853</commentid>
    <comment_count>3</comment_count>
      <attachid>94587</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-05-24 08:08:20 -0700</bug_when>
    <thetext>Comment on attachment 94587
Patch

lovely.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408869</commentid>
    <comment_count>4</comment_count>
      <attachid>94587</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-05-24 08:23:44 -0700</bug_when>
    <thetext>Comment on attachment 94587
Patch

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

&gt; Source/WebCore/ChangeLog:5
&gt; +        Use Element::shodowPseudoId() for text field decoration elements

Misspelled changelog!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408870</commentid>
    <comment_count>5</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2011-05-24 08:24:09 -0700</bug_when>
    <thetext>Sorry, didn&apos;t want this to land and forever be misspelled in the history of WebKit :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>408871</commentid>
    <comment_count>6</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 08:26:54 -0700</bug_when>
    <thetext>shodow!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409325</commentid>
    <comment_count>7</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 17:18:49 -0700</bug_when>
    <thetext>Committed r87235: &lt;http://trac.webkit.org/changeset/87235&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>409326</commentid>
    <comment_count>8</comment_count>
      <attachid>94587</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-05-24 17:19:55 -0700</bug_when>
    <thetext>Comment on attachment 94587
Patch

Landed with a typo fix and const_cast removal.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>94587</attachid>
            <date>2011-05-24 02:45:23 -0700</date>
            <delta_ts>2011-05-24 17:19:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-61351-20110524184520.patch</filename>
            <type>text/plain</type>
            <size>22872</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODcxMjUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA5Y2QxODIyYjA4ZDJjOThk
Y2Y0YzNmZjBjYTRmNWZjNzQ1NGJkZjY4Li5lOTUyNDEwNzY4ZWZkNTQzNGU1MjU2OGEzMGFlODFl
NTNiZTM3NjdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkgQEAKKzIwMTEtMDUtMjQgIEtlbnQg
VGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVzZSBFbGVtZW50OjpzaG9kb3dQc2V1ZG9JZCgpIGZvciB0
ZXh0IGZpZWxkIGRlY29yYXRpb24gZWxlbWVudHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTYxMzUxCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiBDb3Zl
cmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmNwcDog
UmVtb3ZlIHN1cHBvcnQgZm9yIHRoZSBmb2xsb3dpbmcgc3RhdGljIHBzZXVkbyBzZWxlY3RvcnM6
CisgICAgICAgICAgLSAtd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uCisgICAgICAgICAgLSAtd2Vi
a2l0LWlucHV0LXNwZWVjaC1idXR0b24KKyAgICAgICAgICAtIC13ZWJraXQtb3V0ZXItc3Bpbi1i
dXR0b24KKyAgICAgICAgICAtIC13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24KKyAgICAgICAg
ICAtIC13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24KKyAgICAgICAgICAtIC13ZWJraXQtc2VhcmNo
LXJlc3VsdHMtYnV0dG9uCisgICAgICAgICAgLSAtd2Via2l0LXNlYXJjaC1yZXN1bHRzLWRlY29y
YXRpb24KKyAgICAgICAgKFdlYkNvcmU6OkNTU1NlbGVjdG9yOjpwc2V1ZG9JZCk6CisgICAgICAg
IChXZWJDb3JlOjpuYW1lVG9Qc2V1ZG9UeXBlTWFwKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Nl
bGVjdG9yOjpleHRyYWN0UHNldWRvVHlwZSk6CisgICAgICAgICogY3NzL0NTU1NlbGVjdG9yLmg6
IGRpdHRvLgorICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6Om1hdGNoUnVsZXMpOgorICAgICAgICAgIFN0b3JlIHNo
YWRvd1BzZXVkb0lkKCkgcmVzdWx0IGluIGEgbG9jYWwgdmFyaWFibGUgYmVjYXVzZQorICAgICAg
ICAgIFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKCkgaXMg
YSBsaXR0bGUgZXhwZW5zaXZlLgorICAgICAgICAqIGh0bWwvc2hhZG93L1RleHRDb250cm9sSW5u
ZXJFbGVtZW50cy5jcHA6CisgICAgICAgICBPdmVycmlkZSBFbGVtZW50OjpzaGFkb3dQc2V1ZG9J
ZCgpIGluc3RlYWQgb2YgRWxlbWVudDo6c3R5bGVGb3JSZW5kZXJlcigpLgorICAgICAgICAoV2Vi
Q29yZTo6U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2hhZG93UHNldWRvSWQpOgor
ICAgICAgICAoV2ViQ29yZTo6U2VhcmNoRmllbGRDYW5jZWxCdXR0b25FbGVtZW50OjpzaGFkb3dQ
c2V1ZG9JZCk6CisgICAgICAgIChXZWJDb3JlOjpTcGluQnV0dG9uRWxlbWVudDo6c2hhZG93UHNl
dWRvSWQpOgorICAgICAgICAoV2ViQ29yZTo6SW5wdXRGaWVsZFNwZWVjaEJ1dHRvbkVsZW1lbnQ6
OnNoYWRvd1BzZXVkb0lkKToKKyAgICAgICAgKiBodG1sL3NoYWRvdy9UZXh0Q29udHJvbElubmVy
RWxlbWVudHMuaDogVXBkYXRlIGRlY2xhcmF0aW9ucy4KKyAgICAgICAgKiByZW5kZXJpbmcvUmVu
ZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lLmNwcDogUmVtb3ZlIGNyZWF0ZUZvb1N0eWxlKCkgZnVu
Y3Rpb25zLgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUu
aDogZGl0dG8uCisgICAgICAgICogcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRz
Lmg6IFJlbW92ZSB1bnVzZWQgcHNldWRvIElEcy4KKwogMjAxMS0wNS0xOSAgTU9SSVRBIEhhamlt
ZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEaW1pdHJpIEds
YXprb3YuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1NlbGVjdG9yLmNwcAppbmRleCAyZmJmY2UwYjdkMzUwYzBh
Yjk5MWYxODE5ZmViNzIzNGRlM2QyOWM5Li5jNjE0ZGQ0ZjUxNmUxZTZlYWUwNzNlMWUwNDQ1ODY5
ZjkyZTUzZmYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VsZWN0b3IuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5jcHAKQEAgLTEzMCwxOCArMTMw
LDYgQEAgUHNldWRvSWQgQ1NTU2VsZWN0b3I6OnBzZXVkb0lkKFBzZXVkb1R5cGUgdHlwZSkKICAg
ICAgICAgcmV0dXJuIEZJTEVfVVBMT0FEX0JVVFRPTjsKICAgICBjYXNlIFBzZXVkb0lucHV0UGxh
Y2Vob2xkZXI6CiAgICAgICAgIHJldHVybiBJTlBVVF9QTEFDRUhPTERFUjsKLSNpZiBFTkFCTEUo
SU5QVVRfU1BFRUNIKQotICAgIGNhc2UgUHNldWRvSW5wdXRTcGVlY2hCdXR0b246Ci0gICAgICAg
IHJldHVybiBJTlBVVF9TUEVFQ0hfQlVUVE9OOwotI2VuZGlmCi0gICAgY2FzZSBQc2V1ZG9TZWFy
Y2hDYW5jZWxCdXR0b246Ci0gICAgICAgIHJldHVybiBTRUFSQ0hfQ0FOQ0VMX0JVVFRPTjsKLSAg
ICBjYXNlIFBzZXVkb1NlYXJjaERlY29yYXRpb246Ci0gICAgICAgIHJldHVybiBTRUFSQ0hfREVD
T1JBVElPTjsKLSAgICBjYXNlIFBzZXVkb1NlYXJjaFJlc3VsdHNEZWNvcmF0aW9uOgotICAgICAg
ICByZXR1cm4gU0VBUkNIX1JFU1VMVFNfREVDT1JBVElPTjsKLSAgICBjYXNlIFBzZXVkb1NlYXJj
aFJlc3VsdHNCdXR0b246Ci0gICAgICAgIHJldHVybiBTRUFSQ0hfUkVTVUxUU19CVVRUT047CiAg
ICAgY2FzZSBQc2V1ZG9TY3JvbGxiYXI6CiAgICAgICAgIHJldHVybiBTQ1JPTExCQVI7CiAgICAg
Y2FzZSBQc2V1ZG9TY3JvbGxiYXJCdXR0b246CkBAIC0xNTYsMTAgKzE0NCw2IEBAIFBzZXVkb0lk
IENTU1NlbGVjdG9yOjpwc2V1ZG9JZChQc2V1ZG9UeXBlIHR5cGUpCiAgICAgICAgIHJldHVybiBT
Q1JPTExCQVJfVFJBQ0tfUElFQ0U7CiAgICAgY2FzZSBQc2V1ZG9SZXNpemVyOgogICAgICAgICBy
ZXR1cm4gUkVTSVpFUjsKLSAgICBjYXNlIFBzZXVkb0lubmVyU3BpbkJ1dHRvbjoKLSAgICAgICAg
cmV0dXJuIElOTkVSX1NQSU5fQlVUVE9OOwotICAgIGNhc2UgUHNldWRvT3V0ZXJTcGluQnV0dG9u
OgotICAgICAgICByZXR1cm4gT1VURVJfU1BJTl9CVVRUT047CiAjaWYgRU5BQkxFKEZVTExTQ1JF
RU5fQVBJKQogICAgIGNhc2UgUHNldWRvRnVsbFNjcmVlbjoKICAgICAgICAgcmV0dXJuIEZVTExf
U0NSRUVOOwpAQCAtMjUwLDkgKzIzNCw2IEBAIHN0YXRpYyBIYXNoTWFwPEF0b21pY1N0cmluZ0lt
cGwqLCBDU1NTZWxlY3Rvcjo6UHNldWRvVHlwZT4qIG5hbWVUb1BzZXVkb1R5cGVNYXAoCiAgICAg
REVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIGJlZm9yZSwgKCJiZWZvcmUiKSk7CiAg
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIGNoZWNrZWQsICgiY2hlY2tlZCIp
KTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgZmlsZVVwbG9hZEJ1dHRv
biwgKCItd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiIpKTsKLSNpZiBFTkFCTEUoSU5QVVRfU1BF
RUNIKQotICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBpbnB1dFNwZWVjaEJ1
dHRvbiwgKCItd2Via2l0LWlucHV0LXNwZWVjaC1idXR0b24iKSk7Ci0jZW5kaWYKICAgICBERUZJ
TkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgZGVmYXVsdFN0cmluZywgKCJkZWZhdWx0Iikp
OwogICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBkaXNhYmxlZCwgKCJkaXNh
YmxlZCIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgcmVhZE9ubHks
ICgicmVhZC1vbmx5IikpOwpAQCAtMjc1LDcgKzI1Niw2IEBAIHN0YXRpYyBIYXNoTWFwPEF0b21p
Y1N0cmluZ0ltcGwqLCBDU1NTZWxlY3Rvcjo6UHNldWRvVHlwZT4qIG5hbWVUb1BzZXVkb1R5cGVN
YXAoCiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIGZvY3VzLCAoImZvY3Vz
IikpOwogICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBob3ZlciwgKCJob3Zl
ciIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgaW5kZXRlcm1pbmF0
ZSwgKCJpbmRldGVybWluYXRlIikpOwotICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3Ry
aW5nLCBpbm5lclNwaW5CdXR0b24sICgiLXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbiIpKTsKICNp
ZiBFTkFCTEUoREFUQUxJU1QpCiAgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcs
IGlucHV0TGlzdEJ1dHRvbiwgKCItd2Via2l0LWlucHV0LWxpc3QtYnV0dG9uIikpOwogI2VuZGlm
CkBAIC0yODgsNyArMjY4LDYgQEAgc3RhdGljIEhhc2hNYXA8QXRvbWljU3RyaW5nSW1wbCosIENT
U1NlbGVjdG9yOjpQc2V1ZG9UeXBlPiogbmFtZVRvUHNldWRvVHlwZU1hcCgKICAgICBERUZJTkVf
U1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgb25seUNoaWxkLCAoIm9ubHktY2hpbGQiKSk7CiAg
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIG9ubHlPZlR5cGUsICgib25seS1v
Zi10eXBlIikpOwogICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBvcHRpb25h
bCwgKCJvcHRpb25hbCIpKTsKLSAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywg
b3V0ZXJTcGluQnV0dG9uLCAoIi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24iKSk7CiAgICAgREVG
SU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIHJlcXVpcmVkLCAoInJlcXVpcmVkIikpOwog
ICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCByZXNpemVyLCAoIi13ZWJraXQt
cmVzaXplciIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmluZywgcm9vdCwg
KCJyb290IikpOwpAQCAtMjk4LDEwICsyNzcsNiBAQCBzdGF0aWMgSGFzaE1hcDxBdG9taWNTdHJp
bmdJbXBsKiwgQ1NTU2VsZWN0b3I6OlBzZXVkb1R5cGU+KiBuYW1lVG9Qc2V1ZG9UeXBlTWFwKAog
ICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBzY3JvbGxiYXJUaHVtYiwgKCIt
d2Via2l0LXNjcm9sbGJhci10aHVtYiIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21p
Y1N0cmluZywgc2Nyb2xsYmFyVHJhY2ssICgiLXdlYmtpdC1zY3JvbGxiYXItdHJhY2siKSk7CiAg
ICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIHNjcm9sbGJhclRyYWNrUGllY2Us
ICgiLXdlYmtpdC1zY3JvbGxiYXItdHJhY2stcGllY2UiKSk7Ci0gICAgREVGSU5FX1NUQVRJQ19M
T0NBTChBdG9taWNTdHJpbmcsIHNlYXJjaENhbmNlbEJ1dHRvbiwgKCItd2Via2l0LXNlYXJjaC1j
YW5jZWwtYnV0dG9uIikpOwotICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBz
ZWFyY2hEZWNvcmF0aW9uLCAoIi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24iKSk7Ci0gICAgREVG
SU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIHNlYXJjaFJlc3VsdHNEZWNvcmF0aW9uLCAo
Ii13ZWJraXQtc2VhcmNoLXJlc3VsdHMtZGVjb3JhdGlvbiIpKTsKLSAgICBERUZJTkVfU1RBVElD
X0xPQ0FMKEF0b21pY1N0cmluZywgc2VhcmNoUmVzdWx0c0J1dHRvbiwgKCItd2Via2l0LXNlYXJj
aC1yZXN1bHRzLWJ1dHRvbiIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0b21pY1N0cmlu
Zywgc2VsZWN0aW9uLCAoInNlbGVjdGlvbiIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEF0
b21pY1N0cmluZywgdGFyZ2V0LCAoInRhcmdldCIpKTsKICAgICBERUZJTkVfU1RBVElDX0xPQ0FM
KEF0b21pY1N0cmluZywgdmlzaXRlZCwgKCJ2aXNpdGVkIikpOwpAQCAtMzQwLDkgKzMxNSw2IEBA
IHN0YXRpYyBIYXNoTWFwPEF0b21pY1N0cmluZ0ltcGwqLCBDU1NTZWxlY3Rvcjo6UHNldWRvVHlw
ZT4qIG5hbWVUb1BzZXVkb1R5cGVNYXAoCiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChi
ZWZvcmUuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvQmVmb3JlKTsKICAgICAgICAgbmFtZVRv
UHNldWRvVHlwZS0+c2V0KGNoZWNrZWQuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvQ2hlY2tl
ZCk7CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChmaWxlVXBsb2FkQnV0dG9uLmltcGwo
KSwgQ1NTU2VsZWN0b3I6OlBzZXVkb0ZpbGVVcGxvYWRCdXR0b24pOwotI2lmIEVOQUJMRShJTlBV
VF9TUEVFQ0gpCi0gICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChpbnB1dFNwZWVjaEJ1dHRv
bi5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9JbnB1dFNwZWVjaEJ1dHRvbik7Ci0jZW5kaWYK
ICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KGRlZmF1bHRTdHJpbmcuaW1wbCgpLCBDU1NT
ZWxlY3Rvcjo6UHNldWRvRGVmYXVsdCk7CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChk
aXNhYmxlZC5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9EaXNhYmxlZCk7CiAgICAgICAgIG5h
bWVUb1BzZXVkb1R5cGUtPnNldChyZWFkT25seS5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9S
ZWFkT25seSk7CkBAIC0zNjksNyArMzQxLDYgQEAgc3RhdGljIEhhc2hNYXA8QXRvbWljU3RyaW5n
SW1wbCosIENTU1NlbGVjdG9yOjpQc2V1ZG9UeXBlPiogbmFtZVRvUHNldWRvVHlwZU1hcCgKICAg
ICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KGZvY3VzLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBz
ZXVkb0ZvY3VzKTsKICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KGhvdmVyLmltcGwoKSwg
Q1NTU2VsZWN0b3I6OlBzZXVkb0hvdmVyKTsKICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0
KGluZGV0ZXJtaW5hdGUuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvSW5kZXRlcm1pbmF0ZSk7
Ci0gICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChpbm5lclNwaW5CdXR0b24uaW1wbCgpLCBD
U1NTZWxlY3Rvcjo6UHNldWRvSW5uZXJTcGluQnV0dG9uKTsKICAgICAgICAgbmFtZVRvUHNldWRv
VHlwZS0+c2V0KGxpbmsuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvTGluayk7CiAgICAgICAg
IG5hbWVUb1BzZXVkb1R5cGUtPnNldChsYW5nLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb0xh
bmcpOwogICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5zZXQobm90U3RyLmltcGwoKSwgQ1NTU2Vs
ZWN0b3I6OlBzZXVkb05vdCk7CkBAIC0zNzcsNyArMzQ4LDYgQEAgc3RhdGljIEhhc2hNYXA8QXRv
bWljU3RyaW5nSW1wbCosIENTU1NlbGVjdG9yOjpQc2V1ZG9UeXBlPiogbmFtZVRvUHNldWRvVHlw
ZU1hcCgKICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KG50aE9mVHlwZS5pbXBsKCksIENT
U1NlbGVjdG9yOjpQc2V1ZG9OdGhPZlR5cGUpOwogICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5z
ZXQobnRoTGFzdENoaWxkLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb050aExhc3RDaGlsZCk7
CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChudGhMYXN0T2ZUeXBlLmltcGwoKSwgQ1NT
U2VsZWN0b3I6OlBzZXVkb050aExhc3RPZlR5cGUpOwotICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBl
LT5zZXQob3V0ZXJTcGluQnV0dG9uLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb091dGVyU3Bp
bkJ1dHRvbik7CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChyb290LmltcGwoKSwgQ1NT
U2VsZWN0b3I6OlBzZXVkb1Jvb3QpOwogICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5zZXQod2lu
ZG93SW5hY3RpdmUuaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvV2luZG93SW5hY3RpdmUpOwog
ICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5zZXQoZGVjcmVtZW50LmltcGwoKSwgQ1NTU2VsZWN0
b3I6OlBzZXVkb0RlY3JlbWVudCk7CkBAIC0zOTksMTAgKzM2OSw2IEBAIHN0YXRpYyBIYXNoTWFw
PEF0b21pY1N0cmluZ0ltcGwqLCBDU1NTZWxlY3Rvcjo6UHNldWRvVHlwZT4qIG5hbWVUb1BzZXVk
b1R5cGVNYXAoCiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChzY3JvbGxiYXJUcmFjay5p
bXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9TY3JvbGxiYXJUcmFjayk7CiAgICAgICAgIG5hbWVU
b1BzZXVkb1R5cGUtPnNldChzY3JvbGxiYXJUcmFja1BpZWNlLmltcGwoKSwgQ1NTU2VsZWN0b3I6
OlBzZXVkb1Njcm9sbGJhclRyYWNrUGllY2UpOwogICAgICAgICBuYW1lVG9Qc2V1ZG9UeXBlLT5z
ZXQoY29ybmVyUHJlc2VudC5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9Db3JuZXJQcmVzZW50
KTsKLSAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KHNlYXJjaENhbmNlbEJ1dHRvbi5pbXBs
KCksIENTU1NlbGVjdG9yOjpQc2V1ZG9TZWFyY2hDYW5jZWxCdXR0b24pOwotICAgICAgICBuYW1l
VG9Qc2V1ZG9UeXBlLT5zZXQoc2VhcmNoRGVjb3JhdGlvbi5pbXBsKCksIENTU1NlbGVjdG9yOjpQ
c2V1ZG9TZWFyY2hEZWNvcmF0aW9uKTsKLSAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KHNl
YXJjaFJlc3VsdHNEZWNvcmF0aW9uLmltcGwoKSwgQ1NTU2VsZWN0b3I6OlBzZXVkb1NlYXJjaFJl
c3VsdHNEZWNvcmF0aW9uKTsKLSAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0KHNlYXJjaFJl
c3VsdHNCdXR0b24uaW1wbCgpLCBDU1NTZWxlY3Rvcjo6UHNldWRvU2VhcmNoUmVzdWx0c0J1dHRv
bik7CiAgICAgICAgIG5hbWVUb1BzZXVkb1R5cGUtPnNldChzZWxlY3Rpb24uaW1wbCgpLCBDU1NT
ZWxlY3Rvcjo6UHNldWRvU2VsZWN0aW9uKTsKICAgICAgICAgbmFtZVRvUHNldWRvVHlwZS0+c2V0
KHRhcmdldC5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9UYXJnZXQpOwogICAgICAgICBuYW1l
VG9Qc2V1ZG9UeXBlLT5zZXQodmlzaXRlZC5pbXBsKCksIENTU1NlbGVjdG9yOjpQc2V1ZG9WaXNp
dGVkKTsKQEAgLTQ1MCwxMSArNDE2LDYgQEAgdm9pZCBDU1NTZWxlY3Rvcjo6ZXh0cmFjdFBzZXVk
b1R5cGUoKSBjb25zdAogICAgIGNhc2UgUHNldWRvRmlsZVVwbG9hZEJ1dHRvbjoKICAgICBjYXNl
IFBzZXVkb0lucHV0TGlzdEJ1dHRvbjoKICAgICBjYXNlIFBzZXVkb0lucHV0UGxhY2Vob2xkZXI6
Ci0jaWYgRU5BQkxFKElOUFVUX1NQRUVDSCkKLSAgICBjYXNlIFBzZXVkb0lucHV0U3BlZWNoQnV0
dG9uOgotI2VuZGlmCi0gICAgY2FzZSBQc2V1ZG9Jbm5lclNwaW5CdXR0b246Ci0gICAgY2FzZSBQ
c2V1ZG9PdXRlclNwaW5CdXR0b246IAogICAgIGNhc2UgUHNldWRvUmVzaXplcjoKICAgICBjYXNl
IFBzZXVkb1Njcm9sbGJhcjoKICAgICBjYXNlIFBzZXVkb1Njcm9sbGJhckNvcm5lcjoKQEAgLTQ2
MiwxMCArNDIzLDYgQEAgdm9pZCBDU1NTZWxlY3Rvcjo6ZXh0cmFjdFBzZXVkb1R5cGUoKSBjb25z
dAogICAgIGNhc2UgUHNldWRvU2Nyb2xsYmFyVGh1bWI6CiAgICAgY2FzZSBQc2V1ZG9TY3JvbGxi
YXJUcmFjazoKICAgICBjYXNlIFBzZXVkb1Njcm9sbGJhclRyYWNrUGllY2U6Ci0gICAgY2FzZSBQ
c2V1ZG9TZWFyY2hDYW5jZWxCdXR0b246Ci0gICAgY2FzZSBQc2V1ZG9TZWFyY2hEZWNvcmF0aW9u
OgotICAgIGNhc2UgUHNldWRvU2VhcmNoUmVzdWx0c0RlY29yYXRpb246Ci0gICAgY2FzZSBQc2V1
ZG9TZWFyY2hSZXN1bHRzQnV0dG9uOgogICAgIGNhc2UgUHNldWRvU2VsZWN0aW9uOgogICAgICAg
ICBlbGVtZW50ID0gdHJ1ZTsKICAgICAgICAgYnJlYWs7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTU2VsZWN0b3IuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rvci5o
CmluZGV4IDVhNjg3ZmM4Mzg3MTM0ZTg1ZjJlOTRmZWI5ZDQ0NDhhM2ZiZWJjODIuLmNhZTE3YTY4
YTQ5MTE0ZjkzN2U1NjhmZGE4ZWU0NzU4N2RkMGI0ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NTZWxlY3Rvci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWxlY3Rv
ci5oCkBAIC0xNzMsMTYgKzE3Myw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgICAg
IFBzZXVkb05vQnV0dG9uLAogICAgICAgICAgICAgUHNldWRvU2VsZWN0aW9uLAogICAgICAgICAg
ICAgUHNldWRvRmlsZVVwbG9hZEJ1dHRvbiwKLSAgICAgICAgICAgIFBzZXVkb1NlYXJjaENhbmNl
bEJ1dHRvbiwKLSAgICAgICAgICAgIFBzZXVkb1NlYXJjaERlY29yYXRpb24sCi0gICAgICAgICAg
ICBQc2V1ZG9TZWFyY2hSZXN1bHRzRGVjb3JhdGlvbiwKLSAgICAgICAgICAgIFBzZXVkb1NlYXJj
aFJlc3VsdHNCdXR0b24sCiAgICAgICAgICAgICBQc2V1ZG9JbnB1dExpc3RCdXR0b24sCi0jaWYg
RU5BQkxFKElOUFVUX1NQRUVDSCkKLSAgICAgICAgICAgIFBzZXVkb0lucHV0U3BlZWNoQnV0dG9u
LAotI2VuZGlmCi0gICAgICAgICAgICBQc2V1ZG9Jbm5lclNwaW5CdXR0b24sCi0gICAgICAgICAg
ICBQc2V1ZG9PdXRlclNwaW5CdXR0b24sCiAgICAgICAgICAgICBQc2V1ZG9MZWZ0UGFnZSwKICAg
ICAgICAgICAgIFBzZXVkb1JpZ2h0UGFnZSwKICAgICAgICAgICAgIFBzZXVkb0ZpcnN0UGFnZSwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAppbmRleCBkYjYyZTQ4NWU5Y2Ix
NGVjYmZiNzRmYTc5NDcxZDgxNGY5YmM2M2UzLi43NDg4MDNkZDY4NTEyNWYxMDlkY2ViNGE2MDBi
MjY4ODRhOGEzMWYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxl
Y3Rvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBA
IC03MDgsOSArNzA4LDEwIEBAIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6bWF0Y2hSdWxlcyhSdWxl
U2V0KiBydWxlcywgaW50JiBmaXJzdFJ1bGVJbmRleCwgaW50JiBsYXN0CiAgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgc2l6ZTsgKytpKQogICAgICAgICAgICAgbWF0Y2hSdWxlc0Zvckxp
c3QocnVsZXMtPmdldENsYXNzUnVsZXMoY2xhc3NOYW1lc1tpXS5pbXBsKCkpLCBmaXJzdFJ1bGVJ
bmRleCwgbGFzdFJ1bGVJbmRleCwgaW5jbHVkZUVtcHR5UnVsZXMpOwogICAgIH0KLSAgICBpZiAo
IW1fZWxlbWVudC0+c2hhZG93UHNldWRvSWQoKS5pc0VtcHR5KCkpIHsKKyAgICBjb25zdCBBdG9t
aWNTdHJpbmcmIHBzZXVkb0lkID0gbV9lbGVtZW50LT5zaGFkb3dQc2V1ZG9JZCgpOworICAgIGlm
ICghcHNldWRvSWQuaXNFbXB0eSgpKSB7CiAgICAgICAgIEFTU0VSVChtX3N0eWxlZEVsZW1lbnQp
OwotICAgICAgICBtYXRjaFJ1bGVzRm9yTGlzdChydWxlcy0+Z2V0UHNldWRvUnVsZXMobV9lbGVt
ZW50LT5zaGFkb3dQc2V1ZG9JZCgpLmltcGwoKSksIGZpcnN0UnVsZUluZGV4LCBsYXN0UnVsZUlu
ZGV4LCBpbmNsdWRlRW1wdHlSdWxlcyk7CisgICAgICAgIG1hdGNoUnVsZXNGb3JMaXN0KHJ1bGVz
LT5nZXRQc2V1ZG9SdWxlcyhwc2V1ZG9JZC5pbXBsKCkpLCBmaXJzdFJ1bGVJbmRleCwgbGFzdFJ1
bGVJbmRleCwgaW5jbHVkZUVtcHR5UnVsZXMpOwogICAgIH0KICAgICBtYXRjaFJ1bGVzRm9yTGlz
dChydWxlcy0+Z2V0VGFnUnVsZXMobV9lbGVtZW50LT5sb2NhbE5hbWUoKS5pbXBsKCkpLCBmaXJz
dFJ1bGVJbmRleCwgbGFzdFJ1bGVJbmRleCwgaW5jbHVkZUVtcHR5UnVsZXMpOwogICAgIG1hdGNo
UnVsZXNGb3JMaXN0KHJ1bGVzLT5nZXRVbml2ZXJzYWxSdWxlcygpLCBmaXJzdFJ1bGVJbmRleCwg
bGFzdFJ1bGVJbmRleCwgaW5jbHVkZUVtcHR5UnVsZXMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvc2hhZG93L1RleHRDb250cm9sSW5uZXJFbGVtZW50cy5jcHAKaW5kZXggOWRj
MDJmYzFkNmZjZjYwMDc4YzA1ZWZkMWFhNjYyOTJlMTIwYTZiNy4uOWZmY2FjNDU0MjU1MzAyMTY4
YjE2NmI2YTI2ZTAyMmFmNTJlYjkwNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9z
aGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1lbnRzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3NoYWRvdy9UZXh0Q29udHJvbElubmVyRWxlbWVudHMuY3BwCkBAIC0xMjEsMTAgKzEyMSwy
MiBAQCBQYXNzUmVmUHRyPFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ+IFNlYXJjaEZp
ZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OmNyZQogICAgIHJldHVybiBhZG9wdFJlZihuZXcgU2Vh
cmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudChkb2N1bWVudCkpOwogfQogCi1QYXNzUmVmUHRy
PFJlbmRlclN0eWxlPiBTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50OjpzdHlsZUZvclJl
bmRlcmVyKCkKLXsKLSAgICBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUqIHBhcmVudFJlbmRl
cmVyID0gdG9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUoc2hhZG93QW5jZXN0b3JOb2RlKCkt
PnJlbmRlcmVyKCkpOwotICAgIHJldHVybiBwYXJlbnRSZW5kZXJlci0+Y3JlYXRlUmVzdWx0c0J1
dHRvblN0eWxlKHBhcmVudFJlbmRlcmVyLT5zdHlsZSgpKTsKK2NvbnN0IEF0b21pY1N0cmluZyYg
U2VhcmNoRmllbGRSZXN1bHRzQnV0dG9uRWxlbWVudDo6c2hhZG93UHNldWRvSWQoKSBjb25zdAor
eworICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCByZXN1bHRzSWQsICgiLXdl
YmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24iKSk7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChB
dG9taWNTdHJpbmcsIHJlc3VsdHNEZWNvcmF0aW9uSWQsICgiLXdlYmtpdC1zZWFyY2gtcmVzdWx0
cy1kZWNvcmF0aW9uIikpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWljU3RyaW5nLCBk
ZWNvcmF0aW9uSWQsICgiLXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiIpKTsKKyAgICBOb2RlKiBo
b3N0ID0gY29uc3RfY2FzdDxTZWFyY2hGaWVsZFJlc3VsdHNCdXR0b25FbGVtZW50Kj4odGhpcykt
PnNoYWRvd0FuY2VzdG9yTm9kZSgpOworICAgIGlmICghaG9zdCkKKyAgICAgICAgcmV0dXJuIHJl
c3VsdHNJZDsKKyAgICBpZiAoSFRNTElucHV0RWxlbWVudCogaW5wdXQgPSBob3N0LT50b0lucHV0
RWxlbWVudCgpKSB7CisgICAgICAgIGlmIChpbnB1dC0+bWF4UmVzdWx0cygpIDwgMCkKKyAgICAg
ICAgICAgIHJldHVybiBkZWNvcmF0aW9uSWQ7CisgICAgICAgIGlmIChpbnB1dC0+bWF4UmVzdWx0
cygpID4gMCkKKyAgICAgICAgICAgIHJldHVybiByZXN1bHRzSWQ7CisgICAgICAgIHJldHVybiBy
ZXN1bHRzRGVjb3JhdGlvbklkOworICAgIH0KKyAgICByZXR1cm4gcmVzdWx0c0lkOwogfQogCiB2
b2lkIFNlYXJjaEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIo
RXZlbnQqIGV2ZW50KQpAQCAtMTU5LDEwICsxNzEsMTAgQEAgUGFzc1JlZlB0cjxTZWFyY2hGaWVs
ZENhbmNlbEJ1dHRvbkVsZW1lbnQ+IFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVudDo6Y3Jl
YXQKICAgICByZXR1cm4gYWRvcHRSZWYobmV3IFNlYXJjaEZpZWxkQ2FuY2VsQnV0dG9uRWxlbWVu
dChkb2N1bWVudCkpOwogfQogCi1QYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBTZWFyY2hGaWVsZENh
bmNlbEJ1dHRvbkVsZW1lbnQ6OnN0eWxlRm9yUmVuZGVyZXIoKQorY29uc3QgQXRvbWljU3RyaW5n
JiBTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbkVsZW1lbnQ6OnNoYWRvd1BzZXVkb0lkKCkgY29uc3QK
IHsKLSAgICBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUqIHBhcmVudFJlbmRlcmVyID0gdG9S
ZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUoc2hhZG93QW5jZXN0b3JOb2RlKCktPnJlbmRlcmVy
KCkpOwotICAgIHJldHVybiBwYXJlbnRSZW5kZXJlci0+Y3JlYXRlQ2FuY2VsQnV0dG9uU3R5bGUo
cGFyZW50UmVuZGVyZXItPnN0eWxlKCkpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwoQXRvbWlj
U3RyaW5nLCBwc2V1ZG9JZCwgKCItd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIikpOworICAg
IHJldHVybiBwc2V1ZG9JZDsKIH0KIAogdm9pZCBTZWFyY2hGaWVsZENhbmNlbEJ1dHRvbkVsZW1l
bnQ6OmRldGFjaCgpCkBAIC0yMzEsMTAgKzI0MywxMSBAQCBQYXNzUmVmUHRyPFNwaW5CdXR0b25F
bGVtZW50PiBTcGluQnV0dG9uRWxlbWVudDo6Y3JlYXRlT3V0ZXIoRG9jdW1lbnQqIGRvY3VtZW50
KQogICAgIHJldHVybiBhZG9wdFJlZihuZXcgU3BpbkJ1dHRvbkVsZW1lbnQoZG9jdW1lbnQsIGZh
bHNlKSk7CiB9CiAKLVBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFNwaW5CdXR0b25FbGVtZW50Ojpz
dHlsZUZvclJlbmRlcmVyKCkKK2NvbnN0IEF0b21pY1N0cmluZyYgU3BpbkJ1dHRvbkVsZW1lbnQ6
OnNoYWRvd1BzZXVkb0lkKCkgY29uc3QKIHsKLSAgICBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxp
bmUqIHBhcmVudFJlbmRlcmVyID0gdG9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUoc2hhZG93
QW5jZXN0b3JOb2RlKCktPnJlbmRlcmVyKCkpOwotICAgIHJldHVybiBtX2lzSW5uZXIgPyBwYXJl
bnRSZW5kZXJlci0+Y3JlYXRlSW5uZXJTcGluQnV0dG9uU3R5bGUoKSA6IHBhcmVudFJlbmRlcmVy
LT5jcmVhdGVPdXRlclNwaW5CdXR0b25TdHlsZSgpOworICAgIERFRklORV9TVEFUSUNfTE9DQUwo
QXRvbWljU3RyaW5nLCBpbm5lclBzZXVkb0lkLCAoIi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24i
KSk7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChBdG9taWNTdHJpbmcsIG91dGVyUHNldWRvSWQs
ICgiLXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiIpKTsKKyAgICByZXR1cm4gbV9pc0lubmVyID8g
aW5uZXJQc2V1ZG9JZCA6IG91dGVyUHNldWRvSWQ7CiB9CiAKIHZvaWQgU3BpbkJ1dHRvbkVsZW1l
bnQ6OmRldGFjaCgpCkBAIC01MTMsMTAgKzUyNiwxMCBAQCB2b2lkIElucHV0RmllbGRTcGVlY2hC
dXR0b25FbGVtZW50OjpkZXRhY2goKQogICAgIEhUTUxEaXZFbGVtZW50OjpkZXRhY2goKTsKIH0K
IAotUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gSW5wdXRGaWVsZFNwZWVjaEJ1dHRvbkVsZW1lbnQ6
OnN0eWxlRm9yUmVuZGVyZXIoKQorY29uc3QgQXRvbWljU3RyaW5nJiBJbnB1dEZpZWxkU3BlZWNo
QnV0dG9uRWxlbWVudDo6c2hhZG93UHNldWRvSWQoKSBjb25zdAogewotICAgIFJlbmRlclRleHRD
b250cm9sU2luZ2xlTGluZSogcGFyZW50UmVuZGVyZXIgPSB0b1JlbmRlclRleHRDb250cm9sU2lu
Z2xlTGluZShzaGFkb3dBbmNlc3Rvck5vZGUoKS0+cmVuZGVyZXIoKSk7Ci0gICAgcmV0dXJuIHBh
cmVudFJlbmRlcmVyLT5jcmVhdGVTcGVlY2hCdXR0b25TdHlsZSgpOworICAgIERFRklORV9TVEFU
SUNfTE9DQUwoQXRvbWljU3RyaW5nLCBwc2V1ZG9JZCwgKCItd2Via2l0LWlucHV0LXNwZWVjaC1i
dXR0b24iKSk7CisgICAgcmV0dXJuIHBzZXVkb0lkOwogfQogCiAjZW5kaWYgLy8gRU5BQkxFKElO
UFVUX1NQRUVDSCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvc2hhZG93L1RleHRD
b250cm9sSW5uZXJFbGVtZW50cy5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENv
bnRyb2xJbm5lckVsZW1lbnRzLmgKaW5kZXggZmM5YTk3NmQxODMyMGZlNjNkZmE0N2I1NTFjYzA0
ZjEwNzYxNWI5Zi4uYTc2YTdmNzc4Mzk4NDdkMzRiZGNiOTUxZGQyNDMxN2Q4NzQ2N2FjZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVsZW1l
bnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9zaGFkb3cvVGV4dENvbnRyb2xJbm5lckVs
ZW1lbnRzLmgKQEAgLTY5LDcgKzY5LDcgQEAgcHVibGljOgogCiBwcml2YXRlOgogICAgIFNlYXJj
aEZpZWxkUmVzdWx0c0J1dHRvbkVsZW1lbnQoRG9jdW1lbnQqKTsKLSAgICB2aXJ0dWFsIFBhc3NS
ZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlRm9yUmVuZGVyZXIoKTsKKyAgICB2aXJ0dWFsIGNvbnN0
IEF0b21pY1N0cmluZyYgc2hhZG93UHNldWRvSWQoKSBjb25zdDsKICAgICB2aXJ0dWFsIGJvb2wg
aXNNb3VzZUZvY3VzYWJsZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiB9OwogCkBAIC04MSw3
ICs4MSw3IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICBTZWFyY2hGaWVsZENhbmNlbEJ1dHRv
bkVsZW1lbnQoRG9jdW1lbnQqKTsKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+
IHN0eWxlRm9yUmVuZGVyZXIoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0cmluZyYgc2hh
ZG93UHNldWRvSWQoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoKCk7CiAgICAgdmly
dHVhbCBib29sIGlzTW91c2VGb2N1c2FibGUoKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCkBA
IC0xMDMsNyArMTAzLDcgQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBTcGluQnV0dG9uRWxlbWVu
dChEb2N1bWVudCosIGJvb2wgaXNJbm5lcik7CiAKLSAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IHN0eWxlRm9yUmVuZGVyZXIoKTsKKyAgICB2aXJ0dWFsIGNvbnN0IEF0b21pY1N0
cmluZyYgc2hhZG93UHNldWRvSWQoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgZGV0YWNoKCk7
CiAgICAgdmlydHVhbCBib29sIGlzU3BpbkJ1dHRvbkVsZW1lbnQoKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CiAgICAgLy8gRklYTUU6IHNoYWRvd0FuY2VzdG9yTm9kZSgpIHNob3VsZCBiZSBjb25z
dC4KQEAgLTE1Miw3ICsxNTIsNyBAQCBwcml2YXRlOgogICAgIElucHV0RmllbGRTcGVlY2hCdXR0
b25FbGVtZW50KERvY3VtZW50Kik7CiAgICAgU3BlZWNoSW5wdXQqIHNwZWVjaElucHV0KCk7CiAg
ICAgdm9pZCBzZXRTdGF0ZShTcGVlY2hJbnB1dFN0YXRlIHN0YXRlKTsKLSAgICB2aXJ0dWFsIFBh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlRm9yUmVuZGVyZXIoKTsKKyAgICB2aXJ0dWFsIGNv
bnN0IEF0b21pY1N0cmluZyYgc2hhZG93UHNldWRvSWQoKSBjb25zdDsKICAgICB2aXJ0dWFsIGJv
b2wgaXNNb3VzZUZvY3VzYWJsZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9CiAgICAgdmlydHVh
bCB2b2lkIGF0dGFjaCgpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcv
UmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmlu
Zy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwCmluZGV4IGNhNTNjZGY5YjUwMDkxOWIx
NzM4YTlkOWNjMmVhM2M0NjA1OWY0YTQuLjU0ZjY0N2NhMjFkZGY0MzYxMjgwZjhkMjZmMDRmN2Yw
YzcxNDQwNDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0
Q29udHJvbFNpbmdsZUxpbmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5k
ZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuY3BwCkBAIC03MzcsNzMgKzczNyw2IEBAIFBhc3NSZWZQ
dHI8UmVuZGVyU3R5bGU+IFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZTo6Y3JlYXRlSW5uZXJC
bG9ja1N0eWxlKGNvbnN0CiAgICAgcmV0dXJuIGlubmVyQmxvY2tTdHlsZS5yZWxlYXNlKCk7CiB9
CiAKLVBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZTo6
Y3JlYXRlUmVzdWx0c0J1dHRvblN0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdGFydFN0eWxlKSBj
b25zdAotewotICAgIEhUTUxJbnB1dEVsZW1lbnQqIGlucHV0ID0gaW5wdXRFbGVtZW50KCk7Ci0K
LSAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IHJlc3VsdHNCbG9ja1N0eWxlOwotICAgIGlmIChpbnB1
dC0+bWF4UmVzdWx0cygpIDwgMCkKLSAgICAgICAgcmVzdWx0c0Jsb2NrU3R5bGUgPSBnZXRDYWNo
ZWRQc2V1ZG9TdHlsZShTRUFSQ0hfREVDT1JBVElPTik7Ci0gICAgZWxzZSBpZiAoIWlucHV0LT5t
YXhSZXN1bHRzKCkpCi0gICAgICAgIHJlc3VsdHNCbG9ja1N0eWxlID0gZ2V0Q2FjaGVkUHNldWRv
U3R5bGUoU0VBUkNIX1JFU1VMVFNfREVDT1JBVElPTik7Ci0gICAgZWxzZQotICAgICAgICByZXN1
bHRzQmxvY2tTdHlsZSA9IGdldENhY2hlZFBzZXVkb1N0eWxlKFNFQVJDSF9SRVNVTFRTX0JVVFRP
Tik7Ci0KLSAgICBpZiAoIXJlc3VsdHNCbG9ja1N0eWxlKQotICAgICAgICByZXN1bHRzQmxvY2tT
dHlsZSA9IFJlbmRlclN0eWxlOjpjcmVhdGUoKTsKLQotICAgIGlmIChzdGFydFN0eWxlKQotICAg
ICAgICByZXN1bHRzQmxvY2tTdHlsZS0+aW5oZXJpdEZyb20oc3RhcnRTdHlsZSk7Ci0KLSAgICBy
ZXR1cm4gcmVzdWx0c0Jsb2NrU3R5bGUucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFJlbmRl
clN0eWxlPiBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmU6OmNyZWF0ZUNhbmNlbEJ1dHRvblN0
eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdGFydFN0eWxlKSBjb25zdAotewotICAgIFJlZlB0cjxS
ZW5kZXJTdHlsZT4gY2FuY2VsQmxvY2tTdHlsZTsKLSAgICAKLSAgICBpZiAoUmVmUHRyPFJlbmRl
clN0eWxlPiBwc2V1ZG9TdHlsZSA9IGdldENhY2hlZFBzZXVkb1N0eWxlKFNFQVJDSF9DQU5DRUxf
QlVUVE9OKSkKLSAgICAgICAgLy8gV2UgbWF5IGJlIHNoYXJpbmcgc3R5bGUgd2l0aCBhbm90aGVy
IHNlYXJjaCBmaWVsZCwgYnV0IHdlIG11c3Qgbm90IHNoYXJlIHRoZSBjYW5jZWwgYnV0dG9uIHN0
eWxlLgotICAgICAgICBjYW5jZWxCbG9ja1N0eWxlID0gUmVuZGVyU3R5bGU6OmNsb25lKHBzZXVk
b1N0eWxlLmdldCgpKTsKLSAgICBlbHNlCi0gICAgICAgIGNhbmNlbEJsb2NrU3R5bGUgPSBSZW5k
ZXJTdHlsZTo6Y3JlYXRlKCk7Ci0KLSAgICBpZiAoc3RhcnRTdHlsZSkKLSAgICAgICAgY2FuY2Vs
QmxvY2tTdHlsZS0+aW5oZXJpdEZyb20oc3RhcnRTdHlsZSk7Ci0KLSAgICBjYW5jZWxCbG9ja1N0
eWxlLT5zZXRWaXNpYmlsaXR5KHZpc2liaWxpdHlGb3JDYW5jZWxCdXR0b24oKSk7Ci0gICAgcmV0
dXJuIGNhbmNlbEJsb2NrU3R5bGUucmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFJlbmRlclN0
eWxlPiBSZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmU6OmNyZWF0ZUlubmVyU3BpbkJ1dHRvblN0
eWxlKCkgY29uc3QKLXsKLSAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IGJ1dHRvblN0eWxlID0gZ2V0
Q2FjaGVkUHNldWRvU3R5bGUoSU5ORVJfU1BJTl9CVVRUT04pOwotICAgIGlmICghYnV0dG9uU3R5
bGUpCi0gICAgICAgIGJ1dHRvblN0eWxlID0gUmVuZGVyU3R5bGU6OmNyZWF0ZSgpOwotICAgIGJ1
dHRvblN0eWxlLT5pbmhlcml0RnJvbShzdHlsZSgpKTsKLSAgICByZXR1cm4gYnV0dG9uU3R5bGUu
cmVsZWFzZSgpOwotfQotCi1QYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBSZW5kZXJUZXh0Q29udHJv
bFNpbmdsZUxpbmU6OmNyZWF0ZU91dGVyU3BpbkJ1dHRvblN0eWxlKCkgY29uc3QKLXsKLSAgICBS
ZWZQdHI8UmVuZGVyU3R5bGU+IGJ1dHRvblN0eWxlID0gZ2V0Q2FjaGVkUHNldWRvU3R5bGUoT1VU
RVJfU1BJTl9CVVRUT04pOwotICAgIGlmICghYnV0dG9uU3R5bGUpCi0gICAgICAgIGJ1dHRvblN0
eWxlID0gUmVuZGVyU3R5bGU6OmNyZWF0ZSgpOwotICAgIGJ1dHRvblN0eWxlLT5pbmhlcml0RnJv
bShzdHlsZSgpKTsKLSAgICByZXR1cm4gYnV0dG9uU3R5bGUucmVsZWFzZSgpOwotfQotCi0jaWYg
RU5BQkxFKElOUFVUX1NQRUVDSCkKLVBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IFJlbmRlclRleHRD
b250cm9sU2luZ2xlTGluZTo6Y3JlYXRlU3BlZWNoQnV0dG9uU3R5bGUoKSBjb25zdAotewotICAg
IFJlZlB0cjxSZW5kZXJTdHlsZT4gYnV0dG9uU3R5bGUgPSBnZXRDYWNoZWRQc2V1ZG9TdHlsZShJ
TlBVVF9TUEVFQ0hfQlVUVE9OKTsKLSAgICBpZiAoIWJ1dHRvblN0eWxlKQotICAgICAgICBidXR0
b25TdHlsZSA9IFJlbmRlclN0eWxlOjpjcmVhdGUoKTsKLSAgICBidXR0b25TdHlsZS0+aW5oZXJp
dEZyb20oc3R5bGUoKSk7Ci0gICAgcmV0dXJuIGJ1dHRvblN0eWxlLnJlbGVhc2UoKTsKLX0KLSNl
bmRpZgotCiB2b2lkIFJlbmRlclRleHRDb250cm9sU2luZ2xlTGluZTo6dXBkYXRlQ2FuY2VsQnV0
dG9uVmlzaWJpbGl0eSgpIGNvbnN0CiB7CiAgICAgUmVuZGVyT2JqZWN0KiBjYW5jZWxCdXR0b25S
ZW5kZXJlciA9IGNhbmNlbEJ1dHRvbkVsZW1lbnQoKS0+cmVuZGVyZXIoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaCBi
L1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUZXh0Q29udHJvbFNpbmdsZUxpbmUuaApp
bmRleCA4ZDE4YzcwM2Q2ZDVkNGYxMmQ1NWJiZGNmMGM1ZDQ5MTYwM2M5MzEwLi44NGRkYjgyYjcw
OTkzMjZjZGIxMTc4ZmI2NmM5MmMwMmM0Y2U1ZjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGV4dENvbnRyb2xTaW5nbGVMaW5lLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRleHRDb250cm9sU2luZ2xlTGluZS5oCkBAIC00MCwxMyAr
NDAsNiBAQCBwdWJsaWM6CiAgICAgLy8gRklYTUU6IE1vdmUgY3JlYXRlKlN0eWxlKCkgdG8gdGhl
aXIgY2xhc3Nlcy4KICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNyZWF0ZUlu
bmVyVGV4dFN0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdGFydFN0eWxlKSBjb25zdDsKICAgICBQ
YXNzUmVmUHRyPFJlbmRlclN0eWxlPiBjcmVhdGVJbm5lckJsb2NrU3R5bGUoY29uc3QgUmVuZGVy
U3R5bGUqIHN0YXJ0U3R5bGUpIGNvbnN0OwotICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNy
ZWF0ZUlubmVyU3BpbkJ1dHRvblN0eWxlKCkgY29uc3Q7Ci0gICAgUGFzc1JlZlB0cjxSZW5kZXJT
dHlsZT4gY3JlYXRlT3V0ZXJTcGluQnV0dG9uU3R5bGUoKSBjb25zdDsKLSAgICBQYXNzUmVmUHRy
PFJlbmRlclN0eWxlPiBjcmVhdGVSZXN1bHRzQnV0dG9uU3R5bGUoY29uc3QgUmVuZGVyU3R5bGUq
IHN0YXJ0U3R5bGUpIGNvbnN0OwotICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNyZWF0ZUNh
bmNlbEJ1dHRvblN0eWxlKGNvbnN0IFJlbmRlclN0eWxlKiBzdGFydFN0eWxlKSBjb25zdDsKLSNp
ZiBFTkFCTEUoSU5QVVRfU1BFRUNIKQotICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGNyZWF0
ZVNwZWVjaEJ1dHRvblN0eWxlKCkgY29uc3Q7Ci0jZW5kaWYKIAogICAgIGJvb2wgcGxhY2Vob2xk
ZXJJc1Zpc2libGUoKSBjb25zdCB7IHJldHVybiBtX3BsYWNlaG9sZGVyVmlzaWJsZTsgfQogICAg
IGJvb2wgcGxhY2Vob2xkZXJTaG91bGRCZVZpc2libGUoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZUNvbnN0YW50cy5oIGIvU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKaW5kZXgg
Y2E1NTg2NTEzMjI1YzRiNDk1Njg0NDhkMGY1ODE4NWI0NzAxNzJjOS4uNzRmZDU5NDNkNjkxOTQz
ZjhmYzVmYWI0NGE3YWEwODMxMDVlMmJjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVu
ZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlQ29uc3RhbnRzLmgKQEAgLTY4LDExICs2OCwxMSBA
QCBlbnVtIFN0eWxlRGlmZmVyZW5jZUNvbnRleHRTZW5zaXRpdmVQcm9wZXJ0eSB7CiAvLyBTdGF0
aWMgcHNldWRvIHN0eWxlcy4gRHluYW1pYyBvbmVzIGFyZSBwcm9kdWNlZCBvbiB0aGUgZmx5Lgog
ZW51bSBQc2V1ZG9JZCB7CiAgICAgLy8gVGhlIG9yZGVyIG11c3QgYmUgTk9QIElELCBwdWJsaWMg
SURzLCBhbmQgdGhlbiBpbnRlcm5hbCBJRHMuCi0gICAgTk9QU0VVRE8sIEZJUlNUX0xJTkUsIEZJ
UlNUX0xFVFRFUiwgQkVGT1JFLCBBRlRFUiwgU0VMRUNUSU9OLCBGSVJTVF9MSU5FX0lOSEVSSVRF
RCwgU0NST0xMQkFSLCBGSUxFX1VQTE9BRF9CVVRUT04sIElOUFVUX1BMQUNFSE9MREVSLAotICAg
IFNFQVJDSF9DQU5DRUxfQlVUVE9OLCBTRUFSQ0hfREVDT1JBVElPTiwgU0VBUkNIX1JFU1VMVFNf
REVDT1JBVElPTiwgU0VBUkNIX1JFU1VMVFNfQlVUVE9OLAorICAgIE5PUFNFVURPLCBGSVJTVF9M
SU5FLCBGSVJTVF9MRVRURVIsIEJFRk9SRSwgQUZURVIsIFNFTEVDVElPTiwgRklSU1RfTElORV9J
TkhFUklURUQsIFNDUk9MTEJBUiwKKyAgICAvLyBJbnRlcm5hbCBJRHMgZm9sbG93OgorICAgIEZJ
TEVfVVBMT0FEX0JVVFRPTiwgSU5QVVRfUExBQ0VIT0xERVIsCiAgICAgU0NST0xMQkFSX1RIVU1C
LCBTQ1JPTExCQVJfQlVUVE9OLCBTQ1JPTExCQVJfVFJBQ0ssIFNDUk9MTEJBUl9UUkFDS19QSUVD
RSwgU0NST0xMQkFSX0NPUk5FUiwgUkVTSVpFUiwKLSAgICBJTlBVVF9MSVNUX0JVVFRPTiwgSU5Q
VVRfU1BFRUNIX0JVVFRPTiwgSU5ORVJfU1BJTl9CVVRUT04sIE9VVEVSX1NQSU5fQlVUVE9OLCBW
SVNJVEVEX0xJTkssCi0gICAgTUVURVJfQkFSLCBNRVRFUl9PUFRJTVVNLCBNRVRFUl9TVUJPUFRJ
TUFMLCBNRVRFUl9FVkVOX0xFU1NfR09PRCwKKyAgICBJTlBVVF9MSVNUX0JVVFRPTiwgVklTSVRF
RF9MSU5LLAogICAgIEFGVEVSX0xBU1RfSU5URVJOQUxfUFNFVURPSUQsCiAgICAgRlVMTF9TQ1JF
RU4sIEZVTExfU0NSRUVOX0RPQ1VNRU5ULCBGVUxMX1NDUkVFTl9NRURJQV9ET0NVTUVOVCwgQU5J
TUFUSU5HX0ZVTExfU0NSRUVOX1RSQU5TSVRJT04sCiAgICAgRklSU1RfUFVCTElDX1BTRVVET0lE
ID0gRklSU1RfTElORSwK
</data>

          </attachment>
      

    </bug>

</bugzilla>