<?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>121322</bug_id>
          
          <creation_ts>2013-09-13 14:23:07 -0700</creation_ts>
          <short_desc>Use nullptr instead of 0 in calls to HashMap::add</short_desc>
          <delta_ts>2013-09-13 16:05:07 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>japhet</cc>
    
    <cc>kangil.han</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>929014</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-13 14:23:07 -0700</bug_when>
    <thetext>Use nullptr instead of 0 in calls to HashMap::add</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929016</commentid>
    <comment_count>1</comment_count>
      <attachid>211590</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-13 14:24:08 -0700</bug_when>
    <thetext>Created attachment 211590
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929017</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-09-13 14:27:02 -0700</bug_when>
    <thetext>Attachment 211590 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp&apos;, u&apos;Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/bridge/IdentifierRep.cpp&apos;, u&apos;Source/WebCore/css/CSSFontFaceSource.cpp&apos;, u&apos;Source/WebCore/css/CSSFontSelector.cpp&apos;, u&apos;Source/WebCore/css/CSSSegmentedFontFace.cpp&apos;, u&apos;Source/WebCore/css/CSSValuePool.cpp&apos;, u&apos;Source/WebCore/dom/ChildListMutationScope.cpp&apos;, u&apos;Source/WebCore/dom/Document.cpp&apos;, u&apos;Source/WebCore/dom/NodeRareData.h&apos;, u&apos;Source/WebCore/loader/appcache/ApplicationCacheStorage.cpp&apos;, u&apos;Source/WebCore/page/PageGroup.cpp&apos;, u&apos;Source/WebCore/page/animation/AnimationController.cpp&apos;, u&apos;Source/WebCore/platform/mac/ScrollbarThemeMac.mm&apos;, u&apos;Source/WebCore/storage/StorageNamespaceImpl.cpp&apos;, u&apos;Source/WebKit/mac/ChangeLog&apos;, u&apos;Source/WebKit/mac/Plugins/Hosted/NetscapePluginHostManager.mm&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit2/Platform/CoreIPC/Connection.cpp&apos;, u&apos;Source/WebKit2/UIProcess/Storage/StorageManager.cpp&apos;, u&apos;Source/WebKit2/UIProcess/WebProcessProxy.cpp&apos;, u&apos;Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp&apos;, u&apos;Source/WebKit2/WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp&apos;, u&apos;Source/WebKit2/WebProcess/Storage/StorageNamespaceImpl.cpp&apos;, u&apos;Source/WebKit2/WebProcess/WebProcess.cpp&apos;, u&apos;Tools/ChangeLog&apos;, u&apos;Tools/DumpRenderTree/mac/TestRunnerMac.mm&apos;, u&apos;Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp&apos;]&quot; exit_code: 1
Source/WebKit2/UIProcess/Storage/StorageManager.cpp:445:  Missing spaces around &gt;&gt;  [whitespace/operators] [3]
Source/WebKit2/UIProcess/Storage/StorageManager.cpp:478:  Missing spaces around &gt;&gt;  [whitespace/operators] [3]
Source/WebKit2/UIProcess/Storage/StorageManager.cpp:619:  Missing spaces around &gt;&gt;  [whitespace/operators] [3]
Source/WebKit2/WebProcess/WebProcess.cpp:577:  Missing spaces around &gt;&gt;  [whitespace/operators] [3]
Source/WebKit2/WebProcess/WebProcess.cpp:729:  Missing spaces around &gt;&gt;  [whitespace/operators] [3]
Total errors found: 5 in 30 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>929045</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2013-09-13 16:05:07 -0700</bug_when>
    <thetext>Committed r155729: &lt;http://trac.webkit.org/changeset/155729&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>211590</attachid>
            <date>2013-09-13 14:24:08 -0700</date>
            <delta_ts>2013-09-13 14:24:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-121322-20130913142407.patch</filename>
            <type>text/plain</type>
            <size>30179</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU1NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
