<?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>52685</bug_id>
          
          <creation_ts>2011-01-18 16:56:34 -0800</creation_ts>
          <short_desc>Refactoring: WebKit should have RoundedFloatRect</short_desc>
          <delta_ts>2012-06-25 13:58:20 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></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="Hajime Morrita">morrita</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bruno.abinader</cc>
    
    <cc>eric</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>tonikitoo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>336217</commentid>
    <comment_count>0</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-18 16:56:34 -0800</bug_when>
    <thetext>Coined at Bug Bug 51664.
As an argument for Path::addRoundedRect(), we could make RoundedFloatRect,
which supports implicit conversion from RoundedIntRect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336384</commentid>
    <comment_count>1</comment_count>
      <attachid>79400</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-19 01:16:18 -0800</bug_when>
    <thetext>Created attachment 79400
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336386</commentid>
    <comment_count>2</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-19 01:17:37 -0800</bug_when>
    <thetext>Hi Antonio, Could you take a look when you have time?
We have a new member for rounded rect family.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336479</commentid>
    <comment_count>3</comment_count>
      <attachid>79400</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2011-01-19 06:33:49 -0800</bug_when>
    <thetext>Comment on attachment 79400
Patch

LGTM.

ps: I though the patch had landed already.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>336982</commentid>
    <comment_count>4</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-19 17:38:00 -0800</bug_when>
    <thetext>HI Antonio, thank you for taking a look!

&gt; 
&gt; ps: I though the patch had landed already.
I&apos;m sorry but I miss the point... Are you saying about Bug 51664?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337357</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2011-01-20 08:35:10 -0800</bug_when>
    <thetext>Is it really worth it, for the 4 lines of code that use it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337767</commentid>
    <comment_count>6</comment_count>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-20 17:50:44 -0800</bug_when>
    <thetext>&gt; Is it really worth it, for the 4 lines of code that use it?
Hmm, good question. I just thought it is symmetrically reasonable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>337973</commentid>
    <comment_count>7</comment_count>
      <attachid>79400</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-01-21 02:57:17 -0800</bug_when>
    <thetext>Comment on attachment 79400
Patch

We could use a template to share code with the Int version.  But i agree, this is probably pre-mature optimization to add a class for just 4 lines. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>338777</commentid>
    <comment_count>8</comment_count>
      <attachid>79400</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-01-23 15:37:12 -0800</bug_when>
    <thetext>Comment on attachment 79400
Patch

Thank you for the feedback.
I&apos;m removing r? at this time and will back when the time is ripe :-)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>79400</attachid>
            <date>2011-01-19 01:16:18 -0800</date>
            <delta_ts>2011-01-23 15:37:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-52685-20110119181616.patch</filename>
            <type>text/plain</type>
            <size>22832</size>
            <attacher name="Hajime Morrita">morrita</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0FuZHJvaWQubWsgYi9Tb3VyY2UvV2ViQ29yZS9B
