<?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>10792</bug_id>
          
          <creation_ts>2006-09-09 14:16:06 -0700</creation_ts>
          <short_desc>Remove the [Exclude=LANGUAGE] idiom from IDL&apos;s and code generators for something better</short_desc>
          <delta_ts>2006-09-11 10:06:18 -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>WebCore Misc.</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>55122</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-09-09 14:16:06 -0700</bug_when>
    <thetext>Bug to track this issue</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55123</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2006-09-09 14:19:10 -0700</bug_when>
    <thetext>I&apos;m particularly uncomfortable with things like:

+        [Exclude=JS] DOMString          getPropertyShorthand(in DOMString propertyName);
+        [Exclude=JS] boolean            isPropertyImplicit(in DOMString propertyName);

where this is being used to exclude obj-c only methods from JavaScript bindings.  ObjC and JS are not going to be the only DOM bindings for long.  The KDE guys have talked about adding c++ bindings several times.  I also expect someone will eventually come along and want to add ruby, or python, or perl or whatever other bindings.  We should make this task as easy for them as possible by coding our idls in such a way as to think beyond just js and obj-c.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55124</commentid>
    <comment_count>2</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2006-09-09 14:20:39 -0700</bug_when>
    <thetext>We could use #ifdefs and preprocess the IDL files per language.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55247</commentid>
    <comment_count>3</comment_count>
      <attachid>10500</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-09-11 09:01:38 -0700</bug_when>
    <thetext>Created attachment 10500
patch

- Replaces [Exclude=LANGUAGE] idiom with preprocessor #if defined(LANGUAGE) idiom.

- Assorted whitespace changes to IDL files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55249</commentid>
    <comment_count>4</comment_count>
      <attachid>10500</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-09-11 09:12:55 -0700</bug_when>
    <thetext>Comment on attachment 10500
patch

I think we should consider symbols more like LANGUAGE_JAVASCRIPT and LANGUAGE_OBJECTIVE_C instead of JS and OBJC, to avoid accidental substitution, say if someone had a variable named &quot;JS&quot;.

I personally like #ifndef X better than #if !defined(X).

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>55250</commentid>
    <comment_count>5</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2006-09-11 10:06:18 -0700</bug_when>
    <thetext>Landed in r16299.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>10500</attachid>
            <date>2006-09-11 09:01:38 -0700</date>
            <delta_ts>2006-09-11 09:12:55 -0700</delta_ts>
            <desc>patch</desc>
            <filename>removeExcludes.diff</filename>
            <type>text/plain</type>
            <size>49716</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDQgQEAKKzIwMDYtMDktMTEgIFNhbSBXZWluaWcgIDxzYW0ud2VpbmlnQGdtYWls
LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQ
YXRjaCBmb3IgaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD0x
MDc5MgorICAgICAgICBSZW1vdmUgdGhlIFtFeGNsdWRlPUxBTkdVQUdFXSBpZGlvbSBmcm9tIElE
TCdzIGFuZCBjb2RlIGdlbmVyYXRvcnMgCisgICAgICAgIGZvciBzb21ldGhpbmcgYmV0dGVyCisK
KyAgICAgICAgLSBSZXBsYWNlcyBbRXhjbHVkZT1MQU5HVUFHRV0gaWRpb20gd2l0aCBwcmVwcm9j
ZXNzb3IgI2lmIGRlZmluZWQoTEFOR1VBR0UpCisgICAgICAgICAgaWRpb20uCisKKyAgICAgICAg
LSBBc3NvcnRlZCB3aGl0ZXNwYWNlIGNoYW5nZXMgdG8gSURMIGZpbGVzLgorCisgICAgICAgICog
RGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2o6CisgICAgICAgICogYmluZGluZ3Mvb2JqYy9ET01FdmVudHMuaDoKKyAgICAgICAg
KiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG06CisgICAgICAgICogYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG06CisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9D
b2RlR2VuZXJhdG9yT2JqQy5wbToKKyAgICAgICAgKiBjc3MvQ1NTUnVsZS5pZGw6CisgICAgICAg
ICogY3NzL0NTU1N0eWxlRGVjbGFyYXRpb24uaWRsOgorICAgICAgICAqIGNzcy9DU1NWYWx1ZS5p
ZGw6CisgICAgICAgICogZG9tL0RPTUltcGxlbWVudGF0aW9uLmlkbDoKKyAgICAgICAgKiBkb20v
RG9jdW1lbnQuaWRsOgorICAgICAgICAqIGRvbS9FbGVtZW50LmlkbDoKKyAgICAgICAgKiBkb20v
RXZlbnQuaWRsOgorICAgICAgICAqIGRvbS9LZXlib2FyZEV2ZW50LmlkbDoKKyAgICAgICAgKiBk
b20vTW91c2VFdmVudC5pZGw6CisgICAgICAgICogZG9tL05hbWVkTm9kZU1hcC5pZGw6CisgICAg
ICAgICogZG9tL05vZGVGaWx0ZXIuaWRsOgorICAgICAgICAqIGRvbS9VSUV2ZW50LmlkbDoKKyAg
ICAgICAgKiBkb20vV2hlZWxFdmVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQW5jaG9yRWxl
bWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MQXJlYUVsZW1lbnQuaWRsOgorICAgICAgICAq
IGh0bWwvSFRNTERvY3VtZW50LmlkbDoKKyAgICAgICAgKiBodG1sL0hUTUxFbGVtZW50LmlkbDoK
KyAgICAgICAgKiBodG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsOgorICAgICAgICAqIGh0bWwvSFRN
TElucHV0RWxlbWVudC5pZGw6CisgICAgICAgICogaHRtbC9IVE1MTGlua0VsZW1lbnQuaWRsOgor
ICAgICAgICAqIGh0bWwvSFRNTE9wdGlvbnNDb2xsZWN0aW9uLmlkbDoKKwogMjAwNi0wOS0xMSAg
RGF2aWQgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgRml4IGFuIHVud2l0dGlu
ZyB2aWN0aW0gb2YgdGhlIGtNaW4tPm1pbiBjaGFuZ2UuICBjYWxjQmxvY2tNaW5NYXhXaWR0aApJ
bmRleDogV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQkocmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UJKHdvcmtpbmcgY29weSkKQEAgLTQyOCw3ICs0MjgsNyBAQCBPQkpDX0JJTkRJ
TkdTX1NDUklQVFMgPSBcCiAjCiAKIERPTSUuaCA6ICUuaWRsICQoT0JKQ19CSU5ESU5HU19TQ1JJ
UFRTKSBiaW5kaW5ncy9vYmpjL1B1YmxpY0RPTUludGVyZmFjZXMuaAotCXBlcmwgLUkkKFdlYkNv
cmUpL2JpbmRpbmdzL3NjcmlwdHMgJChXZWJDb3JlKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRl
LWJpbmRpbmdzLnBsIC0tZGVmaW5lcyAiJChGRUFUVVJFX0RFRklORVMpIiAtLWdlbmVyYXRvciBP
YmpDIC0taW5jbHVkZSBkb20gLS1pbmNsdWRlIGh0bWwgLS1pbmNsdWRlIHhwYXRoIC0taW5jbHVk
ZSBrc3ZnMi9zdmcgLS1vdXRwdXRkaXIgLiAkPAorCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdz
L3NjcmlwdHMgJChXZWJDb3JlKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdzLnBs
IC0tZGVmaW5lcyAiJChGRUFUVVJFX0RFRklORVMpIE9CSkMiIC0tZ2VuZXJhdG9yIE9iakMgLS1p
bmNsdWRlIGRvbSAtLWluY2x1ZGUgaHRtbCAtLWluY2x1ZGUgeHBhdGggLS1pbmNsdWRlIGtzdmcy
L3N2ZyAtLW91dHB1dGRpciAuICQ8CiAKICMgbmV3LXN0eWxlIEphdmFTY3JpcHQgYmluZGluZ3MK
IApAQCAtNDQxLDQgKzQ0MSw0IEBAIEpTX0JJTkRJTkdTX1NDUklQVFMgPSBcCiAjCiAKIEpTJS5o
IDogJS5pZGwgJChKU19CSU5ESU5HU19TQ1JJUFRTKQotCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRp
bmdzL3NjcmlwdHMgJChXZWJDb3JlKS9iaW5kaW5ncy9zY3JpcHRzL2dlbmVyYXRlLWJpbmRpbmdz
LnBsIC0tZGVmaW5lcyAiJChGRUFUVVJFX0RFRklORVMpIiAtLWdlbmVyYXRvciBKUyAtLWluY2x1
ZGUgZG9tIC0taW5jbHVkZSBodG1sIC0taW5jbHVkZSB4bWwgLS1pbmNsdWRlIGtzdmcyL3N2ZyAt
LW91dHB1dGRpciAuICQ8CisJcGVybCAtSSQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cyAkKFdl
YkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMvZ2VuZXJhdGUtYmluZGluZ3MucGwgLS1kZWZpbmVzICIk
KEZFQVRVUkVfREVGSU5FUykgSlMiIC0tZ2VuZXJhdG9yIEpTIC0taW5jbHVkZSBkb20gLS1pbmNs
dWRlIGh0bWwgLS1pbmNsdWRlIHhtbCAtLWluY2x1ZGUga3N2ZzIvc3ZnIC0tb3V0cHV0ZGlyIC4g
JDwKSW5kZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZp
c2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CSh3b3JraW5nIGNvcHkpCkBAIC0yMDE2LDIzICsyMDE2LDYgQEAKIAkJRkFFMDQxOTAwOTc1OTZD
OTAwMDU0MEJFIC8qIFNWR0ltYWdlTG9hZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBGQUUwNDE4RTA5NzU5NkM5MDAwNTQwQkUgLyogU1ZHSW1hZ2VM
b2FkZXIuaCAqLzsgfTsKIC8qIEVuZCBQQlhCdWlsZEZpbGUgc2VjdGlvbiAqLwogCi0vKiBCZWdp
biBQQlhCdWlsZFN0eWxlIHNlY3Rpb24gKi8KLQkJQkM1NEQyM0MwQUI1MjFDMjAwQUE5MjJFIC8q
IERldmVsb3BtZW50ICovID0gewotCQkJaXNhID0gUEJYQnVpbGRTdHlsZTsKLQkJCWJ1aWxkU2V0
dGluZ3MgPSB7Ci0JCQkJQ09QWV9QSEFTRV9TVFJJUCA9IE5POwotCQkJfTsKLQkJCW5hbWUgPSBE
ZXZlbG9wbWVudDsKLQkJfTsKLQkJQkM1NEQyM0QwQUI1MjFDMjAwQUE5MjJFIC8qIERlcGxveW1l
bnQgKi8gPSB7Ci0JCQlpc2EgPSBQQlhCdWlsZFN0eWxlOwotCQkJYnVpbGRTZXR0aW5ncyA9IHsK
LQkJCQlDT1BZX1BIQVNFX1NUUklQID0gWUVTOwotCQkJfTsKLQkJCW5hbWUgPSBEZXBsb3ltZW50
OwotCQl9OwotLyogRW5kIFBCWEJ1aWxkU3R5bGUgc2VjdGlvbiAqLwotCiAvKiBCZWdpbiBQQlhD
b250YWluZXJJdGVtUHJveHkgc2VjdGlvbiAqLwogCQlERDA0MUZGMDA5RDlFMzI1MDAxMEFGMkEg
LyogUEJYQ29udGFpbmVySXRlbVByb3h5ICovID0gewogCQkJaXNhID0gUEJYQ29udGFpbmVySXRl
bVByb3h5OwpAQCAtNzk1MCwxMiArNzkzMyw2IEBACiAJCTA4NjdENjkwRkU4NDAyOEZDMDJBQUMw
NyAvKiBQcm9qZWN0IG9iamVjdCAqLyA9IHsKIAkJCWlzYSA9IFBCWFByb2plY3Q7CiAJCQlidWls
ZENvbmZpZ3VyYXRpb25MaXN0ID0gMTQ5QzI4NDMwODkwMkIxMTAwOEE5RUZDIC8qIEJ1aWxkIGNv
bmZpZ3VyYXRpb24gbGlzdCBmb3IgUEJYUHJvamVjdCAiV2ViQ29yZSIgKi87Ci0JCQlidWlsZFNl
dHRpbmdzID0gewotCQkJfTsKLQkJCWJ1aWxkU3R5bGVzID0gKAotCQkJCUJDNTREMjNDMEFCNTIx
QzIwMEFBOTIyRSAvKiBEZXZlbG9wbWVudCAqLywKLQkJCQlCQzU0RDIzRDBBQjUyMUMyMDBBQTky
MkUgLyogRGVwbG95bWVudCAqLywKLQkJCSk7CiAJCQloYXNTY2FubmVkRm9yRW5jb2RpbmdzID0g
MTsKIAkJCWtub3duUmVnaW9ucyA9ICgKIAkJCQlFbmdsaXNoLApJbmRleDogV2ViQ29yZS9iaW5k
aW5ncy9vYmpjL0RPTUV2ZW50cy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3Mvb2Jq
Yy9ET01FdmVudHMuaAkocmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2JpbmRpbmdzL29iamMv
RE9NRXZlbnRzLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ1LDEzICs0NSw2IEBAIGVudW0gRE9NRXZl
bnRFeGNlcHRpb25Db2RlIHsKICAgICBET01fVU5TUEVDSUZJRURfRVZFTlRfVFlQRV9FUlIgPSAw
CiB9OwogCi1lbnVtIHsKLSAgICBET01fS0VZX0xPQ0FUSU9OX1NUQU5EQVJEICAgICAgPSAweDAw
LAotICAgIERPTV9LRVlfTE9DQVRJT05fTEVGVCAgICAgICAgICA9IDB4MDEsCi0gICAgRE9NX0tF
WV9MT0NBVElPTl9SSUdIVCAgICAgICAgID0gMHgwMiwKLSAgICBET01fS0VZX0xPQ0FUSU9OX05V
TVBBRCAgICAgICAgPSAweDAzCi19OwotCiBAaW50ZXJmYWNlIERPTUtleWJvYXJkRXZlbnQgKE5v
blN0YW5kYXJkQWRkaXRpb25zKQogLSAoQk9PTClnZXRNb2RpZmllclN0YXRlOihOU1N0cmluZyAq
KWtleUlkZW50aWZpZXJBcmc7CiBAZW5kCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvci5wbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMv
Q29kZUdlbmVyYXRvci5wbQkocmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvci5wbQkod29ya2luZyBjb3B5KQpAQCAtMzkzLDM0ICszOTMsNiBA
QCBzdWIgUmVjdXJzaXZlSW5oZXJpdGFuY2VIZWxwZXIKIH0KIAogIyBIZWxwZXIgZm9yIGFsbCBD
b2RlR2VuZXJhdG9yKioqLnBtIG1vZHVsZXMKLXN1YiBSZW1vdmVFeGNsdWRlZEF0dHJpYnV0ZXNB
bmRGdW5jdGlvbnMKLXsKLSAgICBteSAkb2JqZWN0ID0gc2hpZnQ7Ci0gICAgbXkgJGRhdGFOb2Rl
ID0gc2hpZnQ7Ci0gICAgbXkgJGV4Y2x1ZGVMYW5nID0gc2hpZnQ7Ci0KLSAgICBteSAkaSA9IDA7
Ci0gICAgd2hpbGUgKCRpIDwgQHskZGF0YU5vZGUtPmF0dHJpYnV0ZXN9KSB7Ci0gICAgICAgIG15
ICRsYW5nID0gJHskZGF0YU5vZGUtPmF0dHJpYnV0ZXN9WyRpXS0+c2lnbmF0dXJlLT5leHRlbmRl
ZEF0dHJpYnV0ZXMtPnsiRXhjbHVkZSJ9OwotICAgICAgICBpZiAoJGxhbmcgYW5kICRsYW5nIGVx
ICRleGNsdWRlTGFuZykgewotICAgICAgICAgICAgc3BsaWNlKEB7JGRhdGFOb2RlLT5hdHRyaWJ1
dGVzfSwgJGksIDEpOwotICAgICAgICB9IGVsc2UgewotICAgICAgICAgICAgJGkrKzsKLSAgICAg
ICAgfQotICAgIH0KLQotICAgICRpID0gMDsKLSAgICB3aGlsZSAoJGkgPCBAeyRkYXRhTm9kZS0+
ZnVuY3Rpb25zfSkgewotICAgICAgICBteSAkbGFuZyA9ICR7JGRhdGFOb2RlLT5mdW5jdGlvbnN9
WyRpXS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiRXhjbHVkZSJ9OwotICAgICAg
ICBpZiAoJGxhbmcgYW5kICRsYW5nIGVxICRleGNsdWRlTGFuZykgewotICAgICAgICAgICAgc3Bs
aWNlKEB7JGRhdGFOb2RlLT5mdW5jdGlvbnN9LCAkaSwgMSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0g
ICAgICAgICAgICAkaSsrOwotICAgICAgICB9Ci0gICAgfQotfQotCi0jIEhlbHBlciBmb3IgYWxs
IENvZGVHZW5lcmF0b3IqKioucG0gbW9kdWxlcwogc3ViIElzUHJpbWl0aXZlVHlwZQogewogICAg
IG15ICRvYmplY3QgPSBzaGlmdDsKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9ySlMucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0Nv
ZGVHZW5lcmF0b3JKUy5wbQkocmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Nj
cmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtCSh3b3JraW5nIGNvcHkpCkBAIC04OCw4ICs4OCw2IEBA
IHN1YiBHZW5lcmF0ZUludGVyZmFjZQogICAgIG15ICRkYXRhTm9kZSA9IHNoaWZ0OwogICAgIG15
ICRkZWZpbmVzID0gc2hpZnQ7CiAKLSAgICAkY29kZUdlbmVyYXRvci0+UmVtb3ZlRXhjbHVkZWRB
dHRyaWJ1dGVzQW5kRnVuY3Rpb25zKCRkYXRhTm9kZSwgIkpTIik7Ci0KICAgICAjIFN0YXJ0IGFj
dHVhbCBnZW5lcmF0aW9uLi4KICAgICAkb2JqZWN0LT5HZW5lcmF0ZUhlYWRlcigkZGF0YU5vZGUp
OwogICAgICRvYmplY3QtPkdlbmVyYXRlSW1wbGVtZW50YXRpb24oJGRhdGFOb2RlKTsKSW5kZXg6
IFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0JKHJldmlz
aW9uIDE2Mjk4KQorKysgV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpD
LnBtCSh3b3JraW5nIGNvcHkpCkBAIC0xNjAsOCArMTYwLDYgQEAgc3ViIEdlbmVyYXRlSW50ZXJm
YWNlCiAgICAgbXkgJGRhdGFOb2RlID0gc2hpZnQ7CiAgICAgbXkgJGRlZmluZXMgPSBzaGlmdDsK
IAotICAgICRjb2RlR2VuZXJhdG9yLT5SZW1vdmVFeGNsdWRlZEF0dHJpYnV0ZXNBbmRGdW5jdGlv
bnMoJGRhdGFOb2RlLCAiT2JqQyIpOwotCiAgICAgbXkgJG5hbWUgPSAkZGF0YU5vZGUtPm5hbWU7
CiAgICAgbXkgJGNsYXNzTmFtZSA9IEdldENsYXNzTmFtZSgkbmFtZSk7CiAgICAgbXkgJHBhcmVu
dENsYXNzTmFtZSA9ICJET00iIC4gR2V0UGFyZW50SW1wbENsYXNzTmFtZSgkZGF0YU5vZGUpOwpA
QCAtNDI4LDE1ICs0MjYsMTEgQEAgc3ViIEdlbmVyYXRlSGVhZGVyCiAgICAgaWYgKCRudW1Db25z
dGFudHMgPiAwKSB7CiAgICAgICAgIG15IEBoZWFkZXJDb25zdGFudHMgPSAoKTsKIAotICAgICAg
ICAjIEZJWE1FOiB3ZSBuZWVkIGEgd2F5IHRvIGluY2x1ZGUgbXVsdGlwbGUgZW51bXMsIGZvciBu
b3csIG9ubHkgaW5jbHVkZSB0aGUgZmlyc3QuCi0gICAgICAgIG15ICRncmVhdGVzdENvbnN0YW50
VmFsdWUgPSAkZGF0YU5vZGUtPmNvbnN0YW50cy0+WzBdLT52YWx1ZTsKKyAgICAgICAgIyBGSVhN
RTogd2UgbmVlZCBhIHdheSB0byBpbmNsdWRlIG11bHRpcGxlIGVudW1zLgogICAgICAgICBmb3Jl
YWNoIG15ICRjb25zdGFudCAoQHskZGF0YU5vZGUtPmNvbnN0YW50c30pIHsKICAgICAgICAgICAg
IG15ICRjb25zdGFudE5hbWUgPSAkY29uc3RhbnQtPm5hbWU7CiAgICAgICAgICAgICBteSAkY29u
c3RhbnRWYWx1ZSA9ICRjb25zdGFudC0+dmFsdWU7CiAKLSAgICAgICAgICAgIGxhc3QgaWYgJGNv
bnN0YW50VmFsdWUgPCAkZ3JlYXRlc3RDb25zdGFudFZhbHVlOwotICAgICAgICAgICAgJGdyZWF0
ZXN0Q29uc3RhbnRWYWx1ZSA9ICRjb25zdGFudFZhbHVlOwotCiAgICAgICAgICAgICBteSAkb3V0
cHV0ID0gIiAgICBET01fIiAuICRjb25zdGFudE5hbWUgLiAiID0gIiAuICRjb25zdGFudFZhbHVl
OwogICAgICAgICAgICAgcHVzaChAaGVhZGVyQ29uc3RhbnRzLCAkb3V0cHV0KTsKICAgICAgICAg
fQpJbmRleDogV2ViQ29yZS9jc3MvQ1NTUnVsZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9j
c3MvQ1NTUnVsZS5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysgV2ViQ29yZS9jc3MvQ1NTUnVsZS5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTMyLDE1ICszMiwxNyBAQCBtb2R1bGUgY3NzIHsKICAgICAg
ICAgY29uc3QgdW5zaWduZWQgc2hvcnQgRk9OVF9GQUNFX1JVTEUgPSA1OwogICAgICAgICBjb25z
dCB1bnNpZ25lZCBzaG9ydCBQQUdFX1JVTEUgPSA2OwogCi0gICAgICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBbRXhjbHVkZT1KU10gdW5zaWduZWQgc2hvcnQgICB0eXBlOwotICAgICAgICAKKyNpZiAh
ZGVmaW5lZChKUykKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAg
dHlwZTsKKwogICAgICAgICAgICAgICAgICAvLyBGSVhNRTogRE9NIHNwZWMgc2F5cyB0aGF0IHRo
aXMgY2FuIHJhaXNlIGFuCiAgICAgICAgICAgICAgICAgIC8vIGV4Y2VwdGlvbiBvbiBzZXR0aW5n
LgotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyAgICAg
ICAgY3NzVGV4dAorICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgICBj
c3NUZXh0CiAgICAgICAgICAgICAgICAgICAgICAvKnNldHRlciByYWlzZXMgKERPTUV4Y2VwdGlv
bikqLzsKIAotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIENTU1N0eWxl
U2hlZXQgICAgcGFyZW50U3R5bGVTaGVldDsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtF
eGNsdWRlPUpTXSBDU1NSdWxlICAgICAgICAgIHBhcmVudFJ1bGU7CisgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBDU1NTdHlsZVNoZWV0ICAgIHBhcmVudFN0eWxlU2hlZXQ7CisgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBDU1NSdWxlICAgICAgICAgIHBhcmVudFJ1bGU7CisjZW5kaWYKIAog
ICAgIH07CiB9CkluZGV4OiBXZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbAkocmV2aXNpb24g
MTYyOTgpCisrKyBXZWJDb3JlL2Nzcy9DU1NTdHlsZURlY2xhcmF0aW9uLmlkbAkod29ya2luZyBj
b3B5KQpAQCAtMjIsMjggKzIyLDI4IEBAIG1vZHVsZSBjc3MgewogCiAgICAgLy8gSW50cm9kdWNl
ZCBpbiBET00gTGV2ZWwgMjoKICAgICBpbnRlcmZhY2UgW0xlZ2FjeVBhcmVudD1LSlM6OkRPTUNT
U1N0eWxlRGVjbGFyYXRpb24sIEdlbmVyYXRlQ29uc3RydWN0b3JdIENTU1N0eWxlRGVjbGFyYXRp
b24gewotCi0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5n
ICAgICAgICBjc3NUZXh0CisjaWYgIWRlZmluZWQoSlMpCisgICAgICAgICAgICAgICAgIGF0dHJp
YnV0ZSBET01TdHJpbmcgICAgICAgIGNzc1RleHQKICAgICAgICAgICAgICAgICAgICAgIHNldHRl
ciByYWlzZXMoRE9NRXhjZXB0aW9uKTsKIAotICAgICAgICBbRXhjbHVkZT1KU10gRE9NU3RyaW5n
ICAgICAgICAgIGdldFByb3BlcnR5VmFsdWUoaW4gRE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7Ci0g
ICAgICAgIFtFeGNsdWRlPUpTXSBDU1NWYWx1ZSAgICAgICAgICAgZ2V0UHJvcGVydHlDU1NWYWx1
ZShpbiBET01TdHJpbmcgcHJvcGVydHlOYW1lKTsKLSAgICAgICAgW0V4Y2x1ZGU9SlNdIERPTVN0
cmluZyAgICAgICAgICByZW1vdmVQcm9wZXJ0eShpbiBET01TdHJpbmcgcHJvcGVydHlOYW1lKQor
ICAgICAgICBET01TdHJpbmcgICAgICAgICAgZ2V0UHJvcGVydHlWYWx1ZShpbiBET01TdHJpbmcg
cHJvcGVydHlOYW1lKTsKKyAgICAgICAgQ1NTVmFsdWUgICAgICAgICAgIGdldFByb3BlcnR5Q1NT
VmFsdWUoaW4gRE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7CisgICAgICAgIERPTVN0cmluZyAgICAg
ICAgICByZW1vdmVQcm9wZXJ0eShpbiBET01TdHJpbmcgcHJvcGVydHlOYW1lKQogICAgICAgICAg
ICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0gICAgICAgIFtFeGNsdWRlPUpTXSBET01TdHJpbmcg
ICAgICAgICAgZ2V0UHJvcGVydHlQcmlvcml0eShpbiBET01TdHJpbmcgcHJvcGVydHlOYW1lKTsK
LSAgICAgICAgW0V4Y2x1ZGU9SlMsIE9sZFN0eWxlT2JqQ10gdm9pZCBzZXRQcm9wZXJ0eShpbiBE
T01TdHJpbmcgcHJvcGVydHlOYW1lLCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgdmFsdWUsIAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBwcmlvcml0
eSkKKyAgICAgICAgRE9NU3RyaW5nICAgICAgICAgIGdldFByb3BlcnR5UHJpb3JpdHkoaW4gRE9N
U3RyaW5nIHByb3BlcnR5TmFtZSk7CisgICAgICAgIFtPbGRTdHlsZU9iakNdIHZvaWQgc2V0UHJv
cGVydHkoaW4gRE9NU3RyaW5nIHByb3BlcnR5TmFtZSwgCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIHZhbHVlLCAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgcHJpb3JpdHkpCiAgICAgICAgICAg
ICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKIAotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4
Y2x1ZGU9SlNdIHVuc2lnbmVkIGxvbmcgICAgbGVuZ3RoOwotICAgICAgICBbRXhjbHVkZT1KU10g
RE9NU3RyaW5nICAgICAgICAgIGl0ZW0oaW4gdW5zaWduZWQgbG9uZyBpbmRleCk7Ci0gICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gQ1NTUnVsZSAgICAgICAgICBwYXJlbnRS
dWxlOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyAgICBsZW5ndGg7
CisgICAgICAgIERPTVN0cmluZyAgICAgICAgICBpdGVtKGluIHVuc2lnbmVkIGxvbmcgaW5kZXgp
OworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgQ1NTUnVsZSAgICAgICAgICBwYXJlbnRSdWxl
OwogICAgICAgICAKICAgICAgICAgLy8gZXh0ZW5zaW9ucwotICAgICAgICBbRXhjbHVkZT1KU10g
RE9NU3RyaW5nICAgICAgICAgIGdldFByb3BlcnR5U2hvcnRoYW5kKGluIERPTVN0cmluZyBwcm9w
ZXJ0eU5hbWUpOwotICAgICAgICBbRXhjbHVkZT1KU10gYm9vbGVhbiAgICAgICAgICAgIGlzUHJv
cGVydHlJbXBsaWNpdChpbiBET01TdHJpbmcgcHJvcGVydHlOYW1lKTsKLQorICAgICAgICBET01T
dHJpbmcgICAgICAgICAgZ2V0UHJvcGVydHlTaG9ydGhhbmQoaW4gRE9NU3RyaW5nIHByb3BlcnR5
TmFtZSk7CisgICAgICAgIGJvb2xlYW4gICAgICAgICAgICBpc1Byb3BlcnR5SW1wbGljaXQoaW4g
RE9NU3RyaW5nIHByb3BlcnR5TmFtZSk7CisjZW5kaWYKICAgICB9OwogCiB9CkluZGV4OiBXZWJD
b3JlL2Nzcy9DU1NWYWx1ZS5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9jc3MvQ1NTVmFsdWUu
aWRsCShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvY3NzL0NTU1ZhbHVlLmlkbAkod29ya2lu
ZyBjb3B5KQpAQCAtMjgsMTIgKzI4LDE0IEBAIG1vZHVsZSBjc3MgewogICAgICAgICBjb25zdCB1
bnNpZ25lZCBzaG9ydCBDU1NfVkFMVUVfTElTVCAgICAgID0gMjsKICAgICAgICAgY29uc3QgdW5z
aWduZWQgc2hvcnQgQ1NTX0NVU1RPTSAgICAgICAgICA9IDM7CiAKKyNpZiAhZGVmaW5lZChKUykK
ICAgICAgICAgICAgICAgICAgLy8gRklYTUU6IERPTSBzcGVjIHNheXMgdGhhdCB0aGlzIGNhbiBy
YWlzZSBhbgogICAgICAgICAgICAgICAgICAvLyBleGNlcHRpb24gb24gc2V0dGluZy4KLSAgICAg
ICAgICAgICAgICAgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBET01TdHJpbmcgICAgICAgIGNzc1Rl
eHQKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgY3NzVGV4dAog
ICAgICAgICAgICAgICAgICAgICAgLypzZXR0ZXIgcmFpc2VzKERPTUV4Y2VwdGlvbikqLzsKIAot
ICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIHVuc2lnbmVkIHNob3J0ICAg
Y3NzVmFsdWVUeXBlOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQg
ICBjc3NWYWx1ZVR5cGU7CisjZW5kaWYKIAogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvZG9tL0RP
TUltcGxlbWVudGF0aW9uLmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9ET01JbXBsZW1l
bnRhdGlvbi5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysgV2ViQ29yZS9kb20vRE9NSW1wbGVtZW50
YXRpb24uaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNSwyMyArMjUsMjMgQEAgbW9kdWxlIGNvcmUg
ewogICAgICAgICAvLyBET00gTGV2ZWwgMQogCiAgICAgICAgIFtPbGRTdHlsZU9iakNdIGJvb2xl
YW4gaGFzRmVhdHVyZShpbiBET01TdHJpbmcgZmVhdHVyZSwgCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB2ZXJzaW9uKTsK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIFtDb252ZXJ0TnVs
bFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIHZlcnNpb24pOwogCiAgICAgICAgIC8vIERPTSBMZXZl
bCAyCiAKICAgICAgICAgW09sZFN0eWxlT2JqQ10gRG9jdW1lbnRUeXBlIGNyZWF0ZURvY3VtZW50
VHlwZShpbiBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBwdWJsaWNJZCwK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGluIERPTVN0cmluZyBzeXN0ZW1JZCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgcHVibGljSWQsCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5n
IHN5c3RlbUlkKQogICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIFtP
bGRTdHlsZU9iakNdIERvY3VtZW50IGNyZWF0ZURvY3VtZW50KGluIFtDb252ZXJ0TnVsbFRvTnVs
bFN0cmluZ10gRE9NU3RyaW5nIG5hbWVzcGFjZVVSSSwgCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBE
T01TdHJpbmcgcXVhbGlmaWVkTmFtZSwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBEb2N1bWVudFR5
cGUgZG9jdHlwZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSwg
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIFtDb252
ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRG9jdW1lbnRUeXBlIGRvY3R5cGUpCiAgICAgICAgICAgICBy
YWlzZXMoRE9NRXhjZXB0aW9uKTsKIAogICAgICAgICAvLyBET01JbXBsZW1lbnRhdGlvbkNTUyBp
bnRlcmZhY2UgZnJvbSBET00gTGV2ZWwgMiBDU1MKIAogICAgICAgICBbT2xkU3R5bGVPYmpDXSBD
U1NTdHlsZVNoZWV0IGNyZWF0ZUNTU1N0eWxlU2hlZXQoaW4gRE9NU3RyaW5nIHRpdGxlLAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIG1lZGlh
KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gRE9NU3RyaW5nIG1lZGlhKQogICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7
CiAKICAgICAgICAgLy8gSFRNTERPTUltcGxlbWVudGF0aW9uIGludGVyZmFjZSBmcm9tIERPTSBM
ZXZlbCAyIEhUTUwKSW5kZXg6IFdlYkNvcmUvZG9tL0RvY3VtZW50LmlkbAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJDb3JlL2RvbS9Eb2N1bWVudC5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysgV2ViQ29yZS9k
b20vRG9jdW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yNSw3NiArMjUsNzEgQEAgbW9kdWxl
IGNvcmUgewogICAgICAgICAvLyBET00gTGV2ZWwgMSBDb3JlCiAgICAgICAgIAogICAgICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgRG9jdW1lbnRUeXBlIGRvY3R5cGU7Ci0gICAgICAgIAogICAgICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgRE9NSW1wbGVtZW50YXRpb24gaW1wbGVtZW50YXRpb247Ci0g
ICAgICAgIAogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRWxlbWVudCBkb2N1bWVudEVsZW1l
bnQ7CiAgICAgICAgIAotICAgICAgICBFbGVtZW50IGNyZWF0ZUVsZW1lbnQoaW4gRE9NU3RyaW5n
IHRhZ05hbWUpCisgICAgICAgIEVsZW1lbnQgICAgICAgICAgICBjcmVhdGVFbGVtZW50KGluIERP
TVN0cmluZyB0YWdOYW1lKQogICAgICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAg
ICAgICAKLSAgICAgICAgRG9jdW1lbnRGcmFnbWVudCBjcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7
Ci0gICAgICAgIAotICAgICAgICBUZXh0IGNyZWF0ZVRleHROb2RlKGluIERPTVN0cmluZyBkYXRh
KTsKLSAgICAgICAgCi0gICAgICAgIENvbW1lbnQgY3JlYXRlQ29tbWVudChpbiBET01TdHJpbmcg
ZGF0YSk7Ci0gICAgICAgIAotICAgICAgICBDREFUQVNlY3Rpb24gY3JlYXRlQ0RBVEFTZWN0aW9u
KGluIERPTVN0cmluZyBkYXRhKQorICAgICAgICBEb2N1bWVudEZyYWdtZW50ICAgY3JlYXRlRG9j
dW1lbnRGcmFnbWVudCgpOworICAgICAgICBUZXh0ICAgICAgICAgICAgICAgY3JlYXRlVGV4dE5v
ZGUoaW4gRE9NU3RyaW5nIGRhdGEpOworICAgICAgICBDb21tZW50ICAgICAgICAgICAgY3JlYXRl
Q29tbWVudChpbiBET01TdHJpbmcgZGF0YSk7CisgICAgICAgIENEQVRBU2VjdGlvbiAgICAgICBj
cmVhdGVDREFUQVNlY3Rpb24oaW4gRE9NU3RyaW5nIGRhdGEpCiAgICAgICAgICAgICByYWlzZXMo
RE9NRXhjZXB0aW9uKTsKLSAgICAgICAgCiAgICAgICAgIFtPbGRTdHlsZU9iakNdIFByb2Nlc3Np
bmdJbnN0cnVjdGlvbiBjcmVhdGVQcm9jZXNzaW5nSW5zdHJ1Y3Rpb24oaW4gRE9NU3RyaW5nIHRh
cmdldCwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgZGF0YSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbiBET01TdHJpbmcgZGF0YSkKICAgICAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9u
KTsKLSAgICAgICAgCi0gICAgICAgIEF0dHIgY3JlYXRlQXR0cmlidXRlKGluIERPTVN0cmluZyBu
YW1lKQorICAgICAgICBBdHRyICAgICAgICAgICAgICAgY3JlYXRlQXR0cmlidXRlKGluIERPTVN0
cmluZyBuYW1lKQogICAgICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgICAgICAK
LSAgICAgICAgRW50aXR5UmVmZXJlbmNlIGNyZWF0ZUVudGl0eVJlZmVyZW5jZShpbiBET01TdHJp
bmcgbmFtZSkKKyAgICAgICAgRW50aXR5UmVmZXJlbmNlICAgIGNyZWF0ZUVudGl0eVJlZmVyZW5j
ZShpbiBET01TdHJpbmcgbmFtZSkKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwot
ICAgICAgICAKLSAgICAgICAgTm9kZUxpc3QgZ2V0RWxlbWVudHNCeVRhZ05hbWUoaW4gRE9NU3Ry
aW5nIHRhZ25hbWUpOwotICAgICAgICAKLSAgICAgICAgLy8gRE9NIExldmVsIDIgQ29yZQotICAg
ICAgICAKKyAgICAgICAgTm9kZUxpc3QgICAgICAgICAgIGdldEVsZW1lbnRzQnlUYWdOYW1lKGlu
IERPTVN0cmluZyB0YWduYW1lKTsKKworICAgICAgICAvLyBJbnRyb2R1Y2VkIGluIERPTSBMZXZl
bCAyOgorCiAgICAgICAgIFtPbGRTdHlsZU9iakNdIE5vZGUgaW1wb3J0Tm9kZShpbiBOb2RlIGlt
cG9ydGVkTm9kZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
Ym9vbGVhbiBkZWVwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
Ym9vbGVhbiBkZWVwKQogICAgICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgICAg
ICAKICAgICAgICAgW09sZFN0eWxlT2JqQ10gRWxlbWVudCBjcmVhdGVFbGVtZW50TlMoaW4gRE9N
U3RyaW5nIG5hbWVzcGFjZVVSSSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbiBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSkKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIHF1YWxpZmllZE5h
bWUpCiAgICAgICAgICAgICByYWlzZXMgKERPTUV4Y2VwdGlvbik7Ci0gICAgICAgIAogICAgICAg
ICBbT2xkU3R5bGVPYmpDXSBBdHRyIGNyZWF0ZUF0dHJpYnV0ZU5TKGluIERPTVN0cmluZyBuYW1l
c3BhY2VVUkksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbiBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgcXVhbGlmaWVkTmFtZSkKICAgICAgICAg
ICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKLSAgICAgICAgCiAgICAgICAgIFtPbGRTdHlsZU9i
akNdIE5vZGVMaXN0IGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoaW4gRE9NU3RyaW5nIG5hbWVzcGFj
ZVVSSSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGluIERPTVN0cmluZyBsb2NhbE5hbWUpOwotICAgICAgICAKLSAgICAgICAgRWxlbWVu
dCBnZXRFbGVtZW50QnlJZChpbiBET01TdHJpbmcgZWxlbWVudElkKTsKKyAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgbG9j
YWxOYW1lKTsKKyAgICAgICAgRWxlbWVudCAgICAgICAgICAgIGdldEVsZW1lbnRCeUlkKGluIERP
TVN0cmluZyBlbGVtZW50SWQpOworCisgICAgICAgIC8vIERPTSBMZXZlbCAzIENvcmUKKworICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsU3RyaW5nVG89TnVsbF0gRE9NU3Ry
aW5nIGlucHV0RW5jb2Rpbmc7CisKKyAgICAgICAgTm9kZSAgICAgICAgICAgICAgIGFkb3B0Tm9k
ZShpbiBOb2RlIHNvdXJjZSkKKyAgICAgICAgICAgIHJhaXNlcyAoRE9NRXhjZXB0aW9uKTsKKwog
CiAgICAgICAgIC8vIERPTSBMZXZlbCAyIEV2ZW50cyAoRG9jdW1lbnRFdmVudHMgaW50ZXJmYWNl
KQogCi0gICAgICAgIEV2ZW50IGNyZWF0ZUV2ZW50KGluIERPTVN0cmluZyBldmVudFR5cGUpCisg
ICAgICAgIEV2ZW50ICAgICAgICAgICAgICBjcmVhdGVFdmVudChpbiBET01TdHJpbmcgZXZlbnRU
eXBlKQogICAgICAgICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAKICAgICAgICAgLy8gRE9N
IExldmVsIDIgVHJhbnZlcnNhbCBhbmQgUmFuZ2UgKERvY3VtZW50UmFuZ2UgaW50ZXJmYWNlKQog
Ci0gICAgICAgIFJhbmdlIGNyZWF0ZVJhbmdlKCk7CisgICAgICAgIFJhbmdlICAgICAgICAgICAg
ICBjcmVhdGVSYW5nZSgpOwogCiAgICAgICAgIC8vIERPTSBMZXZlbCAyIFRyYW52ZXJzYWwgYW5k
IFJhbmdlIChEb2N1bWVudFRyYXZlcnNhbCBpbnRlcmZhY2UpCiAKLSAgICAgICAgW0V4Y2x1ZGU9
T2JqQ10gTm9kZUl0ZXJhdG9yIGNyZWF0ZU5vZGVJdGVyYXRvcihpbiBOb2RlIHJvb3QsIAotICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIHVu
c2lnbmVkIGxvbmcgd2hhdFRvU2hvdywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBOb2RlRmlsdGVyIGZpbHRlciwKLSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFuIGVu
dGl0eVJlZmVyZW5jZUV4cGFuc2lvbikKLSAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24p
OwotCi0gICAgICAgIFtFeGNsdWRlPU9iakNdIFRyZWVXYWxrZXIgY3JlYXRlVHJlZVdhbGtlcihp
biBOb2RlIHJvb3QsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW4gdW5zaWduZWQgbG9uZyB3aGF0VG9TaG93LCAKLSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIE5vZGVGaWx0ZXIgZmlsdGVyLCAK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJv
b2xlYW4gZW50aXR5UmVmZXJlbmNlRXhwYW5zaW9uKQorI2lmICFkZWZpbmVkKE9CSkMpCisgICAg
ICAgIE5vZGVJdGVyYXRvciAgICAgICBjcmVhdGVOb2RlSXRlcmF0b3IoaW4gTm9kZSByb290LCAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1bnNpZ25l
ZCBsb25nIHdoYXRUb1Nob3csCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW4gTm9kZUZpbHRlciBmaWx0ZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBlbnRpdHlSZWZlcmVuY2VFeHBhbnNpb24p
CisgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgVHJlZVdhbGtlciBj
cmVhdGVUcmVlV2Fsa2VyKGluIE5vZGUgcm9vdCwgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbiB1bnNpZ25lZCBsb25nIHdoYXRUb1Nob3csIAorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgaW4gTm9kZUZpbHRlciBmaWx0ZXIsIAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBlbnRpdHlSZWZlcmVuY2VFeHBhbnNp
b24pCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKKyNlbmRpZgogCiAgICAgICAg
IC8vIERPTSBMZXZlbCAyIEFic3RyYWN0IFZpZXdzIChEb2N1bWVudFZpZXcgaW50ZXJmYWNlKQog
CkBAIC0xMDcsMjggKzEwMiwxOSBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIC8vIERPTSBMZXZl
bCAyIFN0eWxlIChEb2N1bWVudENTUyBpbnRlcmZhY2UpCiAKICAgICAgICAgW09sZFN0eWxlT2Jq
Q10gQ1NTU3R5bGVEZWNsYXJhdGlvbiBnZXRPdmVycmlkZVN0eWxlKGluIEVsZW1lbnQgZWxlbWVu
dCwgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01T
dHJpbmcgcHNldWRvRWxlbWVudCk7Ci0KLSAgICAgICAgLy8gRE9NIExldmVsIDMgQ29yZQotCi0g
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVydE51bGxTdHJpbmdUbz1OdWxsXSBET01T
dHJpbmcgaW5wdXRFbmNvZGluZzsKLSAgICAgICAgCi0gICAgICAgIE5vZGUgYWRvcHROb2RlKGlu
IE5vZGUgc291cmNlKQotICAgICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOworICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
RE9NU3RyaW5nIHBzZXVkb0VsZW1lbnQpOwogCiAjaWZkZWYgWFBBVEhfU1VQUE9SVAogICAgICAg
ICAvLyBET00gTGV2ZWwgMyBYUGF0aCAoWFBhdGhFdmFsdWF0b3IgaW50ZXJmYWNlKQogICAgICAg
ICBbT2xkU3R5bGVPYmpDXSBYUGF0aEV4cHJlc3Npb24gY3JlYXRlRXhwcmVzc2lvbihpbiBET01T
dHJpbmcgZXhwcmVzc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gWFBhdGhOU1Jlc29sdmVyIHJlc29sdmVyKQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBYUGF0aE5TUmVzb2x2ZXIgcmVzb2x2
ZXIpCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKLQotICAgICAgICBYUGF0aE5T
UmVzb2x2ZXIgY3JlYXRlTlNSZXNvbHZlcihpbiBOb2RlIG5vZGVSZXNvbHZlcik7Ci0gICAgICAg
IAorICAgICAgICBYUGF0aE5TUmVzb2x2ZXIgICAgY3JlYXRlTlNSZXNvbHZlcihpbiBOb2RlIG5v
ZGVSZXNvbHZlcik7CiAgICAgICAgIFtPbGRTdHlsZU9iakNdIFhQYXRoUmVzdWx0IGV2YWx1YXRl
KGluIERPTVN0cmluZyBleHByZXNzaW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBp
biBOb2RlIGNvbnRleHROb2RlLCAKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gWFBh
dGhOU1Jlc29sdmVyIHJlc29sdmVyLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1
bnNpZ25lZCBzaG9ydCB0eXBlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBYUGF0
aFJlc3VsdCBpblJlc3VsdCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gTm9kZSBjb250ZXh0Tm9kZSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluIFhQYXRoTlNSZXNvbHZlciByZXNvbHZlciwKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gdW5zaWduZWQgc2hvcnQgdHlwZSwK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gWFBhdGhSZXN1
bHQgaW5SZXN1bHQpCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKICNlbmRpZgog
CkBAIC0xMzcsNDAgKzEyMywzNSBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIGJvb2xlYW4gZXhl
Y0NvbW1hbmQoaW4gRE9NU3RyaW5nIGNvbW1hbmQsIAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGluIGJvb2xlYW4gdXNlckludGVyZmFjZSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gRE9NU3RyaW5nIHZhbHVlKTsKLQogICAgICAgICBib29sZWFuIHF1ZXJ5Q29tbWFuZEVu
YWJsZWQoaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwotCiAgICAgICAgIGJvb2xlYW4gcXVlcnlDb21t
YW5kSW5kZXRlcm0oaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwotCiAgICAgICAgIGJvb2xlYW4gcXVl
cnlDb21tYW5kU3RhdGUoaW4gRE9NU3RyaW5nIGNvbW1hbmQpOwotCiAgICAgICAgIGJvb2xlYW4g
cXVlcnlDb21tYW5kU3VwcG9ydGVkKGluIERPTVN0cmluZyBjb21tYW5kKTsKLQogICAgICAgICBb
Q29udmVydE51bGxTdHJpbmdUbz1GYWxzZV0gRE9NU3RyaW5nIHF1ZXJ5Q29tbWFuZFZhbHVlKGlu
IERPTVN0cmluZyBjb21tYW5kKTsKIAogICAgICAgICAvLyBJRSBleHRlbnNpb25zCiAKLSAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPU9iakNdIERPTVN0cmluZyBVUkw7Ci0KLSAg
ICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPVVuZGVmaW5lZF0gRE9NU3RyaW5n
IGNoYXJzZXQ7Ci0KKyNpZiAhZGVmaW5lZChPQkpDKQorICAgICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIFVSTDsKKyNlbmRpZgorICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgW0Nv
bnZlcnROdWxsU3RyaW5nVG89VW5kZWZpbmVkXSBET01TdHJpbmcgY2hhcnNldDsKICAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPVVuZGVmaW5lZF0gRE9NU3Ry
aW5nIGRlZmF1bHRDaGFyc2V0OwotCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVy
dE51bGxTdHJpbmdUbz1VbmRlZmluZWRdIERPTVN0cmluZyByZWFkeVN0YXRlOwogCi0gICAgICAg
IEVsZW1lbnQgZWxlbWVudEZyb21Qb2ludChpbiBsb25nIHgsIGluIGxvbmcgeSk7CisgICAgICAg
IEVsZW1lbnQgICAgICAgICAgICBlbGVtZW50RnJvbVBvaW50KGluIGxvbmcgeCwgaW4gbG9uZyB5
KTsKIAogICAgICAgICAvLyBNb3ppbGxhIGV4dGVuc2lvbnMKIAotICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgW0NvbnZlcnROdWxsU3RyaW5nVG89TnVsbCwgRXhjbHVkZT1PYmpDXSBET01TdHJp
bmcgY2hhcmFjdGVyU2V0OworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0NvbnZlcnROdWxs
U3RyaW5nVG89TnVsbF0gRE9NU3RyaW5nIGNoYXJhY3RlclNldDsKIAogICAgICAgICAvLyBXZWJL
aXQgZXh0ZW5zaW9ucwogCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbQ29udmVydE51bGxT
dHJpbmdUbz1OdWxsXSBET01TdHJpbmcgcHJlZmVycmVkU3R5bGVzaGVldFNldDsKKyAgICAgICAg
ICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0cmluZ1RvPU51bGxdIERPTVN0cmluZyBz
ZWxlY3RlZFN0eWxlc2hlZXRTZXQ7CiAKLSAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFN0
cmluZ1RvPU51bGxdIERPTVN0cmluZyBzZWxlY3RlZFN0eWxlc2hlZXRTZXQ7Ci0KLSAgICAgICAg
W0V4Y2x1ZGU9SlNdIENTU1N0eWxlRGVjbGFyYXRpb24gY3JlYXRlQ1NTU3R5bGVEZWNsYXJhdGlv
bigpOworI2lmICFkZWZpbmVkKEpTKQorICAgICAgICBDU1NTdHlsZURlY2xhcmF0aW9uIGNyZWF0
ZUNTU1N0eWxlRGVjbGFyYXRpb24oKTsKKyNlbmRpZgogCiAgICAgfTsKIApJbmRleDogV2ViQ29y
ZS9kb20vRWxlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vRWxlbWVudC5pZGwJ
KHJldmlzaW9uIDE2Mjk4KQorKysgV2ViQ29yZS9kb20vRWxlbWVudC5pZGwJKHdvcmtpbmcgY29w
eSkKQEAgLTI3LDg2ICsyNyw1OSBAQCBtb2R1bGUgY29yZSB7CiAgICAgICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBbQ29udmVydE51bGxTdHJpbmdUbz1OdWxsXSBET01TdHJpbmcgdGFnTmFtZTsKIAog
ICAgICAgICBbQ29udmVydE51bGxTdHJpbmdUbz1OdWxsXSBET01TdHJpbmcgZ2V0QXR0cmlidXRl
KGluIERPTVN0cmluZyBuYW1lKTsKLQogICAgICAgICBbT2xkU3R5bGVPYmpDXSB2b2lkIHNldEF0
dHJpYnV0ZShpbiBET01TdHJpbmcgbmFtZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
RE9NU3RyaW5nIHZhbHVlKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBpbiBET01TdHJpbmcgdmFsdWUpCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsK
LQogICAgICAgICB2b2lkIHJlbW92ZUF0dHJpYnV0ZShpbiBET01TdHJpbmcgbmFtZSkKICAgICAg
ICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotCiAgICAgICAgIEF0dHIgZ2V0QXR0cmlidXRl
Tm9kZShpbiBET01TdHJpbmcgbmFtZSk7Ci0KICAgICAgICAgQXR0ciBzZXRBdHRyaWJ1dGVOb2Rl
KGluIEF0dHIgbmV3QXR0cikKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotCiAg
ICAgICAgIEF0dHIgcmVtb3ZlQXR0cmlidXRlTm9kZShpbiBBdHRyIG9sZEF0dHIpCiAgICAgICAg
ICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKLQogICAgICAgICBOb2RlTGlzdCBnZXRFbGVtZW50
c0J5VGFnTmFtZShpbiBET01TdHJpbmcgbmFtZSk7CiAKICAgICAgICAgLy8gRE9NIExldmVsIDIg
Q29yZQogCiAgICAgICAgIFtPbGRTdHlsZU9iakNdIERPTVN0cmluZyBnZXRBdHRyaWJ1dGVOUyhp
biBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBuYW1lc3BhY2VVUkksCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgbG9jYWxOYW1lKTsKLQor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3Ry
aW5nIGxvY2FsTmFtZSk7CiAgICAgICAgIFtPbGRTdHlsZU9iakNdIHZvaWQgc2V0QXR0cmlidXRl
TlMoaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgbmFtZXNwYWNlVVJJLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBxdWFsaWZpZWROYW1lLCAK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgdmFsdWUpCisgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIHF1YWxpZmll
ZE5hbWUsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERP
TVN0cmluZyB2YWx1ZSkKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotCiAgICAg
ICAgIFtPbGRTdHlsZU9iakNdIHZvaWQgcmVtb3ZlQXR0cmlidXRlTlMoaW4gW0NvbnZlcnROdWxs
VG9OdWxsU3RyaW5nXSBET01TdHJpbmcgbmFtZXNwYWNlVVJJLAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIGluIERPTVN0cmluZyBsb2NhbE5hbWUpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIGxvY2FsTmFtZSkKICAgICAg
ICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwotCiAgICAgICAgIFtPbGRTdHlsZU9iakNdIE5v
ZGVMaXN0IGdldEVsZW1lbnRzQnlUYWdOYW1lTlMoaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5n
XSBET01TdHJpbmcgbmFtZXNwYWNlVVJJLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIGxvY2FsTmFtZSk7Ci0KKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBE
T01TdHJpbmcgbG9jYWxOYW1lKTsKICAgICAgICAgW09sZFN0eWxlT2JqQ10gQXR0ciBnZXRBdHRy
aWJ1dGVOb2RlTlMoaW4gW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5nXSBET01TdHJpbmcgbmFtZXNw
YWNlVVJJLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGluIERPTVN0cmluZyBsb2NhbE5hbWUpOwotCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBsb2NhbE5hbWUpOwogICAgICAgICBBdHRy
IHNldEF0dHJpYnV0ZU5vZGVOUyhpbiBBdHRyIG5ld0F0dHIpCiAgICAgICAgICAgICByYWlzZXMo
RE9NRXhjZXB0aW9uKTsKLQogICAgICAgICBib29sZWFuIGhhc0F0dHJpYnV0ZShpbiBET01TdHJp
bmcgbmFtZSk7Ci0KICAgICAgICAgW09sZFN0eWxlT2JqQ10gYm9vbGVhbiBoYXNBdHRyaWJ1dGVO
UyhpbiBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyBuYW1lc3BhY2VVUkksCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIGxvY2FsTmFtZSk7Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5n
IGxvY2FsTmFtZSk7CiAKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIENTU1N0eWxlRGVjbGFy
YXRpb24gc3R5bGU7CiAKICAgICAgICAgLy8gQ29tbW9uIGV4dGVuc2lvbnMKIAogICAgICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBvZmZzZXRMZWZ0OwotCiAgICAgICAgIHJlYWRvbmx5IGF0
dHJpYnV0ZSBsb25nIG9mZnNldFRvcDsKLQogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9u
ZyBvZmZzZXRXaWR0aDsKLQogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBvZmZzZXRI
ZWlnaHQ7Ci0KICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEVsZW1lbnQgb2Zmc2V0UGFyZW50
OwotCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nIGNsaWVudExlZnQ7Ci0gICAgICAg
IAogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyBjbGllbnRUb3A7Ci0KICAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgY2xpZW50V2lkdGg7Ci0KICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIGxvbmcgY2xpZW50SGVpZ2h0OwotCi0gICAgICAgIGF0dHJpYnV0ZSBsb25nIHNj
cm9sbExlZnQ7Ci0KLSAgICAgICAgYXR0cmlidXRlIGxvbmcgc2Nyb2xsVG9wOwotCisgICAgICAg
ICAgICAgICAgIGF0dHJpYnV0ZSBsb25nIHNjcm9sbExlZnQ7CisgICAgICAgICAgICAgICAgIGF0
dHJpYnV0ZSBsb25nIHNjcm9sbFRvcDsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcg
c2Nyb2xsV2lkdGg7Ci0KICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgc2Nyb2xsSGVp
Z2h0OwogCiAgICAgICAgIHZvaWQgZm9jdXMoKTsKLQogICAgICAgICB2b2lkIGJsdXIoKTsKLQog
ICAgICAgICB2b2lkIHNjcm9sbEludG9WaWV3KGluIFtPcHRpb25hbF0gYm9vbGVhbiBhbGlnbldp
dGhUb3ApOwogCiAgICAgICAgIC8vIElFIGV4dGVuc2lvbnMKQEAgLTExNCwxNSArODcsMTIgQEAg
bW9kdWxlIGNvcmUgewogICAgICAgICBOb2RlIGluc2VydEFkamFjZW50RWxlbWVudChpbiBET01T
dHJpbmcgcG9zaXRpb24sIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBO
b2RlIGVsZW1lbnQpCiAgICAgICAgICAgICByYWlzZXMoRE9NRXhjZXB0aW9uKTsKLQogICAgICAg
ICBib29sZWFuIGNvbnRhaW5zKGluIEVsZW1lbnQgZWxlbWVudCk7CiAKICAgICAgICAgLy8gV2Vi
S2l0IGV4dGVuc2lvbnMKIAogICAgICAgICB2b2lkIHNjcm9sbEludG9WaWV3SWZOZWVkZWQoaW4g
W09wdGlvbmFsXSBib29sZWFuIGNlbnRlcklmTmVlZGVkKTsKLQogICAgICAgICB2b2lkIHNjcm9s
bEJ5TGluZXMoaW4gbG9uZyBsaW5lcyk7Ci0KICAgICAgICAgdm9pZCBzY3JvbGxCeVBhZ2VzKGlu
IGxvbmcgcGFnZXMpOwogCiAgICAgfTsKSW5kZXg6IFdlYkNvcmUvZG9tL0V2ZW50LmlkbAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9FdmVudC5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysgV2Vi
Q29yZS9kb20vRXZlbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0yOCw2ICsyOCw3IEBAIG1vZHVs
ZSBldmVudHMgewogICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBBVF9UQVJHRVQgICAgICAg
ICAgID0gMjsKICAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgQlVCQkxJTkdfUEhBU0UgICAg
ICA9IDM7CiAKKyNpZiAhZGVmaW5lZChPQkpDKQogICAgICAgICAvLyBSZXZlcnNlLWVuZ2luZWVy
ZWQgZnJvbSBOZXRzY2FwZQogICAgICAgICBjb25zdCB1bnNpZ25lZCBzaG9ydCBNT1VTRURPV04g
ICAgICAgICAgID0gMTsKICAgICAgICAgY29uc3QgdW5zaWduZWQgc2hvcnQgTU9VU0VVUCAgICAg
ICAgICAgICA9IDI7CkBAIC00NSwxOSArNDYsMjIgQEAgbW9kdWxlIGV2ZW50cyB7CiAgICAgICAg
IGNvbnN0IHVuc2lnbmVkIHNob3J0IEJMVVIgICAgICAgICAgICAgICAgPSA4MTkyOwogICAgICAg
ICBjb25zdCB1bnNpZ25lZCBzaG9ydCBTRUxFQ1QgICAgICAgICAgICAgID0gMTYzODQ7CiAgICAg
ICAgIGNvbnN0IHVuc2lnbmVkIHNob3J0IENIQU5HRSAgICAgICAgICAgICAgPSAzMjc2ODsKKyNl
bmRpZgogCi0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5n
ICAgICAgICB0eXBlOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIEV2
ZW50VGFyZ2V0ICAgICAgdGFyZ2V0OwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1
ZGU9SlNdIEV2ZW50VGFyZ2V0ICAgICAgY3VycmVudFRhcmdldDsKLSAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIFtFeGNsdWRlPUpTXSB1bnNpZ25lZCBzaG9ydCAgIGV2ZW50UGhhc2U7Ci0gICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gYm9vbGVhbiAgICAgICAgICBidWJi
bGVzOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIGJvb2xlYW4gICAg
ICAgICAgY2FuY2VsYWJsZTsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpT
XSBET01UaW1lU3RhbXAgICAgIHRpbWVTdGFtcDsKLSAgICAgICAgW0V4Y2x1ZGU9SlNdIHZvaWQg
ICAgICAgICAgICAgICBzdG9wUHJvcGFnYXRpb24oKTsKLSAgICAgICAgW0V4Y2x1ZGU9SlNdIHZv
aWQgICAgICAgICAgICAgICBwcmV2ZW50RGVmYXVsdCgpOwotICAgICAgICBbRXhjbHVkZT1KUywg
T2xkU3R5bGVPYmpDXSB2b2lkIGluaXRFdmVudChpbiBET01TdHJpbmcgZXZlbnRUeXBlQXJnLCAK
LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9v
bGVhbiBjYW5CdWJibGVBcmcsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBpbiBib29sZWFuIGNhbmNlbGFibGVBcmcpOworI2lmICFkZWZpbmVkKEpT
KQorICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgICB0eXBlOworICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRXZlbnRUYXJnZXQgICAgICB0YXJnZXQ7CisgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBFdmVudFRhcmdldCAgICAgIGN1cnJlbnRUYXJnZXQ7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBzaG9ydCAgIGV2ZW50UGhhc2U7CisgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuICAgICAgICAgIGJ1YmJsZXM7CisgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuICAgICAgICAgIGNhbmNlbGFibGU7CisgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBET01UaW1lU3RhbXAgICAgIHRpbWVTdGFtcDsKKyAgICAgICAg
dm9pZCAgICAgICAgICAgICAgIHN0b3BQcm9wYWdhdGlvbigpOworICAgICAgICB2b2lkICAgICAg
ICAgICAgICAgcHJldmVudERlZmF1bHQoKTsKKyAgICAgICAgW09sZFN0eWxlT2JqQ10gdm9pZCBp
bml0RXZlbnQoaW4gRE9NU3RyaW5nIGV2ZW50VHlwZUFyZywgCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIGluIGJvb2xlYW4gY2FuQnViYmxlQXJnLCAKKyAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5jZWxhYmxlQXJnKTsKKyNl
bmRpZgogCiAgICAgfTsKIApJbmRleDogV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5pZGwKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5pZGwJKHJldmlzaW9uIDE2Mjk4
KQorKysgV2ViQ29yZS9kb20vS2V5Ym9hcmRFdmVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTIz
LDExICsyMywxMyBAQCBtb2R1bGUgZXZlbnRzIHsKICAgICAvLyBJbnRyb2R1Y2VkIGluIERPTSBM
ZXZlbCAzOgogICAgIGludGVyZmFjZSBLZXlib2FyZEV2ZW50IDogVUlFdmVudCB7CiAKKyNpZiAh
ZGVmaW5lZChKUykKICAgICAgICAgLy8gS2V5TG9jYXRpb25Db2RlCi0gICAgICAgIC8vY29uc3Qg
dW5zaWduZWQgbG9uZyAgICAgICBLRVlfTE9DQVRJT05fU1RBTkRBUkQgICAgICA9IDB4MDA7Ci0g
ICAgICAgIC8vY29uc3QgdW5zaWduZWQgbG9uZyAgICAgICBLRVlfTE9DQVRJT05fTEVGVCAgICAg
ICAgICA9IDB4MDE7Ci0gICAgICAgIC8vY29uc3QgdW5zaWduZWQgbG9uZyAgICAgICBLRVlfTE9D
QVRJT05fUklHSFQgICAgICAgICA9IDB4MDI7Ci0gICAgICAgIC8vY29uc3QgdW5zaWduZWQgbG9u
ZyAgICAgICBLRVlfTE9DQVRJT05fTlVNUEFEICAgICAgICA9IDB4MDM7CisgICAgICAgIGNvbnN0
IHVuc2lnbmVkIGxvbmcgICAgICAgS0VZX0xPQ0FUSU9OX1NUQU5EQVJEICAgICAgPSAweDAwOwor
ICAgICAgICBjb25zdCB1bnNpZ25lZCBsb25nICAgICAgIEtFWV9MT0NBVElPTl9MRUZUICAgICAg
ICAgID0gMHgwMTsKKyAgICAgICAgY29uc3QgdW5zaWduZWQgbG9uZyAgICAgICBLRVlfTE9DQVRJ
T05fUklHSFQgICAgICAgICA9IDB4MDI7CisgICAgICAgIGNvbnN0IHVuc2lnbmVkIGxvbmcgICAg
ICAgS0VZX0xPQ0FUSU9OX05VTVBBRCAgICAgICAgPSAweDAzOworI2VuZGlmCiAKICAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICAga2V5SWRlbnRpZmllcjsKICAgICAg
ICAgcmVhZG9ubHkgYXR0cmlidXRlIHVuc2lnbmVkIGxvbmcgICAga2V5TG9jYXRpb247CkBAIC0z
Nyw4ICszOSwxMCBAQCBtb2R1bGUgZXZlbnRzIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRl
IGJvb2xlYW4gICAgICAgICAgbWV0YUtleTsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJv
b2xlYW4gICAgICAgICAgYWx0R3JhcGhLZXk7CiAKLSAgICAgICAgLy9ib29sZWFuIFtFeGNsdWRl
PUpTXSBnZXRNb2RpZmllclN0YXRlKGluIERPTVN0cmluZyBrZXlJZGVudGlmaWVyQXJnKTsKLSAg
ICAgICAgCisjaWYgIWRlZmluZWQoSlMpICYmICFkZWZpbmVkKE9CSkMpCisgICAgICAgIGJvb2xl
YW4gZ2V0TW9kaWZpZXJTdGF0ZShpbiBET01TdHJpbmcga2V5SWRlbnRpZmllckFyZyk7CisjZW5k
aWYKKwogICAgICAgICAvLyBGSVhNRTogdGhpcyBkb2VzIG5vdCBtYXRjaCB0aGUgdmVyc2lvbiBp
biB0aGUgRE9NIHNwZWMuCiAgICAgICAgIHZvaWQgaW5pdEtleWJvYXJkRXZlbnQoaW4gQXRvbWlj
U3RyaW5nIHR5cGUsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGJvb2xlYW4g
Y2FuQnViYmxlLCAKQEAgLTUzLDE5ICs1NywyMSBAQCBtb2R1bGUgZXZlbnRzIHsKICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFuIGFsdEdyYXBoS2V5KTsKIAogICAgICAg
ICAvLyBXZWJLaXQgRXh0ZW5zaW9ucwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1
ZGU9SlNdIGxvbmcga2V5Q29kZTsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRl
PUpTXSBsb25nIGNoYXJDb2RlOworI2lmICFkZWZpbmVkKEpTKQorICAgICAgICByZWFkb25seSBh
dHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICBrZXlDb2RlOworICAgICAgICByZWFkb25seSBhdHRy
aWJ1dGUgbG9uZyAgICAgICAgICAgICBjaGFyQ29kZTsKICAgICAgICAgCi0gICAgICAgIFtFeGNs
dWRlPUpTXSB2b2lkIGluaXRLZXlib2FyZEV2ZW50KGluIEF0b21pY1N0cmluZyB0eXBlLCAKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBjYW5C
dWJibGUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBi
b29sZWFuIGNhbmNlbGFibGUsIAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBET01XaW5kb3cgdmlldywgCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBrZXlJZGVudGlmaWVyLAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiB1bnNpZ25lZCBsb25nIGtleUxvY2F0
aW9uLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29s
ZWFuIGN0cmxLZXksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGluIGJvb2xlYW4gYWx0S2V5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBib29sZWFuIHNoaWZ0S2V5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBpbiBib29sZWFuIG1ldGFLZXkpOworICAgICAgICB2b2lkIGluaXRL
ZXlib2FyZEV2ZW50KGluIEF0b21pY1N0cmluZyB0eXBlLCAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbiBib29sZWFuIGNhbkJ1YmJsZSwgCisgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW4gYm9vbGVhbiBjYW5jZWxhYmxlLCAKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBpbiBET01XaW5kb3cgdmlldywgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gRE9NU3RyaW5nIGtleUlkZW50aWZpZXIsCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gdW5zaWduZWQgbG9uZyBrZXlMb2NhdGlvbiwKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBpbiBib29sZWFuIGN0cmxLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgaW4gYm9vbGVhbiBhbHRLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW4gYm9vbGVhbiBzaGlmdEtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBi
b29sZWFuIG1ldGFLZXkpOworI2VuZGlmCiAKICAgICB9OwogCkluZGV4OiBXZWJDb3JlL2RvbS9N
b3VzZUV2ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9Nb3VzZUV2ZW50LmlkbAko
cmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2RvbS9Nb3VzZUV2ZW50LmlkbAkod29ya2luZyBj
b3B5KQpAQCAtMjEsNyArMjEsNiBAQCBtb2R1bGUgZXZlbnRzIHsKIAogICAgIC8vIEludHJvZHVj
ZWQgaW4gRE9NIExldmVsIDI6CiAgICAgaW50ZXJmYWNlIE1vdXNlRXZlbnQgOiBVSUV2ZW50IHsK
LQogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICBzY3JlZW5YOwog
ICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICBzY3JlZW5ZOwogICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICBjbGllbnRYOwpAQCAtNTYs
NyArNTUsNiBAQCBtb2R1bGUgZXZlbnRzIHsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxv
bmcgICAgICAgICAgICAgeTsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIE5vZGUgICAgICAg
ICAgICAgZnJvbUVsZW1lbnQ7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb2RlICAgICAg
ICAgICAgIHRvRWxlbWVudDsKLQogICAgIH07CiAKIH0KSW5kZXg6IFdlYkNvcmUvZG9tL05hbWVk
Tm9kZU1hcC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vTmFtZWROb2RlTWFwLmlkbAko
cmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2RvbS9OYW1lZE5vZGVNYXAuaWRsCSh3b3JraW5n
IGNvcHkpCkBAIC0zNyw3ICszNyw3IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgLy8gSW50cm9k
dWNlZCBpbiBET00gTGV2ZWwgMjoKIAogICAgICAgICBbT2xkU3R5bGVPYmpDXSBOb2RlIGdldE5h
bWVkSXRlbU5TKGluIERPTVN0cmluZyBuYW1lc3BhY2VVUkksIAotICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3RyaW5nIGxvY2FsTmFtZSkKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01TdHJpbmcgbG9jYWxO
YW1lKQogICAgICAgICAgICAgLy8gRklYTUU6IHRoZSBpbXBsZW1lbnRhdGlvbiBkb2VzIHRha2Ug
YW4gZXhjZXB0aW9uY29kZSBwYXJhbWV0ZXIuCiAgICAgICAgICAgICAvKnJhaXNlcyhET01FeGNl
cHRpb24pKi87CiAKQEAgLTQ1LDcgKzQ1LDcgQEAgbW9kdWxlIGNvcmUgewogICAgICAgICAgICAg
cmFpc2VzKERPTUV4Y2VwdGlvbik7CiAKICAgICAgICAgW09sZFN0eWxlT2JqQ10gTm9kZSByZW1v
dmVOYW1lZEl0ZW1OUyhpbiBET01TdHJpbmcgbmFtZXNwYWNlVVJJLCAKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIERPTVN0cmluZyBsb2NhbE5hbWUp
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gRE9NU3Ry
aW5nIGxvY2FsTmFtZSkKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNlcHRpb24pOwogCiAgICAg
fTsKSW5kZXg6IFdlYkNvcmUvZG9tL05vZGVGaWx0ZXIuaWRsCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvZG9tL05vZGVGaWx0ZXIuaWRsCShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvZG9tL05v
ZGVGaWx0ZXIuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC00Myw3ICs0Myw5IEBAIG1vZHVsZSB0cmF2
ZXJzYWwgewogICAgICAgICBjb25zdCB1bnNpZ25lZCBsb25nICAgICAgIFNIT1dfRE9DVU1FTlRf
RlJBR01FTlQgICAgICAgICA9IDB4MDAwMDA0MDA7CiAgICAgICAgIGNvbnN0IHVuc2lnbmVkIGxv
bmcgICAgICAgU0hPV19OT1RBVElPTiAgICAgICAgICAgICAgICAgID0gMHgwMDAwMDgwMDsKIAot
ICAgICAgICBbRXhjbHVkZT1KU10gc2hvcnQgYWNjZXB0Tm9kZShpbiBOb2RlIG4pOworI2lmICFk
ZWZpbmVkKEpTKQorICAgICAgICBzaG9ydCBhY2NlcHROb2RlKGluIE5vZGUgbik7CisjZW5kaWYK
IAogICAgIH07CiAKSW5kZXg6IFdlYkNvcmUvZG9tL1VJRXZlbnQuaWRsCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvZG9tL1VJRXZlbnQuaWRsCShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvZG9t
L1VJRXZlbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw3ICszOCw2IEBAIG1vZHVsZSBldmVu
dHMgewogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICAgICAgcGFn
ZVg7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgICAgICAgICAgICAgICBwYWdl
WTsKICAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgICAgICAgICAgICAgICAgIHdoaWNo
OwotCiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9kb20vV2hlZWxFdmVudC5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9kb20vV2hlZWxFdmVudC5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysg
V2ViQ29yZS9kb20vV2hlZWxFdmVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTIyLDcgKzIyLDYg
QEAgbW9kdWxlIGV2ZW50cyB7CiAKICAgICAvLyBCYXNlZCBvZmYgb2YgcHJvcG9zZWQgSURMIGlu
dGVyZmFjZSBmb3IgV2hlZWxFdmVudDoKICAgICBpbnRlcmZhY2UgV2hlZWxFdmVudCA6IFVJRXZl
bnQgewotCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgIHNjcmVlblg7CiAgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgIHNjcmVlblk7CiAgICAgICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBsb25nICAgIGNsaWVudFg7CkBAIC0zOCwyMCArMzcsMjIgQEAgbW9kdWxlIGV2
ZW50cyB7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgIG9mZnNldFk7CiAgICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBsb25nICAgIHg7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBsb25nICAgIHk7Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10g
Ym9vbGVhbiBpc0hvcml6b250YWw7Ci0gICAgICAgIAotICAgICAgICBbRXhjbHVkZT1KU10gdm9p
ZCBpbml0V2hlZWxFdmVudChpbiBib29sZWFuIGhvcml6b250YWwsIAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBsb25nIHdoZWVsRGVsdGEsIAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBET01XaW5kb3cgdmlldywgCi0gICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGxvbmcgc2NyZWVuWCwKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gbG9uZyBzY3JlZW5ZLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBsb25nIGNsaWVudFgs
Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGxvbmcgY2xpZW50
WSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBj
dHJsS2V5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29s
ZWFuIGFsdEtleSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
Ym9vbGVhbiBzaGlmdEtleSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgaW4gYm9vbGVhbiBtZXRhS2V5KTsKIAorI2lmICFkZWZpbmVkKEpTKQorICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgYm9vbGVhbiBpc0hvcml6b250YWw7CisKKyAgICAgICAgdm9pZCBpbml0
V2hlZWxFdmVudChpbiBib29sZWFuIGhvcml6b250YWwsIAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGluIGxvbmcgd2hlZWxEZWx0YSwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
aW4gRE9NV2luZG93IHZpZXcsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGxvbmcg
c2NyZWVuWCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBsb25nIHNjcmVlblksCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gbG9uZyBjbGllbnRYLAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGluIGxvbmcgY2xpZW50WSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbiBib29sZWFuIGN0cmxLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4g
Ym9vbGVhbiBhbHRLZXksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gYm9vbGVhbiBz
aGlmdEtleSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbiBib29sZWFuIG1ldGFLZXkp
OworI2VuZGlmCiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxBbmNob3JFbGVt
ZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTEFuY2hvckVsZW1lbnQuaWRs
CShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MQW5jaG9yRWxlbWVudC5pZGwJ
KHdvcmtpbmcgY29weSkKQEAgLTQ2LDkgKzQ2LDExIEBAIG1vZHVsZSBodG1sIHsKICAgICAgICAg
cmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBwcm90b2NvbDsKICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIERPTVN0cmluZyBzZWFyY2g7CiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBE
T01TdHJpbmcgdGV4dDsKLSAgICAgICAgCisKKyNpZiBkZWZpbmVkKE9CSkMpCiAgICAgICAgIC8v
IE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNs
dWRlPUpTXSBVUkwgYWJzb2x1dGVMaW5rVVJMOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
VVJMIGFic29sdXRlTGlua1VSTDsKKyNlbmRpZiAgICAKICAgICB9OwogCiB9CkluZGV4OiBXZWJD
b3JlL2h0bWwvSFRNTEFyZWFFbGVtZW50LmlkbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTEFyZWFFbGVtZW50LmlkbAkocmV2aXNpb24gMTYyOTgpCisrKyBXZWJDb3JlL2h0bWwvSFRN
TEFyZWFFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAtMzksOCArMzksMTAgQEAgbW9kdWxl
IGh0bWwgewogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHByb3RvY29sOwog
ICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNlYXJjaDsKIAorI2lmIGRlZmlu
ZWQoT0JKQykKICAgICAgICAgLy8gT2JqZWN0aXZlLUMgZXh0ZW5zaW9uOgotICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIFVSTCBhYnNvbHV0ZUxpbmtVUkw7CisgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBVUkwgYWJzb2x1dGVMaW5rVVJMOworI2VuZGlmCiAgICAgfTsK
IAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5pZGwJKHJldmlzaW9uIDE2Mjk4KQorKysgV2ViQ29y
ZS9odG1sL0hUTUxEb2N1bWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTIyLDM4ICsyMiwzOCBA
QAogbW9kdWxlIGh0bWwgewogCiAgICAgaW50ZXJmYWNlIFtMZWdhY3lQYXJlbnQ9S0pTOjpKU0hU
TUxEb2N1bWVudCwgR2VuZXJhdGVDb25zdHJ1Y3Rvcl0gSFRNTERvY3VtZW50IDogRG9jdW1lbnQg
ewotCi0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5nIHRp
dGxlOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBy
ZWZlcnJlcjsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBET01TdHJp
bmcgZG9tYWluOwotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0
cmluZyBVUkw7CisjaWYgIWRlZmluZWQoSlMpCisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBE
T01TdHJpbmcgdGl0bGU7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgcmVm
ZXJyZXI7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgZG9tYWluOworICAg
ICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIFVSTDsKICAgICAgICAgICAgICAgICAK
ICAgICAgICAgLy8gRklYTUU6IHRoZSBET00gc3BlYyBkb2VzIE5PVCBoYXZlIHRoaXMgYXR0cmli
dXRlCiAgICAgICAgIC8vIHJhaXNpbmcgYW4gZXhjZXB0aW9uLgotICAgICAgICAgICAgICAgICBh
dHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIEhUTUxFbGVtZW50IGJvZHkKKyAgICAgICAgICAgICAgICAg
YXR0cmlidXRlIEhUTUxFbGVtZW50IGJvZHkKICAgICAgICAgICAgICAgICAgICAgIHNldHRlciBy
YWlzZXMgKERPTUV4Y2VwdGlvbik7CiAgICAgICAgICAgICAgICAgICAgICAKLSAgICAgICAgcmVh
ZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBIVE1MQ29sbGVjdGlvbiBpbWFnZXM7Ci0gICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gSFRNTENvbGxlY3Rpb24gYXBwbGV0
czsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBIVE1MQ29sbGVjdGlv
biBsaW5rczsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBIVE1MQ29s
bGVjdGlvbiBmb3JtczsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBI
VE1MQ29sbGVjdGlvbiBhbmNob3JzOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENv
bGxlY3Rpb24gaW1hZ2VzOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rp
b24gYXBwbGV0czsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0aW9uIGxp
bmtzOworICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgSFRNTENvbGxlY3Rpb24gZm9ybXM7Cisg
ICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1MQ29sbGVjdGlvbiBhbmNob3JzOwogICAgICAg
ICAKICAgICAgICAgLy8gRklYTUU6IHRoZSBET00gc3BlYyBzdGF0ZXMgdGhhdCB0aGlzIGF0dHJp
YnV0ZSBjYW4gCiAgICAgICAgIC8vIHJhaXNlIGFuIGV4Y2VwdGlvbiBvbiBzZXR0aW5nLgotICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBjb29raWUKKyAg
ICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBjb29raWUKICAgICAgICAgICAgICAg
ICAgICAgIC8qc2V0dGVyIHJhaXNlcyAoRE9NRXhjZXB0aW9uKSovOwogCi0gICAgICAgIFtFeGNs
dWRlPUpTXSB2b2lkICAgICAgICAgICAgICAgb3BlbigpOwotICAgICAgICBbRXhjbHVkZT1KU10g
dm9pZCAgICAgICAgICAgICAgIGNsb3NlKCk7Ci0gICAgICAgIFtFeGNsdWRlPUpTXSB2b2lkICAg
ICAgICAgICAgICAgd3JpdGUoaW4gRE9NU3RyaW5nIHRleHQpOwotICAgICAgICBbRXhjbHVkZT1K
U10gdm9pZCAgICAgICAgICAgICAgIHdyaXRlbG4oaW4gRE9NU3RyaW5nIHRleHQpOwotICAgICAg
ICBbRXhjbHVkZT1KU10gTm9kZUxpc3QgICAgICAgICAgIGdldEVsZW1lbnRzQnlOYW1lKGluIERP
TVN0cmluZyBlbGVtZW50TmFtZSk7CisgICAgICAgIHZvaWQgICAgICAgICAgICAgICBvcGVuKCk7
CisgICAgICAgIHZvaWQgICAgICAgICAgICAgICBjbG9zZSgpOworICAgICAgICB2b2lkICAgICAg
ICAgICAgICAgd3JpdGUoaW4gRE9NU3RyaW5nIHRleHQpOworICAgICAgICB2b2lkICAgICAgICAg
ICAgICAgd3JpdGVsbihpbiBET01TdHJpbmcgdGV4dCk7CisgICAgICAgIE5vZGVMaXN0ICAgICAg
ICAgICBnZXRFbGVtZW50c0J5TmFtZShpbiBET01TdHJpbmcgZWxlbWVudE5hbWUpOwogCiAgICAg
ICAgIC8vIG5vbi1zdGFuZGFyZAogCi0gICAgICAgIFtFeGNsdWRlPUpTXSBFbGVtZW50ICAgICAg
ICAgICAgZ2V0RWxlbWVudEJ5SWQoaW4gRE9NU3RyaW5nIGVsZW1lbnRJZCk7Ci0KKyAgICAgICAg
RWxlbWVudCAgICAgICAgICAgIGdldEVsZW1lbnRCeUlkKGluIERPTVN0cmluZyBlbGVtZW50SWQp
OworI2VuZGlmCiAgICAgfTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxFbGVtZW50Lmlk
bAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQuaWRsCShyZXZpc2lvbiAx
NjI5OCkKKysrIFdlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTIxLDMxICsyMSwzMiBAQAogbW9kdWxlIGh0bWwgewogCiAgICAgaW50ZXJmYWNlIFtHZW5lcmF0
ZUNvbnN0cnVjdG9yXSBIVE1MRWxlbWVudCA6IEVsZW1lbnQgeworICAgICAgICAgICAgICAgICBh
dHRyaWJ1dGUgRE9NU3RyaW5nIHRpdGxlOwogCi0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcg
dGl0bGU7Ci0gICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5nIGlkOwotICAg
ICAgICBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBsYW5nOwotICAgICAgICBhdHRy
aWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBkaXI7Ci0gICAgICAgIGF0dHJpYnV0ZSBbRXhj
bHVkZT1KU10gRE9NU3RyaW5nIGNsYXNzTmFtZTsKKyNpZiAhZGVmaW5lZChKUykKKyAgICAgICAg
ICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBpZDsKKyAgICAgICAgICAgICAgICAgYXR0cmli
dXRlIERPTVN0cmluZyBsYW5nOworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5n
IGRpcjsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBjbGFzc05hbWU7CiAK
ICAgICAgICAgLy8gZXh0ZW5zaW9ucwogCi0gICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10g
RE9NU3RyaW5nIGlubmVySFRNTAotICAgICAgICAgICAgc2V0dGVyIHJhaXNlcyAoRE9NRXhjZXB0
aW9uKTsKLSAgICAgICAgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBET01TdHJpbmcgaW5uZXJUZXh0
Ci0gICAgICAgICAgICBzZXR0ZXIgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgICAgICBhdHRy
aWJ1dGUgW0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBvdXRlckhUTUwKLSAgICAgICAgICAgIHNldHRl
ciByYWlzZXMgKERPTUV4Y2VwdGlvbik7Ci0gICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10g
RE9NU3RyaW5nIG91dGVyVGV4dAotICAgICAgICAgICAgc2V0dGVyIHJhaXNlcyAoRE9NRXhjZXB0
aW9uKTsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBpbm5lckhUTUwKKyAg
ICAgICAgICAgICAgICAgICAgIHNldHRlciByYWlzZXMgKERPTUV4Y2VwdGlvbik7CisgICAgICAg
ICAgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgaW5uZXJUZXh0CisgICAgICAgICAgICAgICAg
ICAgICBzZXR0ZXIgcmFpc2VzIChET01FeGNlcHRpb24pOworICAgICAgICAgICAgICAgICBhdHRy
aWJ1dGUgRE9NU3RyaW5nIG91dGVySFRNTAorICAgICAgICAgICAgICAgICAgICAgc2V0dGVyIHJh
aXNlcyAoRE9NRXhjZXB0aW9uKTsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmlu
ZyBvdXRlclRleHQKKyAgICAgICAgICAgICAgICAgICAgIHNldHRlciByYWlzZXMgKERPTUV4Y2Vw
dGlvbik7CiAKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBIVE1MQ29s
bGVjdGlvbiBjaGlsZHJlbjsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIEhUTUxDb2xsZWN0
aW9uIGNoaWxkcmVuOwogCi0gICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5n
IGNvbnRlbnRFZGl0YWJsZTsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFeGNsdWRlPUpT
XSBib29sZWFuIGlzQ29udGVudEVkaXRhYmxlOwotCi0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0
ZSBbRXhjbHVkZT1KU10gRE9NU3RyaW5nIHRpdGxlRGlzcGxheVN0cmluZzsKKyAgICAgICAgICAg
ICAgICAgYXR0cmlidXRlIERPTVN0cmluZyBjb250ZW50RWRpdGFibGU7CisgICAgICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBib29sZWFuIGlzQ29udGVudEVkaXRhYmxlOwogCisgICAgICAgIHJlYWRv
bmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgdGl0bGVEaXNwbGF5U3RyaW5nOworI2VuZGlmCiAgICAg
fTsKIAogfQpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxJbWFnZUVsZW1lbnQuaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvaHRtbC9IVE1MSW1hZ2VFbGVtZW50LmlkbAkocmV2aXNpb24gMTYyOTgp
CisrKyBXZWJDb3JlL2h0bWwvSFRNTEltYWdlRWxlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTIwLDI2ICsyMCwyOCBAQAogCiBtb2R1bGUgaHRtbCB7CiAgICAgaW50ZXJmYWNlIFtMZWdhY3lQ
YXJlbnQ9S0pTOjpKU0hUTUxFbGVtZW50XSBIVE1MSW1hZ2VFbGVtZW50IDogSFRNTEVsZW1lbnQg
ewotICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIG5hbWU7Ci0gICAgICAgIGF0dHJpYnV0ZSBE
T01TdHJpbmcgYWxpZ247Ci0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgYWx0OwotICAgICAg
ICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGJvcmRlcjsgICAgICAgIAotICAgICAgICBhdHRyaWJ1dGUg
bG9uZyBoZWlnaHQ7Ci0gICAgICAgIGF0dHJpYnV0ZSBsb25nIGhzcGFjZTsKLSAgICAgICAgYXR0
cmlidXRlIGJvb2xlYW4gaXNNYXA7Ci0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgbG9uZ0Rl
c2M7Ci0gICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgc3JjOwotICAgICAgICBhdHRyaWJ1dGUg
RE9NU3RyaW5nIHVzZU1hcDsKLSAgICAgICAgYXR0cmlidXRlIGxvbmcgdnNwYWNlOwotICAgICAg
ICBhdHRyaWJ1dGUgbG9uZyB3aWR0aDsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0
cmluZyBuYW1lOworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFsaWduOwor
ICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFsdDsKKyAgICAgICAgICAgICAg
ICAgYXR0cmlidXRlIERPTVN0cmluZyBib3JkZXI7ICAgICAgICAKKyAgICAgICAgICAgICAgICAg
YXR0cmlidXRlIGxvbmcgaGVpZ2h0OworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgbG9uZyBo
c3BhY2U7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBib29sZWFuIGlzTWFwOworICAgICAg
ICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxvbmdEZXNjOworICAgICAgICAgICAgICAg
ICBhdHRyaWJ1dGUgRE9NU3RyaW5nIHNyYzsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERP
TVN0cmluZyB1c2VNYXA7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBsb25nIHZzcGFjZTsK
KyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIGxvbmcgd2lkdGg7CiAgICAgICAgIAogICAgICAg
ICAvLyBFeHRlbnNpb25zCiAgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBib29sZWFuIGNvbXBs
ZXRlOwogICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyB4OwogICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgbG9uZyB5OwotICAgICAgICAKKworI2lmIGRlZmluZWQoT0JKQykKICAgICAg
ICAgLy8gT2JqZWN0aXZlLUMgZXh0ZW5zaW9uOgotICAgICAgICByZWFkb25seSBhdHRyaWJ1dGUg
W0V4Y2x1ZGU9SlNdIERPTVN0cmluZyBhbHREaXNwbGF5U3RyaW5nOwotICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgW0V4Y2x1ZGU9SlNdIFVSTCBhYnNvbHV0ZUltYWdlVVJMOworICAgICAgICBy
ZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGFsdERpc3BsYXlTdHJpbmc7CisgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBVUkwgYWJzb2x1dGVJbWFnZVVSTDsKKyNlbmRpZgogICAgIH07CiB9
CkluZGV4OiBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsCShyZXZpc2lvbiAxNjI5OCkKKysrIFdl
YkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbAkod29ya2luZyBjb3B5KQpAQCAtMjEsNDIg
KzIxLDQ2IEBACiBtb2R1bGUgaHRtbCB7CiAKICAgICBpbnRlcmZhY2UgW0xlZ2FjeVBhcmVudD1K
U0hUTUxJbnB1dEVsZW1lbnRCYXNlXSBIVE1MSW5wdXRFbGVtZW50IDogSFRNTEVsZW1lbnQgewot
ICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIERPTVN0cmluZyAgICAgICAgICAgIGRlZmF1bHRW
YWx1ZTsKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlICBib29sZWFuICAgICAgICAgICAgICBk
ZWZhdWx0Q2hlY2tlZDsKLSAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlICBIVE1MRm9ybUVsZW1l
bnQgICAgICBmb3JtOwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIERPTVN0cmluZyAgICAg
ICAgICAgIGFjY2VwdDsKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlICBET01TdHJpbmcgICAg
ICAgICAgICBhY2Nlc3NLZXk7Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgRE9NU3RyaW5n
ICAgICAgICAgICAgYWxpZ247Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgRE9NU3RyaW5n
ICAgICAgICAgICAgYWx0OwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIGJvb2xlYW4gICAg
ICAgICAgICAgIGNoZWNrZWQ7Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgYm9vbGVhbiAg
ICAgICAgICAgICAgZGlzYWJsZWQ7Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgbG9uZyAg
ICAgICAgICAgICAgICAgbWF4TGVuZ3RoOwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIERP
TVN0cmluZyAgICAgICAgICAgIG5hbWU7Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgYm9v
bGVhbiAgICAgICAgICAgICAgcmVhZE9ubHk7Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAg
dW5zaWduZWQgbG9uZyAgICAgICAgc2l6ZTsgLy8gQ2hhbmdlZCBzdHJpbmcgLT4gbG9uZyBhcyBw
YXJ0IG9mIERPTSBsZXZlbCAyCi0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSAgRE9NU3RyaW5n
ICAgICAgICAgICAgc3JjOwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIGxvbmcgICAgICAg
ICAgICAgICAgIHRhYkluZGV4OwotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIERPTVN0cmlu
ZyAgICAgICAgICAgIHR5cGU7IC8vIHJlYWRvbmx5IGRyb3BwZWQgYXMgcGFydCBvZiBET00gbGV2
ZWwgMgotICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgIERPTVN0cmluZyAgICAgICAgICAgIHVz
ZU1hcDsKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlICBET01TdHJpbmcgICAgICAgICAgICB2
YWx1ZTsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICBkZWZhdWx0
VmFsdWU7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBib29sZWFuICAgICAgICAgZGVmYXVs
dENoZWNrZWQ7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBIVE1MRm9ybUVsZW1lbnQgZm9y
bTsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICBhY2NlcHQ7Cisg
ICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBET01TdHJpbmcgICAgICAgYWNjZXNzS2V5OworICAg
ICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgIGFsaWduOworICAgICAgICAg
ICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgIGFsdDsKKyAgICAgICAgICAgICAgICAg
YXR0cmlidXRlIGJvb2xlYW4gICAgICAgICBjaGVja2VkOworICAgICAgICAgICAgICAgICBhdHRy
aWJ1dGUgYm9vbGVhbiAgICAgICAgIGRpc2FibGVkOworICAgICAgICAgICAgICAgICBhdHRyaWJ1
dGUgbG9uZyAgICAgICAgICAgIG1heExlbmd0aDsKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRl
IERPTVN0cmluZyAgICAgICBuYW1lOworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgYm9vbGVh
biAgICAgICAgIHJlYWRPbmx5OworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgdW5zaWduZWQg
bG9uZyAgIHNpemU7IC8vIENoYW5nZWQgc3RyaW5nIC0+IGxvbmcgYXMgcGFydCBvZiBET00gbGV2
ZWwgMgorICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgRE9NU3RyaW5nICAgICAgIHNyYzsKKyAg
ICAgICAgICAgICAgICAgYXR0cmlidXRlIGxvbmcgICAgICAgICAgICB0YWJJbmRleDsKKyAgICAg
ICAgICAgICAgICAgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICB0eXBlOyAvLyByZWFkb25seSBk
cm9wcGVkIGFzIHBhcnQgb2YgRE9NIGxldmVsIDIKKyAgICAgICAgICAgICAgICAgYXR0cmlidXRl
IERPTVN0cmluZyAgICAgICB1c2VNYXA7CisgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBET01T
dHJpbmcgICAgICAgdmFsdWU7CiAgICAgICAgIAotICAgICAgICB2b2lkICAgIGJsdXIoKTsKLSAg
ICAgICAgdm9pZCAgICBmb2N1cygpOwotICAgICAgICB2b2lkICAgIHNlbGVjdCgpOwotICAgICAg
ICB2b2lkICAgIGNsaWNrKCk7CisgICAgICAgIHZvaWQgICAgICAgICAgICAgICBibHVyKCk7Cisg
ICAgICAgIHZvaWQgICAgICAgICAgICAgICBmb2N1cygpOworICAgICAgICB2b2lkICAgICAgICAg
ICAgICAgc2VsZWN0KCk7CisgICAgICAgIHZvaWQgICAgICAgICAgICAgICBjbGljaygpOwogICAg
ICAgICAKICAgICAgICAgLy8gV2luSUUgZXh0ZW5zaW9uOgotICAgICAgICAgICAgICAgICBhdHRy
aWJ1dGUgYm9vbGVhbiBpbmRldGVybWluYXRlOworICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUg
Ym9vbGVhbiAgICAgICAgIGluZGV0ZXJtaW5hdGU7CiAgICAgICAgIAogICAgICAgICAvLyBXaW5J
RSAmIEZpcmVGb3ggZXh0ZW5zaW9uOgogICAgICAgICAKICAgICAgICAgLy8gSGFuZGxlZCBieSBK
U0hUTUxJbnB1dEVsZW1lbnRCYXNlIHRvIGFsbG93IGhpZGluZyBiYXNlZCBvbiBpbnB1dCB0eXBl
Ci0gICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10gbG9uZyBzZWxlY3Rpb25T
dGFydDsKLSAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtFeGNsdWRlPUpTXSBsb25nIHNlbGVj
dGlvbkVuZDsKLSAgICAgICAgW0V4Y2x1ZGU9SlNdIHZvaWQgc2V0U2VsZWN0aW9uUmFuZ2UoaW4g
bG9uZyBzdGFydCwgaW4gbG9uZyBlbmQpOworI2lmICFkZWZpbmVkKEpTKQorICAgICAgICAgICAg
ICAgICBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgIHNlbGVjdGlvblN0YXJ0OworICAgICAgICAg
ICAgICAgICBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgIHNlbGVjdGlvbkVuZDsKKyAgICAgICAg
dm9pZCAgICAgICAgICAgICAgIHNldFNlbGVjdGlvblJhbmdlKGluIGxvbmcgc3RhcnQsIGluIGxv
bmcgZW5kKTsKKyNlbmRpZgogCisjaWYgZGVmaW5lZChPQkpDKQogICAgICAgICAvLyBPYmplY3Rp
dmUtQyBleHRlbnNpb246Ci0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBbRXhjbHVkZT1KU10g
RE9NU3RyaW5nIGFsdERpc3BsYXlTdHJpbmc7CisgICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBE
T01TdHJpbmcgICAgICAgYWx0RGlzcGxheVN0cmluZzsKKyNlbmRpZgogICAgIH07CiAKIH0KSW5k
ZXg6IFdlYkNvcmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvaHRtbC9IVE1MTGlua0VsZW1lbnQuaWRsCShyZXZpc2lvbiAxNjI5OCkKKysrIFdlYkNvcmUv
aHRtbC9IVE1MTGlua0VsZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw4ICszNCwxMCBA
QCBtb2R1bGUgaHRtbCB7CiAgICAgICAgIC8vIERPTSBMZXZlbCAyIFN0eWxlCiAgICAgICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBTdHlsZVNoZWV0ICAgc2hlZXQ7CiAKKyNpZiBkZWZpbmVkKE9CSkMp
CiAgICAgICAgIC8vIE9iamVjdGl2ZS1DIGV4dGVuc2lvbjoKLSAgICAgICAgcmVhZG9ubHkgYXR0
cmlidXRlIFtFeGNsdWRlPUpTXSBVUkwgYWJzb2x1dGVMaW5rVVJMOworICAgICAgICByZWFkb25s
eSBhdHRyaWJ1dGUgVVJMIGFic29sdXRlTGlua1VSTDsKKyNlbmRpZgogICAgIH07CiAKIH0KSW5k
ZXg6IFdlYkNvcmUvaHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvaHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsCShyZXZpc2lvbiAxNjI5OCkK
KysrIFdlYkNvcmUvaHRtbC9IVE1MT3B0aW9uc0NvbGxlY3Rpb24uaWRsCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSw5ICsyOSwxMCBAQCBtb2R1bGUgaHRtbCB7CiAKICAgICAgICAgdm9pZCBhZGQoaW4g
SFRNTE9wdGlvbkVsZW1lbnQgb3B0aW9uLCBpbiBbT3B0aW9uYWxdIHVuc2lnbmVkIGxvbmcgaW5k
ZXgpCiAgICAgICAgICAgICAgcmFpc2VzIChET01FeGNlcHRpb24pOwotICAgICAgICAgICAgIAot
ICAgICAgICBbRXhjbHVkZT1KU10gTm9kZSBpdGVtKGluIHVuc2lnbmVkIGxvbmcgaW5kZXgpOwot
ICAgICAgICBbRXhjbHVkZT1KU10gTm9kZSBuYW1lZEl0ZW0oaW4gRE9NU3RyaW5nIG5hbWUpOwog
CisjaWYgIWRlZmluZWQoSlMpCisgICAgICAgIE5vZGUgaXRlbShpbiB1bnNpZ25lZCBsb25nIGlu
ZGV4KTsKKyAgICAgICAgTm9kZSBuYW1lZEl0ZW0oaW4gRE9NU3RyaW5nIG5hbWUpOworI2VuZGlm
CiAgICAgfTsKIH0K
</data>
<flag name="review"
          id="3390"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>