<?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>236910</bug_id>
          
          <creation_ts>2022-02-19 21:39:28 -0800</creation_ts>
          <short_desc>[WebGPU] Tracer bullet part 10: Implement setLabel() and Metal accessors</short_desc>
          <delta_ts>2022-02-21 13:33:31 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebGPU</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>236879</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>dino</cc>
    
    <cc>rmorisset</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1843976</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-02-19 21:39:28 -0800</bug_when>
    <thetext>By adding a few various trivial functions in classes that need them, this patch completely finishes the implementation of CommandBuffer, QuerySet, RenderBundle, Sampler, and TextureView classes (other than their creation functions).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843980</commentid>
    <comment_count>1</comment_count>
      <attachid>452678</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-02-19 21:41:10 -0800</bug_when>
    <thetext>Created attachment 452678
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844240</commentid>
    <comment_count>2</comment_count>
      <attachid>452678</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2022-02-21 09:35:48 -0800</bug_when>
    <thetext>Comment on attachment 452678
Patch

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

&gt; Source/WebGPU/WebGPU/RenderPassEncoder.mm:178
&gt; +    m_renderCommandEncoder.label = [NSString stringWithCString:label encoding:NSUTF8StringEncoding];

Do you ever want to ASSERT that m_renderCommandEncoder etc exist?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844352</commentid>
    <comment_count>3</comment_count>
      <attachid>452678</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-02-21 13:31:08 -0800</bug_when>
    <thetext>Comment on attachment 452678
Patch

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

&gt;&gt; Source/WebGPU/WebGPU/RenderPassEncoder.mm:178
&gt;&gt; +    m_renderCommandEncoder.label = [NSString stringWithCString:label encoding:NSUTF8StringEncoding];
&gt; 
&gt; Do you ever want to ASSERT that m_renderCommandEncoder etc exist?

Yep! It&apos;s done in the creation routines. And rather than ASSERT()ing, it instead just doesn&apos;t create the WebGPU wrapper object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844355</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-02-21 13:32:51 -0800</bug_when>
    <thetext>Committed r290266 (247591@trunk): &lt;https://commits.webkit.org/247591@trunk&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844358</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-02-21 13:33:31 -0800</bug_when>
    <thetext>&lt;rdar://problem/89253939&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>452678</attachid>
            <date>2022-02-19 21:41:10 -0800</date>
            <delta_ts>2022-02-21 09:35:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>patch.txt</filename>
            <type>text/plain</type>
            <size>17132</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkdQVS9DaGFu