MTA1YmJmNDFkYmE4NTEwMGUyMmQwMTQ2NjU5Yzk2MzRjMzg2MDQzLi5kOWI5ZjA2OTM1MzY4Yzkz
MWIyZTFlNjRmMzI5ZjFjYTAyYWYzMzUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNiBAQAorMjAxMy0wOS0xMyAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCisgICAgICAgIFVzZSBudWxscHRyIGluc3RlYWQgb2YgMCBpbiBjYWxscyB0byBIYXNo
TWFwOjphZGQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEyMTMyMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcDoKKyAgICAgICAgKEpTQzo6Qnl0
ZWNvZGVHZW5lcmF0b3I6OmVtaXRMb2FkKToKKyAgICAgICAgKEpTQzo6Qnl0ZWNvZGVHZW5lcmF0
b3I6OmFkZFN0cmluZ0NvbnN0YW50KToKKyAgICAgICAgKiBkZmcvREZHQnl0ZUNvZGVQYXJzZXIu
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OkJ5dGVDb2RlUGFyc2VyOjpjZWxsQ29uc3RhbnQpOgor
CiAyMDEzLTA5LTEyICBNaWNoYWVsIFNhYm9mZiAgPG1zYWJvZmZAYXBwbGUuY29tPgogCiAgICAg
ICAgIGZvdXJ0aFRpZXI6IENoYW5nZSBKU1N0YWNrIHRvIGdyb3cgZnJvbSBoaWdoIHRvIGxvdyBh
ZGRyZXNzZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBjNGMzZjhhMmJiMmNhOGM0NGYxZWRmYmQ3ZTU5MjhlZDkx
MDAzYWJhLi5hYmY0Yjc2MjdmZjJiZmZmZmI0Y2UzOGY5OTYwZWQwYjM0ODQ1YjliIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsNDAgQEAKKzIwMTMtMDktMTMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVy
c2NhQGFwcGxlLmNvbT4KKworICAgICAgICBVc2UgbnVsbHB0ciBpbnN0ZWFkIG9mIDAgaW4gY2Fs
bHMgdG8gSGFzaE1hcDo6YWRkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xMjEzMjIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGJyaWRnZS9JZGVudGlmaWVyUmVwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OklkZW50aWZpZXJSZXA6OmdldCk6CisgICAgICAgICogY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ZvbnRGYWNlU291cmNlOjpnZXRGb250RGF0YSk6Cisg
ICAgICAgICogY3NzL0NTU0ZvbnRTZWxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NG
b250U2VsZWN0b3I6OmdldEZvbnRGYWNlKToKKyAgICAgICAgKiBjc3MvQ1NTU2VnbWVudGVkRm9u
dEZhY2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU2VnbWVudGVkRm9udEZhY2U6OmdldEZv
bnREYXRhKToKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWVQb29sLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlUG9vbDo6Y3JlYXRlRm9udEZhbWlseVZhbHVlKToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlUG9vbDo6Y3JlYXRlRm9udEZhY2VWYWx1ZSk6CisgICAgICAgICogZG9tL0No
aWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2hpbGRMaXN0TXV0
YXRpb25BY2N1bXVsYXRvcjo6Z2V0T3JDcmVhdGUpOgorICAgICAgICAqIGRvbS9Eb2N1bWVudC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6Z2V0Q1NTQ2FudmFzRWxlbWVudCk6Cisg
ICAgICAgICogZG9tL05vZGVSYXJlRGF0YS5oOgorICAgICAgICAoV2ViQ29yZTo6Tm9kZUxpc3Rz
Tm9kZURhdGE6OmFkZENhY2hlV2l0aEF0b21pY05hbWUpOgorICAgICAgICAoV2ViQ29yZTo6Tm9k
ZUxpc3RzTm9kZURhdGE6OmFkZENhY2hlV2l0aE5hbWUpOgorICAgICAgICAoV2ViQ29yZTo6Tm9k
ZUxpc3RzTm9kZURhdGE6OmFkZENhY2hlV2l0aFF1YWxpZmllZE5hbWUpOgorICAgICAgICAqIGxv
YWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpBcHBsaWNhdGlvbkNhY2hlU3RvcmFnZTo6ZmluZE9yQ3JlYXRlQ2FjaGVHcm91cCk6Cisg
ICAgICAgICogcGFnZS9QYWdlR3JvdXAuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZUdyb3Vw
OjpwYWdlR3JvdXApOgorICAgICAgICAqIHBhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRyb2xs
ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QW5pbWF0aW9uQ29udHJvbGxlclByaXZhdGU6OmVu
c3VyZUNvbXBvc2l0ZUFuaW1hdGlvbik6CisgICAgICAgICogcGxhdGZvcm0vbWFjL1Njcm9sbGJh
clRoZW1lTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6U2Nyb2xsYmFyVGhlbWVNYWM6OnJlZ2lz
dGVyU2Nyb2xsYmFyKToKKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OlN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpsb2NhbFN0b3JhZ2VO
YW1lc3BhY2UpOgorCiAyMDEzLTA5LTEzICBBcnZpZCBOaWxzc29uICA8YW5pbHNzb25AcmltLmNv
bT4KIAogICAgICAgICBbQmxhY2tCZXJyeV0gU2Nyb2xsaW5nIGFuZCB6b29taW5nIGlzIHNsb3cg
d2hlbiBGbGFzaCBwbHVnaW4gdmlzaWJsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMv
Q2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGI4NWQ2NmYwN2Mx
NmNiNjIyM2QzOGRkNWE2ZjkwM2NkMWFkNWU5NmEuLjAxYTY0ZjkzMWMyMTNiZjNmY2IzMjliYTc5
ZWE4ZWE0YzUxYTMwNjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAxMy0w
OS0xMyAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIFVz
ZSBudWxscHRyIGluc3RlYWQgb2YgMCBpbiBjYWxscyB0byBIYXNoTWFwOjphZGQKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyMTMyMgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogUGx1Z2lucy9Ib3N0ZWQv
TmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdlci5tbToKKyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQ
bHVnaW5Ib3N0TWFuYWdlcjo6aG9zdEZvclBsdWdpbik6CisKIDIwMTMtMDktMTMgIFRpbSBIb3J0
b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjE1
NTYxNSk6IExvdHMgb2YgcmVmdGVzdHMgZmFpbCB3aXRoIHNpbmdsZSBsaW5lIG9yIHNpbmdsZSBw
aXhlbCBkaWZmZXJlbmNlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IDVlNjc1M2FjYjkyMTJmZDNlZTVhNWJkYTRh
MGViZTdhZGFkMDM1MDYuLjY3N2ViZTBlMTVkZWI2NDkyNjdiOGE5ZTg0YTNiYmM4Y2NhNzNjOTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxMy0wOS0xMyAgQW5kZXJzIENhcmxzc29u
ICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIFVzZSBudWxscHRyIGluc3RlYWQgb2Yg
MCBpbiBjYWxscyB0byBIYXNoTWFwOjphZGQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTEyMTMyMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogUGxhdGZvcm0vQ29yZUlQQy9Db25uZWN0aW9uLmNwcDoKKyAg
ICAgICAgKENvcmVJUEM6OkNvbm5lY3Rpb246OlN5bmNNZXNzYWdlU3RhdGU6OmdldE9yQ3JlYXRl
KToKKyAgICAgICAgKiBVSVByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlTWFuYWdlci5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OlN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGVMb2NhbFN0b3JhZ2VNYXApOgorICAg
ICAgICAoV2ViS2l0OjpTdG9yYWdlTWFuYWdlcjo6Y3JlYXRlU2Vzc2lvblN0b3JhZ2VNYXApOgor
ICAgICAgICAoV2ViS2l0OjpTdG9yYWdlTWFuYWdlcjo6Z2V0T3JDcmVhdGVMb2NhbFN0b3JhZ2VO
YW1lc3BhY2UpOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmFkZEJhY2tGb3J3YXJkSXRlbSk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRCdW5kbGVOb2RlSGFu
ZGxlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6SW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlOjpnZXRP
ckNyZWF0ZSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0
ZWRCdW5kbGVSYW5nZUhhbmRsZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OkluamVjdGVkQnVuZGxl
UmFuZ2VIYW5kbGU6OmdldE9yQ3JlYXRlKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1N0b3JhZ2Uv
U3RvcmFnZU5hbWVzcGFjZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpTdG9yYWdlTmFtZXNw
YWNlSW1wbDo6Y3JlYXRlTG9jYWxTdG9yYWdlTmFtZXNwYWNlKToKKyAgICAgICAgKiBXZWJQcm9j
ZXNzL1dlYlByb2Nlc3MuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjpjcmVhdGVX
ZWJQYWdlKToKKyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzczo6d2ViUGFnZUdyb3VwKToKKwog
MjAxMy0wOS0xMyAgQWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQGRpZ2lhLmNv
bT4KIAogICAgICAgICBGaXggYnVpbGQgd2l0aCBuYW1lc3BhY2VkIFF0LgpkaWZmIC0tZ2l0IGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb21waWxlci9CeXRlY29kZUdlbmVyYXRvci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNw
cAppbmRleCAxNzk1MDAwMGEzZTVjNWE5N2RmYzM0ODVkZmMxNWNjNTM0ZDE2ODE1Li4yNThhYjlj
NDAyZGY0ODFkMTUwMDc4M2E2ZWE4YzY0MmVlMDYxMTg5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcAorKysgYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvbXBpbGVyL0J5dGVjb2RlR2VuZXJhdG9yLmNwcApAQCAt
MTA5Niw3ICsxMDk2LDcgQEAgUmVnaXN0ZXJJRCogQnl0ZWNvZGVHZW5lcmF0b3I6OmVtaXRMb2Fk
KFJlZ2lzdGVySUQqIGRzdCwgZG91YmxlIG51bWJlcikKIAogUmVnaXN0ZXJJRCogQnl0ZWNvZGVH
ZW5lcmF0b3I6OmVtaXRMb2FkKFJlZ2lzdGVySUQqIGRzdCwgY29uc3QgSWRlbnRpZmllciYgaWRl
bnRpZmllcikKIHsKLSAgICBKU1N0cmluZyomIHN0cmluZ0luTWFwID0gbV9zdHJpbmdNYXAuYWRk
KGlkZW50aWZpZXIuaW1wbCgpLCAwKS5pdGVyYXRvci0+dmFsdWU7CisgICAgSlNTdHJpbmcqJiBz
dHJpbmdJbk1hcCA9IG1fc3RyaW5nTWFwLmFkZChpZGVudGlmaWVyLmltcGwoKSwgbnVsbHB0ciku
aXRlcmF0b3ItPnZhbHVlOwogICAgIGlmICghc3RyaW5nSW5NYXApCiAgICAgICAgIHN0cmluZ0lu
TWFwID0ganNPd25lZFN0cmluZyh2bSgpLCBpZGVudGlmaWVyLnN0cmluZygpKTsKICAgICByZXR1
cm4gZW1pdExvYWQoZHN0LCBKU1ZhbHVlKHN0cmluZ0luTWFwKSk7CkBAIC0xNDM2LDcgKzE0MzYs
NyBAQCB1bnNpZ25lZCBCeXRlY29kZUdlbmVyYXRvcjo6YWRkQ29uc3RhbnRCdWZmZXIodW5zaWdu
ZWQgbGVuZ3RoKQogCiBKU1N0cmluZyogQnl0ZWNvZGVHZW5lcmF0b3I6OmFkZFN0cmluZ0NvbnN0
YW50KGNvbnN0IElkZW50aWZpZXImIGlkZW50aWZpZXIpCiB7Ci0gICAgSlNTdHJpbmcqJiBzdHJp
bmdJbk1hcCA9IG1fc3RyaW5nTWFwLmFkZChpZGVudGlmaWVyLmltcGwoKSwgMCkuaXRlcmF0b3It
PnZhbHVlOworICAgIEpTU3RyaW5nKiYgc3RyaW5nSW5NYXAgPSBtX3N0cmluZ01hcC5hZGQoaWRl
bnRpZmllci5pbXBsKCksIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKICAgICBpZiAoIXN0cmlu
Z0luTWFwKSB7CiAgICAgICAgIHN0cmluZ0luTWFwID0ganNTdHJpbmcodm0oKSwgaWRlbnRpZmll
ci5zdHJpbmcoKSk7CiAgICAgICAgIGFkZENvbnN0YW50VmFsdWUoc3RyaW5nSW5NYXApOwpkaWZm
IC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdCeXRlQ29kZVBhcnNlci5jcHAg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAppbmRleCBk
MzNlNjc4ZTI5OTIwZjI0NDNiNjU1MjQ5ZDg4NGQ3Zjg1NWViMDc4Li41MTFkNDY5YTM5YzYwMDY5
ZjU4MGFlNjBjMDJiNzg3NDY5NDFmNWFiIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR0J5dGVDb2RlUGFyc2VyLmNwcApAQCAtNjc5LDcgKzY3OSw3IEBAIHByaXZhdGU6CiAg
ICAgCiAgICAgTm9kZSogY2VsbENvbnN0YW50KEpTQ2VsbCogY2VsbCkKICAgICB7Ci0gICAgICAg
IEhhc2hNYXA8SlNDZWxsKiwgTm9kZSo+OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jZWxsQ29uc3Rh
bnROb2Rlcy5hZGQoY2VsbCwgMCk7CisgICAgICAgIEhhc2hNYXA8SlNDZWxsKiwgTm9kZSo+OjpB
ZGRSZXN1bHQgcmVzdWx0ID0gbV9jZWxsQ29uc3RhbnROb2Rlcy5hZGQoY2VsbCwgbnVsbHB0cik7
CiAgICAgICAgIGlmIChyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgIHJlc3VsdC5pdGVy
YXRvci0+dmFsdWUgPSBhZGRUb0dyYXBoKFdlYWtKU0NvbnN0YW50LCBPcEluZm8oY2VsbCkpOwog
ICAgICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9JZGVudGlmaWVyUmVw
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9JZGVudGlmaWVyUmVwLmNwcAppbmRleCA1OWFm
NTQ5ZmI5ZGQzNDQwZDJiZDg3NjZkN2MzMGE3NzRkMjhiZjg0Li5lYjhhZmM2NzNkMGRjMjMzNmE1
N2RiZTA2MzU2OWQzM2QxNTI0MmRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2Uv
SWRlbnRpZmllclJlcC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL0lkZW50aWZpZXJS
ZXAuY3BwCkBAIC02Niw3ICs2Niw3IEBAIElkZW50aWZpZXJSZXAqIElkZW50aWZpZXJSZXA6Omdl
dChpbnQgaW50SUQpCiAgICAgICAgIHJldHVybiBpZGVudGlmaWVyOwogICAgIH0KICAgICAKLSAg
ICBJbnRJZGVudGlmaWVyTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gaW50SWRlbnRpZmllck1hcCgp
LmFkZChpbnRJRCwgMCk7CisgICAgSW50SWRlbnRpZmllck1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9
IGludElkZW50aWZpZXJNYXAoKS5hZGQoaW50SUQsIG51bGxwdHIpOwogICAgIGlmIChyZXN1bHQu
aXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQoIXJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwog
ICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gbmV3IElkZW50aWZpZXJSZXAoaW50SUQp
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRGYWNlU291cmNlLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250RmFjZVNvdXJjZS5jcHAKaW5kZXggMGQ4MmE1NWNj
MWQ4YWYxOGFmMWIyNDIwNzdkMDY1ZTUxZTRlODkwYS4uNjhkZThmNjkzNzZjZTg3NGE0NjBjYTA0
MDgwNzk5NzI1MDI5ODE4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU0ZvbnRG
YWNlU291cmNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udEZhY2VTb3VyY2Uu
Y3BwCkBAIC0xMTUsNyArMTE1LDcgQEAgUGFzc1JlZlB0cjxTaW1wbGVGb250RGF0YT4gQ1NTRm9u
dEZhY2VTb3VyY2U6OmdldEZvbnREYXRhKGNvbnN0IEZvbnREZXNjcmlwdGlvbiYKICAgICB1bnNp
Z25lZCBoYXNoS2V5ID0gKGZvbnREZXNjcmlwdGlvbi5jb21wdXRlZFBpeGVsU2l6ZSgpICsgMSkg
PDwgNSB8IGZvbnREZXNjcmlwdGlvbi53aWR0aFZhcmlhbnQoKSA8PCAzCiAgICAgICAgICAgICAg
ICAgICAgICAgIHwgKGZvbnREZXNjcmlwdGlvbi5vcmllbnRhdGlvbigpID09IFZlcnRpY2FsID8g
NCA6IDApIHwgKHN5bnRoZXRpY0JvbGQgPyAyIDogMCkgfCAoc3ludGhldGljSXRhbGljID8gMSA6
IDApOwogCi0gICAgUmVmUHRyPFNpbXBsZUZvbnREYXRhPiYgZm9udERhdGEgPSBtX2ZvbnREYXRh
VGFibGUuYWRkKGhhc2hLZXksIDApLml0ZXJhdG9yLT52YWx1ZTsKKyAgICBSZWZQdHI8U2ltcGxl
Rm9udERhdGE+JiBmb250RGF0YSA9IG1fZm9udERhdGFUYWJsZS5hZGQoaGFzaEtleSwgbnVsbHB0
cikuaXRlcmF0b3ItPnZhbHVlOwogICAgIGlmIChmb250RGF0YSkKICAgICAgICAgcmV0dXJuIGZv
bnREYXRhOyAvLyBObyByZWxlYXNlLCBiZWNhdXNlIGZvbnREYXRhIGlzIGEgcmVmZXJlbmNlIHRv
IGEgUmVmUHRyIHRoYXQgaXMgaGVsZCBpbiB0aGUgbV9mb250RGF0YVRhYmxlLgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTRm9udFNlbGVjdG9yLmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2Nzcy9DU1NGb250U2VsZWN0b3IuY3BwCmluZGV4IDk2ZGI4MjVmZGFhNDU4YjRmNDg1OWEx
MThmYjgzMTQ1MzI0MTFjZTQuLmYyMzFhZDg2MjZhMWYyMTExYWE2NWU1ZTkyYjMzOTliOGRjNmQ5
YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250U2VsZWN0b3IuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NGb250U2VsZWN0b3IuY3BwCkBAIC01MTUsNyArNTE1
LDcgQEAgQ1NTU2VnbWVudGVkRm9udEZhY2UqIENTU0ZvbnRTZWxlY3Rvcjo6Z2V0Rm9udEZhY2Uo
Y29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGUKIAogICAgIEZvbnRUcmFpdHNNYXNrIHRyYWl0
c01hc2sgPSBmb250RGVzY3JpcHRpb24udHJhaXRzTWFzaygpOwogCi0gICAgUmVmUHRyPENTU1Nl
Z21lbnRlZEZvbnRGYWNlPiYgZmFjZSA9IHNlZ21lbnRlZEZvbnRGYWNlQ2FjaGUtPmFkZCh0cmFp
dHNNYXNrLCAwKS5pdGVyYXRvci0+dmFsdWU7CisgICAgUmVmUHRyPENTU1NlZ21lbnRlZEZvbnRG
YWNlPiYgZmFjZSA9IHNlZ21lbnRlZEZvbnRGYWNlQ2FjaGUtPmFkZCh0cmFpdHNNYXNrLCBudWxs
cHRyKS5pdGVyYXRvci0+dmFsdWU7CiAgICAgaWYgKCFmYWNlKSB7CiAgICAgICAgIGZhY2UgPSBD
U1NTZWdtZW50ZWRGb250RmFjZTo6Y3JlYXRlKHRoaXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1NlZ21lbnRlZEZvbnRGYWNlLmNwcAppbmRleCA5ZGI3ZDU1OTBlNTQ3Y2UxZjdkNTZhZDI5
MzI1ZjIwMmUyMDgwYTU5Li5mODQ4MmYwYmM3MWUxOWJmMmJjYTAwYzUwOGM4NWJkNGRhMzQ2ZmM1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU2VnbWVudGVkRm9udEZhY2UuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTZWdtZW50ZWRGb250RmFjZS5jcHAKQEAgLTEy
NCw3ICsxMjQsNyBAQCBQYXNzUmVmUHRyPEZvbnREYXRhPiBDU1NTZWdtZW50ZWRGb250RmFjZTo6
Z2V0Rm9udERhdGEoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmbwogICAgICAgICB8IGZvbnREZXNj
cmlwdGlvbi53aWR0aFZhcmlhbnQoKSA8PCBGb250VHJhaXRzTWFza1dpZHRoCiAgICAgICAgIHwg
ZGVzaXJlZFRyYWl0c01hc2s7CiAKLSAgICBSZWZQdHI8U2VnbWVudGVkRm9udERhdGE+JiBmb250
RGF0YSA9IG1fZm9udERhdGFUYWJsZS5hZGQoaGFzaEtleSwgMCkuaXRlcmF0b3ItPnZhbHVlOwor
ICAgIFJlZlB0cjxTZWdtZW50ZWRGb250RGF0YT4mIGZvbnREYXRhID0gbV9mb250RGF0YVRhYmxl
LmFkZChoYXNoS2V5LCBudWxscHRyKS5pdGVyYXRvci0+dmFsdWU7CiAgICAgaWYgKGZvbnREYXRh
ICYmIGZvbnREYXRhLT5udW1SYW5nZXMoKSkKICAgICAgICAgcmV0dXJuIGZvbnREYXRhOyAvLyBO
byByZWxlYXNlLCB3ZSBoYXZlIGEgcmVmZXJlbmNlIHRvIGFuIG9iamVjdCBpbiB0aGUgY2FjaGUg
d2hpY2ggc2hvdWxkIHJldGFpbiB0aGUgcmVmIGNvdW50IGl0IGhhcy4KIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlUG9vbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTVmFsdWVQb29sLmNwcAppbmRleCA4NTU2ODI2OTNmOGJmNzljNmY2Yzk1NWJhN2M3MzliMWU0
NGY4MzliLi43ZGZmODk4MDc2MTgzMzJkMzAwOGU1NDQ1YjVkNWU5ODdhYWQ3OTdlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVmFsdWVQb29sLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWVQb29sLmNwcApAQCAtMTE5LDcgKzExOSw3IEBAIFBhc3NSZWZQdHI8
Q1NTUHJpbWl0aXZlVmFsdWU+IENTU1ZhbHVlUG9vbDo6Y3JlYXRlVmFsdWUoZG91YmxlIHZhbHVl
LCBDU1NQcmltaXRpCiAKIFBhc3NSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+IENTU1ZhbHVlUG9v
bDo6Y3JlYXRlRm9udEZhbWlseVZhbHVlKGNvbnN0IFN0cmluZyYgZmFtaWx5TmFtZSkKIHsKLSAg
ICBSZWZQdHI8Q1NTUHJpbWl0aXZlVmFsdWU+JiB2YWx1ZSA9IG1fZm9udEZhbWlseVZhbHVlQ2Fj
aGUuYWRkKGZhbWlseU5hbWUsIDApLml0ZXJhdG9yLT52YWx1ZTsKKyAgICBSZWZQdHI8Q1NTUHJp
bWl0aXZlVmFsdWU+JiB2YWx1ZSA9IG1fZm9udEZhbWlseVZhbHVlQ2FjaGUuYWRkKGZhbWlseU5h
bWUsIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKICAgICBpZiAoIXZhbHVlKQogICAgICAgICB2
YWx1ZSA9IENTU1ByaW1pdGl2ZVZhbHVlOjpjcmVhdGUoZmFtaWx5TmFtZSwgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19TVFJJTkcpOwogICAgIHJldHVybiB2YWx1ZTsKQEAgLTEzMiw3ICsxMzIsNyBA
QCBQYXNzUmVmUHRyPENTU1ZhbHVlTGlzdD4gQ1NTVmFsdWVQb29sOjpjcmVhdGVGb250RmFjZVZh
bHVlKGNvbnN0IEF0b21pY1N0cmluZyYgcwogICAgIGlmIChtX2ZvbnRGYWNlVmFsdWVDYWNoZS5z
aXplKCkgPiBtYXhpbXVtRm9udEZhY2VDYWNoZVNpemUpCiAgICAgICAgIG1fZm9udEZhY2VWYWx1
ZUNhY2hlLmNsZWFyKCk7CiAKLSAgICBSZWZQdHI8Q1NTVmFsdWVMaXN0PiYgdmFsdWUgPSBtX2Zv
bnRGYWNlVmFsdWVDYWNoZS5hZGQoc3RyaW5nLCAwKS5pdGVyYXRvci0+dmFsdWU7CisgICAgUmVm
UHRyPENTU1ZhbHVlTGlzdD4mIHZhbHVlID0gbV9mb250RmFjZVZhbHVlQ2FjaGUuYWRkKHN0cmlu
ZywgbnVsbHB0cikuaXRlcmF0b3ItPnZhbHVlOwogICAgIGlmICghdmFsdWUpCiAgICAgICAgIHZh
bHVlID0gQ1NTUGFyc2VyOjpwYXJzZUZvbnRGYWNlVmFsdWUoc3RyaW5nKTsKICAgICByZXR1cm4g
dmFsdWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRpb25T
Y29wZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vQ2hpbGRMaXN0TXV0YXRpb25TY29wZS5jcHAK
aW5kZXggMTFiNjgxNDU3ZTYyMzA5ZDU0NjkzNmQ2NDQ2NDAyZDM3NzJhZjhlYy4uMzkxNDgzZWZj
ODQ5YTJmOTIzYTRlODA2YzdkZTY1N2EyMTU4NzQ3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0NoaWxkTGlzdE11dGF0aW9uU2NvcGUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Rv
bS9DaGlsZExpc3RNdXRhdGlvblNjb3BlLmNwcApAQCAtNjcsNyArNjcsNyBAQCBDaGlsZExpc3RN
dXRhdGlvbkFjY3VtdWxhdG9yOjp+Q2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvcigpCiAKIFBh
c3NSZWZQdHI8Q2hpbGRMaXN0TXV0YXRpb25BY2N1bXVsYXRvcj4gQ2hpbGRMaXN0TXV0YXRpb25B
Y2N1bXVsYXRvcjo6Z2V0T3JDcmVhdGUoTm9kZSogdGFyZ2V0KQogewotICAgIEFjY3VtdWxhdG9y
TWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gYWNjdW11bGF0b3JNYXAoKS5hZGQodGFyZ2V0LCAwKTsK
KyAgICBBY2N1bXVsYXRvck1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IGFjY3VtdWxhdG9yTWFwKCku
YWRkKHRhcmdldCwgbnVsbHB0cik7CiAgICAgUmVmUHRyPENoaWxkTGlzdE11dGF0aW9uQWNjdW11
bGF0b3I+IGFjY3VtdWxhdG9yOwogICAgIGlmICghcmVzdWx0LmlzTmV3RW50cnkpCiAgICAgICAg
IGFjY3VtdWxhdG9yID0gcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQu
Y3BwCmluZGV4IDVlM2FjMjBiYTU3ZGU0NDIzM2VmNGNmZGI1ZDVjYWIzZTQ2YmYxMjguLmU0YTk4
MDE3MDNkNTk4MzE1NmQ4MzhhOTJjMDM0NzRlNmY2OWVkY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmNwcApAQCAtNDczMiw3ICs0NzMyLDcgQEAgQ2FudmFzUmVuZGVyaW5nQ29udGV4dCogRG9jdW1l
bnQ6OmdldENTU0NhbnZhc0NvbnRleHQoY29uc3QgU3RyaW5nJiB0eXBlLCBjb25zdAogCiBIVE1M
Q2FudmFzRWxlbWVudCogRG9jdW1lbnQ6OmdldENTU0NhbnZhc0VsZW1lbnQoY29uc3QgU3RyaW5n
JiBuYW1lKQogewotICAgIFJlZlB0cjxIVE1MQ2FudmFzRWxlbWVudD4mIGVsZW1lbnQgPSBtX2Nz
c0NhbnZhc0VsZW1lbnRzLmFkZChuYW1lLCAwKS5pdGVyYXRvci0+dmFsdWU7CisgICAgUmVmUHRy
PEhUTUxDYW52YXNFbGVtZW50PiYgZWxlbWVudCA9IG1fY3NzQ2FudmFzRWxlbWVudHMuYWRkKG5h
bWUsIG51bGxwdHIpLml0ZXJhdG9yLT52YWx1ZTsKICAgICBpZiAoIWVsZW1lbnQpCiAgICAgICAg
IGVsZW1lbnQgPSBIVE1MQ2FudmFzRWxlbWVudDo6Y3JlYXRlKHRoaXMpOwogICAgIHJldHVybiBl
bGVtZW50LmdldCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL05vZGVSYXJlRGF0
YS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL05vZGVSYXJlRGF0YS5oCmluZGV4IDE1ZGJlNmU1NjEw
MTQ3ZTliZDk0ODkzOGEwMDUxNTIzNWQyZDEzMTkuLmI3ZTUxYzcxZTY2NGRhZjg1MDgxYTM1ZTlk
ODRiZTA2YTYyMzA1N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Ob2RlUmFyZURh
dGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vTm9kZVJhcmVEYXRhLmgKQEAgLTg5LDcgKzg5
LDcgQEAgcHVibGljOgogICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQ+CiAgICAgUGFzc1JlZlB0cjxU
PiBhZGRDYWNoZVdpdGhBdG9taWNOYW1lKE5vZGUqIG5vZGUsIENvbGxlY3Rpb25UeXBlIGNvbGxl
Y3Rpb25UeXBlLCBjb25zdCBBdG9taWNTdHJpbmcmIG5hbWUpCiAgICAgewotICAgICAgICBOb2Rl
TGlzdEF0b21pY05hbWVDYWNoZU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fYXRvbWljTmFtZUNh
Y2hlcy5hZGQobmFtZWROb2RlTGlzdEtleShjb2xsZWN0aW9uVHlwZSwgbmFtZSksIDApOworICAg
ICAgICBOb2RlTGlzdEF0b21pY05hbWVDYWNoZU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fYXRv
bWljTmFtZUNhY2hlcy5hZGQobmFtZWROb2RlTGlzdEtleShjb2xsZWN0aW9uVHlwZSwgbmFtZSks
IG51bGxwdHIpOwogICAgICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICAgICAg
cmV0dXJuIHN0YXRpY19jYXN0PFQqPihyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsKIApAQCAtMTAy
LDcgKzEwMiw3IEBAIHB1YmxpYzoKICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogICAgIFBhc3NS
ZWZQdHI8VD4gYWRkQ2FjaGVXaXRoQXRvbWljTmFtZShOb2RlKiBub2RlLCBDb2xsZWN0aW9uVHlw
ZSBjb2xsZWN0aW9uVHlwZSkKICAgICB7Ci0gICAgICAgIE5vZGVMaXN0QXRvbWljTmFtZUNhY2hl
TWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9hdG9taWNOYW1lQ2FjaGVzLmFkZChuYW1lZE5vZGVM
aXN0S2V5KGNvbGxlY3Rpb25UeXBlLCBzdGFyQXRvbSksIDApOworICAgICAgICBOb2RlTGlzdEF0
b21pY05hbWVDYWNoZU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fYXRvbWljTmFtZUNhY2hlcy5h
ZGQobmFtZWROb2RlTGlzdEtleShjb2xsZWN0aW9uVHlwZSwgc3RhckF0b20pLCBudWxscHRyKTsK
ICAgICAgICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKICAgICAgICAgICAgIHJldHVybiBzdGF0
aWNfY2FzdDxUKj4ocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CiAKQEAgLTEyMCw3ICsxMjAsNyBA
QCBwdWJsaWM6CiAgICAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KICAgICBQYXNzUmVmUHRyPFQ+IGFk
ZENhY2hlV2l0aE5hbWUoTm9kZSogbm9kZSwgQ29sbGVjdGlvblR5cGUgY29sbGVjdGlvblR5cGUs
IGNvbnN0IFN0cmluZyYgbmFtZSkKICAgICB7Ci0gICAgICAgIE5vZGVMaXN0TmFtZUNhY2hlTWFw
OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9uYW1lQ2FjaGVzLmFkZChuYW1lZE5vZGVMaXN0S2V5KGNv
bGxlY3Rpb25UeXBlLCBuYW1lKSwgMCk7CisgICAgICAgIE5vZGVMaXN0TmFtZUNhY2hlTWFwOjpB
ZGRSZXN1bHQgcmVzdWx0ID0gbV9uYW1lQ2FjaGVzLmFkZChuYW1lZE5vZGVMaXN0S2V5KGNvbGxl
Y3Rpb25UeXBlLCBuYW1lKSwgbnVsbHB0cik7CiAgICAgICAgIGlmICghcmVzdWx0LmlzTmV3RW50
cnkpCiAgICAgICAgICAgICByZXR1cm4gc3RhdGljX2Nhc3Q8VCo+KHJlc3VsdC5pdGVyYXRvci0+
dmFsdWUpOwogCkBAIC0xMzIsNyArMTMyLDcgQEAgcHVibGljOgogICAgIFBhc3NSZWZQdHI8VGFn
Tm9kZUxpc3Q+IGFkZENhY2hlV2l0aFF1YWxpZmllZE5hbWUoTm9kZSogbm9kZSwgY29uc3QgQXRv
bWljU3RyaW5nJiBuYW1lc3BhY2VVUkksIGNvbnN0IEF0b21pY1N0cmluZyYgbG9jYWxOYW1lKQog
ICAgIHsKICAgICAgICAgUXVhbGlmaWVkTmFtZSBuYW1lKG51bGxBdG9tLCBsb2NhbE5hbWUsIG5h
bWVzcGFjZVVSSSk7Ci0gICAgICAgIFRhZ05vZGVMaXN0Q2FjaGVOUzo6QWRkUmVzdWx0IHJlc3Vs
dCA9IG1fdGFnTm9kZUxpc3RDYWNoZU5TLmFkZChuYW1lLCAwKTsKKyAgICAgICAgVGFnTm9kZUxp
c3RDYWNoZU5TOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV90YWdOb2RlTGlzdENhY2hlTlMuYWRkKG5h
bWUsIG51bGxwdHIpOwogICAgICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICAg
ICAgcmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9sb2FkZXIvYXBwY2FjaGUvQXBwbGljYXRpb25DYWNoZVN0b3JhZ2UuY3BwCmlu
ZGV4IDNmOWNjMmIyOTg3OWNmNDFiN2I3YjY2ZjBjOTAyOGFhNDU5MTdlNjAuLjQzYzczMTI5ZWI5
OWMyYWY1YjE3YzNjMzY4MTk4MDkwOGFlOGM5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2xvYWRlci9hcHBjYWNoZS9BcHBsaWNhdGlvbkNhY2hlU3RvcmFnZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvbG9hZGVyL2FwcGNhY2hlL0FwcGxpY2F0aW9uQ2FjaGVTdG9yYWdlLmNwcApAQCAt
MTM5LDcgKzEzOSw3IEBAIEFwcGxpY2F0aW9uQ2FjaGVHcm91cCogQXBwbGljYXRpb25DYWNoZVN0
b3JhZ2U6OmZpbmRPckNyZWF0ZUNhY2hlR3JvdXAoY29uc3QgS1VSCiB7CiAgICAgQVNTRVJUKCFt
YW5pZmVzdFVSTC5oYXNGcmFnbWVudElkZW50aWZpZXIoKSk7CiAKLSAgICBDYWNoZUdyb3VwTWFw
OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jYWNoZXNJbk1lbW9yeS5hZGQobWFuaWZlc3RVUkwsIDAp
OworICAgIENhY2hlR3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2NhY2hlc0luTWVtb3J5
LmFkZChtYW5pZmVzdFVSTCwgbnVsbHB0cik7CiAgICAgCiAgICAgaWYgKCFyZXN1bHQuaXNOZXdF
bnRyeSkgewogICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VHcm91cC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BhZ2VHcm91cC5jcHAKaW5kZXggNDgyMGE4MTIxNTgyOWZhYjVlOTY1ZjAwYmE0YzI1ZDE2
NzMxNDRhYS4uYzQ0YmVlMGQ1YTllOGZiNGYyM2ZhMzNmZjQ5M2UwNmRjNGM0YmVlOCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlR3JvdXAuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGFnZUdyb3VwLmNwcApAQCAtOTYsNyArOTYsNyBAQCBQYWdlR3JvdXAqIFBhZ2VH
cm91cDo6cGFnZUdyb3VwKGNvbnN0IFN0cmluZyYgZ3JvdXBOYW1lKQogICAgIGlmICghcGFnZUdy
b3VwcykKICAgICAgICAgcGFnZUdyb3VwcyA9IG5ldyBQYWdlR3JvdXBNYXA7CiAKLSAgICBQYWdl
R3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBwYWdlR3JvdXBzLT5hZGQoZ3JvdXBOYW1lLCAw
KTsKKyAgICBQYWdlR3JvdXBNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBwYWdlR3JvdXBzLT5hZGQo
Z3JvdXBOYW1lLCBudWxscHRyKTsKIAogICAgIGlmIChyZXN1bHQuaXNOZXdFbnRyeSkgewogICAg
ICAgICBBU1NFUlQoIXJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcAppbmRleCA2MTNi
YzM5NmM5M2RmMzEzNGYzYzk4N2FlMDY4OThjNGI5OTYyNWM4Li42MmVhYmM3Mjk0YjNjNDQ4M2Jm
YzE1ODQwMDRhOTJmNTMxMDk2MDRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2Fu
aW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L2FuaW1hdGlvbi9BbmltYXRpb25Db250cm9sbGVyLmNwcApAQCAtNjksNyArNjksNyBAQCBBbmlt
YXRpb25Db250cm9sbGVyUHJpdmF0ZTo6fkFuaW1hdGlvbkNvbnRyb2xsZXJQcml2YXRlKCkKIAog
Q29tcG9zaXRlQW5pbWF0aW9uJiBBbmltYXRpb25Db250cm9sbGVyUHJpdmF0ZTo6ZW5zdXJlQ29t
cG9zaXRlQW5pbWF0aW9uKFJlbmRlck9iamVjdCogcmVuZGVyZXIpCiB7Ci0gICAgUmVuZGVyT2Jq
ZWN0QW5pbWF0aW9uTWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9jb21wb3NpdGVBbmltYXRpb25z
LmFkZChyZW5kZXJlciwgMCk7CisgICAgUmVuZGVyT2JqZWN0QW5pbWF0aW9uTWFwOjpBZGRSZXN1
bHQgcmVzdWx0ID0gbV9jb21wb3NpdGVBbmltYXRpb25zLmFkZChyZW5kZXJlciwgbnVsbHB0cik7
CiAgICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZh
bHVlID0gQ29tcG9zaXRlQW5pbWF0aW9uOjpjcmVhdGUodGhpcyk7CiAgICAgcmV0dXJuICpyZXN1
bHQuaXRlcmF0b3ItPnZhbHVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL1Njcm9sbGJhclRoZW1lTWFjLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1Nj
cm9sbGJhclRoZW1lTWFjLm1tCmluZGV4IDEyMWI2YTg1MTk0NDE2MDY5YjlkYjBjZDJiYmU1Y2Jl
MzhkN2NmY2UuLjNiNWYxZTU4ODAxOTBmMjFlMjc3MTkxNjg3NjhlZTQ2NTM0NWIyNjUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9TY3JvbGxiYXJUaGVtZU1hYy5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvU2Nyb2xsYmFyVGhlbWVNYWMubW0KQEAg
LTE3MSw3ICsxNzEsNyBAQCB2b2lkIFNjcm9sbGJhclRoZW1lTWFjOjpyZWdpc3RlclNjcm9sbGJh
cihTY3JvbGxiYXJUaGVtZUNsaWVudCogc2Nyb2xsYmFyKQogICAgICAgICB1cGRhdGVFbmFibGVk
U3RhdGUoc2Nyb2xsYmFyKTsKICAgICAgICAgdXBkYXRlU2Nyb2xsYmFyT3ZlcmxheVN0eWxlKHNj
cm9sbGJhcik7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgc2Nyb2xsYmFyTWFwKCktPmFkZChzY3Jv
bGxiYXIsIG5pbCk7CisgICAgICAgIHNjcm9sbGJhck1hcCgpLT5hZGQoc2Nyb2xsYmFyLCBudWxs
cHRyKTsKICAgICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3Rv
cmFnZU5hbWVzcGFjZUltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFt
ZXNwYWNlSW1wbC5jcHAKaW5kZXggMTg3YWU2OWFiN2E0Y2Q1NjAzNDRjMjhmMTlmZDVjYjc0YzZm
NTc0Mi4uMmFjNWRiNGE3YzA1ZTFlMGYyYzU1YmU2ZTczYjlmNDA4NDI3ZTg0NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5jcHAKQEAgLTYwLDcg
KzYwLDcgQEAgUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlTmFtZXNwYWNlSW1w
bDo6bG9jYWxTdG9yYWdlTmFtZXNwYWNlKFBhZ2VHcm8KICAgICB1bnNpZ25lZCBxdW90YSA9IHBh
Z2VHcm91cC0+Z3JvdXBTZXR0aW5ncygpLmxvY2FsU3RvcmFnZVF1b3RhQnl0ZXMoKTsKICAgICBj
b25zdCBTdHJpbmcgbG9va3VwUGF0aCA9IHBhdGguaXNOdWxsKCkgPyBlbXB0eVN0cmluZygpIDog
cGF0aDsKIAotICAgIExvY2FsU3RvcmFnZU5hbWVzcGFjZU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9
IGxvY2FsU3RvcmFnZU5hbWVzcGFjZU1hcCgpLmFkZChsb29rdXBQYXRoLCAwKTsKKyAgICBMb2Nh
bFN0b3JhZ2VOYW1lc3BhY2VNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBsb2NhbFN0b3JhZ2VOYW1l
c3BhY2VNYXAoKS5hZGQobG9va3VwUGF0aCwgbnVsbHB0cik7CiAgICAgaWYgKCFyZXN1bHQuaXNO
ZXdFbnRyeSkKICAgICAgICAgcmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWU7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSG9z
dE1hbmFnZXIubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL0hvc3RlZC9OZXRzY2FwZVBs
dWdpbkhvc3RNYW5hZ2VyLm1tCmluZGV4IDEwNDI4NTUzN2E5NGFkNTcwZmM2Mjc5YWJiMTI5NGJj
OTNiZmNmZmYuLjExYWI4ZWU4MTg5ZGE5Y2UzNWFkYjdlZWU2ZjgyN2I3MGIzNTAxMmIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvSG9zdGVkL05ldHNjYXBlUGx1Z2luSG9z
dE1hbmFnZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9Ib3N0ZWQvTmV0c2Nh
cGVQbHVnaW5Ib3N0TWFuYWdlci5tbQpAQCAtNjgsNyArNjgsNyBAQCBOZXRzY2FwZVBsdWdpbkhv
c3RNYW5hZ2VyOjp+TmV0c2NhcGVQbHVnaW5Ib3N0TWFuYWdlcigpCiAKIE5ldHNjYXBlUGx1Z2lu
SG9zdFByb3h5KiBOZXRzY2FwZVBsdWdpbkhvc3RNYW5hZ2VyOjpob3N0Rm9yUGx1Z2luKGNvbnN0
IFdURjo6U3RyaW5nJiBwbHVnaW5QYXRoLCBjcHVfdHlwZV90IHBsdWdpbkFyY2hpdGVjdHVyZSwg
Y29uc3QgU3RyaW5nJiBidW5kbGVJZGVudGlmaWVyKQogewotICAgIFBsdWdpbkhvc3RNYXA6OkFk
ZFJlc3VsdCByZXN1bHQgPSBtX3BsdWdpbkhvc3RzLmFkZChwbHVnaW5QYXRoLCAwKTsKKyAgICBQ
bHVnaW5Ib3N0TWFwOjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9wbHVnaW5Ib3N0cy5hZGQocGx1Z2lu
UGF0aCwgbnVsbHB0cik7CiAgICAgCiAgICAgLy8gVGhlIHBhY2thZ2Ugd2FzIGFscmVhZHkgaW4g
dGhlIG1hcCwganVzdCByZXR1cm4gaXQuCiAgICAgaWYgKCFyZXN1bHQuaXNOZXdFbnRyeSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvQ29ubmVjdGlvbi5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Db3JlSVBDL0Nvbm5lY3Rpb24uY3BwCmluZGV4IDU4
NTcxMjFmOTNhM2ZjYjI5ZWRhZjE5MDRjMjQyZGMyNzNjZDdhODkuLmNjOTE4NzI1NGExODhhMDU5
MTQ0YzZmODUyZjM5MzZkODhlZmRkZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRm
b3JtL0NvcmVJUEMvQ29ubmVjdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0v
Q29yZUlQQy9Db25uZWN0aW9uLmNwcApAQCAtMTExLDcgKzExMSw3IEBAIHB1YmxpYzoKIFBhc3NS
ZWZQdHI8Q29ubmVjdGlvbjo6U3luY01lc3NhZ2VTdGF0ZT4gQ29ubmVjdGlvbjo6U3luY01lc3Nh
Z2VTdGF0ZTo6Z2V0T3JDcmVhdGUoUnVuTG9vcCogcnVuTG9vcCkKIHsKICAgICBNdXRleExvY2tl
ciBsb2NrZXIoc3luY01lc3NhZ2VTdGF0ZU1hcE11dGV4KCkpOwotICAgIFN5bmNNZXNzYWdlU3Rh
dGVNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBzeW5jTWVzc2FnZVN0YXRlTWFwKCkuYWRkKHJ1bkxv
b3AsIDApOworICAgIFN5bmNNZXNzYWdlU3RhdGVNYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBzeW5j
TWVzc2FnZVN0YXRlTWFwKCkuYWRkKHJ1bkxvb3AsIG51bGxwdHIpOwogCiAgICAgaWYgKCFyZXN1
bHQuaXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQocmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSk7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvU3RvcmFnZS9TdG9yYWdlTWFuYWdl
ci5jcHAKaW5kZXggNTM1MGRkZTA1ZThlNDNlNjE4ODE2NjFmNDI3YjM3YmQ0NDk2NzQ0Ny4uYjY1
NjczOTAwZDI1ZWU5ZmU0NDE3ZTk4ZjRlOGJlMGIxNmZlYjM4ZSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1N0b3JhZ2UvU3RvcmFnZU1hbmFnZXIuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9TdG9yYWdlL1N0b3JhZ2VNYW5hZ2VyLmNwcApAQCAtNDQyLDcg
KzQ0Miw3IEBAIHZvaWQgU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZUxvY2FsU3RvcmFnZU1hcChDb3Jl
SVBDOjpDb25uZWN0aW9uKiBjb25uZWN0aW9uLCB1aW50CiAgICAgLy8gRklYTUU6IFRoaXMgc2hv
dWxkIGJlIGEgbWVzc2FnZSBjaGVjay4KICAgICBBU1NFUlQoKEhhc2hNYXA8c3RkOjpwYWlyPFJl
ZlB0cjxDb3JlSVBDOjpDb25uZWN0aW9uPiwgdWludDY0X3Q+LCBSZWZQdHI8U3RvcmFnZUFyZWE+
Pjo6aXNWYWxpZEtleShjb25uZWN0aW9uQW5kU3RvcmFnZU1hcElEUGFpcikpKTsKIAotICAgIEhh
c2hNYXA8c3RkOjpwYWlyPFJlZlB0cjxDb3JlSVBDOjpDb25uZWN0aW9uPiwgdWludDY0X3Q+LCBS
ZWZQdHI8U3RvcmFnZUFyZWE+Pjo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fc3RvcmFnZUFyZWFzQnlD
b25uZWN0aW9uLmFkZChjb25uZWN0aW9uQW5kU3RvcmFnZU1hcElEUGFpciwgMCk7CisgICAgSGFz
aE1hcDxzdGQ6OnBhaXI8UmVmUHRyPENvcmVJUEM6OkNvbm5lY3Rpb24+LCB1aW50NjRfdD4sIFJl
ZlB0cjxTdG9yYWdlQXJlYT4+OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9zdG9yYWdlQXJlYXNCeUNv
bm5lY3Rpb24uYWRkKGNvbm5lY3Rpb25BbmRTdG9yYWdlTWFwSURQYWlyLCBudWxscHRyKTsKIAog
ICAgIC8vIEZJWE1FOiBUaGVzZSBzaG91bGQgYmUgYSBtZXNzYWdlIGNoZWNrcy4KICAgICBBU1NF
UlQocmVzdWx0LmlzTmV3RW50cnkpOwpAQCAtNDc1LDcgKzQ3NSw3IEBAIHZvaWQgU3RvcmFnZU1h
bmFnZXI6OmNyZWF0ZVNlc3Npb25TdG9yYWdlTWFwKENvcmVJUEM6OkNvbm5lY3Rpb24qIGNvbm5l
Y3Rpb24sIHVpCiAgICAgLy8gRklYTUU6IFRoaXMgc2hvdWxkIGJlIGEgbWVzc2FnZSBjaGVjay4K
ICAgICBBU1NFUlQoKEhhc2hNYXA8c3RkOjpwYWlyPFJlZlB0cjxDb3JlSVBDOjpDb25uZWN0aW9u
PiwgdWludDY0X3Q+LCBSZWZQdHI8U3RvcmFnZUFyZWE+Pjo6aXNWYWxpZEtleShjb25uZWN0aW9u
QW5kU3RvcmFnZU1hcElEUGFpcikpKTsKIAotICAgIEhhc2hNYXA8c3RkOjpwYWlyPFJlZlB0cjxD
b3JlSVBDOjpDb25uZWN0aW9uPiwgdWludDY0X3Q+LCBSZWZQdHI8U3RvcmFnZUFyZWE+Pjo6QWRk
UmVzdWx0IHJlc3VsdCA9IG1fc3RvcmFnZUFyZWFzQnlDb25uZWN0aW9uLmFkZChjb25uZWN0aW9u
QW5kU3RvcmFnZU1hcElEUGFpciwgMCk7CisgICAgSGFzaE1hcDxzdGQ6OnBhaXI8UmVmUHRyPENv
cmVJUEM6OkNvbm5lY3Rpb24+LCB1aW50NjRfdD4sIFJlZlB0cjxTdG9yYWdlQXJlYT4+OjpBZGRS
ZXN1bHQgcmVzdWx0ID0gbV9zdG9yYWdlQXJlYXNCeUNvbm5lY3Rpb24uYWRkKGNvbm5lY3Rpb25B
bmRTdG9yYWdlTWFwSURQYWlyLCBudWxscHRyKTsKIAogICAgIC8vIEZJWE1FOiBUaGlzIHNob3Vs
ZCBiZSBhIG1lc3NhZ2UgY2hlY2suCiAgICAgQVNTRVJUKHJlc3VsdC5pc05ld0VudHJ5KTsKQEAg
LTYxNiw3ICs2MTYsNyBAQCBTdG9yYWdlTWFuYWdlcjo6TG9jYWxTdG9yYWdlTmFtZXNwYWNlKiBT
dG9yYWdlTWFuYWdlcjo6Z2V0T3JDcmVhdGVMb2NhbFN0b3JhZ2VOYQogICAgIGlmICghSGFzaE1h
cDx1aW50NjRfdCwgUmVmUHRyPExvY2FsU3RvcmFnZU5hbWVzcGFjZT4+Ojppc1ZhbGlkS2V5KHN0
b3JhZ2VOYW1lc3BhY2VJRCkpCiAgICAgICAgIHJldHVybiAwOwogCi0gICAgSGFzaE1hcDx1aW50
NjRfdCwgUmVmUHRyPExvY2FsU3RvcmFnZU5hbWVzcGFjZT4+OjpBZGRSZXN1bHQgcmVzdWx0ID0g
bV9sb2NhbFN0b3JhZ2VOYW1lc3BhY2VzLmFkZChzdG9yYWdlTmFtZXNwYWNlSUQsIDApOworICAg
IEhhc2hNYXA8dWludDY0X3QsIFJlZlB0cjxMb2NhbFN0b3JhZ2VOYW1lc3BhY2U+Pjo6QWRkUmVz
dWx0IHJlc3VsdCA9IG1fbG9jYWxTdG9yYWdlTmFtZXNwYWNlcy5hZGQoc3RvcmFnZU5hbWVzcGFj
ZUlELCBudWxscHRyKTsKICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpCiAgICAgICAgIHJlc3Vs
dC5pdGVyYXRvci0+dmFsdWUgPSBMb2NhbFN0b3JhZ2VOYW1lc3BhY2U6OmNyZWF0ZSh0aGlzLCBz
dG9yYWdlTmFtZXNwYWNlSUQpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUHJvY2Vzc1Byb3h5LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUHJveHkuY3BwCmluZGV4IDViNjQwMWI4YjNjNjhmMTE0MjIzZDJjM2ZmNjU5ZjM0OWE5ZThi
MTQuLmIyZDc1YTg0ZGQ0NTE0NDJiYzcyMzg4NDM1YjRhMTc3NzYxMDRhNzkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuY3BwCkBAIC0yOTIsNyArMjkyLDcg
QEAgdm9pZCBXZWJQcm9jZXNzUHJveHk6OmFkZEJhY2tGb3J3YXJkSXRlbSh1aW50NjRfdCBpdGVt
SUQsIGNvbnN0IFN0cmluZyYgb3JpZ2luYWwKICAgICBNRVNTQUdFX0NIRUNLX1VSTChvcmlnaW5h
bFVSTCk7CiAgICAgTUVTU0FHRV9DSEVDS19VUkwodXJsKTsKIAotICAgIFdlYkJhY2tGb3J3YXJk
TGlzdEl0ZW1NYXA6OkFkZFJlc3VsdCByZXN1bHQgPSBtX2JhY2tGb3J3YXJkTGlzdEl0ZW1NYXAu
YWRkKGl0ZW1JRCwgMCk7CisgICAgV2ViQmFja0ZvcndhcmRMaXN0SXRlbU1hcDo6QWRkUmVzdWx0
IHJlc3VsdCA9IG1fYmFja0ZvcndhcmRMaXN0SXRlbU1hcC5hZGQoaXRlbUlELCBudWxscHRyKTsK
ICAgICBpZiAocmVzdWx0LmlzTmV3RW50cnkpIHsKICAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52
YWx1ZSA9IFdlYkJhY2tGb3J3YXJkTGlzdEl0ZW06OmNyZWF0ZShvcmlnaW5hbFVSTCwgdXJsLCB0
aXRsZSwgYmFja0ZvcndhcmREYXRhLmRhdGEoKSwgYmFja0ZvcndhcmREYXRhLnNpemUoKSwgaXRl
bUlEKTsKICAgICAgICAgcmV0dXJuOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVuZGxl
Tm9kZUhhbmRsZS5jcHAKaW5kZXggNGMyZDY4YzY4YmI1MDdiZjhiYjcxMjFhOTc0NmIzOTgxNDNj
ZGJlZS4uN2I4Njg0OTFjYjUyNTIxMWVkY2Q3ODJiOTliMDIxNTE3NTk3MGQ0ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9ET00vSW5qZWN0ZWRC
dW5kbGVOb2RlSGFuZGxlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVj
dGVkQnVuZGxlL0RPTS9JbmplY3RlZEJ1bmRsZU5vZGVIYW5kbGUuY3BwCkBAIC03NCw3ICs3NCw3
IEBAIFBhc3NSZWZQdHI8SW5qZWN0ZWRCdW5kbGVOb2RlSGFuZGxlPiBJbmplY3RlZEJ1bmRsZU5v
ZGVIYW5kbGU6OmdldE9yQ3JlYXRlKE5vZGUqCiAgICAgaWYgKCFub2RlKQogICAgICAgICByZXR1
cm4gMDsKIAotICAgIERPTUhhbmRsZUNhY2hlOjpBZGRSZXN1bHQgcmVzdWx0ID0gZG9tSGFuZGxl
Q2FjaGUoKS5hZGQobm9kZSwgMCk7CisgICAgRE9NSGFuZGxlQ2FjaGU6OkFkZFJlc3VsdCByZXN1
bHQgPSBkb21IYW5kbGVDYWNoZSgpLmFkZChub2RlLCBudWxscHRyKTsKICAgICBpZiAoIXJlc3Vs
dC5pc05ld0VudHJ5KQogICAgICAgICByZXR1cm4gUGFzc1JlZlB0cjxJbmplY3RlZEJ1bmRsZU5v
ZGVIYW5kbGU+KHJlc3VsdC5pdGVyYXRvci0+dmFsdWUpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0RPTS9JbmplY3RlZEJ1bmRsZVJhbmdl
SGFuZGxlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9N
L0luamVjdGVkQnVuZGxlUmFuZ2VIYW5kbGUuY3BwCmluZGV4IGY2YTg0NGUwYzNiOWUyMmJjZGUw
MDZiN2U5MGFiNzBjNGViMmY1YjYuLjNlYjRjOGU3ZjZhMjAyYTkyZTY1YmJmZWExNWE0NDViNWRm
NWJmMDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5k
bGUvRE9NL0luamVjdGVkQnVuZGxlUmFuZ2VIYW5kbGUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvSW5qZWN0ZWRCdW5kbGUvRE9NL0luamVjdGVkQnVuZGxlUmFuZ2VIYW5kbGUu
Y3BwCkBAIC01NCw3ICs1NCw3IEBAIFBhc3NSZWZQdHI8SW5qZWN0ZWRCdW5kbGVSYW5nZUhhbmRs
ZT4gSW5qZWN0ZWRCdW5kbGVSYW5nZUhhbmRsZTo6Z2V0T3JDcmVhdGUoUmFuCiAgICAgaWYgKCFy
YW5nZSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBET01IYW5kbGVDYWNoZTo6QWRkUmVzdWx0
IHJlc3VsdCA9IGRvbUhhbmRsZUNhY2hlKCkuYWRkKHJhbmdlLCAwKTsKKyAgICBET01IYW5kbGVD
YWNoZTo6QWRkUmVzdWx0IHJlc3VsdCA9IGRvbUhhbmRsZUNhY2hlKCkuYWRkKHJhbmdlLCBudWxs
cHRyKTsKICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICByZXR1cm4gUGFzc1Jl
ZlB0cjxJbmplY3RlZEJ1bmRsZVJhbmdlSGFuZGxlPihyZXN1bHQuaXRlcmF0b3ItPnZhbHVlKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9TdG9yYWdlL1N0b3JhZ2VO
YW1lc3BhY2VJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvU3RvcmFnZS9TdG9y
YWdlTmFtZXNwYWNlSW1wbC5jcHAKaW5kZXggMmMyNzU1NTBlYWU2Mzc4M2I0NDY5MjA1MjExMzZj
NDNlZWFhYzZjNi4uOTc4ZDIwZjgwMTRjMGIzMWE1NjcyMWU2YTEzM2I4NDYwYTE1NGY1OCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9TdG9yYWdlL1N0b3JhZ2VOYW1lc3Bh
Y2VJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1N0b3JhZ2UvU3RvcmFn
ZU5hbWVzcGFjZUltcGwuY3BwCkBAIC01Miw3ICs1Miw3IEBAIFBhc3NSZWZQdHI8U3RvcmFnZU5h
bWVzcGFjZUltcGw+IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpjcmVhdGVMb2NhbFN0b3JhZ2VOYW1l
c3BhCiB7CiAgICAgdWludDY0X3QgcGFnZUdyb3VwSUQgPSBXZWJQcm9jZXNzOjpzaGFyZWQoKS53
ZWJQYWdlR3JvdXAocGFnZUdyb3VwKS0+cGFnZUdyb3VwSUQoKTsKIAotICAgIExvY2FsU3RvcmFn
ZU5hbWVzcGFjZU1hcDo6QWRkUmVzdWx0IHJlc3VsdCA9IGxvY2FsU3RvcmFnZU5hbWVzcGFjZU1h
cCgpLmFkZChwYWdlR3JvdXBJRCwgMCk7CisgICAgTG9jYWxTdG9yYWdlTmFtZXNwYWNlTWFwOjpB
ZGRSZXN1bHQgcmVzdWx0ID0gbG9jYWxTdG9yYWdlTmFtZXNwYWNlTWFwKCkuYWRkKHBhZ2VHcm91
cElELCBudWxscHRyKTsKICAgICBpZiAoIXJlc3VsdC5pc05ld0VudHJ5KQogICAgICAgICByZXR1
cm4gcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHAKaW5kZXggZTkxNDVhZTk1YWVjYjcwNjcyOTllZDExODI4MjE0YjZhMWUzNzZl
YS4uZjI2OTA5NGQ0MWFhMGQxNmYwYTdlNzA2NjE2NDkxODkzZGUyYjY4ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCkBAIC01NzQsNyArNTc0LDcgQEAgdm9pZCBX
ZWJQcm9jZXNzOjpjcmVhdGVXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3QgV2ViUGFnZUNy
ZWF0aW9uUGFyYW1ldGVycyYKIHsKICAgICAvLyBJdCBpcyBuZWNlc3NhcnkgdG8gY2hlY2sgZm9y
IHBhZ2UgZXhpc3RlbmNlIGhlcmUgc2luY2UgZHVyaW5nIGEgd2luZG93Lm9wZW4oKSAob3IgdGFy
Z2V0ZWQKICAgICAvLyBsaW5rKSB0aGUgV2ViUGFnZSBnZXRzIGNyZWF0ZWQgYm90aCBpbiB0aGUg
c3luY2hyb25vdXMgaGFuZGxlciBhbmQgdGhyb3VnaCB0aGUgbm9ybWFsIHdheS4gCi0gICAgSGFz
aE1hcDx1aW50NjRfdCwgUmVmUHRyPFdlYlBhZ2U+Pjo6QWRkUmVzdWx0IHJlc3VsdCA9IG1fcGFn
ZU1hcC5hZGQocGFnZUlELCAwKTsKKyAgICBIYXNoTWFwPHVpbnQ2NF90LCBSZWZQdHI8V2ViUGFn
ZT4+OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9wYWdlTWFwLmFkZChwYWdlSUQsIG51bGxwdHIpOwog
ICAgIGlmIChyZXN1bHQuaXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQoIXJlc3VsdC5pdGVy
YXRvci0+dmFsdWUpOwogICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gV2ViUGFnZTo6
Y3JlYXRlKHBhZ2VJRCwgcGFyYW1ldGVycyk7CkBAIC03MjYsNyArNzI2LDcgQEAgV2ViUGFnZUdy
b3VwUHJveHkqIFdlYlByb2Nlc3M6OndlYlBhZ2VHcm91cCh1aW50NjRfdCBwYWdlR3JvdXBJRCkK
IAogV2ViUGFnZUdyb3VwUHJveHkqIFdlYlByb2Nlc3M6OndlYlBhZ2VHcm91cChjb25zdCBXZWJQ
YWdlR3JvdXBEYXRhJiBwYWdlR3JvdXBEYXRhKQogewotICAgIEhhc2hNYXA8dWludDY0X3QsIFJl
ZlB0cjxXZWJQYWdlR3JvdXBQcm94eT4+OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9wYWdlR3JvdXBN
YXAuYWRkKHBhZ2VHcm91cERhdGEucGFnZUdyb3VwSUQsIDApOworICAgIEhhc2hNYXA8dWludDY0
X3QsIFJlZlB0cjxXZWJQYWdlR3JvdXBQcm94eT4+OjpBZGRSZXN1bHQgcmVzdWx0ID0gbV9wYWdl
R3JvdXBNYXAuYWRkKHBhZ2VHcm91cERhdGEucGFnZUdyb3VwSUQsIG51bGxwdHIpOwogICAgIGlm
IChyZXN1bHQuaXNOZXdFbnRyeSkgewogICAgICAgICBBU1NFUlQoIXJlc3VsdC5pdGVyYXRvci0+
dmFsdWUpOwogICAgICAgICByZXN1bHQuaXRlcmF0b3ItPnZhbHVlID0gV2ViUGFnZUdyb3VwUHJv
eHk6OmNyZWF0ZShwYWdlR3JvdXBEYXRhKTsKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBi
L1Rvb2xzL0NoYW5nZUxvZwppbmRleCBmYjZlM2ZlZGQyOTFmMDFhY2U5MjIzODQ1YzdiMzljNDIw
MzllZDViLi4zY2YzMWVlNzllYTQxY2Q1ZTRiMzk5MmM0ODU1MGZkOTFiN2E1ZTgzIDEwMDY0NAot
LS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTMtMDktMTMgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwor
ICAgICAgICBVc2UgbnVsbHB0ciBpbnN0ZWFkIG9mIDAgaW4gY2FsbHMgdG8gSGFzaE1hcDo6YWRk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjEzMjIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIER1bXBS
ZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tOgorICAgICAgICAoVGVzdFJ1bm5lcjo6ZXZh
bHVhdGVTY3JpcHRJbklzb2xhdGVkV29ybGQpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
SW5qZWN0ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHA6CisgICAgICAgIChXVFI6OlRlc3RSdW5uZXI6
OmV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdvcmxkKToKKwogMjAxMy0wOS0xMyAgQWxsYW4gU2Fu
ZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQGRpZ2lhLmNvbT4KIAogICAgICAgICBbUXRdIFJF
R1JFU1NJT04ocjE1NDQ0NCk6IHhzcy1ERU5JRUQgdGVzdCByZXN1bHRzIGNoYW5nZWQKZGlmZiAt
LWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9UZXN0UnVubmVyTWFjLm1tIGIvVG9vbHMv
RHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0KaW5kZXggZTcwMDkzYzIyODFkNDNk
NjMxNWQ3NjAxZTIwMDcxNzE0ZDA3NzE1Yi4uYTQ2ZDQyODkxYmM0NjNmMjQ2OTU3OGMzNTlmODRh
ZWRhYWVmZGMzNyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5u
ZXJNYWMubW0KKysrIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL1Rlc3RSdW5uZXJNYWMubW0K
QEAgLTg0NCw3ICs4NDQsNyBAQCB2b2lkIFRlc3RSdW5uZXI6OmV2YWx1YXRlU2NyaXB0SW5Jc29s
YXRlZFdvcmxkKHVuc2lnbmVkIHdvcmxkSUQsIEpTT2JqZWN0UmVmIGdsbwogICAgIGlmICghd29y
bGRJRCkKICAgICAgICAgd29ybGQgPSBbV2ViU2NyaXB0V29ybGQgd29ybGRdOwogICAgIGVsc2Ug
ewotICAgICAgICBSZXRhaW5QdHI8V2ViU2NyaXB0V29ybGQ+JiB3b3JsZFNsb3QgPSB3b3JsZE1h
cCgpLmFkZCh3b3JsZElELCAwKS5pdGVyYXRvci0+dmFsdWU7CisgICAgICAgIFJldGFpblB0cjxX
ZWJTY3JpcHRXb3JsZD4mIHdvcmxkU2xvdCA9IHdvcmxkTWFwKCkuYWRkKHdvcmxkSUQsIG51bGxw
dHIpLml0ZXJhdG9yLT52YWx1ZTsKICAgICAgICAgaWYgKCF3b3JsZFNsb3QpCiAgICAgICAgICAg
ICB3b3JsZFNsb3QgPSBhZG9wdE5TKFtbV2ViU2NyaXB0V29ybGQgYWxsb2NdIGluaXRdKTsKICAg
ICAgICAgd29ybGQgPSB3b3JsZFNsb3QuZ2V0KCk7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRU
ZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL1Rlc3RSdW5uZXIuY3BwIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9UZXN0UnVubmVyLmNwcAppbmRleCBjOTBiMjEwMGFmZjli
Nzg0YTg5ZDZkZmNhMjhmNWQ4MWRjMmQwODMzLi42ODI0ZGNiOWMzMDY2NWY1NjM4ODNjYzYxODY0
OWE5YTE0N2Y4ZTc5IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVk
QnVuZGxlL1Rlc3RSdW5uZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0
ZWRCdW5kbGUvVGVzdFJ1bm5lci5jcHAKQEAgLTQ0OSw3ICs0NDksNyBAQCB2b2lkIFRlc3RSdW5u
ZXI6OmV2YWx1YXRlU2NyaXB0SW5Jc29sYXRlZFdvcmxkKEpTQ29udGV4dFJlZiBjb250ZXh0LCB1
bnNpZ25lZCB3bwogICAgIGlmICghd29ybGRJRCkKICAgICAgICAgd29ybGQuYWRvcHQoV0tCdW5k
bGVTY3JpcHRXb3JsZENyZWF0ZVdvcmxkKCkpOwogICAgIGVsc2UgewotICAgICAgICBXS1JldGFp
blB0cjxXS0J1bmRsZVNjcmlwdFdvcmxkUmVmPiYgd29ybGRTbG90ID0gd29ybGRNYXAoKS5hZGQo
d29ybGRJRCwgMCkuaXRlcmF0b3ItPnZhbHVlOworICAgICAgICBXS1JldGFpblB0cjxXS0J1bmRs
ZVNjcmlwdFdvcmxkUmVmPiYgd29ybGRTbG90ID0gd29ybGRNYXAoKS5hZGQod29ybGRJRCwgbnVs
bHB0cikuaXRlcmF0b3ItPnZhbHVlOwogICAgICAgICBpZiAoIXdvcmxkU2xvdCkKICAgICAgICAg
ICAgIHdvcmxkU2xvdC5hZG9wdChXS0J1bmRsZVNjcmlwdFdvcmxkQ3JlYXRlV29ybGQoKSk7CiAg
ICAgICAgIHdvcmxkID0gd29ybGRTbG90Owo=
</data>
<flag name="review"
          id="233717"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>