<?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>88828</bug_id>
          
          <creation_ts>2012-06-11 18:36:52 -0700</creation_ts>
          <short_desc>[chromium] Create a CCYUVVideoDrawQuad and remove the now-unused generic CCVideoDrawQuad</short_desc>
          <delta_ts>2012-06-15 07:34:46 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>88826</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dana Jansens">danakj</reporter>
          <assigned_to name="Dana Jansens">danakj</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>enne</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>fischman</cc>
    
    <cc>jamesr</cc>
    
    <cc>piman</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>wjmaclean</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>646531</commentid>
    <comment_count>0</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-06-11 18:36:52 -0700</bug_when>
    <thetext>[chromium] Create a CCYUVVideoDrawQuad and remove the now-unused generic CCVideoDrawQuad</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646534</commentid>
    <comment_count>1</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-06-11 18:40:57 -0700</bug_when>
    <thetext>This CL should conclude the video quad specialization refactor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>646541</commentid>
    <comment_count>2</comment_count>
      <attachid>146990</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-06-11 18:44:48 -0700</bug_when>
    <thetext>Created attachment 146990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>647547</commentid>
    <comment_count>3</comment_count>
      <attachid>146990</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-06-12 18:07:34 -0700</bug_when>
    <thetext>Comment on attachment 146990
Patch

R=me.  Changes all look good, assuming tests all still pass once this applies.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>649647</commentid>
    <comment_count>4</comment_count>
      <attachid>147681</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-06-14 17:07:36 -0700</bug_when>
    <thetext>Created attachment 147681
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>650165</commentid>
    <comment_count>5</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-06-15 07:34:46 -0700</bug_when>
    <thetext>Committed r120457: &lt;http://trac.webkit.org/changeset/120457&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>146990</attachid>
            <date>2012-06-11 18:44:48 -0700</date>
            <delta_ts>2012-06-14 17:07:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88828-20120611214447.patch</filename>
            <type>text/plain</type>
            <size>22493</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwMDE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWE0NjhiZjI1ZTg5OTFi