Z2VMb2cKaW5kZXggYjdhNTg2NzYwNzc5Li4zMDRjMDM2MDVkYWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJHUFUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJHUFUvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsNzEgQEAKKzIwMjItMDItMTkgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxl
LmNvbT4KKworICAgICAgICBbV2ViR1BVXSBUcmFjZXIgYnVsbGV0IHBhcnQgMTA6IEltcGxlbWVu
dCBzZXRMYWJlbCgpIGFuZCBNZXRhbCBhY2Nlc3NvcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzNjkxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIEJ5IGFkZGluZyBhIGZldyB2YXJpb3VzIHRyaXZpYWwg
ZnVuY3Rpb25zIGluIGNsYXNzZXMgdGhhdCBuZWVkIHRoZW0sIHRoaXMgcGF0Y2ggY29tcGxldGVs
eSBmaW5pc2hlcyB0aGUKKyAgICAgICAgaW1wbGVtZW50YXRpb24gb2YgQ29tbWFuZEJ1ZmZlciwg
UXVlcnlTZXQsIFJlbmRlckJ1bmRsZSwgU2FtcGxlciwgYW5kIFRleHR1cmVWaWV3IGNsYXNzZXMg
KG90aGVyIHRoYW4KKyAgICAgICAgdGhlaXIgY3JlYXRpb24gZnVuY3Rpb25zKS4KKworICAgICAg
ICAqIFdlYkdQVS9CdWZmZXIubW06CisgICAgICAgIChXZWJHUFU6OkJ1ZmZlcjo6c2V0TGFiZWwp
OgorICAgICAgICAqIFdlYkdQVS9Db21tYW5kQnVmZmVyLmg6CisgICAgICAgIChXZWJHUFU6OkNv
bW1hbmRCdWZmZXI6OmNvbW1hbmRCdWZmZXIgY29uc3QpOgorICAgICAgICAqIFdlYkdQVS9Db21t
YW5kQnVmZmVyLm1tOgorICAgICAgICAoV2ViR1BVOjpDb21tYW5kQnVmZmVyOjpDb21tYW5kQnVm
ZmVyKToKKyAgICAgICAgKFdlYkdQVTo6Q29tbWFuZEJ1ZmZlcjo6c2V0TGFiZWwpOgorICAgICAg
ICAqIFdlYkdQVS9Db21tYW5kRW5jb2Rlci5tbToKKyAgICAgICAgKFdlYkdQVTo6Q29tbWFuZEVu
Y29kZXI6OkNvbW1hbmRFbmNvZGVyKToKKyAgICAgICAgKFdlYkdQVTo6Q29tbWFuZEVuY29kZXI6
OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUvQ29tcHV0ZVBhc3NFbmNvZGVyLm1tOgorICAg
ICAgICAoV2ViR1BVOjpDb21wdXRlUGFzc0VuY29kZXI6OkNvbXB1dGVQYXNzRW5jb2Rlcik6Cisg
ICAgICAgIChXZWJHUFU6OkNvbXB1dGVQYXNzRW5jb2Rlcjo6c2V0TGFiZWwpOgorICAgICAgICAq
IFdlYkdQVS9Db21wdXRlUGlwZWxpbmUuaDoKKyAgICAgICAgKFdlYkdQVTo6Q29tcHV0ZVBpcGVs
aW5lOjpjb21wdXRlUGlwZWxpbmVTdGF0ZSBjb25zdCk6CisgICAgICAgICogV2ViR1BVL0NvbXB1
dGVQaXBlbGluZS5tbToKKyAgICAgICAgKFdlYkdQVTo6Q29tcHV0ZVBpcGVsaW5lOjpDb21wdXRl
UGlwZWxpbmUpOgorICAgICAgICAoV2ViR1BVOjpDb21wdXRlUGlwZWxpbmU6OnNldExhYmVsKToK
KyAgICAgICAgKiBXZWJHUFUvUXVlcnlTZXQuaDoKKyAgICAgICAgKFdlYkdQVTo6UXVlcnlTZXQ6
OmNvdW50ZXJTYW1wbGVCdWZmZXIgY29uc3QpOgorICAgICAgICAqIFdlYkdQVS9RdWVyeVNldC5t
bToKKyAgICAgICAgKFdlYkdQVTo6UXVlcnlTZXQ6OlF1ZXJ5U2V0KToKKyAgICAgICAgKFdlYkdQ
VTo6UXVlcnlTZXQ6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUvUXVldWUubW06CisgICAg
ICAgIChXZWJHUFU6OlF1ZXVlOjpRdWV1ZSk6CisgICAgICAgIChXZWJHUFU6OlF1ZXVlOjpzZXRM
YWJlbCk6CisgICAgICAgICogV2ViR1BVL1JlbmRlckJ1bmRsZS5oOgorICAgICAgICAoV2ViR1BV
OjpSZW5kZXJCdW5kbGU6OmluZGlyZWN0Q29tbWFuZEJ1ZmZlciBjb25zdCk6CisgICAgICAgICog
V2ViR1BVL1JlbmRlckJ1bmRsZS5tbToKKyAgICAgICAgKFdlYkdQVTo6UmVuZGVyQnVuZGxlOjpS
ZW5kZXJCdW5kbGUpOgorICAgICAgICAoV2ViR1BVOjpSZW5kZXJCdW5kbGU6OnNldExhYmVsKToK
KyAgICAgICAgKiBXZWJHUFUvUmVuZGVyQnVuZGxlRW5jb2Rlci5tbToKKyAgICAgICAgKFdlYkdQ
VTo6UmVuZGVyQnVuZGxlRW5jb2Rlcjo6UmVuZGVyQnVuZGxlRW5jb2Rlcik6CisgICAgICAgIChX
ZWJHUFU6OlJlbmRlckJ1bmRsZUVuY29kZXI6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUv
UmVuZGVyUGFzc0VuY29kZXIubW06CisgICAgICAgIChXZWJHUFU6OlJlbmRlclBhc3NFbmNvZGVy
OjpSZW5kZXJQYXNzRW5jb2Rlcik6CisgICAgICAgIChXZWJHUFU6OlJlbmRlclBhc3NFbmNvZGVy
OjpzZXRMYWJlbCk6CisgICAgICAgICogV2ViR1BVL1JlbmRlclBpcGVsaW5lLmg6CisgICAgICAg
IChXZWJHUFU6OlJlbmRlclBpcGVsaW5lOjpyZW5kZXJQaXBlbGluZVN0YXRlIGNvbnN0KToKKyAg
ICAgICAgKiBXZWJHUFUvUmVuZGVyUGlwZWxpbmUubW06CisgICAgICAgIChXZWJHUFU6OlJlbmRl
clBpcGVsaW5lOjpSZW5kZXJQaXBlbGluZSk6CisgICAgICAgIChXZWJHUFU6OlJlbmRlclBpcGVs
aW5lOjpzZXRMYWJlbCk6CisgICAgICAgICogV2ViR1BVL1NhbXBsZXIubW06CisgICAgICAgIChX
ZWJHUFU6OlNhbXBsZXI6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUvU2hhZGVyTW9kdWxl
Lmg6CisgICAgICAgIChXZWJHUFU6OlNoYWRlck1vZHVsZTo6bGlicmFyeSBjb25zdCk6CisgICAg
ICAgICogV2ViR1BVL1NoYWRlck1vZHVsZS5tbToKKyAgICAgICAgKFdlYkdQVTo6U2hhZGVyTW9k
dWxlOjpTaGFkZXJNb2R1bGUpOgorICAgICAgICAoV2ViR1BVOjpTaGFkZXJNb2R1bGU6OnNldExh
YmVsKToKKyAgICAgICAgKiBXZWJHUFUvVGV4dHVyZS5oOgorICAgICAgICAoV2ViR1BVOjpUZXh0
dXJlOjp0ZXh0dXJlIGNvbnN0KToKKyAgICAgICAgKiBXZWJHUFUvVGV4dHVyZS5tbToKKyAgICAg
ICAgKFdlYkdQVTo6VGV4dHVyZTo6VGV4dHVyZSk6CisgICAgICAgIChXZWJHUFU6OlRleHR1cmU6
OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUvVGV4dHVyZVZpZXcubW06CisgICAgICAgIChX
ZWJHUFU6OlRleHR1cmVWaWV3OjpzZXRMYWJlbCk6CisKIDIwMjItMDItMTkgIE15bGVzIEMuIE1h
eGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAgICBbV2ViR1BVXSBUcmFjZXIg
YnVsbGV0IHBhcnQgOTogQmFzaWMgaW1wbGVtZW50YXRpb24gb2YgYmluZGluZ3MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0J1ZmZlci5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BV
L0J1ZmZlci5tbQppbmRleCAwNTkzMGMyMmYyMzEuLmE2YWQ2OTdiMDU1ZiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkdQVS9XZWJHUFUvQnVmZmVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BV
L0J1ZmZlci5tbQpAQCAtNzUsNyArNzUsNyBAQCB2b2lkIEJ1ZmZlcjo6dW5tYXAoKQogCiB2b2lk
IEJ1ZmZlcjo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7Ci0gICAgVU5VU0VEX1BBUkFN
KGxhYmVsKTsKKyAgICBtX2J1ZmZlci5sYWJlbCA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmlu
ZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CiB9CiAKIH0gLy8gbmFtZXNw
YWNlIFdlYkdQVQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEJ1ZmZl
ci5oIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEJ1ZmZlci5oCmluZGV4IGQ5YjY5NGU2
YWY4OC4uNGE5YTdmNWM3OGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21t
YW5kQnVmZmVyLmgKKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEJ1ZmZlci5oCkBA
IC00Myw2ICs0Myw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0TGFiZWwoY29uc3QgY2hhciop
OwogCisgICAgaWQgPE1UTENvbW1hbmRCdWZmZXI+IGNvbW1hbmRCdWZmZXIoKSBjb25zdCB7IHJl
dHVybiBtX2NvbW1hbmRCdWZmZXI7IH0KKwogcHJpdmF0ZToKICAgICBDb21tYW5kQnVmZmVyKGlk
IDxNVExDb21tYW5kQnVmZmVyPik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BV
L0NvbW1hbmRCdWZmZXIubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21tYW5kQnVmZmVyLm1t
CmluZGV4IDIxMzAxZGIxMjQ5ZS4uNjdiZTM1ZDZjODA1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9Db21tYW5kQnVmZmVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0Nv
bW1hbmRCdWZmZXIubW0KQEAgLTMyLDE0ICszMiwxMyBAQCBuYW1lc3BhY2UgV2ViR1BVIHsKIENv
bW1hbmRCdWZmZXI6OkNvbW1hbmRCdWZmZXIoaWQgPE1UTENvbW1hbmRCdWZmZXI+IGNvbW1hbmRC
dWZmZXIpCiAgICAgOiBtX2NvbW1hbmRCdWZmZXIoY29tbWFuZEJ1ZmZlcikKIHsKLSAgICBVTlVT
RURfVkFSSUFCTEUobV9jb21tYW5kQnVmZmVyKTsKIH0KIAogQ29tbWFuZEJ1ZmZlcjo6fkNvbW1h
bmRCdWZmZXIoKSA9IGRlZmF1bHQ7CiAKIHZvaWQgQ29tbWFuZEJ1ZmZlcjo6c2V0TGFiZWwoY29u
c3QgY2hhciogbGFiZWwpCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAgICBtX2NvbW1h
bmRCdWZmZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rp
bmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9Db21tYW5kRW5jb2Rlci5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbW1h
bmRFbmNvZGVyLm1tCmluZGV4IDUzZDQzZjg4ZTRkMC4uZDAyODAzMDdhZGFjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21tYW5kRW5jb2Rlci5tbQorKysgYi9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9Db21tYW5kRW5jb2Rlci5tbQpAQCAtNDQsNyArNDQsNiBAQCBSZWZQdHI8Q29t
bWFuZEVuY29kZXI+IERldmljZTo6Y3JlYXRlQ29tbWFuZEVuY29kZXIoY29uc3QgV0dQVUNvbW1h
bmRFbmNvZGVyRGVzYwogQ29tbWFuZEVuY29kZXI6OkNvbW1hbmRFbmNvZGVyKGlkIDxNVExDb21t
YW5kQnVmZmVyPiBjb21tYW5kQnVmZmVyKQogICAgIDogbV9jb21tYW5kQnVmZmVyKGNvbW1hbmRC
dWZmZXIpCiB7Ci0gICAgVU5VU0VEX1ZBUklBQkxFKG1fY29tbWFuZEJ1ZmZlcik7CiB9CiAKIENv
bW1hbmRFbmNvZGVyOjp+Q29tbWFuZEVuY29kZXIoKSA9IGRlZmF1bHQ7CkBAIC0xMzUsNyArMTM0
LDcgQEAgdm9pZCBDb21tYW5kRW5jb2Rlcjo6d3JpdGVUaW1lc3RhbXAoY29uc3QgUXVlcnlTZXQm
IHF1ZXJ5U2V0LCB1aW50MzJfdCBxdWVyeUluZGUKIAogdm9pZCBDb21tYW5kRW5jb2Rlcjo6c2V0
TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAg
ICBtX2NvbW1hbmRCdWZmZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFi
ZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOwogfQogCiB9IC8vIG5hbWVzcGFjZSBX
ZWJHUFUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1dGVQYXNzRW5jb2Rl
ci5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1dGVQYXNzRW5jb2Rlci5tbQppbmRleCA5
ZTllMTlhN2M0Y2IuLjA2MTFhNjhhZWYzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJH
UFUvQ29tcHV0ZVBhc3NFbmNvZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1
dGVQYXNzRW5jb2Rlci5tbQpAQCAtMzYsNyArMzYsNiBAQCBuYW1lc3BhY2UgV2ViR1BVIHsKIENv
bXB1dGVQYXNzRW5jb2Rlcjo6Q29tcHV0ZVBhc3NFbmNvZGVyKGlkIDxNVExDb21wdXRlQ29tbWFu
ZEVuY29kZXI+IGNvbXB1dGVDb21tYW5kRW5jb2RlcikKICAgICA6IG1fY29tcHV0ZUNvbW1hbmRF
bmNvZGVyKGNvbXB1dGVDb21tYW5kRW5jb2RlcikKIHsKLSAgICBVTlVTRURfVkFSSUFCTEUobV9j
b21wdXRlQ29tbWFuZEVuY29kZXIpOwogfQogCiBDb21wdXRlUGFzc0VuY29kZXI6On5Db21wdXRl
UGFzc0VuY29kZXIoKSA9IGRlZmF1bHQ7CkBAIC05Nyw3ICs5Niw3IEBAIHZvaWQgQ29tcHV0ZVBh
c3NFbmNvZGVyOjpzZXRQaXBlbGluZShjb25zdCBDb21wdXRlUGlwZWxpbmUmIHBpcGVsaW5lKQog
CiB2b2lkIENvbXB1dGVQYXNzRW5jb2Rlcjo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7
Ci0gICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAgICBtX2NvbXB1dGVDb21tYW5kRW5jb2Rlci5s
YWJlbCA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhT
dHJpbmdFbmNvZGluZ107CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkdQVQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkdQVS9XZWJHUFUvQ29tcHV0ZVBpcGVsaW5lLmggYi9Tb3VyY2UvV2ViR1BVL1dl
YkdQVS9Db21wdXRlUGlwZWxpbmUuaAppbmRleCAxMTdmMWZhMjQ2ZWQuLjgwODE4NGY5ZWFiOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tcHV0ZVBpcGVsaW5lLmgKKysrIGIv
U291cmNlL1dlYkdQVS9XZWJHUFUvQ29tcHV0ZVBpcGVsaW5lLmgKQEAgLTQ2LDYgKzQ2LDggQEAg
cHVibGljOgogICAgIFJlZjxCaW5kR3JvdXBMYXlvdXQ+IGdldEJpbmRHcm91cExheW91dCh1aW50
MzJfdCBncm91cEluZGV4KTsKICAgICB2b2lkIHNldExhYmVsKGNvbnN0IGNoYXIqKTsKIAorICAg
IGlkIDxNVExDb21wdXRlUGlwZWxpbmVTdGF0ZT4gY29tcHV0ZVBpcGVsaW5lU3RhdGUoKSBjb25z
dCB7IHJldHVybiBtX2NvbXB1dGVQaXBlbGluZVN0YXRlOyB9CisKIHByaXZhdGU6CiAgICAgQ29t
cHV0ZVBpcGVsaW5lKGlkIDxNVExDb21wdXRlUGlwZWxpbmVTdGF0ZT4pOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21wdXRlUGlwZWxpbmUubW0gYi9Tb3VyY2UvV2ViR1BV
L1dlYkdQVS9Db21wdXRlUGlwZWxpbmUubW0KaW5kZXggZjc2NDdiNDBjZmJjLi5lNThhNGUwYTA5
NjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1dGVQaXBlbGluZS5tbQor
KysgYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21wdXRlUGlwZWxpbmUubW0KQEAgLTQ3LDcgKzQ3
LDYgQEAgdm9pZCBEZXZpY2U6OmNyZWF0ZUNvbXB1dGVQaXBlbGluZUFzeW5jKGNvbnN0IFdHUFVD
b21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yKiBkZXMKIENvbXB1dGVQaXBlbGluZTo6Q29tcHV0ZVBp
cGVsaW5lKGlkIDxNVExDb21wdXRlUGlwZWxpbmVTdGF0ZT4gY29tcHV0ZVBpcGVsaW5lU3RhdGUp
CiAgICAgOiBtX2NvbXB1dGVQaXBlbGluZVN0YXRlKGNvbXB1dGVQaXBlbGluZVN0YXRlKQogewot
ICAgIFVOVVNFRF9WQVJJQUJMRShtX2NvbXB1dGVQaXBlbGluZVN0YXRlKTsKIH0KIAogQ29tcHV0
ZVBpcGVsaW5lOjp+Q29tcHV0ZVBpcGVsaW5lKCkgPSBkZWZhdWx0OwpAQCAtNTgsOSArNTcsOSBA
QCBSZWY8QmluZEdyb3VwTGF5b3V0PiBDb21wdXRlUGlwZWxpbmU6OmdldEJpbmRHcm91cExheW91
dCh1aW50MzJfdCBncm91cEluZGV4KQogICAgIHJldHVybiBCaW5kR3JvdXBMYXlvdXQ6OmNyZWF0
ZShuaWwsIG5pbCwgbmlsKTsKIH0KIAotdm9pZCBDb21wdXRlUGlwZWxpbmU6OnNldExhYmVsKGNv
bnN0IGNoYXIqIGxhYmVsKQordm9pZCBDb21wdXRlUGlwZWxpbmU6OnNldExhYmVsKGNvbnN0IGNo
YXIqKQogewotICAgIFVOVVNFRF9QQVJBTShsYWJlbCk7CisgICAgLy8gTVRMQ29tcHV0ZVBpcGVs
aW5lU3RhdGUncyBsYWJlbHMgYXJlIHJlYWQtb25seS4KIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
R1BVCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9RdWVyeVNldC5oIGIvU291cmNl
L1dlYkdQVS9XZWJHUFUvUXVlcnlTZXQuaAppbmRleCBhYTNjZDk3ZjUyZTcuLjJjNmFjMjIxZDM2
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvUXVlcnlTZXQuaAorKysgYi9Tb3Vy
Y2UvV2ViR1BVL1dlYkdQVS9RdWVyeVNldC5oCkBAIC00NCw2ICs0NCw4IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGRlc3Ryb3koKTsKICAgICB2b2lkIHNldExhYmVsKGNvbnN0IGNoYXIqKTsKIAorICAg
IGlkIDxNVExDb3VudGVyU2FtcGxlQnVmZmVyPiBjb3VudGVyU2FtcGxlQnVmZmVyKCkgY29uc3Qg
eyByZXR1cm4gbV9jb3VudGVyU2FtcGxlQnVmZmVyOyB9CisKIHByaXZhdGU6CiAgICAgUXVlcnlT
ZXQoaWQgPE1UTENvdW50ZXJTYW1wbGVCdWZmZXI+KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkdQVS9XZWJHUFUvUXVlcnlTZXQubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9RdWVyeVNldC5t
bQppbmRleCBmYzUyZjhkOGJhZmUuLjM1MWM4YmM0Y2Q5MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkdQVS9XZWJHUFUvUXVlcnlTZXQubW0KKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUXVlcnlT
ZXQubW0KQEAgLTM5LDcgKzM5LDYgQEAgUmVmUHRyPFF1ZXJ5U2V0PiBEZXZpY2U6OmNyZWF0ZVF1
ZXJ5U2V0KGNvbnN0IFdHUFVRdWVyeVNldERlc2NyaXB0b3IqIGRlc2NyaXB0b3IKIFF1ZXJ5U2V0
OjpRdWVyeVNldChpZCA8TVRMQ291bnRlclNhbXBsZUJ1ZmZlcj4gY291bnRlclNhbXBsZUJ1ZmZl
cikKICAgICA6IG1fY291bnRlclNhbXBsZUJ1ZmZlcihjb3VudGVyU2FtcGxlQnVmZmVyKQogewot
ICAgIFVOVVNFRF9WQVJJQUJMRShtX2NvdW50ZXJTYW1wbGVCdWZmZXIpOwogfQogCiBRdWVyeVNl
dDo6flF1ZXJ5U2V0KCkgPSBkZWZhdWx0OwpAQCAtNDgsOSArNDcsOSBAQCB2b2lkIFF1ZXJ5U2V0
OjpkZXN0cm95KCkKIHsKIH0KIAotdm9pZCBRdWVyeVNldDo6c2V0TGFiZWwoY29uc3QgY2hhciog
bGFiZWwpCit2b2lkIFF1ZXJ5U2V0OjpzZXRMYWJlbChjb25zdCBjaGFyKikKIHsKLSAgICBVTlVT
RURfUEFSQU0obGFiZWwpOworICAgIC8vIE1UTENvdW50ZXJTYW1wbGVCdWZmZXIncyBsYWJlbHMg
YXJlIHJlYWQtb25seS4KIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViR1BVCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViR1BVL1dlYkdQVS9RdWV1ZS5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1F1ZXVl
Lm1tCmluZGV4IDNlZjlmNDFlYmIyYi4uMjMzN2MwMDIwZTVkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViR1BVL1dlYkdQVS9RdWV1ZS5tbQorKysgYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9RdWV1ZS5t
bQpAQCAtMzQsNyArMzQsNiBAQCBuYW1lc3BhY2UgV2ViR1BVIHsKIFF1ZXVlOjpRdWV1ZShpZCA8
TVRMQ29tbWFuZFF1ZXVlPiBjb21tYW5kUXVldWUpCiAgICAgOiBtX2NvbW1hbmRRdWV1ZShjb21t
YW5kUXVldWUpCiB7Ci0gICAgVU5VU0VEX1ZBUklBQkxFKG1fY29tbWFuZFF1ZXVlKTsKIH0KIAog
UXVldWU6On5RdWV1ZSgpID0gZGVmYXVsdDsKQEAgLTY5LDcgKzY4LDcgQEAgdm9pZCBRdWV1ZTo6
d3JpdGVUZXh0dXJlKGNvbnN0IFdHUFVJbWFnZUNvcHlUZXh0dXJlKiBkZXN0aW5hdGlvbiwgY29u
c3Qgdm9pZCogZGEKIAogdm9pZCBRdWV1ZTo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7
Ci0gICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAgICBtX2NvbW1hbmRRdWV1ZS5sYWJlbCA9IFtO
U1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNv
ZGluZ107CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkdQVQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlLmggYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9SZW5kZXJC
dW5kbGUuaAppbmRleCA2ZjQwNDEzNTZjMzEuLmEyZmE4YTQ1N2YyOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlLmgKKysrIGIvU291cmNlL1dlYkdQVS9XZWJH
UFUvUmVuZGVyQnVuZGxlLmgKQEAgLTQzLDYgKzQzLDggQEAgcHVibGljOgogCiAgICAgdm9pZCBz
ZXRMYWJlbChjb25zdCBjaGFyKik7CiAKKyAgICBpZCA8TVRMSW5kaXJlY3RDb21tYW5kQnVmZmVy
PiBpbmRpcmVjdENvbW1hbmRCdWZmZXIoKSBjb25zdCB7IHJldHVybiBtX2luZGlyZWN0Q29tbWFu
ZEJ1ZmZlcjsgfQorCiBwcml2YXRlOgogICAgIFJlbmRlckJ1bmRsZShpZCA8TVRMSW5kaXJlY3RD
b21tYW5kQnVmZmVyPik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRl
ckJ1bmRsZS5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRlckJ1bmRsZS5tbQppbmRleCA4
MDk1ZGJhZWM1N2IuLjUzMzBkMjdjY2E2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJH
UFUvUmVuZGVyQnVuZGxlLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRlckJ1bmRs
ZS5tbQpAQCAtMzIsMTQgKzMyLDEzIEBAIG5hbWVzcGFjZSBXZWJHUFUgewogUmVuZGVyQnVuZGxl
OjpSZW5kZXJCdW5kbGUoaWQgPE1UTEluZGlyZWN0Q29tbWFuZEJ1ZmZlcj4gaW5kaXJlY3RDb21t
YW5kQnVmZmVyKQogICAgIDogbV9pbmRpcmVjdENvbW1hbmRCdWZmZXIoaW5kaXJlY3RDb21tYW5k
QnVmZmVyKQogewotICAgIFVOVVNFRF9WQVJJQUJMRShtX2luZGlyZWN0Q29tbWFuZEJ1ZmZlcik7
CiB9CiAKIFJlbmRlckJ1bmRsZTo6flJlbmRlckJ1bmRsZSgpID0gZGVmYXVsdDsKIAogdm9pZCBS
ZW5kZXJCdW5kbGU6OnNldExhYmVsKGNvbnN0IGNoYXIqIGxhYmVsKQogewotICAgIFVOVVNFRF9Q
QVJBTShsYWJlbCk7CisgICAgbV9pbmRpcmVjdENvbW1hbmRCdWZmZXIubGFiZWwgPSBbTlNTdHJp
bmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2Rpbmdd
OwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9SZW5kZXJCdW5kbGVF
bmNvZGVyLm1tIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlRW5jb2Rlci5tbQpp
bmRleCBkNGIyOTY4NTg1MDEuLjg5NThjZjEzZjU2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQ
VS9XZWJHUFUvUmVuZGVyQnVuZGxlRW5jb2Rlci5tbQorKysgYi9Tb3VyY2UvV2ViR1BVL1dlYkdQ
VS9SZW5kZXJCdW5kbGVFbmNvZGVyLm1tCkBAIC00Myw3ICs0Myw2IEBAIFJlZlB0cjxSZW5kZXJC
dW5kbGVFbmNvZGVyPiBEZXZpY2U6OmNyZWF0ZVJlbmRlckJ1bmRsZUVuY29kZXIoY29uc3QgV0dQ
VVJlbmRlckJ1CiBSZW5kZXJCdW5kbGVFbmNvZGVyOjpSZW5kZXJCdW5kbGVFbmNvZGVyKGlkIDxN
VExJbmRpcmVjdENvbW1hbmRCdWZmZXI+IGluZGlyZWN0Q29tbWFuZEJ1ZmZlcikKICAgICA6IG1f
aW5kaXJlY3RDb21tYW5kQnVmZmVyKGluZGlyZWN0Q29tbWFuZEJ1ZmZlcikKIHsKLSAgICBVTlVT
RURfVkFSSUFCTEUobV9pbmRpcmVjdENvbW1hbmRCdWZmZXIpOwogfQogCiBSZW5kZXJCdW5kbGVF
bmNvZGVyOjp+UmVuZGVyQnVuZGxlRW5jb2RlcigpID0gZGVmYXVsdDsKQEAgLTEyOSw3ICsxMjgs
NyBAQCB2b2lkIFJlbmRlckJ1bmRsZUVuY29kZXI6OnNldFZlcnRleEJ1ZmZlcih1aW50MzJfdCBz
bG90LCBjb25zdCBCdWZmZXImIGJ1ZmZlciwgdQogCiB2b2lkIFJlbmRlckJ1bmRsZUVuY29kZXI6
OnNldExhYmVsKGNvbnN0IGNoYXIqIGxhYmVsKQogewotICAgIFVOVVNFRF9QQVJBTShsYWJlbCk7
CisgICAgbV9pbmRpcmVjdENvbW1hbmRCdWZmZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOwogfQogCiB9IC8v
IG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRl
clBhc3NFbmNvZGVyLm1tIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyUGFzc0VuY29kZXIu
bW0KaW5kZXggMjIwYTRiMTk5N2U5Li5kMTdhNmJlMWJjOWEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJHUFUvV2ViR1BVL1JlbmRlclBhc3NFbmNvZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2Vi
R1BVL1JlbmRlclBhc3NFbmNvZGVyLm1tCkBAIC0zNyw3ICszNyw2IEBAIG5hbWVzcGFjZSBXZWJH
UFUgewogUmVuZGVyUGFzc0VuY29kZXI6OlJlbmRlclBhc3NFbmNvZGVyKGlkIDxNVExSZW5kZXJD
b21tYW5kRW5jb2Rlcj4gcmVuZGVyQ29tbWFuZEVuY29kZXIpCiAgICAgOiBtX3JlbmRlckNvbW1h
bmRFbmNvZGVyKHJlbmRlckNvbW1hbmRFbmNvZGVyKQogewotICAgIFVOVVNFRF9WQVJJQUJMRSht
X3JlbmRlckNvbW1hbmRFbmNvZGVyKTsKIH0KIAogUmVuZGVyUGFzc0VuY29kZXI6On5SZW5kZXJQ
YXNzRW5jb2RlcigpID0gZGVmYXVsdDsKQEAgLTE3Niw3ICsxNzUsNyBAQCB2b2lkIFJlbmRlclBh
c3NFbmNvZGVyOjpzZXRWaWV3cG9ydChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB3aWR0aCwgZmxv
YXQgaGVpZ2h0LAogCiB2b2lkIFJlbmRlclBhc3NFbmNvZGVyOjpzZXRMYWJlbChjb25zdCBjaGFy
KiBsYWJlbCkKIHsKLSAgICBVTlVTRURfUEFSQU0obGFiZWwpOworICAgIG1fcmVuZGVyQ29tbWFu
ZEVuY29kZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rp
bmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRlclBpcGVsaW5lLmggYi9Tb3VyY2Uv
V2ViR1BVL1dlYkdQVS9SZW5kZXJQaXBlbGluZS5oCmluZGV4IDMxYTYzNDNkYTlmZC4uYTA5MDhl
ZWY0NGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9SZW5kZXJQaXBlbGluZS5o
CisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRlclBpcGVsaW5lLmgKQEAgLTQ2LDYgKzQ2
LDggQEAgcHVibGljOgogICAgIFJlZjxCaW5kR3JvdXBMYXlvdXQ+IGdldEJpbmRHcm91cExheW91
dCh1aW50MzJfdCBncm91cEluZGV4KTsKICAgICB2b2lkIHNldExhYmVsKGNvbnN0IGNoYXIqKTsK
IAorICAgIGlkIDxNVExSZW5kZXJQaXBlbGluZVN0YXRlPiByZW5kZXJQaXBlbGluZVN0YXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9yZW5kZXJQaXBlbGluZVN0YXRlOyB9CisKIHByaXZhdGU6CiAgICAg
UmVuZGVyUGlwZWxpbmUoaWQgPE1UTFJlbmRlclBpcGVsaW5lU3RhdGU+KTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyUGlwZWxpbmUubW0gYi9Tb3VyY2UvV2ViR1BV
L1dlYkdQVS9SZW5kZXJQaXBlbGluZS5tbQppbmRleCA1MDM3MjMyYWUyMjAuLmJiMjEzNjY2NWY2
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyUGlwZWxpbmUubW0KKysr
IGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyUGlwZWxpbmUubW0KQEAgLTQ2LDcgKzQ2LDYg
QEAgdm9pZCBEZXZpY2U6OmNyZWF0ZVJlbmRlclBpcGVsaW5lQXN5bmMoY29uc3QgV0dQVVJlbmRl
clBpcGVsaW5lRGVzY3JpcHRvciogZGVzY3IKIFJlbmRlclBpcGVsaW5lOjpSZW5kZXJQaXBlbGlu
ZShpZCA8TVRMUmVuZGVyUGlwZWxpbmVTdGF0ZT4gcmVuZGVyUGlwZWxpbmVTdGF0ZSkKICAgICA6
IG1fcmVuZGVyUGlwZWxpbmVTdGF0ZShyZW5kZXJQaXBlbGluZVN0YXRlKQogewotICAgIFVOVVNF
RF9WQVJJQUJMRShtX3JlbmRlclBpcGVsaW5lU3RhdGUpOwogfQogCiBSZW5kZXJQaXBlbGluZTo6
flJlbmRlclBpcGVsaW5lKCkgPSBkZWZhdWx0OwpAQCAtNTcsOSArNTYsOSBAQCBSZWY8QmluZEdy
b3VwTGF5b3V0PiBSZW5kZXJQaXBlbGluZTo6Z2V0QmluZEdyb3VwTGF5b3V0KHVpbnQzMl90IGdy
b3VwSW5kZXgpCiAgICAgcmV0dXJuIEJpbmRHcm91cExheW91dDo6Y3JlYXRlKG5pbCwgbmlsLCBu
aWwpOwogfQogCi12b2lkIFJlbmRlclBpcGVsaW5lOjpzZXRMYWJlbChjb25zdCBjaGFyKiBsYWJl
bCkKK3ZvaWQgUmVuZGVyUGlwZWxpbmU6OnNldExhYmVsKGNvbnN0IGNoYXIqKQogewotICAgIFVO
VVNFRF9QQVJBTShsYWJlbCk7CisgICAgLy8gTVRMUmVuZGVyUGlwZWxpbmVTdGF0ZSdzIGxhYmVs
cyBhcmUgcmVhZC1vbmx5LgogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJHUFUvV2ViR1BVL1NhbXBsZXIubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9T
YW1wbGVyLm1tCmluZGV4IGNhMjA3Zjg3ODA2ZS4uMGJkNmI1MTlkZWEzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViR1BVL1dlYkdQVS9TYW1wbGVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BV
L1NhbXBsZXIubW0KQEAgLTQzLDkgKzQzLDkgQEAgU2FtcGxlcjo6U2FtcGxlcihpZCA8TVRMU2Ft
cGxlclN0YXRlPiBzYW1wbGVyU3RhdGUpCiAKIFNhbXBsZXI6On5TYW1wbGVyKCkgPSBkZWZhdWx0
OwogCi12b2lkIFNhbXBsZXI6OnNldExhYmVsKGNvbnN0IGNoYXIqIGxhYmVsKQordm9pZCBTYW1w
bGVyOjpzZXRMYWJlbChjb25zdCBjaGFyKikKIHsKLSAgICBVTlVTRURfUEFSQU0obGFiZWwpOwor
ICAgIC8vIE1UTFJlbmRlclBpcGVsaW5lU3RhdGUncyBsYWJlbHMgYXJlIHJlYWQtb25seS4KIH0K
IAogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvU2hhZGVyTW9kdWxlLmggYi9T
b3VyY2UvV2ViR1BVL1dlYkdQVS9TaGFkZXJNb2R1bGUuaAppbmRleCBhMDkzYmJjNjAyZGMuLmIz
MGI4MDI1ZmJlMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvU2hhZGVyTW9kdWxl
LmgKKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvU2hhZGVyTW9kdWxlLmgKQEAgLTQ0LDYgKzQ0
LDggQEAgcHVibGljOgogICAgIHZvaWQgZ2V0Q29tcGlsYXRpb25JbmZvKFdURjo6RnVuY3Rpb248
dm9pZChXR1BVQ29tcGlsYXRpb25JbmZvUmVxdWVzdFN0YXR1cywgY29uc3QgV0dQVUNvbXBpbGF0
aW9uSW5mbyopPiYmIGNhbGxiYWNrKTsKICAgICB2b2lkIHNldExhYmVsKGNvbnN0IGNoYXIqKTsK
IAorICAgIGlkIDxNVExMaWJyYXJ5PiBsaWJyYXJ5KCkgY29uc3QgeyByZXR1cm4gbV9saWJyYXJ5
OyB9CisKIHByaXZhdGU6CiAgICAgU2hhZGVyTW9kdWxlKGlkIDxNVExMaWJyYXJ5Pik7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1NoYWRlck1vZHVsZS5tbSBiL1NvdXJjZS9X
ZWJHUFUvV2ViR1BVL1NoYWRlck1vZHVsZS5tbQppbmRleCBiNzYyNWUxZTNkN2QuLjBjOTUyMmQ5
MmVjZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvU2hhZGVyTW9kdWxlLm1tCisr
KyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1NoYWRlck1vZHVsZS5tbQpAQCAtMzksNyArMzksNiBA
QCBSZWZQdHI8U2hhZGVyTW9kdWxlPiBEZXZpY2U6OmNyZWF0ZVNoYWRlck1vZHVsZShjb25zdCBX
R1BVU2hhZGVyTW9kdWxlRGVzY3JpcHRvcgogU2hhZGVyTW9kdWxlOjpTaGFkZXJNb2R1bGUoaWQg
PE1UTExpYnJhcnk+IGxpYnJhcnkpCiAgICAgOiBtX2xpYnJhcnkobGlicmFyeSkKIHsKLSAgICBV
TlVTRURfVkFSSUFCTEUobV9saWJyYXJ5KTsKIH0KIAogU2hhZGVyTW9kdWxlOjp+U2hhZGVyTW9k
dWxlKCkgPSBkZWZhdWx0OwpAQCAtNTEsNyArNTAsNyBAQCB2b2lkIFNoYWRlck1vZHVsZTo6Z2V0
Q29tcGlsYXRpb25JbmZvKFdURjo6RnVuY3Rpb248dm9pZChXR1BVQ29tcGlsYXRpb25JbmZvUmVx
dQogCiB2b2lkIFNoYWRlck1vZHVsZTo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7Ci0g
ICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAgICBtX2xpYnJhcnkubGFiZWwgPSBbTlNTdHJpbmcg
c3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOwog
fQogCiB9IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2Vi
R1BVL1RleHR1cmUuaCBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmUuaAppbmRleCA4MTAx
NTM0Y2QzNmMuLjFkN2VjZDA1YWI3ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUv
VGV4dHVyZS5oCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmUuaApAQCAtNDgsNiAr
NDgsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBkZXN0cm95KCk7CiAgICAgdm9pZCBzZXRMYWJlbChj
b25zdCBjaGFyKik7CiAKKyAgICBpZCA8TVRMVGV4dHVyZT4gdGV4dHVyZSgpIGNvbnN0IHsgcmV0
dXJuIG1fdGV4dHVyZTsgfQorCiBwcml2YXRlOgogICAgIFRleHR1cmUoaWQgPE1UTFRleHR1cmU+
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvVGV4dHVyZS5tbSBiL1NvdXJj
ZS9XZWJHUFUvV2ViR1BVL1RleHR1cmUubW0KaW5kZXggMzhlYTBlMjI5ZGMwLi43MTFjZGY3MWFh
ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmUubW0KKysrIGIvU291
cmNlL1dlYkdQVS9XZWJHUFUvVGV4dHVyZS5tbQpAQCAtNDAsNyArNDAsNiBAQCBSZWZQdHI8VGV4
dHVyZT4gRGV2aWNlOjpjcmVhdGVUZXh0dXJlKGNvbnN0IFdHUFVUZXh0dXJlRGVzY3JpcHRvciog
ZGVzY3JpcHRvcikKIFRleHR1cmU6OlRleHR1cmUoaWQgPE1UTFRleHR1cmU+IHRleHR1cmUpCiAg
ICAgOiBtX3RleHR1cmUodGV4dHVyZSkKIHsKLSAgICBVTlVTRURfVkFSSUFCTEUobV90ZXh0dXJl
KTsKIH0KIAogVGV4dHVyZTo6flRleHR1cmUoKSA9IGRlZmF1bHQ7CkBAIC01Nyw3ICs1Niw3IEBA
IHZvaWQgVGV4dHVyZTo6ZGVzdHJveSgpCiAKIHZvaWQgVGV4dHVyZTo6c2V0TGFiZWwoY29uc3Qg
Y2hhciogbGFiZWwpCiB7Ci0gICAgVU5VU0VEX1BBUkFNKGxhYmVsKTsKKyAgICBtX3RleHR1cmUu
bGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4
U3RyaW5nRW5jb2RpbmddOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmVWaWV3Lm1tIGIvU291cmNlL1dlYkdQVS9XZWJH
UFUvVGV4dHVyZVZpZXcubW0KaW5kZXggZDY2NmJmOWU3ZGY2Li45ZjM4ODVhMWRiMmYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmVWaWV3Lm1tCisrKyBiL1NvdXJjZS9X
ZWJHUFUvV2ViR1BVL1RleHR1cmVWaWV3Lm1tCkBAIC0zOCw3ICszOCw3IEBAIFRleHR1cmVWaWV3
Ojp+VGV4dHVyZVZpZXcoKSA9IGRlZmF1bHQ7CiAKIHZvaWQgVGV4dHVyZVZpZXc6OnNldExhYmVs
KGNvbnN0IGNoYXIqIGxhYmVsKQogewotICAgIFVOVVNFRF9QQVJBTShsYWJlbCk7CisgICAgbV90
ZXh0dXJlLmxhYmVsID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5n
Ok5TVVRGOFN0cmluZ0VuY29kaW5nXTsKIH0KIAogfQo=
</data>
<flag name="review"
          id="479793"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>