bmRyb2lkLm1rCmluZGV4IDQyNTEzMzg1NWEzY2EyYjAwOTg4OGQ3YWE3YjBmMDkzNzRmYWJhZWEu
LmU4MjEwM2NjOGJjODg5MjM0MWRmYTBlZTM2NmY0YjE4NjgxZTU0MjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0FuZHJvaWQubWsKKysrIGIvU291cmNlL1dlYkNvcmUvQW5kcm9pZC5tawpA
QCAtNTMxLDYgKzUzMSw3IEBAIExPQ0FMX1NSQ19GSUxFUyA6PSAkKExPQ0FMX1NSQ19GSUxFUykg
XAogCXBsYXRmb3JtL2dyYXBoaWNzL1BhdGguY3BwIFwKIAlwbGF0Zm9ybS9ncmFwaGljcy9QYXRo
VHJhdmVyc2FsU3RhdGUuY3BwIFwKIAlwbGF0Zm9ybS9ncmFwaGljcy9QYXR0ZXJuLmNwcCBcCisJ
cGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRlZEZsb2F0UmVjdC5jcHAgXAogCXBsYXRmb3JtL2dyYXBo
aWNzL1JvdW5kZWRJbnRSZWN0LmNwcCBcCiAJcGxhdGZvcm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9u
dERhdGEuY3BwIFwKIAlwbGF0Zm9ybS9ncmFwaGljcy9TaW1wbGVGb250RGF0YS5jcHAgXApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAppbmRleCA3NjVlNDEzYjQ4MDMxZDYwMDQ4NTUyY2Q1YjgyY2U1MmM2NmUz
YjBjLi5iY2E5NjQxNzYyMWM5ZWRhZjFmNGFiMTc0OTcxM2FkODAzOTdmNThiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMTM1MSw2ICsxMzUxLDcgQEAgU0VUKFdlYkNvcmVfU09VUkNFUwogICAg
IHBsYXRmb3JtL2dyYXBoaWNzL1BhdGhUcmF2ZXJzYWxTdGF0ZS5jcHAKICAgICBwbGF0Zm9ybS9n
cmFwaGljcy9QYXR0ZXJuLmNwcAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRJbnRSZWN0
LmNwcAorICAgIHBsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRGbG9hdFJlY3QuY3BwCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9udERhdGEuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhp
Y3MvU2ltcGxlRm9udERhdGEuY3BwCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvU3RyaW5nVHJ1bmNh
dG9yLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IDc2MmZkYzNjMmZjZjEzNTNkYzY0OTE3M2IyNDJhZjMwNDE1
M2JkOGEuLjBkODE5YWNjZWEzMGQxZGM0MjY0OTJiMWU2N2YyMTg1ZTI4MjUzM2YgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSw0OCBAQAorMjAxMS0wMS0xOSAgTU9SSVRBIEhhamltZSA8bW9ycml0YUBn
b29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFJlZmFjdG9yaW5nOiBXZWJLaXQgc2hvdWxkIGhhdmUgUm91bmRlZEZsb2F0UmVjdAorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTI2ODUKKworICAg
ICAgICBEZWZpbmVkIFJvdW5kZWRGbG9hdFJlY3QgYW5kIHVzZWQgaXQgYXJvdW5kIFBhdGg6OmFk
ZFJvdW5kZWRSZWN0KCkuCisgICAgICAgIAorICAgICAgICBObyBuZXcgdGVzdHMuIE5vIGJlaGF2
aW9yYWwgY2hhbmdlLgorCisgICAgICAgICogQW5kcm9pZC5tazoKKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5
cGk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2Vi
Q29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmFkZFJvdW5kZWRSZWN0Q2xpcCk6CisgICAg
ICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmNsaXBPdXRSb3VuZGVkUmVjdCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUGF0aC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYXRo
OjphZGRSb3VuZGVkUmVjdCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUGF0aC5oOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRGbG9hdFJlY3QuY3BwOiBBZGRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OlJvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpSYWRpaSk6CisgICAg
ICAgIChXZWJDb3JlOjpSb3VuZGVkRmxvYXRSZWN0OjpSb3VuZGVkRmxvYXRSZWN0KToKKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Sb3VuZGVkRmxvYXRSZWN0Lmg6IEFkZGVkLgorICAgICAg
ICAoV2ViQ29yZTo6Um91bmRlZEZsb2F0UmVjdDo6UmFkaWk6OlJhZGlpKToKKyAgICAgICAgKFdl
YkNvcmU6OlJvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpzZXRUb3BMZWZ0KToKKyAgICAgICAgKFdl
YkNvcmU6OlJvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpzZXRUb3BSaWdodCk6CisgICAgICAgIChX
ZWJDb3JlOjpSb3VuZGVkRmxvYXRSZWN0OjpSYWRpaTo6c2V0Qm90dG9tTGVmdCk6CisgICAgICAg
IChXZWJDb3JlOjpSb3VuZGVkRmxvYXRSZWN0OjpSYWRpaTo6c2V0Qm90dG9tUmlnaHQpOgorICAg
ICAgICAoV2ViQ29yZTo6Um91bmRlZEZsb2F0UmVjdDo6UmFkaWk6OnRvcExlZnQpOgorICAgICAg
ICAoV2ViQ29yZTo6Um91bmRlZEZsb2F0UmVjdDo6UmFkaWk6OnRvcFJpZ2h0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpib3R0b21MZWZ0KToKKyAgICAgICAg
KFdlYkNvcmU6OlJvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpib3R0b21SaWdodCk6CisgICAgICAg
IChXZWJDb3JlOjpSb3VuZGVkRmxvYXRSZWN0OjpyZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OlJv
dW5kZWRGbG9hdFJlY3Q6OnJhZGlpKToKKyAgICAgICAgKFdlYkNvcmU6OlJvdW5kZWRGbG9hdFJl
Y3Q6OnNldFJlY3QpOgorICAgICAgICAoV2ViQ29yZTo6Um91bmRlZEZsb2F0UmVjdDo6c2V0UmFk
aWkpOgorICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpSZW5kZXJCb3hNb2RlbE9iamVjdDo6cGFpbnRCb3JkZXIpOgorICAgICAg
ICAoV2ViQ29yZTo6UmVuZGVyQm94TW9kZWxPYmplY3Q6OnBhaW50Qm94U2hhZG93KToKKwogMjAx
MS0wMS0xOCAgUGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvR05VbWFrZWZpbGUuYW0gYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQppbmRleCAy
NDdmODgwMTFjZWJmNDExYjcxYjIzMzA0NDFiMGNhNzZmOTY3M2E4Li5mNDQwYzMxM2Q3ZmYxZWQw
Yjc1YTAzYzQ3MmEyNTc0ZmZhMDY0MmNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9HTlVt
YWtlZmlsZS5hbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMjQzNiw2
ICsyNDM2LDggQEAgd2ViY29yZV9zb3VyY2VzICs9IFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9QYXRoVHJhdmVyc2FsU3RhdGUuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvUGF0dGVybi5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1BhdHRlcm4uaCBcCisJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRl
ZEZsb2F0UmVjdC5jcHAgXAorCVNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5k
ZWRGbG9hdFJlY3QuaCBcCiAJU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRl
ZEludFJlY3QuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Sb3VuZGVk
SW50UmVjdC5oIFwKIAlTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TZWdtZW50ZWRG
b250RGF0YS5jcHAgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCmluZGV4IDg5NzU4Y2JkZjkyZmJhNjJlZmI2Nzk5
NDgyY2FkZWViZDI0MTMxNzEuLjk5YWNmN2E0MDJkN2VhNGIxMzI2Y2I4OTcxODdiNmNiYjIxMDk3
ZmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLmd5cGkKQEAgLTI5NDMsNiArMjk0Myw4IEBACiAgICAgICAgICAgICAn
cGxhdGZvcm0vZ3JhcGhpY3MvUGF0aFRyYXZlcnNhbFN0YXRlLmgnLAogICAgICAgICAgICAgJ3Bs
YXRmb3JtL2dyYXBoaWNzL1BhdHRlcm4uY3BwJywKICAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFw
aGljcy9QYXR0ZXJuLmgnLAorICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRG
bG9hdFJlY3QuY3BwJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFwaGljcy9Sb3VuZGVkRmxv
YXRSZWN0LmgnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRJbnRSZWN0
LmNwcCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRlZEludFJlY3QuaCcs
CiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9udERhdGEuY3BwJywK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJvIGIvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5wcm8KaW5kZXggYTg1NzI0Mjg5NDI4MDE2N2VkZTI0MjdjODY2MGM1ODI4ZWJmODg5
YS4uYmFjNTc3ZmEyMjQ3ZTY3ODlhMzQzMjRjYmQzZTUyMWQ2MDA4YzQ1YyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5w
cm8KQEAgLTEyMTAsNiArMTIxMCw3IEBAIFNPVVJDRVMgKz0gXAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL1BhdGguY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9QYXRoVHJhdmVyc2FsU3RhdGUu
Y3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9QYXR0ZXJuLmNwcCBcCisgICAgcGxhdGZvcm0v
Z3JhcGhpY3MvUm91bmRlZEZsb2F0UmVjdC5jcHAgXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL1Jv
dW5kZWRJbnRSZWN0LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9udERh
dGEuY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9TaW1wbGVGb250RGF0YS5jcHAgXApAQCAt
MjEzMSw2ICsyMTMyLDcgQEAgSEVBREVSUyArPSBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvUGF0
aC5oIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9QYXRoVHJhdmVyc2FsU3RhdGUuaCBcCiAgICAg
cGxhdGZvcm0vZ3JhcGhpY3MvUGF0dGVybi5oIFwKKyAgICBwbGF0Zm9ybS9ncmFwaGljcy9Sb3Vu
ZGVkRmxvYXRSZWN0LmggXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRJbnRSZWN0Lmgg
XAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaCBcCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VEZWNvZGVyUXQuaCBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvaiBiL1NvdXJjZS9XZWJD
b3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmluZGV4IDhiYTNjNGNlODc5MmZlZWM4
ZmNiNGYxN2ZkZDIxM2FmODU5NDJmN2YuLmM2MTM5M2FiODhhMGJiNzUyODBkNmNlYzQ1NGUxMGU5
YTBjZDcxM2YgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNv
cmUudmNwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNw
cm9qCkBAIC0yNjY5Myw2ICsyNjY5MywxNCBAQAogCQkJCQk+CiAJCQkJPC9GaWxlPgogCQkJCTxG
aWxlCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5ccGxhdGZvcm1cZ3JhcGhpY3NcUm91bmRlZEZsb2F0
UmVjdC5jcHAiCisJCQkJCT4KKwkJCQk8L0ZpbGU+CisJCQkJPEZpbGUKKwkJCQkJUmVsYXRpdmVQ
YXRoPSIuLlxwbGF0Zm9ybVxncmFwaGljc1xSb3VuZGVkRmxvYXRSZWN0LmgiCisJCQkJCT4KKwkJ
CQk8L0ZpbGU+CisJCQkJPEZpbGUKIAkJCQkJUmVsYXRpdmVQYXRoPSIuLlxwbGF0Zm9ybVxncmFw
aGljc1xSb3VuZGVkSW50UmVjdC5jcHAiCiAJCQkJCT4KIAkJCQk8L0ZpbGU+CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZGYwMTUz
NGNiYzQxMjAzY2RkYzAyMTg2MjEyODgwYjk0Y2NkMDQzOS4uOTJlOTI0ODkxMzU1YTFjMTVjZTg0
NTM4ZjRiOWFiYTExM2M5OWIxNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzE2MSw2ICszMTYxLDggQEAKIAkJQTYyMkE4RkMx
MjJDNDRBNjAwQTc4NUIzIC8qIEJpbmRpbmdTZWN1cml0eUJhc2UuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTYyMkE4RjYxMjJDNDRBNjAwQTc4NUIz
IC8qIEJpbmRpbmdTZWN1cml0eUJhc2UuY3BwICovOyB9OwogCQlBNjIyQThGRDEyMkM0NEE2MDBB
Nzg1QjMgLyogQmluZGluZ1NlY3VyaXR5QmFzZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTYyMkE4RjcxMjJDNDRBNjAwQTc4NUIzIC8qIEJpbmRpbmdT
ZWN1cml0eUJhc2UuaCAqLzsgfTsKIAkJQTYyMkE4RkYxMjJDNDRBNjAwQTc4NUIzIC8qIEdlbmVy
aWNCaW5kaW5nLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBBNjIyQThGOTEyMkM0NEE2MDBBNzg1QjMgLyogR2VuZXJpY0JpbmRpbmcuaCAqLzsgfTsKKwkJ
QTcwMjAwQjAxMkU2REI5QzAwMzQwOEU4IC8qIFJvdW5kZWRGbG9hdFJlY3QuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQTdFMzczNUExMkU2Qzk1MzAw
NUY5NTJFIC8qIFJvdW5kZWRGbG9hdFJlY3QuY3BwICovOyB9OworCQlBNzAyMDBCMjEyRTZEQkI5
MDAzNDA4RTggLyogUm91bmRlZEZsb2F0UmVjdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQTdFMzczNUIxMkU2Qzk1MzAwNUY5NTJFIC8qIFJvdW5kZWRG
bG9hdFJlY3QuaCAqLzsgfTsKIAkJQTcxODc2MEUwQjJBMTIwMTAwQTE2RUNFIC8qIERyYWdBY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzE4
NzYwRDBCMkExMjAxMDBBMTZFQ0UgLyogRHJhZ0FjdGlvbnMuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlBNzE4Nzg5MDBCMkQwNEFDMDBBMTZFQ0Ug
LyogRHJhZ0NvbnRyb2xsZXJNYWMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBBNzE4Nzg4RjBCMkQwNEFDMDBBMTZFQ0UgLyogRHJhZ0NvbnRyb2xsZXJN
YWMubW0gKi87IH07CiAJCUE3M0Y5NUZFMTJDOTdCRkUwMDMxQUFGOSAvKiBSb3VuZGVkSW50UmVj
dC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBBNzNG
OTVGQzEyQzk3QkZFMDAzMUFBRjkgLyogUm91bmRlZEludFJlY3QuY3BwICovOyB9OwpAQCAtOTU4
Miw2ICs5NTg0LDggQEAKIAkJQTdENkIzNDgwRjYxMTA0NTAwQjc5RkQxIC8qIFdvcmtlclNjcmlw
dExvYWRlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBXb3JrZXJT
Y3JpcHRMb2FkZXIuY3BwOyBwYXRoID0gd29ya2Vycy9Xb3JrZXJTY3JpcHRMb2FkZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0RCRjhEQjEyNzY5MTlDMDA2QjYwMDggLyog
VGV4dENoZWNraW5nSGVscGVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IFRleHRDaGVja2luZ0hlbHBlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUE3REJGOERDMTI3NjkxOUMwMDZCNjAwOCAvKiBUZXh0Q2hlY2tpbmdIZWxwZXIuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGV4dENoZWNraW5nSGVscGVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUE3RTM3MzVBMTJFNkM5NTMwMDVGOTUyRSAvKiBSb3VuZGVk
RmxvYXRSZWN0LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFJvdW5k
ZWRGbG9hdFJlY3QuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlBN0UzNzM1QjEy
RTZDOTUzMDA1Rjk1MkUgLyogUm91bmRlZEZsb2F0UmVjdC5oICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBSb3VuZGVkRmxvYXRSZWN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUE3RjMzOEExMTFDMEVGQ0EwMEEzMjBBNyAvKiBTaGFkb3dFbGVtZW50LmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNoYWRvd0VsZW1lbnQuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlBN0YzMzhBMjExQzBFRkNBMDBBMzIwQTcgLyogU2hh
ZG93RWxlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTaGFkb3dFbGVt
ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUE4MEEzOEZEMEU1MENDODIwMEEy
NUVCQyAvKiBQYXR0ZXJuQ0cuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gUGF0dGVybkNHLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE3NDY2LDYg
KzE3NDcwLDggQEAKIAkJCQlBODhERDQ4NjBCNDYyOUEzMDBDMDI5OTAgLyogUGF0aFRyYXZlcnNh
bFN0YXRlLmggKi8sCiAJCQkJQThGQTZFNUMwRTRDRkRFRDAwRDVDRjQ5IC8qIFBhdHRlcm4uY3Bw
ICovLAogCQkJCUE4RkE2RTVCMEU0Q0ZERUQwMEQ1Q0Y0OSAvKiBQYXR0ZXJuLmggKi8sCisJCQkJ
QTdFMzczNUExMkU2Qzk1MzAwNUY5NTJFIC8qIFJvdW5kZWRGbG9hdFJlY3QuY3BwICovLAorCQkJ
CUE3RTM3MzVCMTJFNkM5NTMwMDVGOTUyRSAvKiBSb3VuZGVkRmxvYXRSZWN0LmggKi8sCiAJCQkJ
QTczRjk1RkMxMkM5N0JGRTAwMzFBQUY5IC8qIFJvdW5kZWRJbnRSZWN0LmNwcCAqLywKIAkJCQlB
NzNGOTVGRDEyQzk3QkZFMDAzMUFBRjkgLyogUm91bmRlZEludFJlY3QuaCAqLywKIAkJCQkzNzFG
NEZGQjBEMjVFN0YzMDBFQ0UwRDUgLyogU2VnbWVudGVkRm9udERhdGEuY3BwICovLApAQCAtMjIz
NjcsNiArMjIzNzMsNyBAQAogCQkJCTJFMzdFMDA2MTJEQkM1QTQwMEE2QjIzMyAvKiBKU0RPTVVS
TC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0E1NjQwQzAxMkRGOUU1RTAwRjQ1MzZEIC8qIEluc3Bl
Y3RvclNldHRpbmdzLmggaW4gSGVhZGVycyAqLywKIAkJCQlGM0Q0QzQ3OTEyRTA3NjYzMDAzREEx
NTAgLyogSW5zcGVjdG9yQnJvd3NlckRlYnVnZ2VyQWdlbnQuaCBpbiBIZWFkZXJzICovLAorCQkJ
CUE3MDIwMEIyMTJFNkRCQjkwMDM0MDhFOCAvKiBSb3VuZGVkRmxvYXRSZWN0LmggaW4gSGVhZGVy
cyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsK
IAkJfTsKQEAgLTI1MDU2LDYgKzI1MDYzLDcgQEAKIAkJCQkyRTM3RTAwNTEyREJDNUE0MDBBNkIy
MzMgLyogSlNET01VUkwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJN0E1NjQwQkYxMkRGOUU1RTAw
RjQ1MzZEIC8qIEluc3BlY3RvclNldHRpbmdzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUYzRDRD
NDc4MTJFMDc2NjMwMDNEQTE1MCAvKiBJbnNwZWN0b3JCcm93c2VyRGVidWdnZXJBZ2VudC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQlBNzAyMDBCMDEyRTZEQjlDMDAzNDA4RTggLyogUm91bmRlZEZs
b2F0UmVjdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVu
dFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHQuY3BwCmluZGV4IGU3ZWE4ODEzMDU2MThhZjk0
MTVjYmZlZWM5Yjg2ZmUwYWZmOWFlMWYuLmU5OGYyODRiZWNhN2MyZDk2NzU0ZWY3ZDE3NmJmYzM0
MWE1YTI2YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dy
YXBoaWNzQ29udGV4dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
R3JhcGhpY3NDb250ZXh0LmNwcApAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgIkdlbmVyYXRv
ci5oIgogI2luY2x1ZGUgIkltYWdlQnVmZmVyLmgiCiAjaW5jbHVkZSAiSW50UmVjdC5oIgorI2lu
Y2x1ZGUgIlJvdW5kZWRGbG9hdFJlY3QuaCIKICNpbmNsdWRlICJSb3VuZGVkSW50UmVjdC5oIgog
CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwpAQCAtNTQzLDcgKzU0NCw3IEBAIHZvaWQgR3JhcGhpY3ND
b250ZXh0OjphZGRSb3VuZGVkUmVjdENsaXAoY29uc3QgUm91bmRlZEludFJlY3QmIHJlY3QpCiAg
ICAgICAgIHJldHVybjsKIAogICAgIFBhdGggcGF0aDsKLSAgICBwYXRoLmFkZFJvdW5kZWRSZWN0
KHJlY3QucmVjdCgpLCByZWN0LnJhZGlpKCkudG9wTGVmdCgpLCByZWN0LnJhZGlpKCkudG9wUmln
aHQoKSwgcmVjdC5yYWRpaSgpLmJvdHRvbUxlZnQoKSwgcmVjdC5yYWRpaSgpLmJvdHRvbVJpZ2h0
KCkpOworICAgIHBhdGguYWRkUm91bmRlZFJlY3QocmVjdCk7CiAgICAgY2xpcChwYXRoKTsKIH0K
IApAQCAtNTUzLDcgKzU1NCw3IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpjbGlwT3V0Um91bmRl
ZFJlY3QoY29uc3QgUm91bmRlZEludFJlY3QmIHJlY3QpCiAgICAgICAgIHJldHVybjsKIAogICAg
IFBhdGggcGF0aDsKLSAgICBwYXRoLmFkZFJvdW5kZWRSZWN0KHJlY3QucmVjdCgpLCByZWN0LnJh
ZGlpKCkudG9wTGVmdCgpLCByZWN0LnJhZGlpKCkudG9wUmlnaHQoKSwgcmVjdC5yYWRpaSgpLmJv
dHRvbUxlZnQoKSwgcmVjdC5yYWRpaSgpLmJvdHRvbVJpZ2h0KCkpOworICAgIHBhdGguYWRkUm91
bmRlZFJlY3QocmVjdCk7CiAgICAgY2xpcE91dChwYXRoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGF0aC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9QYXRoLmNwcAppbmRleCA1NTc2MGIxNjJmYTA0Yjc2MjU3MzM5MjE4
YjQxODU2MjRhMzBiMzY3Li45ZTE5MmY2MTNjNDJiZWMxZjg2MDNiNDkxMjY3MjgwNmQ5ZjM2OTE0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QYXRoLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9QYXRoLmNwcApAQCAtMzIsNiAr
MzIsNyBAQAogI2luY2x1ZGUgIkZsb2F0UG9pbnQuaCIKICNpbmNsdWRlICJGbG9hdFJlY3QuaCIK
ICNpbmNsdWRlICJQYXRoVHJhdmVyc2FsU3RhdGUuaCIKKyNpbmNsdWRlICJSb3VuZGVkRmxvYXRS
ZWN0LmgiCiAjaW5jbHVkZSA8bWF0aC5oPgogI2luY2x1ZGUgPHd0Zi9NYXRoRXh0cmFzLmg+CiAK
QEAgLTE1Miw2ICsxNTMsMTEgQEAgdm9pZCBQYXRoOjphZGRSb3VuZGVkUmVjdChjb25zdCBGbG9h
dFJlY3QmIHJlY3QsIGNvbnN0IEZsb2F0U2l6ZSYgcm91bmRpbmdSYWRpaSkKICAgICBjbG9zZVN1
YnBhdGgoKTsKIH0KIAordm9pZCBQYXRoOjphZGRSb3VuZGVkUmVjdChjb25zdCBSb3VuZGVkRmxv
YXRSZWN0JiByb3VuZGVkUmVjdCkKK3sKKyAgICBhZGRSb3VuZGVkUmVjdChyb3VuZGVkUmVjdC5y
ZWN0KCksIHJvdW5kZWRSZWN0LnJhZGlpKCkudG9wTGVmdCgpLCByb3VuZGVkUmVjdC5yYWRpaSgp
LnRvcFJpZ2h0KCksIHJvdW5kZWRSZWN0LnJhZGlpKCkuYm90dG9tTGVmdCgpLCByb3VuZGVkUmVj
dC5yYWRpaSgpLmJvdHRvbVJpZ2h0KCkpOworfQorCiB2b2lkIFBhdGg6OmFkZFJvdW5kZWRSZWN0
KGNvbnN0IEZsb2F0UmVjdCYgcmVjdCwgY29uc3QgRmxvYXRTaXplJiB0b3BMZWZ0UmFkaXVzLCBj
b25zdCBGbG9hdFNpemUmIHRvcFJpZ2h0UmFkaXVzLCBjb25zdCBGbG9hdFNpemUmIGJvdHRvbUxl
ZnRSYWRpdXMsIGNvbnN0IEZsb2F0U2l6ZSYgYm90dG9tUmlnaHRSYWRpdXMpCiB7CiAgICAgaWYg
KHJlY3QuaXNFbXB0eSgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvUGF0aC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUGF0aC5oCmlu
ZGV4IDQyM2E3OTIwYzRiNzRlODY2NzQ3YTUzODdiMmQ1MDE5NzQ0Yjc2MmEuLjYwYmJjMzJjOWQ1
MTliNzkwMzE5Njc2ZDIzNzA3NWNkMDc4MTZhNDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL1BhdGguaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9QYXRoLmgKQEAgLTczLDEyICs3MywxMyBAQCB0eXBlZGVmIFBsYXRmb3JtUGF0aCog
UGxhdGZvcm1QYXRoUHRyOwogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBBZmZp
bmVUcmFuc2Zvcm07Ci0gICAgY2xhc3MgRmxvYXRQb2ludDsKLSAgICBjbGFzcyBGbG9hdFJlY3Q7
Ci0gICAgY2xhc3MgRmxvYXRTaXplOwotICAgIGNsYXNzIEdyYXBoaWNzQ29udGV4dDsKLSAgICBj
bGFzcyBTdHJva2VTdHlsZUFwcGxpZXI7CitjbGFzcyBBZmZpbmVUcmFuc2Zvcm07CitjbGFzcyBG
bG9hdFBvaW50OworY2xhc3MgRmxvYXRSZWN0OworY2xhc3MgRmxvYXRTaXplOworY2xhc3MgR3Jh
cGhpY3NDb250ZXh0OworY2xhc3MgUm91bmRlZEZsb2F0UmVjdDsKK2NsYXNzIFN0cm9rZVN0eWxl
QXBwbGllcjsKIAogICAgIGVudW0gV2luZFJ1bGUgewogICAgICAgICBSVUxFX05PTlpFUk8gPSAw
LApAQCAtMTM1LDggKzEzNiw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgdm9pZCBh
ZGRSZWN0KGNvbnN0IEZsb2F0UmVjdCYpOwogICAgICAgICB2b2lkIGFkZEVsbGlwc2UoY29uc3Qg
RmxvYXRSZWN0Jik7CiAgICAgICAgIHZvaWQgYWRkUm91bmRlZFJlY3QoY29uc3QgRmxvYXRSZWN0
JiwgY29uc3QgRmxvYXRTaXplJiByb3VuZGluZ1JhZGlpKTsKKyAgICAgICAgdm9pZCBhZGRSb3Vu
ZGVkUmVjdChjb25zdCBSb3VuZGVkRmxvYXRSZWN0Jik7CiAgICAgICAgIHZvaWQgYWRkUm91bmRl
ZFJlY3QoY29uc3QgRmxvYXRSZWN0JiwgY29uc3QgRmxvYXRTaXplJiB0b3BMZWZ0UmFkaXVzLCBj
b25zdCBGbG9hdFNpemUmIHRvcFJpZ2h0UmFkaXVzLCBjb25zdCBGbG9hdFNpemUmIGJvdHRvbUxl
ZnRSYWRpdXMsIGNvbnN0IEZsb2F0U2l6ZSYgYm90dG9tUmlnaHRSYWRpdXMpOwotCiAgICAgICAg
IHZvaWQgdHJhbnNsYXRlKGNvbnN0IEZsb2F0U2l6ZSYpOwogCiAgICAgICAgIFBsYXRmb3JtUGF0
aFB0ciBwbGF0Zm9ybVBhdGgoKSBjb25zdCB7IHJldHVybiBtX3BhdGg7IH0KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRGbG9hdFJlY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRlZEZsb2F0UmVjdC5jcHAKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uNWEzNDFkOTIzOTlhYzVjNzNlMjkzZDkzYzQyNWVmM2Y3MTA1NWE1YQotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRGbG9h
dFJlY3QuY3BwCkBAIC0wLDAgKzEsNjkgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29v
Z2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAg
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJB
UyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICog
RElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBC
RSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lB
TCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJ
VFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJ
TkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisj
aW5jbHVkZSAiUm91bmRlZEZsb2F0UmVjdC5oIgorCisjaW5jbHVkZSAiUm91bmRlZEludFJlY3Qu
aCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitSb3VuZGVkRmxvYXRSZWN0OjpSYWRpaTo6UmFk
aWkoY29uc3QgRmxvYXRTaXplJiB0b3BMZWZ0LCBjb25zdCBGbG9hdFNpemUmIHRvcFJpZ2h0LCBj
b25zdCBGbG9hdFNpemUmIGJvdHRvbUxlZnQsIGNvbnN0IEZsb2F0U2l6ZSYgYm90dG9tUmlnaHQp
CisgICAgOiBtX3RvcExlZnQodG9wTGVmdCkKKyAgICAsIG1fdG9wUmlnaHQodG9wUmlnaHQpCisg
ICAgLCBtX2JvdHRvbUxlZnQoYm90dG9tTGVmdCkKKyAgICAsIG1fYm90dG9tUmlnaHQoYm90dG9t
UmlnaHQpCit7Cit9CisKK1JvdW5kZWRGbG9hdFJlY3Q6OlJhZGlpOjpSYWRpaShjb25zdCBJbnRT
aXplJiB0b3BMZWZ0LCBjb25zdCBJbnRTaXplJiB0b3BSaWdodCwgY29uc3QgSW50U2l6ZSYgYm90
dG9tTGVmdCwgY29uc3QgSW50U2l6ZSYgYm90dG9tUmlnaHQpCisgICAgOiBtX3RvcExlZnQodG9w
TGVmdCkKKyAgICAsIG1fdG9wUmlnaHQodG9wUmlnaHQpCisgICAgLCBtX2JvdHRvbUxlZnQoYm90
dG9tTGVmdCkKKyAgICAsIG1fYm90dG9tUmlnaHQoYm90dG9tUmlnaHQpCit7Cit9CisKK1JvdW5k
ZWRGbG9hdFJlY3Q6OlJvdW5kZWRGbG9hdFJlY3QoY29uc3QgRmxvYXRSZWN0JiByZWN0LCBjb25z
dCBSYWRpaSYgcmFkaWkpCisgICAgOiBtX3JlY3QocmVjdCkKKyAgICAsIG1fcmFkaWkocmFkaWkp
Cit7Cit9CisKK1JvdW5kZWRGbG9hdFJlY3Q6OlJvdW5kZWRGbG9hdFJlY3QoY29uc3QgUm91bmRl
ZEludFJlY3QmIG90aGVyKQorICAgIDogbV9yZWN0KG90aGVyLnJlY3QoKSkKKyAgICAsIG1fcmFk
aWkob3RoZXIucmFkaWkoKS50b3BMZWZ0KCksIG90aGVyLnJhZGlpKCkudG9wUmlnaHQoKSwgb3Ro
ZXIucmFkaWkoKS5ib3R0b21MZWZ0KCksIG90aGVyLnJhZGlpKCkuYm90dG9tUmlnaHQoKSkKK3sK
K30KKworUm91bmRlZEZsb2F0UmVjdDo6Um91bmRlZEZsb2F0UmVjdChjb25zdCBGbG9hdFJlY3Qm
IHJlY3QsIGNvbnN0IEZsb2F0U2l6ZSYgdG9wTGVmdCwgY29uc3QgRmxvYXRTaXplJiB0b3BSaWdo
dCwgY29uc3QgRmxvYXRTaXplJiBib3R0b21MZWZ0LCBjb25zdCBGbG9hdFNpemUmIGJvdHRvbVJp
Z2h0KQorICAgIDogbV9yZWN0KHJlY3QpCisgICAgLCBtX3JhZGlpKHRvcExlZnQsIHRvcFJpZ2h0
LCBib3R0b21MZWZ0LCBib3R0b21SaWdodCkKK3sKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQorCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5k
ZWRGbG9hdFJlY3QuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JvdW5kZWRG
bG9hdFJlY3QuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5kZTZhNzI3NGY3OWM1Nzc0MzdhZTczNzQxNGMyOTdhNTU5
MzQ1YWQ0Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvUm91bmRlZEZsb2F0UmVjdC5oCkBAIC0wLDAgKzEsNzcgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNl
IHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09O
VFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQ
T1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENP
TlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKKyAqIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBC
VVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICogT04gQU5ZIFRIRU9S
WSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJ
U0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIFJv
dW5kZWRGbG9hdFJlY3RfaAorI2RlZmluZSBSb3VuZGVkRmxvYXRSZWN0X2gKKworI2luY2x1ZGUg
IkZsb2F0UmVjdC5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIFJvdW5kZWRJbnRS
ZWN0OworY2xhc3MgSW50U2l6ZTsKKworY2xhc3MgUm91bmRlZEZsb2F0UmVjdCB7CitwdWJsaWM6
CisgICAgY2xhc3MgUmFkaWkgeworICAgIHB1YmxpYzoKKyAgICAgICAgUmFkaWkoKSB7fQorICAg
ICAgICBSYWRpaShjb25zdCBGbG9hdFNpemUmIHRvcExlZnQsIGNvbnN0IEZsb2F0U2l6ZSYgdG9w
UmlnaHQsIGNvbnN0IEZsb2F0U2l6ZSYgYm90dG9tTGVmdCwgY29uc3QgRmxvYXRTaXplJiBib3R0
b21SaWdodCk7CisgICAgICAgIFJhZGlpKGNvbnN0IEludFNpemUmIHRvcExlZnQsIGNvbnN0IElu
dFNpemUmIHRvcFJpZ2h0LCBjb25zdCBJbnRTaXplJiBib3R0b21MZWZ0LCBjb25zdCBJbnRTaXpl
JiBib3R0b21SaWdodCk7CisKKyAgICAgICAgdm9pZCBzZXRUb3BMZWZ0KGNvbnN0IEZsb2F0U2l6
ZSYgc2l6ZSkgeyBtX3RvcExlZnQgPSBzaXplOyB9CisgICAgICAgIHZvaWQgc2V0VG9wUmlnaHQo
Y29uc3QgRmxvYXRTaXplJiBzaXplKSB7IG1fdG9wUmlnaHQgPSBzaXplOyB9CisgICAgICAgIHZv
aWQgc2V0Qm90dG9tTGVmdChjb25zdCBGbG9hdFNpemUmIHNpemUpIHsgbV9ib3R0b21MZWZ0ID0g
c2l6ZTsgfQorICAgICAgICB2b2lkIHNldEJvdHRvbVJpZ2h0KGNvbnN0IEZsb2F0U2l6ZSYgc2l6
ZSkgeyBtX2JvdHRvbVJpZ2h0ID0gc2l6ZTsgfQorICAgICAgICBjb25zdCBGbG9hdFNpemUmIHRv
cExlZnQoKSBjb25zdCB7IHJldHVybiBtX3RvcExlZnQ7IH0KKyAgICAgICAgY29uc3QgRmxvYXRT
aXplJiB0b3BSaWdodCgpIGNvbnN0IHsgcmV0dXJuIG1fdG9wUmlnaHQ7IH0KKyAgICAgICAgY29u
c3QgRmxvYXRTaXplJiBib3R0b21MZWZ0KCkgY29uc3QgeyByZXR1cm4gbV9ib3R0b21MZWZ0OyB9
CisgICAgICAgIGNvbnN0IEZsb2F0U2l6ZSYgYm90dG9tUmlnaHQoKSBjb25zdCB7IHJldHVybiBt
X2JvdHRvbVJpZ2h0OyB9CisKKyAgICBwcml2YXRlOgorICAgICAgICBGbG9hdFNpemUgbV90b3BM
ZWZ0OworICAgICAgICBGbG9hdFNpemUgbV90b3BSaWdodDsKKyAgICAgICAgRmxvYXRTaXplIG1f
Ym90dG9tTGVmdDsKKyAgICAgICAgRmxvYXRTaXplIG1fYm90dG9tUmlnaHQ7CisgICAgfTsKKwor
ICAgIGV4cGxpY2l0IFJvdW5kZWRGbG9hdFJlY3QoY29uc3QgRmxvYXRSZWN0JiwgY29uc3QgUmFk
aWkmID0gUmFkaWkoKSk7CisgICAgUm91bmRlZEZsb2F0UmVjdChjb25zdCBGbG9hdFJlY3QmLCBj
b25zdCBGbG9hdFNpemUmIHRvcExlZnQsIGNvbnN0IEZsb2F0U2l6ZSYgdG9wUmlnaHQsIGNvbnN0
IEZsb2F0U2l6ZSYgYm90dG9tTGVmdCwgY29uc3QgRmxvYXRTaXplJiBib3R0b21SaWdodCk7Cisg
ICAgUm91bmRlZEZsb2F0UmVjdChjb25zdCBSb3VuZGVkSW50UmVjdCYpOworCisgICAgY29uc3Qg
RmxvYXRSZWN0JiByZWN0KCkgY29uc3QgeyByZXR1cm4gbV9yZWN0OyB9CisgICAgY29uc3QgUmFk
aWkmIHJhZGlpKCkgY29uc3QgeyByZXR1cm4gbV9yYWRpaTsgfQorCisgICAgdm9pZCBzZXRSZWN0
KGNvbnN0IEZsb2F0UmVjdCYgcmVjdCkgeyBtX3JlY3QgPSByZWN0OyB9CisgICAgdm9pZCBzZXRS
YWRpaShjb25zdCBSYWRpaSYgcmFkaWkpIHsgbV9yYWRpaSA9IHJhZGlpOyB9CisKK3ByaXZhdGU6
CisgICAgRmxvYXRSZWN0IG1fcmVjdDsKKyAgICBSYWRpaSBtX3JhZGlpOworfTsKKworfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQorCisjZW5kaWYgLy8gUm91bmRlZEZsb2F0UmVjdF9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckJveE1vZGVsT2JqZWN0LmNwcAppbmRleCBm
YjAyNGZjMDI2ZDA2MTFiNDQ5YjE2MzA3NmM0YjkzYTgwZGYwZGRkLi44ZWYwZWY0MGQwNzgxZjMx
MjAxMjQ4MTU2YzI5ZjVkNjY1NmU2OTY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvUmVuZGVyQm94TW9kZWxPYmplY3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRl
cmluZy9SZW5kZXJCb3hNb2RlbE9iamVjdC5jcHAKQEAgLTM1LDYgKzM1LDcgQEAKICNpbmNsdWRl
ICJSZW5kZXJJbmxpbmUuaCIKICNpbmNsdWRlICJSZW5kZXJMYXllci5oIgogI2luY2x1ZGUgIlJl
bmRlclZpZXcuaCIKKyNpbmNsdWRlICJSb3VuZGVkRmxvYXRSZWN0LmgiCiAjaW5jbHVkZSA8d3Rm
L0N1cnJlbnRUaW1lLmg+CiAKIHVzaW5nIG5hbWVzcGFjZSBzdGQ7CkBAIC0xMDI4LDcgKzEwMjks
NyBAQCB2b2lkIFJlbmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJvcmRlcihHcmFwaGljc0NvbnRl
eHQqIGdyYXBoaWNzQ29udGV4dCwgaW50IHR4LAogICAgICAgICAgICAgZ3JhcGhpY3NDb250ZXh0
LT5zYXZlKCk7CiAgICAgICAgICAgICBncmFwaGljc0NvbnRleHQtPmFkZFJvdW5kZWRSZWN0Q2xp
cChib3JkZXIpOwogICAgICAgICAgICAgZ3JhcGhpY3NDb250ZXh0LT5jbGlwT3V0Um91bmRlZFJl
Y3QoaW5uZXIpOwotICAgICAgICAgICAgcm91bmRlZFBhdGguYWRkUm91bmRlZFJlY3QoYm9yZGVy
LnJlY3QoKSwgYm9yZGVyLnJhZGlpKCkudG9wTGVmdCgpLCBib3JkZXIucmFkaWkoKS50b3BSaWdo
dCgpLCBib3JkZXIucmFkaWkoKS5ib3R0b21MZWZ0KCksIGJvcmRlci5yYWRpaSgpLmJvdHRvbVJp
Z2h0KCkpOworICAgICAgICAgICAgcm91bmRlZFBhdGguYWRkUm91bmRlZFJlY3QoYm9yZGVyKTsK
ICAgICAgICAgfQogICAgIH0KIApAQCAtMTY3MCw3ICsxNjcxLDcgQEAgdm9pZCBSZW5kZXJCb3hN
b2RlbE9iamVjdDo6cGFpbnRCb3hTaGFkb3coR3JhcGhpY3NDb250ZXh0KiBjb250ZXh0LCBpbnQg
dHgsIGludAogCiAgICAgICAgICAgICBQYXRoIHBhdGg7CiAgICAgICAgICAgICBpZiAoaGFzQm9y
ZGVyUmFkaXVzKSB7Ci0gICAgICAgICAgICAgICAgcGF0aC5hZGRSb3VuZGVkUmVjdChib3JkZXIu
cmVjdCgpLCBib3JkZXIucmFkaWkoKS50b3BMZWZ0KCksIGJvcmRlci5yYWRpaSgpLnRvcFJpZ2h0
KCksIGJvcmRlci5yYWRpaSgpLmJvdHRvbUxlZnQoKSwgYm9yZGVyLnJhZGlpKCkuYm90dG9tUmln
aHQoKSk7CisgICAgICAgICAgICAgICAgcGF0aC5hZGRSb3VuZGVkUmVjdChib3JkZXIpOwogICAg
ICAgICAgICAgICAgIGNvbnRleHQtPmNsaXAocGF0aCk7CiAgICAgICAgICAgICAgICAgcGF0aC5j
bGVhcigpOwogICAgICAgICAgICAgfSBlbHNlCkBAIC0xNjg1LDcgKzE2ODYsOCBAQCB2b2lkIFJl
bmRlckJveE1vZGVsT2JqZWN0OjpwYWludEJveFNoYWRvdyhHcmFwaGljc0NvbnRleHQqIGNvbnRl
eHQsIGludCB0eCwgaW50CiAgICAgICAgICAgICBpZiAoaGFzQm9yZGVyUmFkaXVzKSB7CiAgICAg
ICAgICAgICAgICAgaWYgKHNoYWRvd1NwcmVhZCA+IDApCiAgICAgICAgICAgICAgICAgICAgIGJv
cmRlci5zaHJpbmtSYWRpaShzaGFkb3dTcHJlYWQpOwotICAgICAgICAgICAgICAgIHBhdGguYWRk
Um91bmRlZFJlY3QoaG9sZVJlY3QsIGJvcmRlci5yYWRpaSgpLnRvcExlZnQoKSwgYm9yZGVyLnJh
ZGlpKCkudG9wUmlnaHQoKSwgYm9yZGVyLnJhZGlpKCkuYm90dG9tTGVmdCgpLCBib3JkZXIucmFk
aWkoKS5ib3R0b21SaWdodCgpKTsKKyAgICAgICAgICAgICAgICBwYXRoLmFkZFJvdW5kZWRSZWN0
KFJvdW5kZWRGbG9hdFJlY3QoaG9sZVJlY3QsIGJvcmRlci5yYWRpaSgpLnRvcExlZnQoKSwgYm9y
ZGVyLnJhZGlpKCkudG9wUmlnaHQoKSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci5yYWRpaSgpLmJvdHRvbUxlZnQoKSwgYm9yZGVy
LnJhZGlpKCkuYm90dG9tUmlnaHQoKSkpOwogICAgICAgICAgICAgfSBlbHNlCiAgICAgICAgICAg
ICAgICAgcGF0aC5hZGRSZWN0KGhvbGVSZWN0KTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>