OTU5MjdkZDlhNjNlYWNiMjg2YmY4MGUyOC4uNGNmNDFiNjBjNmM2YzU1MzMyY2NkMTdiNDEyYTZk
N2JhZjIwZDcwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDQzIEBACiAyMDEyLTA2LTExICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgogCisgICAgICAgIFtjaHJvbWl1bV0gQ3Jl
YXRlIGEgQ0NZVVZWaWRlb0RyYXdRdWFkIGFuZCByZW1vdmUgdGhlIG5vdy11bnVzZWQgZ2VuZXJp
YyBDQ1ZpZGVvRHJhd1F1YWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg4ODI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgVGhlIENDVmlkZW9EcmF3UXVhZCBpcyBub3cgb25seSB1c2VkIGZvciBZVVYgdmlk
ZW8sIHNvIHdlIHJlbW92ZSB0aGUKKyAgICAgICAgY2xhc3MgYW5kIHJlcGxhY2UgaXQgd2l0aCBD
Q1lVVlZpZGVvRHJhd1F1YWQuIFRoaXMgY2xhc3MgaG9sZHMgd2hhdCBpcworICAgICAgICBuZWVk
ZWQgdG8gZHJhdyBhIFlVViB2aWRlbyBmcmFtZS4KKworICAgICAgICBObyBuZXcgdGVzdHMsIG5v
IGNoYW5nZSBpbiBiZWhhdmlvdXIuCisKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkxheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1F1YWQpOgorICAg
ICAgICAoV2ViQ29yZTo6TGF5ZXJSZW5kZXJlckNocm9taXVtOjpkcmF3WVVWVmlkZW9RdWFkKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21p
dW0uaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoTGF5ZXJSZW5kZXJlckNocm9taXVt
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0RyYXdRdWFkLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNDRHJhd1F1YWQ6OnRvWVVWVmlkZW9EcmF3UXVhZCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEcmF3UXVhZC5oOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChDQ0RyYXdRdWFkKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvTGF5ZXJJbXBsLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNDVmlkZW9MYXllckltcGw6OmFwcGVuZFF1YWRzKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuY3BwOiBSZW5hbWVkIGZy
b20gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0Ry
YXdRdWFkLmNwcC4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NZVVZW
aWRlb0RyYXdRdWFkOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NZVVZWaWRlb0RyYXdR
dWFkOjpDQ1lVVlZpZGVvRHJhd1F1YWQpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL2NjL0NDWVVWVmlkZW9EcmF3UXVhZC5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFkLmguCisgICAg
ICAgIChXZWJDb3JlKToKKyAgICAgICAgKENDWVVWVmlkZW9EcmF3UXVhZCk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ1lVVlZpZGVvRHJhd1F1YWQ6OnlQbGFuZSk6CisgICAgICAgIChXZWJDb3JlOjpD
Q1lVVlZpZGVvRHJhd1F1YWQ6OnVQbGFuZSk6CisgICAgICAgIChXZWJDb3JlOjpDQ1lVVlZpZGVv
RHJhd1F1YWQ6OnZQbGFuZSk6CisKKzIwMTItMDYtMTEgIERhbmEgSmFuc2VucyAgPGRhbmFrakBj
aHJvbWl1bS5vcmc+CisKICAgICAgICAgW2Nocm9taXVtXSBDcmVhdGUgYSBDQ1N0cmVhbVZpZGVv
RHJhd1F1YWQgdXNlZCBmb3IgU3RyZWFtVGV4dHVyZSB2aWRlbyBvdXRwdXQKICAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTg4ODI2CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lw
aQppbmRleCBlOGEwNzFmMzA4OGQxNTlkYzAwOTYzMzI2YTU0ODFiODA2MzJkYTZiLi4zZjk5NzUx
MmI3ZmMzNDAxYzEzZWM5OGM3MTcwMDc0ZGJjNGUzZTExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC0z
Nzc3LDEwICszNzc3LDEwIEBACiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaW1lci5jcHAnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDVGltZXIuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaW1lU291cmNlLmgnLAotICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNzL2No
cm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5jcHAnLAotICAgICAgICAgICAgJ3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5oJywKICAgICAgICAgICAgICdwbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvTGF5ZXJJbXBsLmNwcCcsCiAgICAgICAg
ICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0xheWVySW1wbC5oJywK
KyAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJh
d1F1YWQuY3BwJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q1lVVlZpZGVvRHJhd1F1YWQuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tJywKICAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFw
aGljcy9lZmwvRm9udEVmbC5jcHAnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNzL2Vm
bC9JY29uRWZsLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNwcAppbmRl
eCAyOTM3NWE4NjM2YWU0NjkyOGU3MWI3NmFjZTBiNjdjY2Y5OGFlZjNiLi5jMmMxNWRjMWU5Mzg5
YmI5MmExZDMyNjFkOGMxZmEzMzM0ODcxY2QxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVuZGVyZXJD
aHJvbWl1bS5jcHAKQEAgLTY5LDcgKzY5LDcgQEAKICNpbmNsdWRlICJjYy9DQ1N0cmVhbVZpZGVv
RHJhd1F1YWQuaCIKICNpbmNsdWRlICJjYy9DQ1RleHR1cmVEcmF3UXVhZC5oIgogI2luY2x1ZGUg
ImNjL0NDVGlsZURyYXdRdWFkLmgiCi0jaW5jbHVkZSAiY2MvQ0NWaWRlb0RyYXdRdWFkLmgiCisj
aW5jbHVkZSAiY2MvQ0NZVVZWaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSA8cHVibGljL1dlYlZp
ZGVvRnJhbWUuaD4KICNpbmNsdWRlIDx3dGYvQ3VycmVudFRpbWUuaD4KICNpbmNsdWRlIDx3dGYv
TWFpblRocmVhZC5oPgpAQCAtNTI1LDggKzUyNSw4IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9t
aXVtOjpkcmF3UXVhZChjb25zdCBDQ0RyYXdRdWFkKiBxdWFkKQogICAgIGNhc2UgQ0NEcmF3UXVh
ZDo6VGlsZWRDb250ZW50OgogICAgICAgICBkcmF3VGlsZVF1YWQocXVhZC0+dG9UaWxlRHJhd1F1
YWQoKSk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ0NEcmF3UXVhZDo6VmlkZW9Db250ZW50
OgotICAgICAgICBkcmF3VmlkZW9RdWFkKHF1YWQtPnRvVmlkZW9EcmF3UXVhZCgpKTsKKyAgICBj
YXNlIENDRHJhd1F1YWQ6OllVVlZpZGVvQ29udGVudDoKKyAgICAgICAgZHJhd1lVVlZpZGVvUXVh
ZChxdWFkLT50b1lVVlZpZGVvRHJhd1F1YWQoKSk7CiAgICAgICAgIGJyZWFrOwogICAgIH0KIH0K
QEAgLTk4MiwxNCArOTgyLDE0IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjpkcmF3VGls
ZVF1YWQoY29uc3QgQ0NUaWxlRHJhd1F1YWQqIHF1YWQpCiAgICAgZHJhd1RleHR1cmVkUXVhZChx
dWFkLT5xdWFkVHJhbnNmb3JtKCksIHRpbGVSZWN0LndpZHRoKCksIHRpbGVSZWN0LmhlaWdodCgp
LCBxdWFkLT5vcGFjaXR5KCksIGxvY2FsUXVhZCwgdW5pZm9ybXMubWF0cml4TG9jYXRpb24sIHVu
aWZvcm1zLmFscGhhTG9jYXRpb24sIHVuaWZvcm1zLnBvaW50TG9jYXRpb24pOwogfQogCi12b2lk
IExheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1lVVihjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqIHF1
YWQpCit2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1lVVlZpZGVvUXVhZChjb25zdCBD
Q1lVVlZpZGVvRHJhd1F1YWQqIHF1YWQpCiB7CiAgICAgY29uc3QgVmlkZW9ZVVZQcm9ncmFtKiBw
cm9ncmFtID0gdmlkZW9ZVVZQcm9ncmFtKCk7CiAgICAgQVNTRVJUKHByb2dyYW0gJiYgcHJvZ3Jh
bS0+aW5pdGlhbGl6ZWQoKSk7CiAKLSAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBs
YW5lJiB5UGxhbmUgPSBxdWFkLT5wbGFuZXMoKVtXZWJLaXQ6OldlYlZpZGVvRnJhbWU6OnlQbGFu
ZV07Ci0gICAgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYgdVBsYW5lID0gcXVh
ZC0+cGxhbmVzKClbV2ViS2l0OjpXZWJWaWRlb0ZyYW1lOjp1UGxhbmVdOwotICAgIGNvbnN0IEND
VmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHZQbGFuZSA9IHF1YWQtPnBsYW5lcygpW1dlYktp
dDo6V2ViVmlkZW9GcmFtZTo6dlBsYW5lXTsKKyAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpG
cmFtZVBsYW5lJiB5UGxhbmUgPSBxdWFkLT55UGxhbmUoKTsKKyAgICBjb25zdCBDQ1ZpZGVvTGF5
ZXJJbXBsOjpGcmFtZVBsYW5lJiB1UGxhbmUgPSBxdWFkLT51UGxhbmUoKTsKKyAgICBjb25zdCBD
Q1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2UGxhbmUgPSBxdWFkLT52UGxhbmUoKTsKIAog
ICAgIEdMQyhjb250ZXh0KCksIGNvbnRleHQoKS0+YWN0aXZlVGV4dHVyZShHcmFwaGljc0NvbnRl
eHQzRDo6VEVYVFVSRTEpKTsKICAgICBHTEMoY29udGV4dCgpLCBjb250ZXh0KCktPmJpbmRUZXh0
dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCB5UGxhbmUudGV4dHVyZUlkKSk7CkBA
IC0xMDY2LDE5ICsxMDY2LDYgQEAgdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OmRyYXdTdHJl
YW1WaWRlb1F1YWQoY29uc3QgQ0NTdHJlYW1WaWRlb0RyYXdRdWFkKiBxdWEKICAgICAgICAgICAg
ICAgICAgICAgIC0xKTsKIH0KIAotdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OmRyYXdWaWRl
b1F1YWQoY29uc3QgQ0NWaWRlb0RyYXdRdWFkKiBxdWFkKQotewotICAgIEFTU0VSVChDQ1Byb3h5
Ojppc0ltcGxUaHJlYWQoKSk7Ci0KLSAgICBzd2l0Y2ggKHF1YWQtPmZvcm1hdCgpKSB7Ci0gICAg
Y2FzZSBHcmFwaGljc0NvbnRleHQzRDo6TFVNSU5BTkNFOgotICAgICAgICBkcmF3WVVWKHF1YWQp
OwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBDUkFTSCgpOyAvLyBTb21l
b25lIHVwZGF0ZWQgY29udmVydFZGQ0Zvcm1hdFRvR0MzREZvcm1hdCBhYm92ZSBidXQgdXBkYXRl
IHRoaXMhCi0gICAgfQotfQotCiBzdHJ1Y3QgVGV4dHVyZVByb2dyYW1CaW5kaW5nIHsKICAgICB0
ZW1wbGF0ZTxjbGFzcyBQcm9ncmFtPiB2b2lkIHNldChQcm9ncmFtKiBwcm9ncmFtKQogICAgIHsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
eWVyUmVuZGVyZXJDaHJvbWl1bS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKaW5kZXggZDQ1NWUwZWZkMzM3NTVhZGQ4
YTMyODJkMTkyN2I0Njg5ODM1NGQ0NC4uYzM2OWRkMmE3NzBlZWQwOGUxNjllNGVhMDI0MDc5OTg1
ZDIwYjM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKQEAgLTUxLDcgKzUx
LDcgQEAgY2xhc3MgQ0NTb2xpZENvbG9yRHJhd1F1YWQ7CiBjbGFzcyBDQ1N0cmVhbVZpZGVvRHJh
d1F1YWQ7CiBjbGFzcyBDQ1RleHR1cmVEcmF3UXVhZDsKIGNsYXNzIENDVGlsZURyYXdRdWFkOwot
Y2xhc3MgQ0NWaWRlb0RyYXdRdWFkOworY2xhc3MgQ0NZVVZWaWRlb0RyYXdRdWFkOwogY2xhc3Mg
R2VvbWV0cnlCaW5kaW5nOwogY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7CiBjbGFzcyBMYXllclJl
bmRlcmVyR3B1TWVtb3J5QWxsb2NhdGlvbkNoYW5nZWRDYWxsYmFja0FkYXB0ZXI7CkBAIC0xMzUs
MTIgKzEzNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkcmF3VGV4dHVyZVF1YWQoY29uc3QgQ0NU
ZXh0dXJlRHJhd1F1YWQqKTsKICAgICB2b2lkIGRyYXdJT1N1cmZhY2VRdWFkKGNvbnN0IENDSU9T
dXJmYWNlRHJhd1F1YWQqKTsKICAgICB2b2lkIGRyYXdUaWxlUXVhZChjb25zdCBDQ1RpbGVEcmF3
UXVhZCopOwotICAgIHZvaWQgZHJhd1ZpZGVvUXVhZChjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqKTsK
LQotICAgIHZvaWQgY29weVBsYW5lVG9UZXh0dXJlKGNvbnN0IENDVmlkZW9EcmF3UXVhZCosIGNv
bnN0IHZvaWQqIHBsYW5lLCBpbnQgaW5kZXgpOwotICAgIGJvb2wgY29weUZyYW1lVG9UZXh0dXJl
cyhjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqKTsKLSAgICB2b2lkIGRyYXdTdHJlYW1UZXh0dXJlKGNv
bnN0IENDVmlkZW9EcmF3UXVhZCopOwotICAgIHZvaWQgZHJhd1lVVihjb25zdCBDQ1ZpZGVvRHJh
d1F1YWQqKTsKKyAgICB2b2lkIGRyYXdZVVZWaWRlb1F1YWQoY29uc3QgQ0NZVVZWaWRlb0RyYXdR
dWFkKik7CiAKICAgICB2b2lkIHNldERyYXdGcmFtZWJ1ZmZlclJlY3QoY29uc3QgSW50UmVjdCYs
IGJvb2wgZmxpcFkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0RyYXdRdWFkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCmluZGV4IDU5Yzc3YzAxYmVjYzA1
YjlhOWU0OTQ2MDg2ODA1Nzc5ZjFjMTU4ZDMuLjRlYTUxZTIxYmVmMzViZWJiMTQ2OWU5NzMxYjEz
ZWM3M2ExYWVjN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCkBAIC0zNiw3ICszNiw3IEBACiAj
aW5jbHVkZSAiY2MvQ0NTdHJlYW1WaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSAiY2MvQ0NUZXh0
dXJlRHJhd1F1YWQuaCIKICNpbmNsdWRlICJjYy9DQ1RpbGVEcmF3UXVhZC5oIgotI2luY2x1ZGUg
ImNjL0NDVmlkZW9EcmF3UXVhZC5oIgorI2luY2x1ZGUgImNjL0NDWVVWVmlkZW9EcmF3UXVhZC5o
IgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExNCwxMCArMTE0LDEwIEBAIGNvbnN0IEND
VGlsZURyYXdRdWFkKiBDQ0RyYXdRdWFkOjp0b1RpbGVEcmF3UXVhZCgpIGNvbnN0CiAgICAgcmV0
dXJuIHN0YXRpY19jYXN0PGNvbnN0IENDVGlsZURyYXdRdWFkKj4odGhpcyk7CiB9CiAKLWNvbnN0
IENDVmlkZW9EcmF3UXVhZCogQ0NEcmF3UXVhZDo6dG9WaWRlb0RyYXdRdWFkKCkgY29uc3QKK2Nv
bnN0IENDWVVWVmlkZW9EcmF3UXVhZCogQ0NEcmF3UXVhZDo6dG9ZVVZWaWRlb0RyYXdRdWFkKCkg
Y29uc3QKIHsKICAgICBBU1NFUlQobV9tYXRlcmlhbCA9PSBWaWRlb0NvbnRlbnQpOwotICAgIHJl
dHVybiBzdGF0aWNfY2FzdDxjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqPih0aGlzKTsKKyAgICByZXR1
cm4gc3RhdGljX2Nhc3Q8Y29uc3QgQ0NZVVZWaWRlb0RyYXdRdWFkKj4odGhpcyk7CiB9CiAKIApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2Mv
Q0NEcmF3UXVhZC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NEcmF3UXVhZC5oCmluZGV4IGJiNzQ1YjhkODQ0YjY1YWQ5YzljYjhiM2RlYTNlY2U4NmM2
MjU4N2IuLjc1NmI2ODAzNmRkNjYzNzdlNDUxZDJlMTcyMGE4YWE3NGE4ZjEwZTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1
YWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q0RyYXdRdWFkLmgKQEAgLTM4LDcgKzM4LDcgQEAgY2xhc3MgQ0NTb2xpZENvbG9yRHJhd1F1YWQ7
CiBjbGFzcyBDQ1N0cmVhbVZpZGVvRHJhd1F1YWQ7CiBjbGFzcyBDQ1RleHR1cmVEcmF3UXVhZDsK
IGNsYXNzIENDVGlsZURyYXdRdWFkOwotY2xhc3MgQ0NWaWRlb0RyYXdRdWFkOworY2xhc3MgQ0NZ
VVZWaWRlb0RyYXdRdWFkOwogCiAvLyBDQ0RyYXdRdWFkIGlzIGEgYmFnIG9mIGRhdGEgdXNlZCBm
b3IgZHJhd2luZyBhIHF1YWQuIEJlY2F1c2UgZGlmZmVyZW50CiAvLyBtYXRlcmlhbHMgbmVlZCBk
aWZmZXJlbnQgYml0cyBvZiBwZXItcXVhZCBkYXRhIHRvIHJlbmRlciwgY2xhc3NlcyB0aGF0IGRl
cml2ZQpAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgICAgIFRleHR1cmVDb250ZW50LAog
ICAgICAgICBTb2xpZENvbG9yLAogICAgICAgICBUaWxlZENvbnRlbnQsCi0gICAgICAgIFZpZGVv
Q29udGVudCwKKyAgICAgICAgWVVWVmlkZW9Db250ZW50LAogICAgICAgICBTdHJlYW1WaWRlb0Nv
bnRlbnQsCiAgICAgfTsKIApAQCAtODcsNyArODcsNyBAQCBwdWJsaWM6CiAgICAgY29uc3QgQ0NT
dHJlYW1WaWRlb0RyYXdRdWFkKiB0b1N0cmVhbVZpZGVvRHJhd1F1YWQoKSBjb25zdDsKICAgICBj
b25zdCBDQ1RleHR1cmVEcmF3UXVhZCogdG9UZXh0dXJlRHJhd1F1YWQoKSBjb25zdDsKICAgICBj
b25zdCBDQ1RpbGVEcmF3UXVhZCogdG9UaWxlRHJhd1F1YWQoKSBjb25zdDsKLSAgICBjb25zdCBD
Q1ZpZGVvRHJhd1F1YWQqIHRvVmlkZW9EcmF3UXVhZCgpIGNvbnN0OworICAgIGNvbnN0IENDWVVW
VmlkZW9EcmF3UXVhZCogdG9ZVVZWaWRlb0RyYXdRdWFkKCkgY29uc3Q7CiAKICAgICBjb25zdCBD
Q1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9zaGFy
ZWRRdWFkU3RhdGU7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5jcHAKZGVsZXRlZCBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5MDVjMDI2MGYxZWQ2N2I0Y2JkMmNiN2ZkN2Q2MDEwYTVk
OGM3M2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFk
LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMp
IDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
LSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
Ci0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
LSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJ
QlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF
IEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRS
SUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRB
TCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNM
VURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09E
UyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJ
TkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBP
RiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRP
UlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5Z
IFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VE
IE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29u
ZmlnLmgiCi0KLSNpbmNsdWRlICJjYy9DQ1ZpZGVvRHJhd1F1YWQuaCIKLQotbmFtZXNwYWNlIFdl
YkNvcmUgewotCi1QYXNzT3duUHRyPENDVmlkZW9EcmF3UXVhZD4gQ0NWaWRlb0RyYXdRdWFkOjpj
cmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqIHNoYXJlZFF1YWRTdGF0ZSwgY29uc3QgSW50
UmVjdCYgcXVhZFJlY3QsIENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUgcGxhbmVzW1dlYktp
dDo6V2ViVmlkZW9GcmFtZTo6bWF4UGxhbmVzXSwgdW5zaWduZWQgZnJhbWVQcm92aWRlclRleHR1
cmVJZCwgR0MzRGVudW0gZm9ybWF0LCBjb25zdCBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9uTWF0
cml4JiBtYXRyaXgpCi17Ci0gICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBDQ1ZpZGVvRHJhd1F1YWQo
c2hhcmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwgcGxhbmVzLCBmcmFtZVByb3ZpZGVyVGV4dHVyZUlk
LCBmb3JtYXQsIG1hdHJpeCkpOwotfQotCi1DQ1ZpZGVvRHJhd1F1YWQ6OkNDVmlkZW9EcmF3UXVh
ZChjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlLCBjb25zdCBJbnRSZWN0
JiBxdWFkUmVjdCwgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBwbGFuZXNbV2ViS2l0OjpX
ZWJWaWRlb0ZyYW1lOjptYXhQbGFuZXNdLCB1bnNpZ25lZCBmcmFtZVByb3ZpZGVyVGV4dHVyZUlk
LCBHQzNEZW51bSBmb3JtYXQsIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXgm
IG1hdHJpeCkKLSAgICA6IENDRHJhd1F1YWQoc2hhcmVkUXVhZFN0YXRlLCBDQ0RyYXdRdWFkOjpW
aWRlb0NvbnRlbnQsIHF1YWRSZWN0KQotICAgICwgbV9mcmFtZVByb3ZpZGVyVGV4dHVyZUlkKGZy
YW1lUHJvdmlkZXJUZXh0dXJlSWQpCi0gICAgLCBtX2Zvcm1hdChmb3JtYXQpCi0gICAgLCBtX21h
dHJpeChtYXRyaXgpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXZWJLaXQ6OldlYlZp
ZGVvRnJhbWU6Om1heFBsYW5lczsgKytpKQotICAgICAgbV9wbGFuZXNbaV0gPSBwbGFuZXNbaV07
Ci0KLX0KLQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFkLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvRHJhd1F1YWQuaApkZWxldGVkIGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggOTg1YjU0NGYwZDEzMTNiNWE0YjMzNzVkM2U5NTY4YTIzNDQyZWNhZS4uMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvRHJhd1F1YWQuaAorKysgL2Rl
di9udWxsCkBAIC0xLDU5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xl
IEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiAgUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJ
UyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQotICogRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIENDVmlkZW9EcmF3UXVhZF9o
Ci0jZGVmaW5lIENDVmlkZW9EcmF3UXVhZF9oCi0KLSNpbmNsdWRlICJHcmFwaGljc1R5cGVzM0Qu
aCIKLSNpbmNsdWRlICJjYy9DQ0RyYXdRdWFkLmgiCi0jaW5jbHVkZSAiY2MvQ0NWaWRlb0xheWVy
SW1wbC5oIgotI2luY2x1ZGUgPHB1YmxpYy9XZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5oPgotI2lu
Y2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3Mg
Q0NWaWRlb0RyYXdRdWFkIDogcHVibGljIENDRHJhd1F1YWQgewotICAgIFdURl9NQUtFX05PTkNP
UFlBQkxFKENDVmlkZW9EcmF3UXVhZCk7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NPd25QdHI8
Q0NWaWRlb0RyYXdRdWFkPiBjcmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqLCBjb25zdCBJ
bnRSZWN0JiwgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBwbGFuZXNbV2ViS2l0OjpXZWJW
aWRlb0ZyYW1lOjptYXhQbGFuZXNdLCB1bnNpZ25lZCBmcmFtZVByb3ZpZGVyVGV4dHVyZUlkLCBH
QzNEZW51bSBmb3JtYXQsIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXgmKTsK
LQotICAgIC8vIEVhY2ggaW5kZXggaW4gdGhpcyBhcnJheSBjb3JyZXNwb25kcyB0byBhIHBsYW5l
IGluIFdlYktpdDo6V2ViVmlkZW9GcmFtZS4KLSAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpG
cmFtZVBsYW5lKiBwbGFuZXMoKSBjb25zdCB7IHJldHVybiBtX3BsYW5lczsgfQotICAgIHVuc2ln
bmVkIGZyYW1lUHJvdmlkZXJUZXh0dXJlSWQoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1lUHJvdmlk
ZXJUZXh0dXJlSWQ7IH0KLSAgICBHQzNEZW51bSBmb3JtYXQoKSBjb25zdCB7IHJldHVybiBtX2Zv
cm1hdDsgfQotICAgIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXgmIG1hdHJp
eCgpIGNvbnN0IHsgcmV0dXJuIG1fbWF0cml4OyB9Ci0KLXByaXZhdGU6Ci0gICAgQ0NWaWRlb0Ry
YXdRdWFkKGNvbnN0IENDU2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIENDVmlkZW9M
YXllckltcGw6OkZyYW1lUGxhbmUgcGxhbmVzW1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6bWF4UGxh
bmVzXSwgdW5zaWduZWQgZnJhbWVQcm92aWRlclRleHR1cmVJZCwgR0MzRGVudW0gZm9ybWF0LCBj
b25zdCBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9uTWF0cml4Jik7Ci0KLSAgICBDQ1ZpZGVvTGF5
ZXJJbXBsOjpGcmFtZVBsYW5lIG1fcGxhbmVzW1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6bWF4UGxh
bmVzXTsKLSAgICB1bnNpZ25lZCBtX2ZyYW1lUHJvdmlkZXJUZXh0dXJlSWQ7Ci0gICAgR0MzRGVu
dW0gbV9mb3JtYXQ7Ci0gICAgV2ViS2l0OjpXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBtX21hdHJp
eDsKLX07Ci0KLX0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvTGF5ZXJJbXBsLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9MYXllckltcGwuY3BwCmlu
ZGV4IDkxYWJjZGRhYTZlZjg4ZDM1MjYxZTZmYmExMTdmODBkZmQ5Y2YzMWIuLmRkNDJiNDkwNTNi
ZmQ2MGVkNDBjNzM2ZWRkYzNkYjFmOWYwMjgyYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9MYXllckltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9MYXll
ckltcGwuY3BwCkBAIC00MSw3ICs0MSw3IEBACiAjaW5jbHVkZSAiY2MvQ0NRdWFkQ3VsbGVyLmgi
CiAjaW5jbHVkZSAiY2MvQ0NTdHJlYW1WaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSAiY2MvQ0NU
ZXh0dXJlRHJhd1F1YWQuaCIKLSNpbmNsdWRlICJjYy9DQ1ZpZGVvRHJhd1F1YWQuaCIKKyNpbmNs
dWRlICJjYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaCIKICNpbmNsdWRlIDxwdWJsaWMvV2ViVmlkZW9G
cmFtZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0xODcsOCArMTg3
LDExIEBAIHZvaWQgQ0NWaWRlb0xheWVySW1wbDo6YXBwZW5kUXVhZHMoQ0NRdWFkQ3VsbGVyJiBx
dWFkTGlzdCwgY29uc3QgQ0NTaGFyZWRRdWFkU3RhCiAgICAgc3dpdGNoIChtX2Zvcm1hdCkgewog
ICAgIGNhc2UgR3JhcGhpY3NDb250ZXh0M0Q6OkxVTUlOQU5DRTogewogICAgICAgICAvLyBZVVYg
c29mdHdhcmUgZGVjb2Rlci4KLSAgICAgICAgT3duUHRyPENDVmlkZW9EcmF3UXVhZD4gdmlkZW9R
dWFkID0gQ0NWaWRlb0RyYXdRdWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwg
bV9mcmFtZVBsYW5lcywgMCwgbV9mb3JtYXQsIFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRy
aXgoKSk7Ci0gICAgICAgIHF1YWRMaXN0LmFwcGVuZCh2aWRlb1F1YWQucmVsZWFzZSgpKTsKKyAg
ICAgICAgY29uc3QgRnJhbWVQbGFuZSYgeVBsYW5lID0gbV9mcmFtZVBsYW5lc1tXZWJLaXQ6Oldl
YlZpZGVvRnJhbWU6OnlQbGFuZV07CisgICAgICAgIGNvbnN0IEZyYW1lUGxhbmUmIHVQbGFuZSA9
IG1fZnJhbWVQbGFuZXNbV2ViS2l0OjpXZWJWaWRlb0ZyYW1lOjp1UGxhbmVdOworICAgICAgICBj
b25zdCBGcmFtZVBsYW5lJiB2UGxhbmUgPSBtX2ZyYW1lUGxhbmVzW1dlYktpdDo6V2ViVmlkZW9G
cmFtZTo6dlBsYW5lXTsKKyAgICAgICAgT3duUHRyPENDWVVWVmlkZW9EcmF3UXVhZD4geXV2Vmlk
ZW9RdWFkID0gQ0NZVVZWaWRlb0RyYXdRdWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFk
UmVjdCwgeVBsYW5lLCB1UGxhbmUsIHZQbGFuZSk7CisgICAgICAgIHF1YWRMaXN0LmFwcGVuZCh5
dXZWaWRlb1F1YWQucmVsZWFzZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAgIGNhc2Ug
R3JhcGhpY3NDb250ZXh0M0Q6OlJHQkE6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDWVVWVmlkZW9EcmF3UXVhZC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1
YWQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmEyZDYyYmE0NGM4NjU3NjZmOWFhMjk5NTBlNDhhNTJhZDI2MWVi
NDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuY3BwCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAq
CisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3
aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0
aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiAgUmVk
aXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAg
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBM
SUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElF
RAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFS
VElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAorICog
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlICJjYy9DQ1lVVlZpZGVvRHJhd1F1YWQu
aCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQYXNzT3duUHRyPENDWVVWVmlkZW9EcmF3UXVh
ZD4gQ0NZVVZWaWRlb0RyYXdRdWFkOjpjcmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqIHNo
YXJlZFF1YWRTdGF0ZSwgY29uc3QgSW50UmVjdCYgcXVhZFJlY3QsIGNvbnN0IENDVmlkZW9MYXll
ckltcGw6OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQ
bGFuZSYgdVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2UGxhbmUp
Cit7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBDQ1lVVlZpZGVvRHJhd1F1YWQoc2hhcmVkUXVh
ZFN0YXRlLCBxdWFkUmVjdCwgeVBsYW5lLCB1UGxhbmUsIHZQbGFuZSkpOworfQorCitDQ1lVVlZp
ZGVvRHJhd1F1YWQ6OkNDWVVWVmlkZW9EcmF3UXVhZChjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSog
c2hhcmVkUXVhZFN0YXRlLCBjb25zdCBJbnRSZWN0JiBxdWFkUmVjdCwgY29uc3QgQ0NWaWRlb0xh
eWVySW1wbDo6RnJhbWVQbGFuZSYgeVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFt
ZVBsYW5lJiB1UGxhbmUsIGNvbnN0IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHZQbGFu
ZSkKKyAgICA6IENDRHJhd1F1YWQoc2hhcmVkUXVhZFN0YXRlLCBDQ0RyYXdRdWFkOjpZVVZWaWRl
b0NvbnRlbnQsIHF1YWRSZWN0KQorICAgICwgbV95UGxhbmUoeVBsYW5lKQorICAgICwgbV91UGxh
bmUodVBsYW5lKQorICAgICwgbV92UGxhbmUodlBsYW5lKQoreworfQorCit9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVv
RHJhd1F1YWQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDWVVWVmlkZW9EcmF3UXVhZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjZDc1OGM1YjBmMDAzZDY0NjVkYjkz
MzZjYjk3ZWY1YjFmMjQzY2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaApAQCAtMCwwICsx
LDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCByaWdodHMg
cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
KgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKKyAqIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAq
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09O
U0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBS
T0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVT
RSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0Ug
T1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKKyAqIFRI
SVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCisgKi8KKworI2lmbmRlZiBDQ1lVVlZpZGVvRHJhd1F1YWRfaAorI2RlZmluZSBDQ1lV
VlZpZGVvRHJhd1F1YWRfaAorCisjaW5jbHVkZSAiY2MvQ0NEcmF3UXVhZC5oIgorI2luY2x1ZGUg
ImNjL0NDVmlkZW9MYXllckltcGwuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgorCitu
YW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENDWVVWVmlkZW9EcmF3UXVhZCA6IHB1YmxpYyBD
Q0RyYXdRdWFkIHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDQ1lVVlZpZGVvRHJhd1F1YWQp
OworcHVibGljOgorICAgIHN0YXRpYyBQYXNzT3duUHRyPENDWVVWVmlkZW9EcmF3UXVhZD4gY3Jl
YXRlKGNvbnN0IENDU2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IENDVmlk
ZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6
RnJhbWVQbGFuZSYgdVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2
UGxhbmUpOworCisgICAgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYgeVBsYW5l
KCkgY29uc3QgeyByZXR1cm4gbV95UGxhbmU7IH0KKyAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBs
OjpGcmFtZVBsYW5lJiB1UGxhbmUoKSBjb25zdCB7IHJldHVybiBtX3VQbGFuZTsgfQorICAgIGNv
bnN0IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHZQbGFuZSgpIGNvbnN0IHsgcmV0dXJu
IG1fdlBsYW5lOyB9CisKK3ByaXZhdGU6CisgICAgQ0NZVVZWaWRlb0RyYXdRdWFkKGNvbnN0IEND
U2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IENDVmlkZW9MYXllckltcGw6
OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYg
dVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2UGxhbmUpOworCisg
ICAgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBtX3lQbGFuZTsKKyAgICBDQ1ZpZGVvTGF5
ZXJJbXBsOjpGcmFtZVBsYW5lIG1fdVBsYW5lOworICAgIENDVmlkZW9MYXllckltcGw6OkZyYW1l
UGxhbmUgbV92UGxhbmU7Cit9OworCit9CisKKyNlbmRpZgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>147681</attachid>
            <date>2012-06-14 17:07:36 -0700</date>
            <delta_ts>2012-06-14 17:07:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-88828-20120614200736.patch</filename>
            <type>text/plain</type>
            <size>22442</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwMzc0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjI0OThkNTM3ZTA0YTQw
YjViNmIyYjE4NzRhZGY5YmE3OTU5NTg2YS4uOGFhOThmODJjMmRmOTg1ZmY1MWRlYTk0MjJiZDkx
N2Y1NGVhYjc3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTA2LTExICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gQ3Jl
YXRlIGEgQ0NZVVZWaWRlb0RyYXdRdWFkIGFuZCByZW1vdmUgdGhlIG5vdy11bnVzZWQgZ2VuZXJp
YyBDQ1ZpZGVvRHJhd1F1YWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTg4ODI4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgQWRyaWVubmUgV2Fsa2VyLgor
CisgICAgICAgIFRoZSBDQ1ZpZGVvRHJhd1F1YWQgaXMgbm93IG9ubHkgdXNlZCBmb3IgWVVWIHZp
ZGVvLCBzbyB3ZSByZW1vdmUgdGhlCisgICAgICAgIGNsYXNzIGFuZCByZXBsYWNlIGl0IHdpdGgg
Q0NZVVZWaWRlb0RyYXdRdWFkLiBUaGlzIGNsYXNzIGhvbGRzIHdoYXQgaXMKKyAgICAgICAgbmVl
ZGVkIHRvIGRyYXcgYSBZVVYgdmlkZW8gZnJhbWUuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBu
byBjaGFuZ2UgaW4gYmVoYXZpb3VyLgorCisgICAgICAgICogV2ViQ29yZS5neXBpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVuZGVyZXJDaHJvbWl1bS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpMYXllclJlbmRlcmVyQ2hyb21pdW06OmRyYXdRdWFkKToKKyAg
ICAgICAgKFdlYkNvcmU6OkxheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1lVVlZpZGVvUXVhZCk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9t
aXVtLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKExheWVyUmVuZGVyZXJDaHJvbWl1
bSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEcmF3UXVhZC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpDQ0RyYXdRdWFkOjp0b1lVVlZpZGVvRHJhd1F1YWQpOgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuaDoKKyAg
ICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoQ0NEcmF3UXVhZCk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0xheWVySW1wbC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpDQ1ZpZGVvTGF5ZXJJbXBsOjphcHBlbmRRdWFkcyk6CisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NZVVZWaWRlb0RyYXdRdWFkLmNwcDogUmVuYW1lZCBm
cm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9E
cmF3UXVhZC5jcHAuCisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkNDWVVW
VmlkZW9EcmF3UXVhZDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OkNDWVVWVmlkZW9EcmF3
UXVhZDo6Q0NZVVZWaWRlb0RyYXdRdWFkKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5oLgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChDQ1lVVlZpZGVvRHJhd1F1YWQpOgorICAgICAgICAo
V2ViQ29yZTo6Q0NZVVZWaWRlb0RyYXdRdWFkOjp5UGxhbmUpOgorICAgICAgICAoV2ViQ29yZTo6
Q0NZVVZWaWRlb0RyYXdRdWFkOjp1UGxhbmUpOgorICAgICAgICAoV2ViQ29yZTo6Q0NZVVZWaWRl
b0RyYXdRdWFkOjp2UGxhbmUpOgorCiAyMDEyLTA2LTE0ICBSeXVhbiBDaG9pICA8cnl1YW4uY2hv
aUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBbRUZMXSBNb3ZlIGN1cnNvciByZWxhdGVkIGNvZGUg
ZnJvbSBXaWRnZXRFZmwgdG8gZXdrX3ZpZXcgYW5kIEVmbFNjcmVlblV0aWxpdGllcy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUuZ3lwaQppbmRleCA5Y2I2YzdkNDM2ZDNhZDQ3MmY0YTY2OTk5NDhlMmI0MDIwMzdlNTMzLi43
MzM5NjQxYjA5ODIzOWYwY2IxZjE5MDgzMzg2MzhmZTM4YjkzZGRiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLmd5cGkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5neXBp
CkBAIC0zNzg0LDEwICszNzg0LDEwIEBACiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NUaW1lci5jcHAnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDVGltZXIuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vY2MvQ0NUaW1lU291cmNlLmgnLAotICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5jcHAnLAotICAgICAgICAgICAgJ3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5oJywKICAgICAgICAgICAg
ICdwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvTGF5ZXJJbXBsLmNwcCcsCiAg
ICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0xheWVySW1w
bC5oJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZp
ZGVvRHJhd1F1YWQuY3BwJywKKyAgICAgICAgICAgICdwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaCcsCiAgICAgICAgICAgICAncGxhdGZvcm0vZ3JhcGhp
Y3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tJywKICAgICAgICAgICAgICdwbGF0Zm9y
bS9ncmFwaGljcy9lZmwvRm9udEVmbC5jcHAnLAogICAgICAgICAgICAgJ3BsYXRmb3JtL2dyYXBo
aWNzL2VmbC9JY29uRWZsLmNwcCcsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmNw
cAppbmRleCBjMDZhMDBjMmJkODg5MjA2MzAwZTBlODQwMTM2ZDMxMzI1YTMwOGUxLi4xNjE3Mjlj
OTU5M2Q5MzVjNDAyZDNlMzk3ZTI4YzllYTA3Njg4MGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclJlbmRlcmVyQ2hyb21pdW0uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyUmVu
ZGVyZXJDaHJvbWl1bS5jcHAKQEAgLTcwLDcgKzcwLDcgQEAKICNpbmNsdWRlICJjYy9DQ1N0cmVh
bVZpZGVvRHJhd1F1YWQuaCIKICNpbmNsdWRlICJjYy9DQ1RleHR1cmVEcmF3UXVhZC5oIgogI2lu
Y2x1ZGUgImNjL0NDVGlsZURyYXdRdWFkLmgiCi0jaW5jbHVkZSAiY2MvQ0NWaWRlb0RyYXdRdWFk
LmgiCisjaW5jbHVkZSAiY2MvQ0NZVVZWaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSA8cHVibGlj
L1dlYlZpZGVvRnJhbWUuaD4KICNpbmNsdWRlIDx3dGYvQ3VycmVudFRpbWUuaD4KICNpbmNsdWRl
IDx3dGYvTWFpblRocmVhZC5oPgpAQCAtNTI2LDggKzUyNiw4IEBAIHZvaWQgTGF5ZXJSZW5kZXJl
ckNocm9taXVtOjpkcmF3UXVhZChjb25zdCBDQ0RyYXdRdWFkKiBxdWFkKQogICAgIGNhc2UgQ0NE
cmF3UXVhZDo6VGlsZWRDb250ZW50OgogICAgICAgICBkcmF3VGlsZVF1YWQocXVhZC0+dG9UaWxl
RHJhd1F1YWQoKSk7CiAgICAgICAgIGJyZWFrOwotICAgIGNhc2UgQ0NEcmF3UXVhZDo6VmlkZW9D
b250ZW50OgotICAgICAgICBkcmF3VmlkZW9RdWFkKHF1YWQtPnRvVmlkZW9EcmF3UXVhZCgpKTsK
KyAgICBjYXNlIENDRHJhd1F1YWQ6OllVVlZpZGVvQ29udGVudDoKKyAgICAgICAgZHJhd1lVVlZp
ZGVvUXVhZChxdWFkLT50b1lVVlZpZGVvRHJhd1F1YWQoKSk7CiAgICAgICAgIGJyZWFrOwogICAg
IH0KIH0KQEAgLTk4MywxNCArOTgzLDE0IEBAIHZvaWQgTGF5ZXJSZW5kZXJlckNocm9taXVtOjpk
cmF3VGlsZVF1YWQoY29uc3QgQ0NUaWxlRHJhd1F1YWQqIHF1YWQpCiAgICAgZHJhd1RleHR1cmVk
UXVhZChxdWFkLT5xdWFkVHJhbnNmb3JtKCksIHRpbGVSZWN0LndpZHRoKCksIHRpbGVSZWN0Lmhl
aWdodCgpLCBxdWFkLT5vcGFjaXR5KCksIGxvY2FsUXVhZCwgdW5pZm9ybXMubWF0cml4TG9jYXRp
b24sIHVuaWZvcm1zLmFscGhhTG9jYXRpb24sIHVuaWZvcm1zLnBvaW50TG9jYXRpb24pOwogfQog
Ci12b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1lVVihjb25zdCBDQ1ZpZGVvRHJhd1F1
YWQqIHF1YWQpCit2b2lkIExheWVyUmVuZGVyZXJDaHJvbWl1bTo6ZHJhd1lVVlZpZGVvUXVhZChj
b25zdCBDQ1lVVlZpZGVvRHJhd1F1YWQqIHF1YWQpCiB7CiAgICAgY29uc3QgVmlkZW9ZVVZQcm9n
cmFtKiBwcm9ncmFtID0gdmlkZW9ZVVZQcm9ncmFtKCk7CiAgICAgQVNTRVJUKHByb2dyYW0gJiYg
cHJvZ3JhbS0+aW5pdGlhbGl6ZWQoKSk7CiAKLSAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpG
cmFtZVBsYW5lJiB5UGxhbmUgPSBxdWFkLT5wbGFuZXMoKVtXZWJLaXQ6OldlYlZpZGVvRnJhbWU6
OnlQbGFuZV07Ci0gICAgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYgdVBsYW5l
ID0gcXVhZC0+cGxhbmVzKClbV2ViS2l0OjpXZWJWaWRlb0ZyYW1lOjp1UGxhbmVdOwotICAgIGNv
bnN0IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHZQbGFuZSA9IHF1YWQtPnBsYW5lcygp
W1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6dlBsYW5lXTsKKyAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJ
bXBsOjpGcmFtZVBsYW5lJiB5UGxhbmUgPSBxdWFkLT55UGxhbmUoKTsKKyAgICBjb25zdCBDQ1Zp
ZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB1UGxhbmUgPSBxdWFkLT51UGxhbmUoKTsKKyAgICBj
b25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2UGxhbmUgPSBxdWFkLT52UGxhbmUo
KTsKIAogICAgIEdMQyhjb250ZXh0KCksIGNvbnRleHQoKS0+YWN0aXZlVGV4dHVyZShHcmFwaGlj
c0NvbnRleHQzRDo6VEVYVFVSRTEpKTsKICAgICBHTEMoY29udGV4dCgpLCBjb250ZXh0KCktPmJp
bmRUZXh0dXJlKEdyYXBoaWNzQ29udGV4dDNEOjpURVhUVVJFXzJELCB5UGxhbmUudGV4dHVyZUlk
KSk7CkBAIC0xMDY3LDE5ICsxMDY3LDYgQEAgdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OmRy
YXdTdHJlYW1WaWRlb1F1YWQoY29uc3QgQ0NTdHJlYW1WaWRlb0RyYXdRdWFkKiBxdWEKICAgICAg
ICAgICAgICAgICAgICAgIC0xKTsKIH0KIAotdm9pZCBMYXllclJlbmRlcmVyQ2hyb21pdW06OmRy
YXdWaWRlb1F1YWQoY29uc3QgQ0NWaWRlb0RyYXdRdWFkKiBxdWFkKQotewotICAgIEFTU0VSVChD
Q1Byb3h5Ojppc0ltcGxUaHJlYWQoKSk7Ci0KLSAgICBzd2l0Y2ggKHF1YWQtPmZvcm1hdCgpKSB7
Ci0gICAgY2FzZSBHcmFwaGljc0NvbnRleHQzRDo6TFVNSU5BTkNFOgotICAgICAgICBkcmF3WVVW
KHF1YWQpOwotICAgICAgICBicmVhazsKLSAgICBkZWZhdWx0OgotICAgICAgICBDUkFTSCgpOyAv
LyBTb21lb25lIHVwZGF0ZWQgY29udmVydFZGQ0Zvcm1hdFRvR0MzREZvcm1hdCBhYm92ZSBidXQg
dXBkYXRlIHRoaXMhCi0gICAgfQotfQotCiBzdHJ1Y3QgVGV4dHVyZVByb2dyYW1CaW5kaW5nIHsK
ICAgICB0ZW1wbGF0ZTxjbGFzcyBQcm9ncmFtPiB2b2lkIHNldChQcm9ncmFtKiBwcm9ncmFtKQog
ICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL0xheWVyUmVuZGVyZXJDaHJvbWl1bS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKaW5kZXggZDQ1NWUwZWZkMzM3
NTVhZGQ4YTMyODJkMTkyN2I0Njg5ODM1NGQ0NC4uYzM2OWRkMmE3NzBlZWQwOGUxNjllNGVhMDI0
MDc5OTg1ZDIwYjM5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vTGF5ZXJSZW5kZXJlckNocm9taXVtLmgKQEAgLTUx
LDcgKzUxLDcgQEAgY2xhc3MgQ0NTb2xpZENvbG9yRHJhd1F1YWQ7CiBjbGFzcyBDQ1N0cmVhbVZp
ZGVvRHJhd1F1YWQ7CiBjbGFzcyBDQ1RleHR1cmVEcmF3UXVhZDsKIGNsYXNzIENDVGlsZURyYXdR
dWFkOwotY2xhc3MgQ0NWaWRlb0RyYXdRdWFkOworY2xhc3MgQ0NZVVZWaWRlb0RyYXdRdWFkOwog
Y2xhc3MgR2VvbWV0cnlCaW5kaW5nOwogY2xhc3MgR3JhcGhpY3NDb250ZXh0M0Q7CiBjbGFzcyBM
YXllclJlbmRlcmVyR3B1TWVtb3J5QWxsb2NhdGlvbkNoYW5nZWRDYWxsYmFja0FkYXB0ZXI7CkBA
IC0xMzUsMTIgKzEzNSw3IEBAIHByaXZhdGU6CiAgICAgdm9pZCBkcmF3VGV4dHVyZVF1YWQoY29u
c3QgQ0NUZXh0dXJlRHJhd1F1YWQqKTsKICAgICB2b2lkIGRyYXdJT1N1cmZhY2VRdWFkKGNvbnN0
IENDSU9TdXJmYWNlRHJhd1F1YWQqKTsKICAgICB2b2lkIGRyYXdUaWxlUXVhZChjb25zdCBDQ1Rp
bGVEcmF3UXVhZCopOwotICAgIHZvaWQgZHJhd1ZpZGVvUXVhZChjb25zdCBDQ1ZpZGVvRHJhd1F1
YWQqKTsKLQotICAgIHZvaWQgY29weVBsYW5lVG9UZXh0dXJlKGNvbnN0IENDVmlkZW9EcmF3UXVh
ZCosIGNvbnN0IHZvaWQqIHBsYW5lLCBpbnQgaW5kZXgpOwotICAgIGJvb2wgY29weUZyYW1lVG9U
ZXh0dXJlcyhjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqKTsKLSAgICB2b2lkIGRyYXdTdHJlYW1UZXh0
dXJlKGNvbnN0IENDVmlkZW9EcmF3UXVhZCopOwotICAgIHZvaWQgZHJhd1lVVihjb25zdCBDQ1Zp
ZGVvRHJhd1F1YWQqKTsKKyAgICB2b2lkIGRyYXdZVVZWaWRlb1F1YWQoY29uc3QgQ0NZVVZWaWRl
b0RyYXdRdWFkKik7CiAKICAgICB2b2lkIHNldERyYXdGcmFtZWJ1ZmZlclJlY3QoY29uc3QgSW50
UmVjdCYsIGJvb2wgZmxpcFkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0RyYXdRdWFkLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCmluZGV4IDU5Yzc3YzAx
YmVjYzA1YjlhOWU0OTQ2MDg2ODA1Nzc5ZjFjMTU4ZDMuLjRlYTUxZTIxYmVmMzViZWJiMTQ2OWU5
NzMxYjEzZWM3M2ExYWVjN2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRHJhd1F1YWQuY3BwCkBAIC0zNiw3ICszNiw3
IEBACiAjaW5jbHVkZSAiY2MvQ0NTdHJlYW1WaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSAiY2Mv
Q0NUZXh0dXJlRHJhd1F1YWQuaCIKICNpbmNsdWRlICJjYy9DQ1RpbGVEcmF3UXVhZC5oIgotI2lu
Y2x1ZGUgImNjL0NDVmlkZW9EcmF3UXVhZC5oIgorI2luY2x1ZGUgImNjL0NDWVVWVmlkZW9EcmF3
UXVhZC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTExNCwxMCArMTE0LDEwIEBAIGNv
bnN0IENDVGlsZURyYXdRdWFkKiBDQ0RyYXdRdWFkOjp0b1RpbGVEcmF3UXVhZCgpIGNvbnN0CiAg
ICAgcmV0dXJuIHN0YXRpY19jYXN0PGNvbnN0IENDVGlsZURyYXdRdWFkKj4odGhpcyk7CiB9CiAK
LWNvbnN0IENDVmlkZW9EcmF3UXVhZCogQ0NEcmF3UXVhZDo6dG9WaWRlb0RyYXdRdWFkKCkgY29u
c3QKK2NvbnN0IENDWVVWVmlkZW9EcmF3UXVhZCogQ0NEcmF3UXVhZDo6dG9ZVVZWaWRlb0RyYXdR
dWFkKCkgY29uc3QKIHsKICAgICBBU1NFUlQobV9tYXRlcmlhbCA9PSBWaWRlb0NvbnRlbnQpOwot
ICAgIHJldHVybiBzdGF0aWNfY2FzdDxjb25zdCBDQ1ZpZGVvRHJhd1F1YWQqPih0aGlzKTsKKyAg
ICByZXR1cm4gc3RhdGljX2Nhc3Q8Y29uc3QgQ0NZVVZWaWRlb0RyYXdRdWFkKj4odGhpcyk7CiB9
CiAKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NEcmF3UXVhZC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NEcmF3UXVhZC5oCmluZGV4IGJiNzQ1YjhkODQ0YjY1YWQ5YzljYjhiM2RlYTNl
Y2U4NmM2MjU4N2IuLjc1NmI2ODAzNmRkNjYzNzdlNDUxZDJlMTcyMGE4YWE3NGE4ZjEwZTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0ND
RHJhd1F1YWQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0RyYXdRdWFkLmgKQEAgLTM4LDcgKzM4LDcgQEAgY2xhc3MgQ0NTb2xpZENvbG9yRHJh
d1F1YWQ7CiBjbGFzcyBDQ1N0cmVhbVZpZGVvRHJhd1F1YWQ7CiBjbGFzcyBDQ1RleHR1cmVEcmF3
UXVhZDsKIGNsYXNzIENDVGlsZURyYXdRdWFkOwotY2xhc3MgQ0NWaWRlb0RyYXdRdWFkOworY2xh
c3MgQ0NZVVZWaWRlb0RyYXdRdWFkOwogCiAvLyBDQ0RyYXdRdWFkIGlzIGEgYmFnIG9mIGRhdGEg
dXNlZCBmb3IgZHJhd2luZyBhIHF1YWQuIEJlY2F1c2UgZGlmZmVyZW50CiAvLyBtYXRlcmlhbHMg
bmVlZCBkaWZmZXJlbnQgYml0cyBvZiBwZXItcXVhZCBkYXRhIHRvIHJlbmRlciwgY2xhc3NlcyB0
aGF0IGRlcml2ZQpAQCAtNzIsNyArNzIsNyBAQCBwdWJsaWM6CiAgICAgICAgIFRleHR1cmVDb250
ZW50LAogICAgICAgICBTb2xpZENvbG9yLAogICAgICAgICBUaWxlZENvbnRlbnQsCi0gICAgICAg
IFZpZGVvQ29udGVudCwKKyAgICAgICAgWVVWVmlkZW9Db250ZW50LAogICAgICAgICBTdHJlYW1W
aWRlb0NvbnRlbnQsCiAgICAgfTsKIApAQCAtODcsNyArODcsNyBAQCBwdWJsaWM6CiAgICAgY29u
c3QgQ0NTdHJlYW1WaWRlb0RyYXdRdWFkKiB0b1N0cmVhbVZpZGVvRHJhd1F1YWQoKSBjb25zdDsK
ICAgICBjb25zdCBDQ1RleHR1cmVEcmF3UXVhZCogdG9UZXh0dXJlRHJhd1F1YWQoKSBjb25zdDsK
ICAgICBjb25zdCBDQ1RpbGVEcmF3UXVhZCogdG9UaWxlRHJhd1F1YWQoKSBjb25zdDsKLSAgICBj
b25zdCBDQ1ZpZGVvRHJhd1F1YWQqIHRvVmlkZW9EcmF3UXVhZCgpIGNvbnN0OworICAgIGNvbnN0
IENDWVVWVmlkZW9EcmF3UXVhZCogdG9ZVVZWaWRlb0RyYXdRdWFkKCkgY29uc3Q7CiAKICAgICBj
b25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlKCkgY29uc3QgeyByZXR1cm4g
bV9zaGFyZWRRdWFkU3RhdGU7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFkLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9EcmF3UXVhZC5jcHAKZGVs
ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5MDVjMDI2MGYxZWQ2N2I0Y2JkMmNiN2ZkN2Q2
MDEwYTVkOGM3M2UuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0Ry
YXdRdWFkLmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICswLDAgQEAKLS8qCi0gKiBDb3B5cmln
aHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1l
bnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1
dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMg
Q09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQotICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRT
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAq
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKLSAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVk
ZSAiY29uZmlnLmgiCi0KLSNpbmNsdWRlICJjYy9DQ1ZpZGVvRHJhd1F1YWQuaCIKLQotbmFtZXNw
YWNlIFdlYkNvcmUgewotCi1QYXNzT3duUHRyPENDVmlkZW9EcmF3UXVhZD4gQ0NWaWRlb0RyYXdR
dWFkOjpjcmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqIHNoYXJlZFF1YWRTdGF0ZSwgY29u
c3QgSW50UmVjdCYgcXVhZFJlY3QsIENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUgcGxhbmVz
W1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6bWF4UGxhbmVzXSwgdW5zaWduZWQgZnJhbWVQcm92aWRl
clRleHR1cmVJZCwgR0MzRGVudW0gZm9ybWF0LCBjb25zdCBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0
aW9uTWF0cml4JiBtYXRyaXgpCi17Ci0gICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBDQ1ZpZGVvRHJh
d1F1YWQoc2hhcmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwgcGxhbmVzLCBmcmFtZVByb3ZpZGVyVGV4
dHVyZUlkLCBmb3JtYXQsIG1hdHJpeCkpOwotfQotCi1DQ1ZpZGVvRHJhd1F1YWQ6OkNDVmlkZW9E
cmF3UXVhZChjb25zdCBDQ1NoYXJlZFF1YWRTdGF0ZSogc2hhcmVkUXVhZFN0YXRlLCBjb25zdCBJ
bnRSZWN0JiBxdWFkUmVjdCwgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBwbGFuZXNbV2Vi
S2l0OjpXZWJWaWRlb0ZyYW1lOjptYXhQbGFuZXNdLCB1bnNpZ25lZCBmcmFtZVByb3ZpZGVyVGV4
dHVyZUlkLCBHQzNEZW51bSBmb3JtYXQsIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25N
YXRyaXgmIG1hdHJpeCkKLSAgICA6IENDRHJhd1F1YWQoc2hhcmVkUXVhZFN0YXRlLCBDQ0RyYXdR
dWFkOjpWaWRlb0NvbnRlbnQsIHF1YWRSZWN0KQotICAgICwgbV9mcmFtZVByb3ZpZGVyVGV4dHVy
ZUlkKGZyYW1lUHJvdmlkZXJUZXh0dXJlSWQpCi0gICAgLCBtX2Zvcm1hdChmb3JtYXQpCi0gICAg
LCBtX21hdHJpeChtYXRyaXgpCi17Ci0gICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXZWJLaXQ6
OldlYlZpZGVvRnJhbWU6Om1heFBsYW5lczsgKytpKQotICAgICAgbV9wbGFuZXNbaV0gPSBwbGFu
ZXNbaV07Ci0KLX0KLQotfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NWaWRlb0RyYXdRdWFkLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvRHJhd1F1YWQuaApkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggOTg1YjU0NGYwZDEzMTNiNWE0YjMzNzVkM2U5NTY4YTIzNDQyZWNh
ZS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvRHJhd1F1YWQuaAor
KysgL2Rldi9udWxsCkBAIC0xLDU5ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTIg
R29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBh
bmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1v
ZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29u
ZGl0aW9ucwotICogYXJlIG1ldDoKLSAqCi0gKiAxLiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAy
LiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0gKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0g
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JT
ICJBUyBJUyIgQU5EIEFOWQotICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAotICogV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQot
ICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWQotICogRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BF
Q0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMKLSAqIChJTkNMVURJTkcs
IEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsKLSAqIExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORAotICogT04gQU5ZIFRIRU9SWSBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKLSAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRSBPRgotICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaWZuZGVmIENDVmlkZW9EcmF3
UXVhZF9oCi0jZGVmaW5lIENDVmlkZW9EcmF3UXVhZF9oCi0KLSNpbmNsdWRlICJHcmFwaGljc1R5
cGVzM0QuaCIKLSNpbmNsdWRlICJjYy9DQ0RyYXdRdWFkLmgiCi0jaW5jbHVkZSAiY2MvQ0NWaWRl
b0xheWVySW1wbC5oIgotI2luY2x1ZGUgPHB1YmxpYy9XZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeC5o
PgotI2luY2x1ZGUgPHd0Zi9QYXNzT3duUHRyLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQot
Y2xhc3MgQ0NWaWRlb0RyYXdRdWFkIDogcHVibGljIENDRHJhd1F1YWQgewotICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKENDVmlkZW9EcmF3UXVhZCk7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NP
d25QdHI8Q0NWaWRlb0RyYXdRdWFkPiBjcmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3RhdGUqLCBj
b25zdCBJbnRSZWN0JiwgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBwbGFuZXNbV2ViS2l0
OjpXZWJWaWRlb0ZyYW1lOjptYXhQbGFuZXNdLCB1bnNpZ25lZCBmcmFtZVByb3ZpZGVyVGV4dHVy
ZUlkLCBHQzNEZW51bSBmb3JtYXQsIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRy
aXgmKTsKLQotICAgIC8vIEVhY2ggaW5kZXggaW4gdGhpcyBhcnJheSBjb3JyZXNwb25kcyB0byBh
IHBsYW5lIGluIFdlYktpdDo6V2ViVmlkZW9GcmFtZS4KLSAgICBjb25zdCBDQ1ZpZGVvTGF5ZXJJ
bXBsOjpGcmFtZVBsYW5lKiBwbGFuZXMoKSBjb25zdCB7IHJldHVybiBtX3BsYW5lczsgfQotICAg
IHVuc2lnbmVkIGZyYW1lUHJvdmlkZXJUZXh0dXJlSWQoKSBjb25zdCB7IHJldHVybiBtX2ZyYW1l
UHJvdmlkZXJUZXh0dXJlSWQ7IH0KLSAgICBHQzNEZW51bSBmb3JtYXQoKSBjb25zdCB7IHJldHVy
biBtX2Zvcm1hdDsgfQotICAgIGNvbnN0IFdlYktpdDo6V2ViVHJhbnNmb3JtYXRpb25NYXRyaXgm
IG1hdHJpeCgpIGNvbnN0IHsgcmV0dXJuIG1fbWF0cml4OyB9Ci0KLXByaXZhdGU6Ci0gICAgQ0NW
aWRlb0RyYXdRdWFkKGNvbnN0IENDU2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIEND
VmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUgcGxhbmVzW1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6
bWF4UGxhbmVzXSwgdW5zaWduZWQgZnJhbWVQcm92aWRlclRleHR1cmVJZCwgR0MzRGVudW0gZm9y
bWF0LCBjb25zdCBXZWJLaXQ6OldlYlRyYW5zZm9ybWF0aW9uTWF0cml4Jik7Ci0KLSAgICBDQ1Zp
ZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lIG1fcGxhbmVzW1dlYktpdDo6V2ViVmlkZW9GcmFtZTo6
bWF4UGxhbmVzXTsKLSAgICB1bnNpZ25lZCBtX2ZyYW1lUHJvdmlkZXJUZXh0dXJlSWQ7Ci0gICAg
R0MzRGVudW0gbV9mb3JtYXQ7Ci0gICAgV2ViS2l0OjpXZWJUcmFuc2Zvcm1hdGlvbk1hdHJpeCBt
X21hdHJpeDsKLX07Ci0KLX0KLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1ZpZGVvTGF5ZXJJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9MYXllckltcGwu
Y3BwCmluZGV4IDkxYWJjZGRhYTZlZjg4ZDM1MjYxZTZmYmExMTdmODBkZmQ5Y2YzMWIuLmRkNDJi
NDkwNTNiZmQ2MGVkNDBjNzM2ZWRkYzNkYjFmOWYwMjgyYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlkZW9MYXllckltcGwuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVmlk
ZW9MYXllckltcGwuY3BwCkBAIC00MSw3ICs0MSw3IEBACiAjaW5jbHVkZSAiY2MvQ0NRdWFkQ3Vs
bGVyLmgiCiAjaW5jbHVkZSAiY2MvQ0NTdHJlYW1WaWRlb0RyYXdRdWFkLmgiCiAjaW5jbHVkZSAi
Y2MvQ0NUZXh0dXJlRHJhd1F1YWQuaCIKLSNpbmNsdWRlICJjYy9DQ1ZpZGVvRHJhd1F1YWQuaCIK
KyNpbmNsdWRlICJjYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaCIKICNpbmNsdWRlIDxwdWJsaWMvV2Vi
VmlkZW9GcmFtZS5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0xODcs
OCArMTg3LDExIEBAIHZvaWQgQ0NWaWRlb0xheWVySW1wbDo6YXBwZW5kUXVhZHMoQ0NRdWFkQ3Vs
bGVyJiBxdWFkTGlzdCwgY29uc3QgQ0NTaGFyZWRRdWFkU3RhCiAgICAgc3dpdGNoIChtX2Zvcm1h
dCkgewogICAgIGNhc2UgR3JhcGhpY3NDb250ZXh0M0Q6OkxVTUlOQU5DRTogewogICAgICAgICAv
LyBZVVYgc29mdHdhcmUgZGVjb2Rlci4KLSAgICAgICAgT3duUHRyPENDVmlkZW9EcmF3UXVhZD4g
dmlkZW9RdWFkID0gQ0NWaWRlb0RyYXdRdWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRlLCBxdWFk
UmVjdCwgbV9mcmFtZVBsYW5lcywgMCwgbV9mb3JtYXQsIFdlYktpdDo6V2ViVHJhbnNmb3JtYXRp
b25NYXRyaXgoKSk7Ci0gICAgICAgIHF1YWRMaXN0LmFwcGVuZCh2aWRlb1F1YWQucmVsZWFzZSgp
KTsKKyAgICAgICAgY29uc3QgRnJhbWVQbGFuZSYgeVBsYW5lID0gbV9mcmFtZVBsYW5lc1tXZWJL
aXQ6OldlYlZpZGVvRnJhbWU6OnlQbGFuZV07CisgICAgICAgIGNvbnN0IEZyYW1lUGxhbmUmIHVQ
bGFuZSA9IG1fZnJhbWVQbGFuZXNbV2ViS2l0OjpXZWJWaWRlb0ZyYW1lOjp1UGxhbmVdOworICAg
ICAgICBjb25zdCBGcmFtZVBsYW5lJiB2UGxhbmUgPSBtX2ZyYW1lUGxhbmVzW1dlYktpdDo6V2Vi
VmlkZW9GcmFtZTo6dlBsYW5lXTsKKyAgICAgICAgT3duUHRyPENDWVVWVmlkZW9EcmF3UXVhZD4g
eXV2VmlkZW9RdWFkID0gQ0NZVVZWaWRlb0RyYXdRdWFkOjpjcmVhdGUoc2hhcmVkUXVhZFN0YXRl
LCBxdWFkUmVjdCwgeVBsYW5lLCB1UGxhbmUsIHZQbGFuZSk7CisgICAgICAgIHF1YWRMaXN0LmFw
cGVuZCh5dXZWaWRlb1F1YWQucmVsZWFzZSgpKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQogICAg
IGNhc2UgR3JhcGhpY3NDb250ZXh0M0Q6OlJHQkE6IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDWVVWVmlkZW9EcmF3UXVhZC5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVv
RHJhd1F1YWQuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmEyZDYyYmE0NGM4NjU3NjZmOWFhMjk5NTBlNDhhNTJh
ZDI2MWViNDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuY3BwCkBAIC0wLDAgKzEsNDUgQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTIgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAx
LiAgUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiAgUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIEFORCBJVFMgQ09OVFJJQlVUT1JTICJBUyBJUyIgQU5EIEFOWQorICogRVhQUkVTUyBP
UiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUg
SU1QTElFRAorICogV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9S
IEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgT1IgSVRTIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWQorICogRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5U
SUFMIERBTUFHRVMKKyAqIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1F
TlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsKKyAqIExPU1MgT0YgVVNFLCBEQVRB
LCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFO
RAorICogT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNU
UklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhF
UldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRgorICogVEhJUyBTT0ZU
V0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4K
KyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpbmNsdWRlICJjYy9DQ1lVVlZpZGVvRHJh
d1F1YWQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitQYXNzT3duUHRyPENDWVVWVmlkZW9E
cmF3UXVhZD4gQ0NZVVZWaWRlb0RyYXdRdWFkOjpjcmVhdGUoY29uc3QgQ0NTaGFyZWRRdWFkU3Rh
dGUqIHNoYXJlZFF1YWRTdGF0ZSwgY29uc3QgSW50UmVjdCYgcXVhZFJlY3QsIGNvbnN0IENDVmlk
ZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6
RnJhbWVQbGFuZSYgdVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2
UGxhbmUpCit7CisgICAgcmV0dXJuIGFkb3B0UHRyKG5ldyBDQ1lVVlZpZGVvRHJhd1F1YWQoc2hh
cmVkUXVhZFN0YXRlLCBxdWFkUmVjdCwgeVBsYW5lLCB1UGxhbmUsIHZQbGFuZSkpOworfQorCitD
Q1lVVlZpZGVvRHJhd1F1YWQ6OkNDWVVWVmlkZW9EcmF3UXVhZChjb25zdCBDQ1NoYXJlZFF1YWRT
dGF0ZSogc2hhcmVkUXVhZFN0YXRlLCBjb25zdCBJbnRSZWN0JiBxdWFkUmVjdCwgY29uc3QgQ0NW
aWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYgeVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBs
OjpGcmFtZVBsYW5lJiB1UGxhbmUsIGNvbnN0IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUm
IHZQbGFuZSkKKyAgICA6IENDRHJhd1F1YWQoc2hhcmVkUXVhZFN0YXRlLCBDQ0RyYXdRdWFkOjpZ
VVZWaWRlb0NvbnRlbnQsIHF1YWRSZWN0KQorICAgICwgbV95UGxhbmUoeVBsYW5lKQorICAgICwg
bV91UGxhbmUodVBsYW5lKQorICAgICwgbV92UGxhbmUodlBsYW5lKQoreworfQorCit9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lV
VlZpZGVvRHJhd1F1YWQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDWVVWVmlkZW9EcmF3UXVhZC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjBjZDc1OGM1YjBmMDAzZDY0
NjVkYjkzMzZjYjk3ZWY1YjFmMjQzY2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1lVVlZpZGVvRHJhd1F1YWQuaApAQCAt
MCwwICsxLDU0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEyIEdvb2dsZSBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2Ug
YW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBw
ZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBt
ZXQ6CisgKgorICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFIElNUExJRUQKKyAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKKyAqIERJU0NMQUlNRUQuIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisgKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NT
IE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQKKyAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YK
KyAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBDQ1lVVlZpZGVvRHJhd1F1YWRfaAorI2RlZmlu
ZSBDQ1lVVlZpZGVvRHJhd1F1YWRfaAorCisjaW5jbHVkZSAiY2MvQ0NEcmF3UXVhZC5oIgorI2lu
Y2x1ZGUgImNjL0NDVmlkZW9MYXllckltcGwuaCIKKyNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5o
PgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIENDWVVWVmlkZW9EcmF3UXVhZCA6IHB1
YmxpYyBDQ0RyYXdRdWFkIHsKKyAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDQ1lVVlZpZGVvRHJh
d1F1YWQpOworcHVibGljOgorICAgIHN0YXRpYyBQYXNzT3duUHRyPENDWVVWVmlkZW9EcmF3UXVh
ZD4gY3JlYXRlKGNvbnN0IENDU2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0
IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVy
SW1wbDo6RnJhbWVQbGFuZSYgdVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBs
YW5lJiB2UGxhbmUpOworCisgICAgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSYg
eVBsYW5lKCkgY29uc3QgeyByZXR1cm4gbV95UGxhbmU7IH0KKyAgICBjb25zdCBDQ1ZpZGVvTGF5
ZXJJbXBsOjpGcmFtZVBsYW5lJiB1UGxhbmUoKSBjb25zdCB7IHJldHVybiBtX3VQbGFuZTsgfQor
ICAgIGNvbnN0IENDVmlkZW9MYXllckltcGw6OkZyYW1lUGxhbmUmIHZQbGFuZSgpIGNvbnN0IHsg
cmV0dXJuIG1fdlBsYW5lOyB9CisKK3ByaXZhdGU6CisgICAgQ0NZVVZWaWRlb0RyYXdRdWFkKGNv
bnN0IENDU2hhcmVkUXVhZFN0YXRlKiwgY29uc3QgSW50UmVjdCYsIGNvbnN0IENDVmlkZW9MYXll
ckltcGw6OkZyYW1lUGxhbmUmIHlQbGFuZSwgY29uc3QgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQ
bGFuZSYgdVBsYW5lLCBjb25zdCBDQ1ZpZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lJiB2UGxhbmUp
OworCisgICAgQ0NWaWRlb0xheWVySW1wbDo6RnJhbWVQbGFuZSBtX3lQbGFuZTsKKyAgICBDQ1Zp
ZGVvTGF5ZXJJbXBsOjpGcmFtZVBsYW5lIG1fdVBsYW5lOworICAgIENDVmlkZW9MYXllckltcGw6
OkZyYW1lUGxhbmUgbV92UGxhbmU7Cit9OworCit9CisKKyNlbmRpZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>