<?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>81827</bug_id>
          
          <creation_ts>2012-03-21 12:33:27 -0700</creation_ts>
          <short_desc>[Qt][WK2] Add QML API for handling database quotas</short_desc>
          <delta_ts>2012-03-22 06:52:47 -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>WebKit Qt</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="Alexander Færøy">ahf</reporter>
          <assigned_to name="Alexander Færøy">ahf</assigned_to>
          <cc>menard</cc>
    
    <cc>pierre.rossi</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>584499</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Færøy">ahf</who>
    <bug_when>2012-03-21 12:33:27 -0700</bug_when>
    <thetext>We should have an API for handling database quotas.

Pierre and I are working on this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585114</commentid>
    <comment_count>1</comment_count>
      <attachid>133216</attachid>
    <who name="Alexander Færøy">ahf</who>
    <bug_when>2012-03-22 04:04:37 -0700</bug_when>
    <thetext>Created attachment 133216
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585117</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-22 04:08:04 -0700</bug_when>
    <thetext>Attachment 133216 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit...&quot; exit_code: 1
Source/WebKit2/UIProcess/qt/QtWebPageUIClient.cpp:40:  An else statement can be removed when the prior &quot;if&quot; concludes with a return, break, continue or goto statement.  [readability/control_flow] [4]
Source/WebKit2/UIProcess/qt/QtWebPageUIClient.h:58:  The parameter name &quot;page&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Source/WebKit2/UIProcess/qt/QtWebPageUIClient.h:58:  The parameter name &quot;frame&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 3 in 8 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>585134</commentid>
    <comment_count>3</comment_count>
      <attachid>133225</attachid>
    <who name="Alexander Færøy">ahf</who>
    <bug_when>2012-03-22 05:07:22 -0700</bug_when>
    <thetext>Created attachment 133225
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585188</commentid>
    <comment_count>4</comment_count>
      <attachid>133240</attachid>
    <who name="Alexander Færøy">ahf</who>
    <bug_when>2012-03-22 06:02:39 -0700</bug_when>
    <thetext>Created attachment 133240
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>585213</commentid>
    <comment_count>5</comment_count>
    <who name="Alexander Færøy">ahf</who>
    <bug_when>2012-03-22 06:52:47 -0700</bug_when>
    <thetext>Committed r111684: &lt;http://trac.webkit.org/changeset/111684&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133216</attachid>
            <date>2012-03-22 04:04:37 -0700</date>
            <delta_ts>2012-03-22 05:07:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81827-20120322120436.patch</filename>
            <type>text/plain</type>
            <size>17433</size>
            <attacher name="Alexander Færøy">ahf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNTc5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggY2EzZjhmZDkxYmNhMDBl
Y2MyNTRiNGIyNWZjNWNjZjUwMjRiNjQ1MS4uNDg4MzllNjZkYWY1MGUxNzYzMjZhMTEzYjU0NjZm
YzQzMjNkYmViZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTAzLTIxICBBbGV4
YW5kZXIgRsOmcsO4eSAgPGFsZXhhbmRlci5mYWVyb3lAbm9raWEuY29tPgorCisgICAgICAgIFtR
dF1bV0syXSBBZGQgUU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTgyNworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhdGNoIGJ5IFBpZXJyZSBS
b3NzaSBhbmQgQWxleGFuZGVyIEbDpnLDuHkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEg
UU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzLgorCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2
YXRlOjpleGNlZWRlZERhdGFiYXNlUXVvdGEpOgorICAgICAgICAoUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbDo6ZGF0YWJhc2VRdW90YURpYWxvZyk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsOjpzZXREYXRhYmFzZVF1b3RhRGlhbG9nKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwOgorICAgICAgICAoRGF0YWJhc2VR
dW90YURpYWxvZ0NvbnRleHRPYmplY3QpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0Nv
bnRleHRPYmplY3Q6OkRhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0KToKKyAgICAgICAg
KERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpkYXRhYmFzZU5hbWUpOgorICAgICAg
ICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmRpc3BsYXlOYW1lKToKKyAgICAg
ICAgKERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpjdXJyZW50UXVvdGEpOgorICAg
ICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmN1cnJlbnRPcmlnaW5Vc2Fn
ZSk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6Y3VycmVudERh
dGFiYXNlVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6
OmV4cGVjdGVkVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmpl
Y3Q6OmFjY2VwdCk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6
cmVqZWN0KToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURp
YWxvZyk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmg6CisgICAgICAg
IChRdERpYWxvZ1J1bm5lcik6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6ZGF0YWJhc2VRdW90
YSk6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6b25EYXRhYmFzZVF1b3RhQWNjZXB0ZWQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHA6CisgICAgICAgIChR
dFdlYlBhZ2VVSUNsaWVudDo6UXRXZWJQYWdlVUlDbGllbnQpOgorICAgICAgICAoUXRXZWJQYWdl
VUlDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YSk6CisgICAgICAgICogVUlQcm9jZXNzL3F0
L1F0V2ViUGFnZVVJQ2xpZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRR
dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdERhdGFi
YXNlRGlyZWN0b3J5KToKKwogMjAxMi0wMy0yMSAgSm9jZWx5biBUdXJjb3R0ZSAgPGpvY2VseW4u
dHVyY290dGVAbm9raWEuY29tPgogCiAgICAgICAgIFtRdF0gV2ViR3JhcGhpY3NMYXllcjogVW50
aWUgdGhlIGxheWVyIHVwZGF0ZXMgYW5kIHRpbGUgdXBkYXRlcy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlldy5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCmluZGV4IDQwNDRlYzNlZTAw
MWZkNmMzNTRhNzI3ZDQyYTJhMTZmMjg3Y2QyNDQuLmU2YjlhMzQ5MTI5NzBhNDQ4MjhjYTI1NTlh
ZDg3MmJhOTI2ZmQxY2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3LmNwcApAQCAtMzk5LDYgKzM5OSwyMSBAQCB2b2lkIFFRdWlja1dlYlZp
ZXdQcml2YXRlOjpjaG9vc2VGaWxlcyhXS09wZW5QYW5lbFJlc3VsdExpc3RlbmVyUmVmIGxpc3Rl
bmVyUmVmLAogCiB9CiAKK2ludCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6ZXhjZWVkZWREYXRhYmFz
ZVF1b3RhKGNvbnN0IFFTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxh
eU5hbWUsIGludCBjdXJyZW50UXVvdGEsIGludCBjdXJyZW50T3JpZ2luVXNhZ2UsIGludCBjdXJy
ZW50RGF0YWJhc2VVc2FnZSwgaW50IGV4cGVjdGVkVXNhZ2UpCit7CisgICAgaWYgKCFkYXRhYmFz
ZVF1b3RhRGlhbG9nKQorICAgICAgICByZXR1cm4gMDsKKworICAgIFFfUShRUXVpY2tXZWJWaWV3
KTsKKyAgICBRdERpYWxvZ1J1bm5lciBkaWFsb2dSdW5uZXI7CisgICAgaWYgKCFkaWFsb2dSdW5u
ZXIuaW5pdEZvckRhdGFiYXNlUXVvdGFEaWFsb2coZGF0YWJhc2VRdW90YURpYWxvZywgcSwgZGF0
YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2Us
IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdlKSkKKyAgICAgICAgcmV0dXJuIDA7
CisKKyAgICBleGVjRGlhbG9nUnVubmVyKGRpYWxvZ1J1bm5lcik7CisKKyAgICByZXR1cm4gZGlh
bG9nUnVubmVyLndhc0FjY2VwdGVkKCkgPyBkaWFsb2dSdW5uZXIuZGF0YWJhc2VRdW90YSgpIDog
MDsKK30KKwogdm9pZCBRUXVpY2tXZWJWaWV3UHJpdmF0ZTo6c2V0Vmlld0luQXR0YWNoZWRQcm9w
ZXJ0aWVzKFFPYmplY3QqIG9iamVjdCkKIHsKICAgICBRX1EoUVF1aWNrV2ViVmlldyk7CkBAIC05
MDYsNiArOTIxLDIxIEBAIHZvaWQgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6c2V0RmlsZVBp
Y2tlcihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGZpbGVQaWNrZXIpCiAgICAgZW1pdCBmaWxlUGlj
a2VyQ2hhbmdlZCgpOwogfQogCitRRGVjbGFyYXRpdmVDb21wb25lbnQqIFFRdWlja1dlYlZpZXdF
eHBlcmltZW50YWw6OmRhdGFiYXNlUXVvdGFEaWFsb2coKSBjb25zdAoreworICAgIFFfRChjb25z
dCBRUXVpY2tXZWJWaWV3KTsKKyAgICByZXR1cm4gZC0+ZGF0YWJhc2VRdW90YURpYWxvZzsKK30K
Kwordm9pZCBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpzZXREYXRhYmFzZVF1b3RhRGlhbG9n
KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogZGF0YWJhc2VRdW90YURpYWxvZykKK3sKKyAgICBRX0Qo
UVF1aWNrV2ViVmlldyk7CisgICAgaWYgKGQtPmRhdGFiYXNlUXVvdGFEaWFsb2cgPT0gZGF0YWJh
c2VRdW90YURpYWxvZykKKyAgICAgICAgcmV0dXJuOworICAgIGQtPmRhdGFiYXNlUXVvdGFEaWFs
b2cgPSBkYXRhYmFzZVF1b3RhRGlhbG9nOworICAgIGVtaXQgZGF0YWJhc2VRdW90YURpYWxvZ0No
YW5nZWQoKTsKK30KKwogUVN0cmluZyBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjp1c2VyQWdl
bnQoKSBjb25zdAogewogICAgIFFfRChjb25zdCBRUXVpY2tXZWJWaWV3KTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCmluZGV4IGRhZDJk
NWY2YmZkMmFhNTc4ZTE4YmQzM2M5YzQyNTdmYzc4OTkxY2IuLmMyMWIyZTliNjYwZTZiMDFjNjIz
MmU0ZjAyOTdiYTA1OWJjM2U5ZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvcXQvcXF1aWNrd2Vidmlld19wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaApAQCAtMjQ4LDYgKzI0OCw3IEBAIGNsYXNzIFFXRUJL
SVRfRVhQT1JUIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWwgOiBwdWJsaWMgUU9iamVjdCB7CiAg
ICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNlcnRpZmljYXRlVmVyaWZpY2F0
aW9uRGlhbG9nIFJFQUQgY2VydGlmaWNhdGVWZXJpZmljYXRpb25EaWFsb2cgV1JJVEUgc2V0Q2Vy
dGlmaWNhdGVWZXJpZmljYXRpb25EaWFsb2cgTk9USUZZIGNlcnRpZmljYXRlVmVyaWZpY2F0aW9u
RGlhbG9nQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogaXRl
bVNlbGVjdG9yIFJFQUQgaXRlbVNlbGVjdG9yIFdSSVRFIHNldEl0ZW1TZWxlY3RvciBOT1RJRlkg
aXRlbVNlbGVjdG9yQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCogZmlsZVBpY2tlciBSRUFEIGZpbGVQaWNrZXIgV1JJVEUgc2V0RmlsZVBpY2tlciBOT1RJRlkg
ZmlsZVBpY2tlckNoYW5nZWQpCisgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGRhdGFiYXNlUXVvdGFEaWFsb2cgUkVBRCBkYXRhYmFzZVF1b3RhRGlhbG9nIFdSSVRFIHNldERh
dGFiYXNlUXVvdGFEaWFsb2cgTk9USUZZIGRhdGFiYXNlUXVvdGFEaWFsb2dDaGFuZ2VkKQogICAg
IFFfUFJPUEVSVFkoUVdlYlByZWZlcmVuY2VzKiBwcmVmZXJlbmNlcyBSRUFEIHByZWZlcmVuY2Vz
IENPTlNUQU5UIEZJTkFMKQogICAgIFFfUFJPUEVSVFkoUVdlYlZpZXdwb3J0SW5mbyogdmlld3Bv
cnRJbmZvIFJFQUQgdmlld3BvcnRJbmZvIENPTlNUQU5UIEZJTkFMKQogICAgIFFfUFJPUEVSVFko
UURlY2xhcmF0aXZlTGlzdFByb3BlcnR5PFFRdWlja1VybFNjaGVtZURlbGVnYXRlPiB1cmxTY2hl
bWVEZWxlZ2F0ZXMgUkVBRCBzY2hlbWVEZWxlZ2F0ZXMpCkBAIC0yNzgsNiArMjc5LDggQEAgcHVi
bGljOgogICAgIHZvaWQgc2V0UHJveHlBdXRoZW50aWNhdGlvbkRpYWxvZyhRRGVjbGFyYXRpdmVD
b21wb25lbnQqKTsKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGZpbGVQaWNrZXIoKSBjb25z
dDsKICAgICB2b2lkIHNldEZpbGVQaWNrZXIoUURlY2xhcmF0aXZlQ29tcG9uZW50Kik7CisgICAg
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBkYXRhYmFzZVF1b3RhRGlhbG9nKCkgY29uc3Q7CisgICAg
dm9pZCBzZXREYXRhYmFzZVF1b3RhRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOwogICAg
IFFTdHJpbmcgdXNlckFnZW50KCkgY29uc3Q7CiAgICAgdm9pZCBzZXRVc2VyQWdlbnQoY29uc3Qg
UVN0cmluZyYgdXNlckFnZW50KTsKIApAQCAtMzMzLDYgKzMzNiw3IEBAIFFfU0lHTkFMUzoKICAg
ICB2b2lkIGNlcnRpZmljYXRlVmVyaWZpY2F0aW9uRGlhbG9nQ2hhbmdlZCgpOwogICAgIHZvaWQg
aXRlbVNlbGVjdG9yQ2hhbmdlZCgpOwogICAgIHZvaWQgZmlsZVBpY2tlckNoYW5nZWQoKTsKKyAg
ICB2b2lkIGRhdGFiYXNlUXVvdGFEaWFsb2dDaGFuZ2VkKCk7CiAgICAgdm9pZCBkb3dubG9hZFJl
cXVlc3RlZChRV2ViRG93bmxvYWRJdGVtKiBkb3dubG9hZEl0ZW0pOwogICAgIHZvaWQgcGVybWlz
c2lvblJlcXVlc3RlZChRV2ViUGVybWlzc2lvblJlcXVlc3QqIHBlcm1pc3Npb24pOwogICAgIHZv
aWQgbWVzc2FnZVJlY2VpdmVkKGNvbnN0IFFWYXJpYW50TWFwJiBtZXNzYWdlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3AuaAppbmRl
eCA1YzZiNmI2M2FlNmFiMGNmMDlkZGIzNzc1ZGVjNWZkYjc5OGY1YzllLi4yNTNkZGIyY2I0NDBk
N2RhNGUzMmFlMmFhODhjNjM5NTQ1NzZjYzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKKysrIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCkBAIC05Niw2ICs5Niw3IEBAIHB1
YmxpYzoKICAgICB2b2lkIF9xX29uSWNvbkNoYW5nZWRGb3JQYWdlVVJMKGNvbnN0IFFVcmwmIHBh
Z2VVUkwsIGNvbnN0IFFVcmwmIGljb25VUkxTdHJpbmcpOwogCiAgICAgdm9pZCBjaG9vc2VGaWxl
cyhXS09wZW5QYW5lbFJlc3VsdExpc3RlbmVyUmVmLCBjb25zdCBRU3RyaW5nTGlzdCYgc2VsZWN0
ZWRGaWxlTmFtZXMsIFF0V2ViUGFnZVVJQ2xpZW50OjpGaWxlQ2hvb3NlclR5cGUpOworICAgIGlu
dCBleGNlZWRlZERhdGFiYXNlUXVvdGEoY29uc3QgUVN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25z
dCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgaW50IGN1cnJlbnRRdW90YSwgaW50IGN1cnJlbnRPcmln
aW5Vc2FnZSwgaW50IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBpbnQgZXhwZWN0ZWRVc2FnZSk7CiAg
ICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoY29uc3QgUVN0cmluZyYpOwogICAgIGJvb2wgcnVu
SmF2YVNjcmlwdENvbmZpcm0oY29uc3QgUVN0cmluZyYpOwogICAgIFFTdHJpbmcgcnVuSmF2YVNj
cmlwdFByb21wdChjb25zdCBRU3RyaW5nJiwgY29uc3QgUVN0cmluZyYgZGVmYXVsdFZhbHVlLCBi
b29sJiBvayk7CkBAIC0xNTYsNiArMTU3LDcgQEAgcHJvdGVjdGVkOgogICAgIFFEZWNsYXJhdGl2
ZUNvbXBvbmVudCogaXRlbVNlbGVjdG9yOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogcHJv
eHlBdXRoZW50aWNhdGlvbkRpYWxvZzsKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGZpbGVQ
aWNrZXI7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBkYXRhYmFzZVF1b3RhRGlhbG9nOwog
CiAgICAgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMgdmlld3BvcnRBcmd1bWVudHM7CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1bm5lci5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwCmluZGV4IDAx
MTFhNzMxNjc3MzAyMDhiMDYwZWUyNzBiZWM3YWVkZjg5M2QxZmMuLmNmZTYyNjg4Mzc1MThiMDBj
YjgyMWYyOThhM2I5MmYxZmIwYTI5ODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9xdC9RdERpYWxvZ1J1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L3F0L1F0RGlhbG9nUnVubmVyLmNwcApAQCAtMTgyLDYgKzE4Miw1MSBAQCBwcml2YXRlOgogICAg
IFFTdHJpbmdMaXN0IG1fZmlsZUxpc3Q7CiB9OwogCitjbGFzcyBEYXRhYmFzZVF1b3RhRGlhbG9n
Q29udGV4dE9iamVjdCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorICAgIFFfUFJP
UEVSVFkoUVN0cmluZyBkYXRhYmFzZU5hbWUgUkVBRCBkYXRhYmFzZU5hbWUgQ09OU1RBTlQpCisg
ICAgUV9QUk9QRVJUWShRU3RyaW5nIGRpc3BsYXlOYW1lIFJFQUQgZGlzcGxheU5hbWUgQ09OU1RB
TlQpCisgICAgUV9QUk9QRVJUWShpbnQgY3VycmVudFF1b3RhIFJFQUQgY3VycmVudFF1b3RhIENP
TlNUQU5UKQorICAgIFFfUFJPUEVSVFkoaW50IGN1cnJlbnRPcmlnaW5Vc2FnZSBSRUFEIGN1cnJl
bnRPcmlnaW5Vc2FnZSBDT05TVEFOVCkKKyAgICBRX1BST1BFUlRZKGludCBjdXJyZW50RGF0YWJh
c2VVc2FnZSBSRUFEIGN1cnJlbnREYXRhYmFzZVVzYWdlIENPTlNUQU5UKQorICAgIFFfUFJPUEVS
VFkoaW50IGV4cGVjdGVkVXNhZ2UgUkVBRCBleHBlY3RlZFVzYWdlIENPTlNUQU5UKQorCitwdWJs
aWM6CisgICAgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3QoY29uc3QgUVN0cmluZyYg
ZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgaW50IGN1cnJlbnRRdW90
YSwgaW50IGN1cnJlbnRPcmlnaW5Vc2FnZSwgaW50IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBpbnQg
ZXhwZWN0ZWRVc2FnZSkKKyAgICAgICAgOiBRT2JqZWN0KCkKKyAgICAgICAgLCBtX2RhdGFiYXNl
TmFtZShkYXRhYmFzZU5hbWUpCisgICAgICAgICwgbV9kaXNwbGF5TmFtZShkaXNwbGF5TmFtZSkK
KyAgICAgICAgLCBtX2N1cnJlbnRRdW90YShjdXJyZW50UXVvdGEpCisgICAgICAgICwgbV9jdXJy
ZW50T3JpZ2luVXNhZ2UoY3VycmVudE9yaWdpblVzYWdlKQorICAgICAgICAsIG1fY3VycmVudERh
dGFiYXNlVXNhZ2UoY3VycmVudERhdGFiYXNlVXNhZ2UpCisgICAgICAgICwgbV9leHBlY3RlZFVz
YWdlKGV4cGVjdGVkVXNhZ2UpCisgICAgeworICAgIH0KKworICAgIFFTdHJpbmcgZGF0YWJhc2VO
YW1lKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhYmFzZU5hbWU7IH0KKyAgICBRU3RyaW5nIGRpc3Bs
YXlOYW1lKCkgY29uc3QgeyByZXR1cm4gbV9kaXNwbGF5TmFtZTsgfQorICAgIGludCBjdXJyZW50
UXVvdGEoKSBjb25zdCB7IHJldHVybiBtX2N1cnJlbnRRdW90YTsgfQorICAgIGludCBjdXJyZW50
T3JpZ2luVXNhZ2UoKSBjb25zdCB7IHJldHVybiBtX2N1cnJlbnRPcmlnaW5Vc2FnZTsgfQorICAg
IGludCBjdXJyZW50RGF0YWJhc2VVc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudERhdGFi
YXNlVXNhZ2U7IH0KKyAgICBpbnQgZXhwZWN0ZWRVc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhw
ZWN0ZWRVc2FnZTsgfQorCitwdWJsaWMgc2xvdHM6CisgICAgdm9pZCBhY2NlcHQoaW50IHNpemUp
IHsgZW1pdCBhY2NlcHRlZChzaXplKTsgfQorICAgIHZvaWQgcmVqZWN0KCkgeyBlbWl0IHJlamVj
dGVkKCk7IH0KKworc2lnbmFsczoKKyAgICB2b2lkIGFjY2VwdGVkKGludCBzaXplKTsKKyAgICB2
b2lkIHJlamVjdGVkKCk7CisKK3ByaXZhdGU6CisgICAgUVN0cmluZyBtX2RhdGFiYXNlTmFtZTsK
KyAgICBRU3RyaW5nIG1fZGlzcGxheU5hbWU7CisgICAgaW50IG1fY3VycmVudFF1b3RhOworICAg
IGludCBtX2N1cnJlbnRPcmlnaW5Vc2FnZTsKKyAgICBpbnQgbV9jdXJyZW50RGF0YWJhc2VVc2Fn
ZTsKKyAgICBpbnQgbV9leHBlY3RlZFVzYWdlOworfTsKKwogYm9vbCBRdERpYWxvZ1J1bm5lcjo6
aW5pdEZvckFsZXJ0KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29tcG9uZW50LCBRUXVpY2tJdGVt
KiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UpCiB7CiAgICAgRGlhbG9nQ29u
dGV4dE9iamVjdCogY29udGV4dE9iamVjdCA9IG5ldyBEaWFsb2dDb250ZXh0T2JqZWN0KG1lc3Nh
Z2UpOwpAQCAtMjY4LDYgKzMxMywxOSBAQCBib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRmls
ZVBpY2tlcihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSQogICAgIHJl
dHVybiB0cnVlOwogfQogCitib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90
YURpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwgUVF1aWNrSXRlbSogZGlh
bG9nUGFyZW50LCBjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFFTdHJpbmcmIGRp
c3BsYXlOYW1lLCBpbnQgY3VycmVudFF1b3RhLCBpbnQgY3VycmVudE9yaWdpblVzYWdlLCBpbnQg
Y3VycmVudERhdGFiYXNlVXNhZ2UsIGludCBleHBlY3RlZFVzYWdlKQoreworICAgIERhdGFiYXNl
UXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IERhdGFiYXNlUXVv
dGFEaWFsb2dDb250ZXh0T2JqZWN0KGRhdGFiYXNlTmFtZSwgZGlzcGxheU5hbWUsIGN1cnJlbnRR
dW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRV
c2FnZSk7CisgICAgaWYgKCFjcmVhdGVEaWFsb2coY29tcG9uZW50LCBkaWFsb2dQYXJlbnQsIGNv
bnRleHRPYmplY3QpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBjb25uZWN0KGNvbnRl
eHRPYmplY3QsIFNJR05BTChhY2NlcHRlZChpbnQpKSwgU0xPVChvbkRhdGFiYXNlUXVvdGFBY2Nl
cHRlZChpbnQpKSk7CisgICAgY29ubmVjdChjb250ZXh0T2JqZWN0LCBTSUdOQUwoYWNjZXB0ZWQo
aW50KSksIFNMT1QocXVpdCgpKSk7CisgICAgY29ubmVjdChjb250ZXh0T2JqZWN0LCBTSUdOQUwo
cmVqZWN0ZWQoKSksIFNMT1QocXVpdCgpKSk7CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwogYm9v
bCBRdERpYWxvZ1J1bm5lcjo6Y3JlYXRlRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29t
cG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFPYmplY3QqIGNvbnRleHRPYmplY3Qp
CiB7CiAgICAgUURlY2xhcmF0aXZlQ29udGV4dCogYmFzZUNvbnRleHQgPSBjb21wb25lbnQtPmNy
ZWF0aW9uQ29udGV4dCgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1F0RGlhbG9nUnVubmVyLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dS
dW5uZXIuaAppbmRleCAwZTk0ODFiZDkzNTY3Yzc5YmE3ZDhkZjc2MjViMmQxODY4YTM4OWY0Li44
MTllNmY0ZWFlMGQyMTQwMjI0OThiNDE0MjE3ZDM1YTY3N2UxODgyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuaAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuaApAQCAtNDMsNiArNDMsNyBAQCBwdWJs
aWM6CiAgICAgYm9vbCBpbml0Rm9yQ2VydGlmaWNhdGVWZXJpZmljYXRpb24oUURlY2xhcmF0aXZl
Q29tcG9uZW50KiwgUVF1aWNrSXRlbSosIGNvbnN0IFFTdHJpbmcmIGhvc3RuYW1lKTsKICAgICBi
b29sIGluaXRGb3JQcm94eUF1dGhlbnRpY2F0aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCosIFFR
dWlja0l0ZW0qLCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSwgdWludDE2X3QgcG9ydCwgY29uc3Qg
UVN0cmluZyYgcHJlZmlsbGVkVXNlcm5hbWUpOwogICAgIGJvb2wgaW5pdEZvckZpbGVQaWNrZXIo
UURlY2xhcmF0aXZlQ29tcG9uZW50KiwgUVF1aWNrSXRlbSosIGNvbnN0IFFTdHJpbmdMaXN0JiBz
ZWxlY3RlZEZpbGVzKTsKKyAgICBib29sIGluaXRGb3JEYXRhYmFzZVF1b3RhRGlhbG9nKFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCosIFFRdWlja0l0ZW0qLCBjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5h
bWUsIGNvbnN0IFFTdHJpbmcmIGRpc3BsYXlOYW1lLCBpbnQgY3VycmVudFF1b3RhLCBpbnQgY3Vy
cmVudE9yaWdpblVzYWdlLCBpbnQgY3VycmVudERhdGFiYXNlVXNhZ2UsIGludCBleHBlY3RlZFVz
YWdlKTsKIAogICAgIFFRdWlja0l0ZW0qIGRpYWxvZygpIGNvbnN0IHsgcmV0dXJuIG1fZGlhbG9n
LmdldCgpOyB9CiAKQEAgLTUyLDYgKzUzLDggQEAgcHVibGljOgogICAgIFFTdHJpbmcgdXNlcm5h
bWUoKSBjb25zdCB7IHJldHVybiBtX3VzZXJuYW1lOyB9CiAgICAgUVN0cmluZyBwYXNzd29yZCgp
IGNvbnN0IHsgcmV0dXJuIG1fcGFzc3dvcmQ7IH0KIAorICAgIGludCBkYXRhYmFzZVF1b3RhKCkg
Y29uc3QgeyByZXR1cm4gbV9kYXRhYmFzZVF1b3RhOyB9CisKICAgICBRU3RyaW5nTGlzdCBmaWxl
UGF0aHMoKSBjb25zdCB7IHJldHVybiBtX2ZpbGVwYXRoczsgfQogCiBwdWJsaWMgc2xvdHM6CkBA
IC03Myw2ICs3NiwxMiBAQCBwdWJsaWMgc2xvdHM6CiAgICAgICAgIG1fZmlsZXBhdGhzID0gZmls
ZVBhdGhzOwogICAgIH0KIAorICAgIHZvaWQgb25EYXRhYmFzZVF1b3RhQWNjZXB0ZWQoaW50IHF1
b3RhKQorICAgIHsKKyAgICAgICAgbV93YXNBY2NlcHRlZCA9IHRydWU7CisgICAgICAgIG1fZGF0
YWJhc2VRdW90YSA9IHF1b3RhOworICAgIH0KKwogcHJpdmF0ZToKICAgICBib29sIGNyZWF0ZURp
YWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqLCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIFFP
YmplY3QqIGNvbnRleHRPYmplY3QpOwogCkBAIC04NCw2ICs5Myw3IEBAIHByaXZhdGU6CiAgICAg
UVN0cmluZyBtX3VzZXJuYW1lOwogICAgIFFTdHJpbmcgbV9wYXNzd29yZDsKICAgICBRU3RyaW5n
TGlzdCBtX2ZpbGVwYXRoczsKKyAgICBpbnQgbV9kYXRhYmFzZVF1b3RhOwogfTsKIAogI2VuZGlm
IC8vIFF0RGlhbG9nUnVubmVyX2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
UXRXZWJQYWdlVUlDbGllbnQuY3BwCmluZGV4IGVmNzY0YzVjOWZiMGJhOTdlYWNmZWYyYWM1ZGRi
OWIwYzRlMjZhNzEuLjdiNzAyMDcyOTJlMGRlMDRlZTI1NTBmZGQyN2Y5YmE5ZTY3ODIyMGQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmNw
cApAQCAtMzEsNiArMzEsMjAgQEAKICNpbmNsdWRlIDxXS09wZW5QYW5lbFBhcmFtZXRlcnMuaD4K
ICNpbmNsdWRlIDxXS09wZW5QYW5lbFJlc3VsdExpc3RlbmVyLmg+CiAKKyNpbmNsdWRlIDxsaW1p
dHM+CisKK25hbWVzcGFjZSB7CisKK2lubGluZSBpbnQgdG9JbnQodW5zaWduZWQgbG9uZyBsb25n
IHgpCit7CisgICAgaWYgKHggPiBzdGQ6Om51bWVyaWNfbGltaXRzPGludD46Om1heCgpKQorICAg
ICAgICByZXR1cm4gc3RkOjpudW1lcmljX2xpbWl0czxpbnQ+OjptYXgoKTsKKyAgICBlbHNlCisg
ICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxpbnQ+KHgpOworfQorCit9IC8vIGFub255bW91cyBu
YW1lc3BhY2UuCisKIFF0V2ViUGFnZVVJQ2xpZW50OjpRdFdlYlBhZ2VVSUNsaWVudChXS1BhZ2VS
ZWYgcGFnZVJlZiwgUVF1aWNrV2ViVmlldyogd2ViVmlldykKICAgICA6IG1fd2ViVmlldyh3ZWJW
aWV3KQogewpAQCAtNDMsMTAgKzU3LDE2IEBAIFF0V2ViUGFnZVVJQ2xpZW50OjpRdFdlYlBhZ2VV
SUNsaWVudChXS1BhZ2VSZWYgcGFnZVJlZiwgUVF1aWNrV2ViVmlldyogd2ViVmlldykKICAgICB1
aUNsaWVudC5ydW5KYXZhU2NyaXB0UHJvbXB0ID0gcnVuSmF2YVNjcmlwdFByb21wdDsKICAgICB1
aUNsaWVudC5ydW5PcGVuUGFuZWwgPSBydW5PcGVuUGFuZWw7CiAgICAgdWlDbGllbnQubW91c2VE
aWRNb3ZlT3ZlckVsZW1lbnQgPSBtb3VzZURpZE1vdmVPdmVyRWxlbWVudDsKKyAgICB1aUNsaWVu
dC5leGNlZWRlZERhdGFiYXNlUXVvdGEgPSBleGNlZWRlZERhdGFiYXNlUXVvdGE7CiAgICAgdWlD
bGllbnQuZGVjaWRlUG9saWN5Rm9yR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdCA9IHBvbGlj
eUZvckdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3Q7CiAgICAgV0tQYWdlU2V0UGFnZVVJQ2xp
ZW50KHBhZ2VSZWYsICZ1aUNsaWVudCk7CiB9CiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBRdFdlYlBh
Z2VVSUNsaWVudDo6ZXhjZWVkZWREYXRhYmFzZVF1b3RhKGNvbnN0IFFTdHJpbmcmIGRhdGFiYXNl
TmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJy
ZW50UXVvdGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50T3JpZ2luVXNhZ2UsIHVuc2lnbmVk
IGxvbmcgbG9uZyBjdXJyZW50RGF0YWJhc2VVc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGV4cGVj
dGVkVXNhZ2UpCit7CisgICAgcmV0dXJuIG1fd2ViVmlldy0+ZF9mdW5jKCktPmV4Y2VlZGVkRGF0
YWJhc2VRdW90YShkYXRhYmFzZU5hbWUsIGRpc3BsYXlOYW1lLCBjdXJyZW50UXVvdGEsIGN1cnJl
bnRPcmlnaW5Vc2FnZSwgY3VycmVudERhdGFiYXNlVXNhZ2UsIGV4cGVjdGVkVXNhZ2UpOworfQor
CiB2b2lkIFF0V2ViUGFnZVVJQ2xpZW50OjpydW5KYXZhU2NyaXB0QWxlcnQoY29uc3QgUVN0cmlu
ZyYgbWVzc2FnZSkKIHsKICAgICBtX3dlYlZpZXctPmRfZnVuYygpLT5ydW5KYXZhU2NyaXB0QWxl
cnQobWVzc2FnZSk7CkBAIC04OCw2ICsxMDgsMjAgQEAgc3RhdGljIFF0V2ViUGFnZVVJQ2xpZW50
KiB0b1F0V2ViUGFnZVVJQ2xpZW50KGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCiAgICAgcmV0dXJu
IHJlaW50ZXJwcmV0X2Nhc3Q8UXRXZWJQYWdlVUlDbGllbnQqPihjb25zdF9jYXN0PHZvaWQqPihj
bGllbnRJbmZvKSk7CiB9CiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBRdFdlYlBhZ2VVSUNsaWVudDo6
ZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdLUGFnZVJlZiBwYWdlLCBXS0ZyYW1lUmVmIGZyYW1lLCBX
S1NlY3VyaXR5T3JpZ2luUmVmLCBXS1N0cmluZ1JlZiBkYXRhYmFzZU5hbWUsIFdLU3RyaW5nUmVm
IGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudFF1b3RhLCB1bnNpZ25lZCBs
b25nIGxvbmcgY3VycmVudE9yaWdpblVzYWdlLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudERh
dGFiYXNlVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBleHBlY3RlZFVzYWdlLCBjb25zdCB2b2lk
ICpjbGllbnRJbmZvKQoreworICAgIFFTdHJpbmcgcURpc3BsYXlOYW1lID0gV0tTdHJpbmdDb3B5
UVN0cmluZyhkaXNwbGF5TmFtZSk7CisgICAgUVN0cmluZyBxRGF0YWJhc2VOYW1lID0gV0tTdHJp
bmdDb3B5UVN0cmluZyhkYXRhYmFzZU5hbWUpOworICAgIGludCBxQ3VycmVudFF1b3RhSW5LaWxv
Qnl0ZXMgPSB0b0ludChjdXJyZW50UXVvdGEgLyAxMDI0KTsKKyAgICBpbnQgcUN1cnJlbnRPcmln
aW5Vc2FnZUluS2lsb0J5dGVzID0gdG9JbnQoY3VycmVudE9yaWdpblVzYWdlIC8gMTAyNCk7Cisg
ICAgaW50IHFDdXJyZW50RGF0YWJhc2VVc2FnZUluS2lsb0J5dGVzID0gdG9JbnQoY3VycmVudERh
dGFiYXNlVXNhZ2UgLyAxMDI0KTsKKyAgICBpbnQgcUV4cGVjdGVkVXNhZ2VJbktpbG9CeXRlcyA9
IHRvSW50KGV4cGVjdGVkVXNhZ2UgLyAxMDI0KTsKKyAgICBpbnQgcmVzdWx0ID0gdG9RdFdlYlBh
Z2VVSUNsaWVudChjbGllbnRJbmZvKS0+ZXhjZWVkZWREYXRhYmFzZVF1b3RhKHFEYXRhYmFzZU5h
bWUsIHFEaXNwbGF5TmFtZSwgcUN1cnJlbnRRdW90YUluS2lsb0J5dGVzLCBxQ3VycmVudE9yaWdp
blVzYWdlSW5LaWxvQnl0ZXMsIHFDdXJyZW50RGF0YWJhc2VVc2FnZUluS2lsb0J5dGVzLCBxRXhw
ZWN0ZWRVc2FnZUluS2lsb0J5dGVzKTsKKworICAgIC8vIENvbnZlcnQgZnJvbSBLaWxvQnl0ZXMg
dG8gQnl0ZXMuCisgICAgcmV0dXJuIHJlc3VsdCA+IDAgPyByZXN1bHQgKiAxMDI0IDogMDsKK30K
Kwogdm9pZCBRdFdlYlBhZ2VVSUNsaWVudDo6cnVuSmF2YVNjcmlwdEFsZXJ0KFdLUGFnZVJlZiwg
V0tTdHJpbmdSZWYgYWxlcnRUZXh0LCBXS0ZyYW1lUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZv
KQogewogICAgIFFTdHJpbmcgcUFsZXJ0VGV4dCA9IFdLU3RyaW5nQ29weVFTdHJpbmcoYWxlcnRU
ZXh0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VV
SUNsaWVudC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50
LmgKaW5kZXggOGNmZTEzYzIxM2YxMTEwOGE1M2I3Y2NhMGNjMGUxZGYyOWZmZTM3YS4uZjI0NGI0
OTkwNWIyN2E0MjJiN2Q5MzY1OWViNzU4MDg3YTExMDc0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmgKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmgKQEAgLTQxLDYgKzQxLDcgQEAgcHVi
bGljOgogICAgIFF0V2ViUGFnZVVJQ2xpZW50KFdLUGFnZVJlZiwgUVF1aWNrV2ViVmlldyopOwog
CiBwcml2YXRlOgorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBleGNlZWRlZERhdGFiYXNlUXVvdGEo
Y29uc3QgUVN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwg
dW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnRRdW90YSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJl
bnRPcmlnaW5Vc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnREYXRhYmFzZVVzYWdlLCB1
bnNpZ25lZCBsb25nIGxvbmcgZXhwZWN0ZWRVc2FnZSk7CiAgICAgdm9pZCBydW5KYXZhU2NyaXB0
QWxlcnQoY29uc3QgUVN0cmluZyYgbWVzc2FnZSk7CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0Q29u
ZmlybShjb25zdCBRU3RyaW5nJiBtZXNzYWdlKTsKICAgICBRU3RyaW5nIHJ1bkphdmFTY3JpcHRQ
cm9tcHQoY29uc3QgUVN0cmluZyYgbWVzc2FnZSwgY29uc3QgUVN0cmluZyYgZGVmYXVsdFZhbHVl
LCBib29sJiBvayk7CkBAIC01NCw2ICs1NSw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIFdLU3Ry
aW5nUmVmIHJ1bkphdmFTY3JpcHRQcm9tcHQoV0tQYWdlUmVmLCBXS1N0cmluZ1JlZiBtZXNzYWdl
LCBXS1N0cmluZ1JlZiBkZWZhdWx0VmFsdWUsIFdLRnJhbWVSZWYsIGNvbnN0IHZvaWQqIGNsaWVu
dEluZm8pOwogICAgIHN0YXRpYyB2b2lkIHJ1bk9wZW5QYW5lbChXS1BhZ2VSZWYsIFdLRnJhbWVS
ZWYsIFdLT3BlblBhbmVsUGFyYW1ldGVyc1JlZiwgV0tPcGVuUGFuZWxSZXN1bHRMaXN0ZW5lclJl
ZiwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQgbW91c2VEaWRNb3Zl
T3ZlckVsZW1lbnQoV0tQYWdlUmVmLCBXS0hpdFRlc3RSZXN1bHRSZWYsIFdLRXZlbnRNb2RpZmll
cnMsIFdLVHlwZVJlZiB1c2VyRGF0YSwgY29uc3Qgdm9pZCogY2xpZW50SW5mbyk7CisgICAgc3Rh
dGljIHVuc2lnbmVkIGxvbmcgbG9uZyBleGNlZWRlZERhdGFiYXNlUXVvdGEoV0tQYWdlUmVmIHBh
Z2UsIFdLRnJhbWVSZWYgZnJhbWUsIFdLU2VjdXJpdHlPcmlnaW5SZWYsIFdLU3RyaW5nUmVmIGRh
dGFiYXNlTmFtZSwgV0tTdHJpbmdSZWYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyBj
dXJyZW50UXVvdGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50T3JpZ2luVXNhZ2UsIHVuc2ln
bmVkIGxvbmcgbG9uZyBjdXJyZW50RGF0YWJhc2VVc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGV4
cGVjdGVkVXNhZ2UsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogICAgIHN0YXRpYyB2b2lkIHBv
bGljeUZvckdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3QoV0tQYWdlUmVmLCBXS0ZyYW1lUmVm
LCBXS1NlY3VyaXR5T3JpZ2luUmVmLCBXS0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RSZWYs
IGNvbnN0IHZvaWQqKTsKIAogICAgIFFRdWlja1dlYlZpZXcqIG1fd2ViVmlldzsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133225</attachid>
            <date>2012-03-22 05:07:22 -0700</date>
            <delta_ts>2012-03-22 06:02:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81827-20120322130719.patch</filename>
            <type>text/plain</type>
            <size>17376</size>
            <attacher name="Alexander Færøy">ahf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYThjOGIzZmM5YjE0MzRh
ZDE0MzAwNjE4MDE0ODMxOTkzZGRjZjJiMC4uODJjZGIzYzg4MDU2MzIxYzQ2YzZiYjk3NTAzNjI5
OGEzMTE1MjQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTAzLTIxICBBbGV4
YW5kZXIgRsOmcsO4eSAgPGFsZXhhbmRlci5mYWVyb3lAbm9raWEuY29tPgorCisgICAgICAgIFtR
dF1bV0syXSBBZGQgUU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTgyNworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhdGNoIGJ5IFBpZXJyZSBS
b3NzaSBhbmQgQWxleGFuZGVyIEbDpnLDuHkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEg
UU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzLgorCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2
YXRlOjpleGNlZWRlZERhdGFiYXNlUXVvdGEpOgorICAgICAgICAoUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbDo6ZGF0YWJhc2VRdW90YURpYWxvZyk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsOjpzZXREYXRhYmFzZVF1b3RhRGlhbG9nKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwOgorICAgICAgICAoRGF0YWJhc2VR
dW90YURpYWxvZ0NvbnRleHRPYmplY3QpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0Nv
bnRleHRPYmplY3Q6OkRhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0KToKKyAgICAgICAg
KERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpkYXRhYmFzZU5hbWUpOgorICAgICAg
ICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmRpc3BsYXlOYW1lKToKKyAgICAg
ICAgKERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpjdXJyZW50UXVvdGEpOgorICAg
ICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmN1cnJlbnRPcmlnaW5Vc2Fn
ZSk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6Y3VycmVudERh
dGFiYXNlVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6
OmV4cGVjdGVkVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmpl
Y3Q6OmFjY2VwdCk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6
cmVqZWN0KToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURp
YWxvZyk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmg6CisgICAgICAg
IChRdERpYWxvZ1J1bm5lcik6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6ZGF0YWJhc2VRdW90
YSk6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6b25EYXRhYmFzZVF1b3RhQWNjZXB0ZWQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHA6CisgICAgICAgIChR
dFdlYlBhZ2VVSUNsaWVudDo6UXRXZWJQYWdlVUlDbGllbnQpOgorICAgICAgICAoUXRXZWJQYWdl
VUlDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YSk6CisgICAgICAgICogVUlQcm9jZXNzL3F0
L1F0V2ViUGFnZVVJQ2xpZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRR
dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdERhdGFi
YXNlRGlyZWN0b3J5KToKKwogMjAxMi0wMy0yMSAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIHVzZSBvZiBDRyByb3VuZGVkLXJlY3QgcHJpbWl0
aXZlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmll
dy5jcHAKaW5kZXggNDA0NGVjM2VlMDAxZmQ2YzM1NGE3MjdkNDJhMmExNmYyODdjZDI0NC4uZTZi
OWEzNDkxMjk3MGE0NDgyOGNhMjU1OWFkODcyYmE5MjZmZDFjZiAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0zOTksNiArMzk5
LDIxIEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmNob29zZUZpbGVzKFdLT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXJSZWYgbGlzdGVuZXJSZWYsCiAKIH0KIAoraW50IFFRdWlja1dlYlZpZXdQ
cml2YXRlOjpleGNlZWRlZERhdGFiYXNlUXVvdGEoY29uc3QgUVN0cmluZyYgZGF0YWJhc2VOYW1l
LCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgaW50IGN1cnJlbnRRdW90YSwgaW50IGN1cnJl
bnRPcmlnaW5Vc2FnZSwgaW50IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBpbnQgZXhwZWN0ZWRVc2Fn
ZSkKK3sKKyAgICBpZiAoIWRhdGFiYXNlUXVvdGFEaWFsb2cpCisgICAgICAgIHJldHVybiAwOwor
CisgICAgUV9RKFFRdWlja1dlYlZpZXcpOworICAgIFF0RGlhbG9nUnVubmVyIGRpYWxvZ1J1bm5l
cjsKKyAgICBpZiAoIWRpYWxvZ1J1bm5lci5pbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhkYXRh
YmFzZVF1b3RhRGlhbG9nLCBxLCBkYXRhYmFzZU5hbWUsIGRpc3BsYXlOYW1lLCBjdXJyZW50UXVv
dGEsIGN1cnJlbnRPcmlnaW5Vc2FnZSwgY3VycmVudERhdGFiYXNlVXNhZ2UsIGV4cGVjdGVkVXNh
Z2UpKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGV4ZWNEaWFsb2dSdW5uZXIoZGlhbG9nUnVu
bmVyKTsKKworICAgIHJldHVybiBkaWFsb2dSdW5uZXIud2FzQWNjZXB0ZWQoKSA/IGRpYWxvZ1J1
bm5lci5kYXRhYmFzZVF1b3RhKCkgOiAwOworfQorCiB2b2lkIFFRdWlja1dlYlZpZXdQcml2YXRl
OjpzZXRWaWV3SW5BdHRhY2hlZFByb3BlcnRpZXMoUU9iamVjdCogb2JqZWN0KQogewogICAgIFFf
UShRUXVpY2tXZWJWaWV3KTsKQEAgLTkwNiw2ICs5MjEsMjEgQEAgdm9pZCBRUXVpY2tXZWJWaWV3
RXhwZXJpbWVudGFsOjpzZXRGaWxlUGlja2VyKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogZmlsZVBp
Y2tlcikKICAgICBlbWl0IGZpbGVQaWNrZXJDaGFuZ2VkKCk7CiB9CiAKK1FEZWNsYXJhdGl2ZUNv
bXBvbmVudCogUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6ZGF0YWJhc2VRdW90YURpYWxvZygp
IGNvbnN0Cit7CisgICAgUV9EKGNvbnN0IFFRdWlja1dlYlZpZXcpOworICAgIHJldHVybiBkLT5k
YXRhYmFzZVF1b3RhRGlhbG9nOworfQorCit2b2lkIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6
OnNldERhdGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiBkYXRhYmFzZVF1
b3RhRGlhbG9nKQoreworICAgIFFfRChRUXVpY2tXZWJWaWV3KTsKKyAgICBpZiAoZC0+ZGF0YWJh
c2VRdW90YURpYWxvZyA9PSBkYXRhYmFzZVF1b3RhRGlhbG9nKQorICAgICAgICByZXR1cm47Cisg
ICAgZC0+ZGF0YWJhc2VRdW90YURpYWxvZyA9IGRhdGFiYXNlUXVvdGFEaWFsb2c7CisgICAgZW1p
dCBkYXRhYmFzZVF1b3RhRGlhbG9nQ2hhbmdlZCgpOworfQorCiBRU3RyaW5nIFFRdWlja1dlYlZp
ZXdFeHBlcmltZW50YWw6OnVzZXJBZ2VudCgpIGNvbnN0CiB7CiAgICAgUV9EKGNvbnN0IFFRdWlj
a1dlYlZpZXcpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3X3AuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNr
d2Vidmlld19wLmgKaW5kZXggZGFkMmQ1ZjZiZmQyYWE1NzhlMThiZDMzYzljNDI1N2ZjNzg5OTFj
Yi4uYzIxYjJlOWI2NjBlNmIwMWM2MjMyZTRmMDI5N2JhMDU5YmMzZTlkOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oCkBAIC0yNDgs
NiArMjQ4LDcgQEAgY2xhc3MgUVdFQktJVF9FWFBPUlQgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRh
bCA6IHB1YmxpYyBRT2JqZWN0IHsKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCogY2VydGlmaWNhdGVWZXJpZmljYXRpb25EaWFsb2cgUkVBRCBjZXJ0aWZpY2F0ZVZlcmlmaWNh
dGlvbkRpYWxvZyBXUklURSBzZXRDZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbkRpYWxvZyBOT1RJRlkg
Y2VydGlmaWNhdGVWZXJpZmljYXRpb25EaWFsb2dDaGFuZ2VkKQogICAgIFFfUFJPUEVSVFkoUURl
Y2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0b3IgUkVBRCBpdGVtU2VsZWN0b3IgV1JJVEUg
c2V0SXRlbVNlbGVjdG9yIE5PVElGWSBpdGVtU2VsZWN0b3JDaGFuZ2VkKQogICAgIFFfUFJPUEVS
VFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBmaWxlUGlja2VyIFJFQUQgZmlsZVBpY2tlciBXUklU
RSBzZXRGaWxlUGlja2VyIE5PVElGWSBmaWxlUGlja2VyQ2hhbmdlZCkKKyAgICBRX1BST1BFUlRZ
KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogZGF0YWJhc2VRdW90YURpYWxvZyBSRUFEIGRhdGFiYXNl
UXVvdGFEaWFsb2cgV1JJVEUgc2V0RGF0YWJhc2VRdW90YURpYWxvZyBOT1RJRlkgZGF0YWJhc2VR
dW90YURpYWxvZ0NoYW5nZWQpCiAgICAgUV9QUk9QRVJUWShRV2ViUHJlZmVyZW5jZXMqIHByZWZl
cmVuY2VzIFJFQUQgcHJlZmVyZW5jZXMgQ09OU1RBTlQgRklOQUwpCiAgICAgUV9QUk9QRVJUWShR
V2ViVmlld3BvcnRJbmZvKiB2aWV3cG9ydEluZm8gUkVBRCB2aWV3cG9ydEluZm8gQ09OU1RBTlQg
RklOQUwpCiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVMaXN0UHJvcGVydHk8UVF1aWNrVXJs
U2NoZW1lRGVsZWdhdGU+IHVybFNjaGVtZURlbGVnYXRlcyBSRUFEIHNjaGVtZURlbGVnYXRlcykK
QEAgLTI3OCw2ICsyNzksOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRQcm94eUF1dGhlbnRpY2F0
aW9uRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBv
bmVudCogZmlsZVBpY2tlcigpIGNvbnN0OwogICAgIHZvaWQgc2V0RmlsZVBpY2tlcihRRGVjbGFy
YXRpdmVDb21wb25lbnQqKTsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQqIGRhdGFiYXNlUXVv
dGFEaWFsb2coKSBjb25zdDsKKyAgICB2b2lkIHNldERhdGFiYXNlUXVvdGFEaWFsb2coUURlY2xh
cmF0aXZlQ29tcG9uZW50Kik7CiAgICAgUVN0cmluZyB1c2VyQWdlbnQoKSBjb25zdDsKICAgICB2
b2lkIHNldFVzZXJBZ2VudChjb25zdCBRU3RyaW5nJiB1c2VyQWdlbnQpOwogCkBAIC0zMzMsNiAr
MzM2LDcgQEAgUV9TSUdOQUxTOgogICAgIHZvaWQgY2VydGlmaWNhdGVWZXJpZmljYXRpb25EaWFs
b2dDaGFuZ2VkKCk7CiAgICAgdm9pZCBpdGVtU2VsZWN0b3JDaGFuZ2VkKCk7CiAgICAgdm9pZCBm
aWxlUGlja2VyQ2hhbmdlZCgpOworICAgIHZvaWQgZGF0YWJhc2VRdW90YURpYWxvZ0NoYW5nZWQo
KTsKICAgICB2b2lkIGRvd25sb2FkUmVxdWVzdGVkKFFXZWJEb3dubG9hZEl0ZW0qIGRvd25sb2Fk
SXRlbSk7CiAgICAgdm9pZCBwZXJtaXNzaW9uUmVxdWVzdGVkKFFXZWJQZXJtaXNzaW9uUmVxdWVz
dCogcGVybWlzc2lvbik7CiAgICAgdm9pZCBtZXNzYWdlUmVjZWl2ZWQoY29uc3QgUVZhcmlhbnRN
YXAmIG1lc3NhZ2UpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3BfcC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9x
cXVpY2t3ZWJ2aWV3X3BfcC5oCmluZGV4IDVjNmI2YjYzYWU2YWIwY2YwOWRkYjM3NzVkZWM1ZmRi
Nzk4ZjVjOWUuLjI1M2RkYjJjYjQ0MGQ3ZGE0ZTMyYWUyYWE4OGM2Mzk1NDU3NmNjMGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmlld19wX3Au
aAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9w
LmgKQEAgLTk2LDYgKzk2LDcgQEAgcHVibGljOgogICAgIHZvaWQgX3Ffb25JY29uQ2hhbmdlZEZv
clBhZ2VVUkwoY29uc3QgUVVybCYgcGFnZVVSTCwgY29uc3QgUVVybCYgaWNvblVSTFN0cmluZyk7
CiAKICAgICB2b2lkIGNob29zZUZpbGVzKFdLT3BlblBhbmVsUmVzdWx0TGlzdGVuZXJSZWYsIGNv
bnN0IFFTdHJpbmdMaXN0JiBzZWxlY3RlZEZpbGVOYW1lcywgUXRXZWJQYWdlVUlDbGllbnQ6OkZp
bGVDaG9vc2VyVHlwZSk7CisgICAgaW50IGV4Y2VlZGVkRGF0YWJhc2VRdW90YShjb25zdCBRU3Ry
aW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFFTdHJpbmcmIGRpc3BsYXlOYW1lLCBpbnQgY3VycmVu
dFF1b3RhLCBpbnQgY3VycmVudE9yaWdpblVzYWdlLCBpbnQgY3VycmVudERhdGFiYXNlVXNhZ2Us
IGludCBleHBlY3RlZFVzYWdlKTsKICAgICB2b2lkIHJ1bkphdmFTY3JpcHRBbGVydChjb25zdCBR
U3RyaW5nJik7CiAgICAgYm9vbCBydW5KYXZhU2NyaXB0Q29uZmlybShjb25zdCBRU3RyaW5nJik7
CiAgICAgUVN0cmluZyBydW5KYXZhU2NyaXB0UHJvbXB0KGNvbnN0IFFTdHJpbmcmLCBjb25zdCBR
U3RyaW5nJiBkZWZhdWx0VmFsdWUsIGJvb2wmIG9rKTsKQEAgLTE1Niw2ICsxNTcsNyBAQCBwcm90
ZWN0ZWQ6CiAgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBpdGVtU2VsZWN0b3I7CiAgICAgUURl
Y2xhcmF0aXZlQ29tcG9uZW50KiBwcm94eUF1dGhlbnRpY2F0aW9uRGlhbG9nOwogICAgIFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCogZmlsZVBpY2tlcjsKKyAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGRhdGFiYXNlUXVvdGFEaWFsb2c7CiAKICAgICBXZWJDb3JlOjpWaWV3cG9ydEFyZ3VtZW50cyB2
aWV3cG9ydEFyZ3VtZW50czsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L3F0L1F0RGlhbG9nUnVubmVyLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERp
YWxvZ1J1bm5lci5jcHAKaW5kZXggMDExMWE3MzE2NzczMDIwOGIwNjBlZTI3MGJlYzdhZWRmODkz
ZDFmYy4uY2ZlNjI2ODgzNzUxOGIwMGNiODIxZjI5OGEzYjkyZjFmYjBhMjk4NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwCkBAIC0xODIsNiAr
MTgyLDUxIEBAIHByaXZhdGU6CiAgICAgUVN0cmluZ0xpc3QgbV9maWxlTGlzdDsKIH07CiAKK2Ns
YXNzIERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0IDogcHVibGljIFFPYmplY3Qgewor
ICAgIFFfT0JKRUNUCisgICAgUV9QUk9QRVJUWShRU3RyaW5nIGRhdGFiYXNlTmFtZSBSRUFEIGRh
dGFiYXNlTmFtZSBDT05TVEFOVCkKKyAgICBRX1BST1BFUlRZKFFTdHJpbmcgZGlzcGxheU5hbWUg
UkVBRCBkaXNwbGF5TmFtZSBDT05TVEFOVCkKKyAgICBRX1BST1BFUlRZKGludCBjdXJyZW50UXVv
dGEgUkVBRCBjdXJyZW50UXVvdGEgQ09OU1RBTlQpCisgICAgUV9QUk9QRVJUWShpbnQgY3VycmVu
dE9yaWdpblVzYWdlIFJFQUQgY3VycmVudE9yaWdpblVzYWdlIENPTlNUQU5UKQorICAgIFFfUFJP
UEVSVFkoaW50IGN1cnJlbnREYXRhYmFzZVVzYWdlIFJFQUQgY3VycmVudERhdGFiYXNlVXNhZ2Ug
Q09OU1RBTlQpCisgICAgUV9QUk9QRVJUWShpbnQgZXhwZWN0ZWRVc2FnZSBSRUFEIGV4cGVjdGVk
VXNhZ2UgQ09OU1RBTlQpCisKK3B1YmxpYzoKKyAgICBEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4
dE9iamVjdChjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFFTdHJpbmcmIGRpc3Bs
YXlOYW1lLCBpbnQgY3VycmVudFF1b3RhLCBpbnQgY3VycmVudE9yaWdpblVzYWdlLCBpbnQgY3Vy
cmVudERhdGFiYXNlVXNhZ2UsIGludCBleHBlY3RlZFVzYWdlKQorICAgICAgICA6IFFPYmplY3Qo
KQorICAgICAgICAsIG1fZGF0YWJhc2VOYW1lKGRhdGFiYXNlTmFtZSkKKyAgICAgICAgLCBtX2Rp
c3BsYXlOYW1lKGRpc3BsYXlOYW1lKQorICAgICAgICAsIG1fY3VycmVudFF1b3RhKGN1cnJlbnRR
dW90YSkKKyAgICAgICAgLCBtX2N1cnJlbnRPcmlnaW5Vc2FnZShjdXJyZW50T3JpZ2luVXNhZ2Up
CisgICAgICAgICwgbV9jdXJyZW50RGF0YWJhc2VVc2FnZShjdXJyZW50RGF0YWJhc2VVc2FnZSkK
KyAgICAgICAgLCBtX2V4cGVjdGVkVXNhZ2UoZXhwZWN0ZWRVc2FnZSkKKyAgICB7CisgICAgfQor
CisgICAgUVN0cmluZyBkYXRhYmFzZU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2RhdGFiYXNlTmFt
ZTsgfQorICAgIFFTdHJpbmcgZGlzcGxheU5hbWUoKSBjb25zdCB7IHJldHVybiBtX2Rpc3BsYXlO
YW1lOyB9CisgICAgaW50IGN1cnJlbnRRdW90YSgpIGNvbnN0IHsgcmV0dXJuIG1fY3VycmVudFF1
b3RhOyB9CisgICAgaW50IGN1cnJlbnRPcmlnaW5Vc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fY3Vy
cmVudE9yaWdpblVzYWdlOyB9CisgICAgaW50IGN1cnJlbnREYXRhYmFzZVVzYWdlKCkgY29uc3Qg
eyByZXR1cm4gbV9jdXJyZW50RGF0YWJhc2VVc2FnZTsgfQorICAgIGludCBleHBlY3RlZFVzYWdl
KCkgY29uc3QgeyByZXR1cm4gbV9leHBlY3RlZFVzYWdlOyB9CisKK3B1YmxpYyBzbG90czoKKyAg
ICB2b2lkIGFjY2VwdChpbnQgc2l6ZSkgeyBlbWl0IGFjY2VwdGVkKHNpemUpOyB9CisgICAgdm9p
ZCByZWplY3QoKSB7IGVtaXQgcmVqZWN0ZWQoKTsgfQorCitzaWduYWxzOgorICAgIHZvaWQgYWNj
ZXB0ZWQoaW50IHNpemUpOworICAgIHZvaWQgcmVqZWN0ZWQoKTsKKworcHJpdmF0ZToKKyAgICBR
U3RyaW5nIG1fZGF0YWJhc2VOYW1lOworICAgIFFTdHJpbmcgbV9kaXNwbGF5TmFtZTsKKyAgICBp
bnQgbV9jdXJyZW50UXVvdGE7CisgICAgaW50IG1fY3VycmVudE9yaWdpblVzYWdlOworICAgIGlu
dCBtX2N1cnJlbnREYXRhYmFzZVVzYWdlOworICAgIGludCBtX2V4cGVjdGVkVXNhZ2U7Cit9Owor
CiBib29sIFF0RGlhbG9nUnVubmVyOjppbml0Rm9yQWxlcnQoUURlY2xhcmF0aXZlQ29tcG9uZW50
KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwgY29uc3QgUVN0cmluZyYgbWVz
c2FnZSkKIHsKICAgICBEaWFsb2dDb250ZXh0T2JqZWN0KiBjb250ZXh0T2JqZWN0ID0gbmV3IERp
YWxvZ0NvbnRleHRPYmplY3QobWVzc2FnZSk7CkBAIC0yNjgsNiArMzEzLDE5IEBAIGJvb2wgUXRE
aWFsb2dSdW5uZXI6OmluaXRGb3JGaWxlUGlja2VyKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29t
cG9uZW50LCBRUXVpY2tJCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKK2Jvb2wgUXREaWFsb2dSdW5u
ZXI6OmluaXRGb3JEYXRhYmFzZVF1b3RhRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCogY29t
cG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIGRhdGFiYXNl
TmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxheU5hbWUsIGludCBjdXJyZW50UXVvdGEsIGludCBj
dXJyZW50T3JpZ2luVXNhZ2UsIGludCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgaW50IGV4cGVjdGVk
VXNhZ2UpCit7CisgICAgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3QqIGNvbnRleHRP
YmplY3QgPSBuZXcgRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3QoZGF0YWJhc2VOYW1l
LCBkaXNwbGF5TmFtZSwgY3VycmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2UsIGN1cnJlbnRE
YXRhYmFzZVVzYWdlLCBleHBlY3RlZFVzYWdlKTsKKyAgICBpZiAoIWNyZWF0ZURpYWxvZyhjb21w
b25lbnQsIGRpYWxvZ1BhcmVudCwgY29udGV4dE9iamVjdCkpCisgICAgICAgIHJldHVybiBmYWxz
ZTsKKworICAgIGNvbm5lY3QoY29udGV4dE9iamVjdCwgU0lHTkFMKGFjY2VwdGVkKGludCkpLCBT
TE9UKG9uRGF0YWJhc2VRdW90YUFjY2VwdGVkKGludCkpKTsKKyAgICBjb25uZWN0KGNvbnRleHRP
YmplY3QsIFNJR05BTChhY2NlcHRlZChpbnQpKSwgU0xPVChxdWl0KCkpKTsKKyAgICBjb25uZWN0
KGNvbnRleHRPYmplY3QsIFNJR05BTChyZWplY3RlZCgpKSwgU0xPVChxdWl0KCkpKTsKKworICAg
IHJldHVybiB0cnVlOworfQorCiBib29sIFF0RGlhbG9nUnVubmVyOjpjcmVhdGVEaWFsb2coUURl
Y2xhcmF0aXZlQ29tcG9uZW50KiBjb21wb25lbnQsIFFRdWlja0l0ZW0qIGRpYWxvZ1BhcmVudCwg
UU9iamVjdCogY29udGV4dE9iamVjdCkKIHsKICAgICBRRGVjbGFyYXRpdmVDb250ZXh0KiBiYXNl
Q29udGV4dCA9IGNvbXBvbmVudC0+Y3JlYXRpb25Db250ZXh0KCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1bm5lci5oCmluZGV4IDBlOTQ4MWJkOTM1NjdjNzliYTdk
OGRmNzYyNWIyZDE4NjhhMzg5ZjQuLjgxOWU2ZjRlYWUwZDIxNDAyMjQ5OGI0MTQyMTdkMzVhNjc3
ZTE4ODIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1
bm5lci5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1bm5lci5o
CkBAIC00Myw2ICs0Myw3IEBAIHB1YmxpYzoKICAgICBib29sIGluaXRGb3JDZXJ0aWZpY2F0ZVZl
cmlmaWNhdGlvbihRRGVjbGFyYXRpdmVDb21wb25lbnQqLCBRUXVpY2tJdGVtKiwgY29uc3QgUVN0
cmluZyYgaG9zdG5hbWUpOwogICAgIGJvb2wgaW5pdEZvclByb3h5QXV0aGVudGljYXRpb24oUURl
Y2xhcmF0aXZlQ29tcG9uZW50KiwgUVF1aWNrSXRlbSosIGNvbnN0IFFTdHJpbmcmIGhvc3RuYW1l
LCB1aW50MTZfdCBwb3J0LCBjb25zdCBRU3RyaW5nJiBwcmVmaWxsZWRVc2VybmFtZSk7CiAgICAg
Ym9vbCBpbml0Rm9yRmlsZVBpY2tlcihRRGVjbGFyYXRpdmVDb21wb25lbnQqLCBRUXVpY2tJdGVt
KiwgY29uc3QgUVN0cmluZ0xpc3QmIHNlbGVjdGVkRmlsZXMpOworICAgIGJvb2wgaW5pdEZvckRh
dGFiYXNlUXVvdGFEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiwgUVF1aWNrSXRlbSosIGNv
bnN0IFFTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxheU5hbWUsIGlu
dCBjdXJyZW50UXVvdGEsIGludCBjdXJyZW50T3JpZ2luVXNhZ2UsIGludCBjdXJyZW50RGF0YWJh
c2VVc2FnZSwgaW50IGV4cGVjdGVkVXNhZ2UpOwogCiAgICAgUVF1aWNrSXRlbSogZGlhbG9nKCkg
Y29uc3QgeyByZXR1cm4gbV9kaWFsb2cuZ2V0KCk7IH0KIApAQCAtNTIsNiArNTMsOCBAQCBwdWJs
aWM6CiAgICAgUVN0cmluZyB1c2VybmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlcm5hbWU7IH0K
ICAgICBRU3RyaW5nIHBhc3N3b3JkKCkgY29uc3QgeyByZXR1cm4gbV9wYXNzd29yZDsgfQogCisg
ICAgaW50IGRhdGFiYXNlUXVvdGEoKSBjb25zdCB7IHJldHVybiBtX2RhdGFiYXNlUXVvdGE7IH0K
KwogICAgIFFTdHJpbmdMaXN0IGZpbGVQYXRocygpIGNvbnN0IHsgcmV0dXJuIG1fZmlsZXBhdGhz
OyB9CiAKIHB1YmxpYyBzbG90czoKQEAgLTczLDYgKzc2LDEyIEBAIHB1YmxpYyBzbG90czoKICAg
ICAgICAgbV9maWxlcGF0aHMgPSBmaWxlUGF0aHM7CiAgICAgfQogCisgICAgdm9pZCBvbkRhdGFi
YXNlUXVvdGFBY2NlcHRlZChpbnQgcXVvdGEpCisgICAgeworICAgICAgICBtX3dhc0FjY2VwdGVk
ID0gdHJ1ZTsKKyAgICAgICAgbV9kYXRhYmFzZVF1b3RhID0gcXVvdGE7CisgICAgfQorCiBwcml2
YXRlOgogICAgIGJvb2wgY3JlYXRlRGlhbG9nKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCosIFFRdWlj
a0l0ZW0qIGRpYWxvZ1BhcmVudCwgUU9iamVjdCogY29udGV4dE9iamVjdCk7CiAKQEAgLTg0LDYg
KzkzLDcgQEAgcHJpdmF0ZToKICAgICBRU3RyaW5nIG1fdXNlcm5hbWU7CiAgICAgUVN0cmluZyBt
X3Bhc3N3b3JkOwogICAgIFFTdHJpbmdMaXN0IG1fZmlsZXBhdGhzOworICAgIGludCBtX2RhdGFi
YXNlUXVvdGE7CiB9OwogCiAjZW5kaWYgLy8gUXREaWFsb2dSdW5uZXJfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHAKaW5kZXggZWY3NjRj
NWM5ZmIwYmE5N2VhY2ZlZjJhYzVkZGI5YjBjNGUyNmE3MS4uMWNjMzZmMzMyMTBkMjFkYWJlY2Nk
NGNmNDBmZjJmZjk3YzAzZWI3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L3F0L1F0V2ViUGFnZVVJQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
cXQvUXRXZWJQYWdlVUlDbGllbnQuY3BwCkBAIC0zMSw2ICszMSwyMCBAQAogI2luY2x1ZGUgPFdL
T3BlblBhbmVsUGFyYW1ldGVycy5oPgogI2luY2x1ZGUgPFdLT3BlblBhbmVsUmVzdWx0TGlzdGVu
ZXIuaD4KIAorI2luY2x1ZGUgPGxpbWl0cz4KKworbmFtZXNwYWNlIHsKKworaW5saW5lIGludCB0
b0ludCh1bnNpZ25lZCBsb25nIGxvbmcgeCkKK3sKKyAgICBpZiAoeCA+IHN0ZDo6bnVtZXJpY19s
aW1pdHM8aW50Pjo6bWF4KCkpCisgICAgICAgIHJldHVybiBzdGQ6Om51bWVyaWNfbGltaXRzPGlu
dD46Om1heCgpOworCisgICAgcmV0dXJuIHN0YXRpY19jYXN0PGludD4oeCk7Cit9CisKK30gLy8g
YW5vbnltb3VzIG5hbWVzcGFjZS4KKwogUXRXZWJQYWdlVUlDbGllbnQ6OlF0V2ViUGFnZVVJQ2xp
ZW50KFdLUGFnZVJlZiBwYWdlUmVmLCBRUXVpY2tXZWJWaWV3KiB3ZWJWaWV3KQogICAgIDogbV93
ZWJWaWV3KHdlYlZpZXcpCiB7CkBAIC00MywxMCArNTcsMTYgQEAgUXRXZWJQYWdlVUlDbGllbnQ6
OlF0V2ViUGFnZVVJQ2xpZW50KFdLUGFnZVJlZiBwYWdlUmVmLCBRUXVpY2tXZWJWaWV3KiB3ZWJW
aWV3KQogICAgIHVpQ2xpZW50LnJ1bkphdmFTY3JpcHRQcm9tcHQgPSBydW5KYXZhU2NyaXB0UHJv
bXB0OwogICAgIHVpQ2xpZW50LnJ1bk9wZW5QYW5lbCA9IHJ1bk9wZW5QYW5lbDsKICAgICB1aUNs
aWVudC5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCA9IG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50Owor
ICAgIHVpQ2xpZW50LmV4Y2VlZGVkRGF0YWJhc2VRdW90YSA9IGV4Y2VlZGVkRGF0YWJhc2VRdW90
YTsKICAgICB1aUNsaWVudC5kZWNpZGVQb2xpY3lGb3JHZW9sb2NhdGlvblBlcm1pc3Npb25SZXF1
ZXN0ID0gcG9saWN5Rm9yR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdDsKICAgICBXS1BhZ2VT
ZXRQYWdlVUlDbGllbnQocGFnZVJlZiwgJnVpQ2xpZW50KTsKIH0KIAordW5zaWduZWQgbG9uZyBs
b25nIFF0V2ViUGFnZVVJQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEoY29uc3QgUVN0cmlu
ZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9u
ZyBsb25nIGN1cnJlbnRRdW90YSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnRPcmlnaW5Vc2Fn
ZSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnREYXRhYmFzZVVzYWdlLCB1bnNpZ25lZCBsb25n
IGxvbmcgZXhwZWN0ZWRVc2FnZSkKK3sKKyAgICByZXR1cm4gbV93ZWJWaWV3LT5kX2Z1bmMoKS0+
ZXhjZWVkZWREYXRhYmFzZVF1b3RhKGRhdGFiYXNlTmFtZSwgZGlzcGxheU5hbWUsIGN1cnJlbnRR
dW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgZXhwZWN0ZWRV
c2FnZSk7Cit9CisKIHZvaWQgUXRXZWJQYWdlVUlDbGllbnQ6OnJ1bkphdmFTY3JpcHRBbGVydChj
b25zdCBRU3RyaW5nJiBtZXNzYWdlKQogewogICAgIG1fd2ViVmlldy0+ZF9mdW5jKCktPnJ1bkph
dmFTY3JpcHRBbGVydChtZXNzYWdlKTsKQEAgLTg4LDYgKzEwOCwyMCBAQCBzdGF0aWMgUXRXZWJQ
YWdlVUlDbGllbnQqIHRvUXRXZWJQYWdlVUlDbGllbnQoY29uc3Qgdm9pZCogY2xpZW50SW5mbykK
ICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxRdFdlYlBhZ2VVSUNsaWVudCo+KGNvbnN0X2Nh
c3Q8dm9pZCo+KGNsaWVudEluZm8pKTsKIH0KIAordW5zaWduZWQgbG9uZyBsb25nIFF0V2ViUGFn
ZVVJQ2xpZW50OjpleGNlZWRlZERhdGFiYXNlUXVvdGEoV0tQYWdlUmVmIHBhZ2UsIFdLRnJhbWVS
ZWYgZnJhbWUsIFdLU2VjdXJpdHlPcmlnaW5SZWYsIFdLU3RyaW5nUmVmIGRhdGFiYXNlTmFtZSwg
V0tTdHJpbmdSZWYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50UXVvdGEs
IHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50T3JpZ2luVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9u
ZyBjdXJyZW50RGF0YWJhc2VVc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGV4cGVjdGVkVXNhZ2Us
IGNvbnN0IHZvaWQgKmNsaWVudEluZm8pCit7CisgICAgUVN0cmluZyBxRGlzcGxheU5hbWUgPSBX
S1N0cmluZ0NvcHlRU3RyaW5nKGRpc3BsYXlOYW1lKTsKKyAgICBRU3RyaW5nIHFEYXRhYmFzZU5h
bWUgPSBXS1N0cmluZ0NvcHlRU3RyaW5nKGRhdGFiYXNlTmFtZSk7CisgICAgaW50IHFDdXJyZW50
UXVvdGFJbktpbG9CeXRlcyA9IHRvSW50KGN1cnJlbnRRdW90YSAvIDEwMjQpOworICAgIGludCBx
Q3VycmVudE9yaWdpblVzYWdlSW5LaWxvQnl0ZXMgPSB0b0ludChjdXJyZW50T3JpZ2luVXNhZ2Ug
LyAxMDI0KTsKKyAgICBpbnQgcUN1cnJlbnREYXRhYmFzZVVzYWdlSW5LaWxvQnl0ZXMgPSB0b0lu
dChjdXJyZW50RGF0YWJhc2VVc2FnZSAvIDEwMjQpOworICAgIGludCBxRXhwZWN0ZWRVc2FnZUlu
S2lsb0J5dGVzID0gdG9JbnQoZXhwZWN0ZWRVc2FnZSAvIDEwMjQpOworICAgIGludCByZXN1bHQg
PSB0b1F0V2ViUGFnZVVJQ2xpZW50KGNsaWVudEluZm8pLT5leGNlZWRlZERhdGFiYXNlUXVvdGEo
cURhdGFiYXNlTmFtZSwgcURpc3BsYXlOYW1lLCBxQ3VycmVudFF1b3RhSW5LaWxvQnl0ZXMsIHFD
dXJyZW50T3JpZ2luVXNhZ2VJbktpbG9CeXRlcywgcUN1cnJlbnREYXRhYmFzZVVzYWdlSW5LaWxv
Qnl0ZXMsIHFFeHBlY3RlZFVzYWdlSW5LaWxvQnl0ZXMpOworCisgICAgLy8gQ29udmVydCBmcm9t
IEtpbG9CeXRlcyB0byBCeXRlcy4KKyAgICByZXR1cm4gcmVzdWx0ID4gMCA/IHJlc3VsdCAqIDEw
MjQgOiAwOworfQorCiB2b2lkIFF0V2ViUGFnZVVJQ2xpZW50OjpydW5KYXZhU2NyaXB0QWxlcnQo
V0tQYWdlUmVmLCBXS1N0cmluZ1JlZiBhbGVydFRleHQsIFdLRnJhbWVSZWYsIGNvbnN0IHZvaWQq
IGNsaWVudEluZm8pCiB7CiAgICAgUVN0cmluZyBxQWxlcnRUZXh0ID0gV0tTdHJpbmdDb3B5UVN0
cmluZyhhbGVydFRleHQpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1F0V2ViUGFnZVVJQ2xpZW50LmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQ
YWdlVUlDbGllbnQuaAppbmRleCA4Y2ZlMTNjMjEzZjExMTA4YTUzYjdjY2EwY2MwZTFkZjI5ZmZl
MzdhLi5jMzhhZGExMzQwMWRhYjU2ZTk1YmNjMTEwNGYzZDMzZTY3Y2Q2YjliIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlVUlDbGllbnQuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlVUlDbGllbnQuaApAQCAtNDEsNiAr
NDEsNyBAQCBwdWJsaWM6CiAgICAgUXRXZWJQYWdlVUlDbGllbnQoV0tQYWdlUmVmLCBRUXVpY2tX
ZWJWaWV3Kik7CiAKIHByaXZhdGU6CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGV4Y2VlZGVkRGF0
YWJhc2VRdW90YShjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFFTdHJpbmcmIGRp
c3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudFF1b3RhLCB1bnNpZ25lZCBsb25n
IGxvbmcgY3VycmVudE9yaWdpblVzYWdlLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudERhdGFi
YXNlVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBleHBlY3RlZFVzYWdlKTsKICAgICB2b2lkIHJ1
bkphdmFTY3JpcHRBbGVydChjb25zdCBRU3RyaW5nJiBtZXNzYWdlKTsKICAgICBib29sIHJ1bkph
dmFTY3JpcHRDb25maXJtKGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UpOwogICAgIFFTdHJpbmcgcnVu
SmF2YVNjcmlwdFByb21wdChjb25zdCBRU3RyaW5nJiBtZXNzYWdlLCBjb25zdCBRU3RyaW5nJiBk
ZWZhdWx0VmFsdWUsIGJvb2wmIG9rKTsKQEAgLTU0LDYgKzU1LDcgQEAgcHJpdmF0ZToKICAgICBz
dGF0aWMgV0tTdHJpbmdSZWYgcnVuSmF2YVNjcmlwdFByb21wdChXS1BhZ2VSZWYsIFdLU3RyaW5n
UmVmIG1lc3NhZ2UsIFdLU3RyaW5nUmVmIGRlZmF1bHRWYWx1ZSwgV0tGcmFtZVJlZiwgY29uc3Qg
dm9pZCogY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQgcnVuT3BlblBhbmVsKFdLUGFnZVJl
ZiwgV0tGcmFtZVJlZiwgV0tPcGVuUGFuZWxQYXJhbWV0ZXJzUmVmLCBXS09wZW5QYW5lbFJlc3Vs
dExpc3RlbmVyUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKICAgICBzdGF0aWMgdm9pZCBt
b3VzZURpZE1vdmVPdmVyRWxlbWVudChXS1BhZ2VSZWYsIFdLSGl0VGVzdFJlc3VsdFJlZiwgV0tF
dmVudE1vZGlmaWVycywgV0tUeXBlUmVmIHVzZXJEYXRhLCBjb25zdCB2b2lkKiBjbGllbnRJbmZv
KTsKKyAgICBzdGF0aWMgdW5zaWduZWQgbG9uZyBsb25nIGV4Y2VlZGVkRGF0YWJhc2VRdW90YShX
S1BhZ2VSZWYsIFdLRnJhbWVSZWYsIFdLU2VjdXJpdHlPcmlnaW5SZWYsIFdLU3RyaW5nUmVmIGRh
dGFiYXNlTmFtZSwgV0tTdHJpbmdSZWYgZGlzcGxheU5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyBj
dXJyZW50UXVvdGEsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50T3JpZ2luVXNhZ2UsIHVuc2ln
bmVkIGxvbmcgbG9uZyBjdXJyZW50RGF0YWJhc2VVc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGV4
cGVjdGVkVXNhZ2UsIGNvbnN0IHZvaWQgKmNsaWVudEluZm8pOwogICAgIHN0YXRpYyB2b2lkIHBv
bGljeUZvckdlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3QoV0tQYWdlUmVmLCBXS0ZyYW1lUmVm
LCBXS1NlY3VyaXR5T3JpZ2luUmVmLCBXS0dlb2xvY2F0aW9uUGVybWlzc2lvblJlcXVlc3RSZWYs
IGNvbnN0IHZvaWQqKTsKIAogICAgIFFRdWlja1dlYlZpZXcqIG1fd2ViVmlldzsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>133240</attachid>
            <date>2012-03-22 06:02:39 -0700</date>
            <delta_ts>2012-03-22 06:32:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-81827-20120322140236.patch</filename>
            <type>text/plain</type>
            <size>16556</size>
            <attacher name="Alexander Færøy">ahf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTExNjY5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYThjOGIzZmM5YjE0MzRh
ZDE0MzAwNjE4MDE0ODMxOTkzZGRjZjJiMC4uODJjZGIzYzg4MDU2MzIxYzQ2YzZiYjk3NTAzNjI5
OGEzMTE1MjQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDEyLTAzLTIxICBBbGV4
YW5kZXIgRsOmcsO4eSAgPGFsZXhhbmRlci5mYWVyb3lAbm9raWEuY29tPgorCisgICAgICAgIFtR
dF1bV0syXSBBZGQgUU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MTgyNworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhdGNoIGJ5IFBpZXJyZSBS
b3NzaSBhbmQgQWxleGFuZGVyIEbDpnLDuHkuCisKKyAgICAgICAgVGhpcyBwYXRjaCBhZGRzIGEg
UU1MIEFQSSBmb3IgaGFuZGxpbmcgZGF0YWJhc2UgcXVvdGFzLgorCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2
YXRlOjpleGNlZWRlZERhdGFiYXNlUXVvdGEpOgorICAgICAgICAoUVF1aWNrV2ViVmlld0V4cGVy
aW1lbnRhbDo6ZGF0YWJhc2VRdW90YURpYWxvZyk6CisgICAgICAgIChRUXVpY2tXZWJWaWV3RXhw
ZXJpbWVudGFsOjpzZXREYXRhYmFzZVF1b3RhRGlhbG9nKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXF1
aWNrd2Vidmlld19wX3AuaDoKKyAgICAgICAgKFFRdWlja1dlYlZpZXdQcml2YXRlKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwOgorICAgICAgICAoRGF0YWJhc2VR
dW90YURpYWxvZ0NvbnRleHRPYmplY3QpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0Nv
bnRleHRPYmplY3Q6OkRhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0KToKKyAgICAgICAg
KERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpkYXRhYmFzZU5hbWUpOgorICAgICAg
ICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmRpc3BsYXlOYW1lKToKKyAgICAg
ICAgKERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0T2JqZWN0OjpjdXJyZW50UXVvdGEpOgorICAg
ICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6OmN1cnJlbnRPcmlnaW5Vc2Fn
ZSk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6Y3VycmVudERh
dGFiYXNlVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmplY3Q6
OmV4cGVjdGVkVXNhZ2UpOgorICAgICAgICAoRGF0YWJhc2VRdW90YURpYWxvZ0NvbnRleHRPYmpl
Y3Q6OmFjY2VwdCk6CisgICAgICAgIChEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVjdDo6
cmVqZWN0KToKKyAgICAgICAgKFF0RGlhbG9nUnVubmVyOjppbml0Rm9yRGF0YWJhc2VRdW90YURp
YWxvZyk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmg6CisgICAgICAg
IChRdERpYWxvZ1J1bm5lcik6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6ZGF0YWJhc2VRdW90
YSk6CisgICAgICAgIChRdERpYWxvZ1J1bm5lcjo6b25EYXRhYmFzZVF1b3RhQWNjZXB0ZWQpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHA6CisgICAgICAgIChR
dFdlYlBhZ2VVSUNsaWVudDo6UXRXZWJQYWdlVUlDbGllbnQpOgorICAgICAgICAoUXRXZWJQYWdl
VUlDbGllbnQ6OmV4Y2VlZGVkRGF0YWJhc2VRdW90YSk6CisgICAgICAgICogVUlQcm9jZXNzL3F0
L1F0V2ViUGFnZVVJQ2xpZW50Lmg6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1dlYkNvbnRleHRR
dC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNvbnRleHQ6OnBsYXRmb3JtRGVmYXVsdERhdGFi
YXNlRGlyZWN0b3J5KToKKwogMjAxMi0wMy0yMSAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KIAogICAgICAgICBNYWtlIHVzZSBvZiBDRyByb3VuZGVkLXJlY3QgcHJpbWl0
aXZlcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3
ZWJ2aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNrd2Vidmll
dy5jcHAKaW5kZXggNDA0NGVjM2VlMDAxZmQ2YzM1NGE3MjdkNDJhMmExNmYyODdjZDI0NC4uM2Rh
ZGE5Nzg5NDU3NzJjNDFlNmY1MjFlZGYwZTM4MDViZGFhZGY3NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXcuY3BwCkBAIC0zOTksNiArMzk5
LDIxIEBAIHZvaWQgUVF1aWNrV2ViVmlld1ByaXZhdGU6OmNob29zZUZpbGVzKFdLT3BlblBhbmVs
UmVzdWx0TGlzdGVuZXJSZWYgbGlzdGVuZXJSZWYsCiAKIH0KIAorcXVpbnQ2NCBRUXVpY2tXZWJW
aWV3UHJpdmF0ZTo6ZXhjZWVkZWREYXRhYmFzZVF1b3RhKGNvbnN0IFFTdHJpbmcmIGRhdGFiYXNl
TmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxheU5hbWUsIHF1aW50NjQgY3VycmVudFF1b3RhLCBx
dWludDY0IGN1cnJlbnRPcmlnaW5Vc2FnZSwgcXVpbnQ2NCBjdXJyZW50RGF0YWJhc2VVc2FnZSwg
cXVpbnQ2NCBleHBlY3RlZFVzYWdlKQoreworICAgIGlmICghZGF0YWJhc2VRdW90YURpYWxvZykK
KyAgICAgICAgcmV0dXJuIDA7CisKKyAgICBRX1EoUVF1aWNrV2ViVmlldyk7CisgICAgUXREaWFs
b2dSdW5uZXIgZGlhbG9nUnVubmVyOworICAgIGlmICghZGlhbG9nUnVubmVyLmluaXRGb3JEYXRh
YmFzZVF1b3RhRGlhbG9nKGRhdGFiYXNlUXVvdGFEaWFsb2csIHEsIGRhdGFiYXNlTmFtZSwgZGlz
cGxheU5hbWUsIGN1cnJlbnRRdW90YSwgY3VycmVudE9yaWdpblVzYWdlLCBjdXJyZW50RGF0YWJh
c2VVc2FnZSwgZXhwZWN0ZWRVc2FnZSkpCisgICAgICAgIHJldHVybiAwOworCisgICAgZXhlY0Rp
YWxvZ1J1bm5lcihkaWFsb2dSdW5uZXIpOworCisgICAgcmV0dXJuIGRpYWxvZ1J1bm5lci53YXNB
Y2NlcHRlZCgpID8gZGlhbG9nUnVubmVyLmRhdGFiYXNlUXVvdGEoKSA6IDA7Cit9CisKIHZvaWQg
UVF1aWNrV2ViVmlld1ByaXZhdGU6OnNldFZpZXdJbkF0dGFjaGVkUHJvcGVydGllcyhRT2JqZWN0
KiBvYmplY3QpCiB7CiAgICAgUV9RKFFRdWlja1dlYlZpZXcpOwpAQCAtOTA2LDYgKzkyMSwyMSBA
QCB2b2lkIFFRdWlja1dlYlZpZXdFeHBlcmltZW50YWw6OnNldEZpbGVQaWNrZXIoUURlY2xhcmF0
aXZlQ29tcG9uZW50KiBmaWxlUGlja2VyKQogICAgIGVtaXQgZmlsZVBpY2tlckNoYW5nZWQoKTsK
IH0KIAorUURlY2xhcmF0aXZlQ29tcG9uZW50KiBRUXVpY2tXZWJWaWV3RXhwZXJpbWVudGFsOjpk
YXRhYmFzZVF1b3RhRGlhbG9nKCkgY29uc3QKK3sKKyAgICBRX0QoY29uc3QgUVF1aWNrV2ViVmll
dyk7CisgICAgcmV0dXJuIGQtPmRhdGFiYXNlUXVvdGFEaWFsb2c7Cit9CisKK3ZvaWQgUVF1aWNr
V2ViVmlld0V4cGVyaW1lbnRhbDo6c2V0RGF0YWJhc2VRdW90YURpYWxvZyhRRGVjbGFyYXRpdmVD
b21wb25lbnQqIGRhdGFiYXNlUXVvdGFEaWFsb2cpCit7CisgICAgUV9EKFFRdWlja1dlYlZpZXcp
OworICAgIGlmIChkLT5kYXRhYmFzZVF1b3RhRGlhbG9nID09IGRhdGFiYXNlUXVvdGFEaWFsb2cp
CisgICAgICAgIHJldHVybjsKKyAgICBkLT5kYXRhYmFzZVF1b3RhRGlhbG9nID0gZGF0YWJhc2VR
dW90YURpYWxvZzsKKyAgICBlbWl0IGRhdGFiYXNlUXVvdGFEaWFsb2dDaGFuZ2VkKCk7Cit9CisK
IFFTdHJpbmcgUVF1aWNrV2ViVmlld0V4cGVyaW1lbnRhbDo6dXNlckFnZW50KCkgY29uc3QKIHsK
ICAgICBRX0QoY29uc3QgUVF1aWNrV2ViVmlldyk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcC5oIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9xdC9xcXVpY2t3ZWJ2aWV3X3AuaAppbmRleCBkYWQyZDVmNmJmZDJhYTU3OGUx
OGJkMzNjOWM0MjU3ZmM3ODk5MWNiLi5jMjFiMmU5YjY2MGU2YjAxYzYyMzJlNGYwMjk3YmEwNTli
YzNlOWQ5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlj
a3dlYnZpZXdfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXF1aWNr
d2Vidmlld19wLmgKQEAgLTI0OCw2ICsyNDgsNyBAQCBjbGFzcyBRV0VCS0lUX0VYUE9SVCBRUXVp
Y2tXZWJWaWV3RXhwZXJpbWVudGFsIDogcHVibGljIFFPYmplY3QgewogICAgIFFfUFJPUEVSVFko
UURlY2xhcmF0aXZlQ29tcG9uZW50KiBjZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbkRpYWxvZyBSRUFE
IGNlcnRpZmljYXRlVmVyaWZpY2F0aW9uRGlhbG9nIFdSSVRFIHNldENlcnRpZmljYXRlVmVyaWZp
Y2F0aW9uRGlhbG9nIE5PVElGWSBjZXJ0aWZpY2F0ZVZlcmlmaWNhdGlvbkRpYWxvZ0NoYW5nZWQp
CiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQqIGl0ZW1TZWxlY3RvciBSRUFE
IGl0ZW1TZWxlY3RvciBXUklURSBzZXRJdGVtU2VsZWN0b3IgTk9USUZZIGl0ZW1TZWxlY3RvckNo
YW5nZWQpCiAgICAgUV9QUk9QRVJUWShRRGVjbGFyYXRpdmVDb21wb25lbnQqIGZpbGVQaWNrZXIg
UkVBRCBmaWxlUGlja2VyIFdSSVRFIHNldEZpbGVQaWNrZXIgTk9USUZZIGZpbGVQaWNrZXJDaGFu
Z2VkKQorICAgIFFfUFJPUEVSVFkoUURlY2xhcmF0aXZlQ29tcG9uZW50KiBkYXRhYmFzZVF1b3Rh
RGlhbG9nIFJFQUQgZGF0YWJhc2VRdW90YURpYWxvZyBXUklURSBzZXREYXRhYmFzZVF1b3RhRGlh
bG9nIE5PVElGWSBkYXRhYmFzZVF1b3RhRGlhbG9nQ2hhbmdlZCkKICAgICBRX1BST1BFUlRZKFFX
ZWJQcmVmZXJlbmNlcyogcHJlZmVyZW5jZXMgUkVBRCBwcmVmZXJlbmNlcyBDT05TVEFOVCBGSU5B
TCkKICAgICBRX1BST1BFUlRZKFFXZWJWaWV3cG9ydEluZm8qIHZpZXdwb3J0SW5mbyBSRUFEIHZp
ZXdwb3J0SW5mbyBDT05TVEFOVCBGSU5BTCkKICAgICBRX1BST1BFUlRZKFFEZWNsYXJhdGl2ZUxp
c3RQcm9wZXJ0eTxRUXVpY2tVcmxTY2hlbWVEZWxlZ2F0ZT4gdXJsU2NoZW1lRGVsZWdhdGVzIFJF
QUQgc2NoZW1lRGVsZWdhdGVzKQpAQCAtMjc4LDYgKzI3OSw4IEBAIHB1YmxpYzoKICAgICB2b2lk
IHNldFByb3h5QXV0aGVudGljYXRpb25EaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50Kik7CiAg
ICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBmaWxlUGlja2VyKCkgY29uc3Q7CiAgICAgdm9pZCBz
ZXRGaWxlUGlja2VyKFFEZWNsYXJhdGl2ZUNvbXBvbmVudCopOworICAgIFFEZWNsYXJhdGl2ZUNv
bXBvbmVudCogZGF0YWJhc2VRdW90YURpYWxvZygpIGNvbnN0OworICAgIHZvaWQgc2V0RGF0YWJh
c2VRdW90YURpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqKTsKICAgICBRU3RyaW5nIHVzZXJB
Z2VudCgpIGNvbnN0OwogICAgIHZvaWQgc2V0VXNlckFnZW50KGNvbnN0IFFTdHJpbmcmIHVzZXJB
Z2VudCk7CiAKQEAgLTMzMyw2ICszMzYsNyBAQCBRX1NJR05BTFM6CiAgICAgdm9pZCBjZXJ0aWZp
Y2F0ZVZlcmlmaWNhdGlvbkRpYWxvZ0NoYW5nZWQoKTsKICAgICB2b2lkIGl0ZW1TZWxlY3RvckNo
YW5nZWQoKTsKICAgICB2b2lkIGZpbGVQaWNrZXJDaGFuZ2VkKCk7CisgICAgdm9pZCBkYXRhYmFz
ZVF1b3RhRGlhbG9nQ2hhbmdlZCgpOwogICAgIHZvaWQgZG93bmxvYWRSZXF1ZXN0ZWQoUVdlYkRv
d25sb2FkSXRlbSogZG93bmxvYWRJdGVtKTsKICAgICB2b2lkIHBlcm1pc3Npb25SZXF1ZXN0ZWQo
UVdlYlBlcm1pc3Npb25SZXF1ZXN0KiBwZXJtaXNzaW9uKTsKICAgICB2b2lkIG1lc3NhZ2VSZWNl
aXZlZChjb25zdCBRVmFyaWFudE1hcCYgbWVzc2FnZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmggYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL3F0L3FxdWlja3dlYnZpZXdfcF9wLmgKaW5kZXggNWM2YjZiNjNhZTZh
YjBjZjA5ZGRiMzc3NWRlYzVmZGI3OThmNWM5ZS4uNGI5NzBkNGM5Y2YzNmNhY2VmZDFmOTRiNzYy
MTIwYThmNjRjZWM2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9x
dC9xcXVpY2t3ZWJ2aWV3X3BfcC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
cXQvcXF1aWNrd2Vidmlld19wX3AuaApAQCAtOTYsNiArOTYsNyBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBfcV9vbkljb25DaGFuZ2VkRm9yUGFnZVVSTChjb25zdCBRVXJsJiBwYWdlVVJMLCBjb25zdCBR
VXJsJiBpY29uVVJMU3RyaW5nKTsKIAogICAgIHZvaWQgY2hvb3NlRmlsZXMoV0tPcGVuUGFuZWxS
ZXN1bHRMaXN0ZW5lclJlZiwgY29uc3QgUVN0cmluZ0xpc3QmIHNlbGVjdGVkRmlsZU5hbWVzLCBR
dFdlYlBhZ2VVSUNsaWVudDo6RmlsZUNob29zZXJUeXBlKTsKKyAgICBxdWludDY0IGV4Y2VlZGVk
RGF0YWJhc2VRdW90YShjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFFTdHJpbmcm
IGRpc3BsYXlOYW1lLCBxdWludDY0IGN1cnJlbnRRdW90YSwgcXVpbnQ2NCBjdXJyZW50T3JpZ2lu
VXNhZ2UsIHF1aW50NjQgY3VycmVudERhdGFiYXNlVXNhZ2UsIHF1aW50NjQgZXhwZWN0ZWRVc2Fn
ZSk7CiAgICAgdm9pZCBydW5KYXZhU2NyaXB0QWxlcnQoY29uc3QgUVN0cmluZyYpOwogICAgIGJv
b2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oY29uc3QgUVN0cmluZyYpOwogICAgIFFTdHJpbmcgcnVu
SmF2YVNjcmlwdFByb21wdChjb25zdCBRU3RyaW5nJiwgY29uc3QgUVN0cmluZyYgZGVmYXVsdFZh
bHVlLCBib29sJiBvayk7CkBAIC0xNTYsNiArMTU3LDcgQEAgcHJvdGVjdGVkOgogICAgIFFEZWNs
YXJhdGl2ZUNvbXBvbmVudCogaXRlbVNlbGVjdG9yOwogICAgIFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCogcHJveHlBdXRoZW50aWNhdGlvbkRpYWxvZzsKICAgICBRRGVjbGFyYXRpdmVDb21wb25lbnQq
IGZpbGVQaWNrZXI7CisgICAgUURlY2xhcmF0aXZlQ29tcG9uZW50KiBkYXRhYmFzZVF1b3RhRGlh
bG9nOwogCiAgICAgV2ViQ29yZTo6Vmlld3BvcnRBcmd1bWVudHMgdmlld3BvcnRBcmd1bWVudHM7
CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1bm5l
ci5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXREaWFsb2dSdW5uZXIuY3BwCmlu
ZGV4IDAxMTFhNzMxNjc3MzAyMDhiMDYwZWUyNzBiZWM3YWVkZjg5M2QxZmMuLjMzNDFkMTljZjE0
MmEyMDQ4ZTA1ODcwMjBjMWUzYmM1MDM3ODVmODkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9RdERpYWxvZ1J1bm5lci5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmNwcApAQCAtMTgyLDYgKzE4Miw1MSBAQCBwcml2YXRl
OgogICAgIFFTdHJpbmdMaXN0IG1fZmlsZUxpc3Q7CiB9OwogCitjbGFzcyBEYXRhYmFzZVF1b3Rh
RGlhbG9nQ29udGV4dE9iamVjdCA6IHB1YmxpYyBRT2JqZWN0IHsKKyAgICBRX09CSkVDVAorICAg
IFFfUFJPUEVSVFkoUVN0cmluZyBkYXRhYmFzZU5hbWUgUkVBRCBkYXRhYmFzZU5hbWUgQ09OU1RB
TlQpCisgICAgUV9QUk9QRVJUWShRU3RyaW5nIGRpc3BsYXlOYW1lIFJFQUQgZGlzcGxheU5hbWUg
Q09OU1RBTlQpCisgICAgUV9QUk9QRVJUWShxdWludDY0IGN1cnJlbnRRdW90YSBSRUFEIGN1cnJl
bnRRdW90YSBDT05TVEFOVCkKKyAgICBRX1BST1BFUlRZKHF1aW50NjQgY3VycmVudE9yaWdpblVz
YWdlIFJFQUQgY3VycmVudE9yaWdpblVzYWdlIENPTlNUQU5UKQorICAgIFFfUFJPUEVSVFkocXVp
bnQ2NCBjdXJyZW50RGF0YWJhc2VVc2FnZSBSRUFEIGN1cnJlbnREYXRhYmFzZVVzYWdlIENPTlNU
QU5UKQorICAgIFFfUFJPUEVSVFkocXVpbnQ2NCBleHBlY3RlZFVzYWdlIFJFQUQgZXhwZWN0ZWRV
c2FnZSBDT05TVEFOVCkKKworcHVibGljOgorICAgIERhdGFiYXNlUXVvdGFEaWFsb2dDb250ZXh0
T2JqZWN0KGNvbnN0IFFTdHJpbmcmIGRhdGFiYXNlTmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxh
eU5hbWUsIHF1aW50NjQgY3VycmVudFF1b3RhLCBxdWludDY0IGN1cnJlbnRPcmlnaW5Vc2FnZSwg
cXVpbnQ2NCBjdXJyZW50RGF0YWJhc2VVc2FnZSwgcXVpbnQ2NCBleHBlY3RlZFVzYWdlKQorICAg
ICAgICA6IFFPYmplY3QoKQorICAgICAgICAsIG1fZGF0YWJhc2VOYW1lKGRhdGFiYXNlTmFtZSkK
KyAgICAgICAgLCBtX2Rpc3BsYXlOYW1lKGRpc3BsYXlOYW1lKQorICAgICAgICAsIG1fY3VycmVu
dFF1b3RhKGN1cnJlbnRRdW90YSkKKyAgICAgICAgLCBtX2N1cnJlbnRPcmlnaW5Vc2FnZShjdXJy
ZW50T3JpZ2luVXNhZ2UpCisgICAgICAgICwgbV9jdXJyZW50RGF0YWJhc2VVc2FnZShjdXJyZW50
RGF0YWJhc2VVc2FnZSkKKyAgICAgICAgLCBtX2V4cGVjdGVkVXNhZ2UoZXhwZWN0ZWRVc2FnZSkK
KyAgICB7CisgICAgfQorCisgICAgUVN0cmluZyBkYXRhYmFzZU5hbWUoKSBjb25zdCB7IHJldHVy
biBtX2RhdGFiYXNlTmFtZTsgfQorICAgIFFTdHJpbmcgZGlzcGxheU5hbWUoKSBjb25zdCB7IHJl
dHVybiBtX2Rpc3BsYXlOYW1lOyB9CisgICAgcXVpbnQ2NCBjdXJyZW50UXVvdGEoKSBjb25zdCB7
IHJldHVybiBtX2N1cnJlbnRRdW90YTsgfQorICAgIHF1aW50NjQgY3VycmVudE9yaWdpblVzYWdl
KCkgY29uc3QgeyByZXR1cm4gbV9jdXJyZW50T3JpZ2luVXNhZ2U7IH0KKyAgICBxdWludDY0IGN1
cnJlbnREYXRhYmFzZVVzYWdlKCkgY29uc3QgeyByZXR1cm4gbV9jdXJyZW50RGF0YWJhc2VVc2Fn
ZTsgfQorICAgIHF1aW50NjQgZXhwZWN0ZWRVc2FnZSgpIGNvbnN0IHsgcmV0dXJuIG1fZXhwZWN0
ZWRVc2FnZTsgfQorCitwdWJsaWMgc2xvdHM6CisgICAgdm9pZCBhY2NlcHQocXVpbnQ2NCBzaXpl
KSB7IGVtaXQgYWNjZXB0ZWQoc2l6ZSk7IH0KKyAgICB2b2lkIHJlamVjdCgpIHsgZW1pdCByZWpl
Y3RlZCgpOyB9CisKK3NpZ25hbHM6CisgICAgdm9pZCBhY2NlcHRlZChxdWludDY0IHNpemUpOwor
ICAgIHZvaWQgcmVqZWN0ZWQoKTsKKworcHJpdmF0ZToKKyAgICBRU3RyaW5nIG1fZGF0YWJhc2VO
YW1lOworICAgIFFTdHJpbmcgbV9kaXNwbGF5TmFtZTsKKyAgICBxdWludDY0IG1fY3VycmVudFF1
b3RhOworICAgIHF1aW50NjQgbV9jdXJyZW50T3JpZ2luVXNhZ2U7CisgICAgcXVpbnQ2NCBtX2N1
cnJlbnREYXRhYmFzZVVzYWdlOworICAgIHF1aW50NjQgbV9leHBlY3RlZFVzYWdlOworfTsKKwog
Ym9vbCBRdERpYWxvZ1J1bm5lcjo6aW5pdEZvckFsZXJ0KFFEZWNsYXJhdGl2ZUNvbXBvbmVudCog
Y29tcG9uZW50LCBRUXVpY2tJdGVtKiBkaWFsb2dQYXJlbnQsIGNvbnN0IFFTdHJpbmcmIG1lc3Nh
Z2UpCiB7CiAgICAgRGlhbG9nQ29udGV4dE9iamVjdCogY29udGV4dE9iamVjdCA9IG5ldyBEaWFs
b2dDb250ZXh0T2JqZWN0KG1lc3NhZ2UpOwpAQCAtMjY4LDYgKzMxMywxOSBAQCBib29sIFF0RGlh
bG9nUnVubmVyOjppbml0Rm9yRmlsZVBpY2tlcihRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBv
bmVudCwgUVF1aWNrSQogICAgIHJldHVybiB0cnVlOwogfQogCitib29sIFF0RGlhbG9nUnVubmVy
Ojppbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBv
bmVudCwgUVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBjb25zdCBRU3RyaW5nJiBkYXRhYmFzZU5h
bWUsIGNvbnN0IFFTdHJpbmcmIGRpc3BsYXlOYW1lLCBxdWludDY0IGN1cnJlbnRRdW90YSwgcXVp
bnQ2NCBjdXJyZW50T3JpZ2luVXNhZ2UsIHF1aW50NjQgY3VycmVudERhdGFiYXNlVXNhZ2UsIHF1
aW50NjQgZXhwZWN0ZWRVc2FnZSkKK3sKKyAgICBEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9i
amVjdCogY29udGV4dE9iamVjdCA9IG5ldyBEYXRhYmFzZVF1b3RhRGlhbG9nQ29udGV4dE9iamVj
dChkYXRhYmFzZU5hbWUsIGRpc3BsYXlOYW1lLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5V
c2FnZSwgY3VycmVudERhdGFiYXNlVXNhZ2UsIGV4cGVjdGVkVXNhZ2UpOworICAgIGlmICghY3Jl
YXRlRGlhbG9nKGNvbXBvbmVudCwgZGlhbG9nUGFyZW50LCBjb250ZXh0T2JqZWN0KSkKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworCisgICAgY29ubmVjdChjb250ZXh0T2JqZWN0LCBTSUdOQUwoYWNj
ZXB0ZWQocXVpbnQ2NCkpLCBTTE9UKG9uRGF0YWJhc2VRdW90YUFjY2VwdGVkKHF1aW50NjQpKSk7
CisgICAgY29ubmVjdChjb250ZXh0T2JqZWN0LCBTSUdOQUwoYWNjZXB0ZWQocXVpbnQ2NCkpLCBT
TE9UKHF1aXQoKSkpOworICAgIGNvbm5lY3QoY29udGV4dE9iamVjdCwgU0lHTkFMKHJlamVjdGVk
KCkpLCBTTE9UKHF1aXQoKSkpOworCisgICAgcmV0dXJuIHRydWU7Cit9CisKIGJvb2wgUXREaWFs
b2dSdW5uZXI6OmNyZWF0ZURpYWxvZyhRRGVjbGFyYXRpdmVDb21wb25lbnQqIGNvbXBvbmVudCwg
UVF1aWNrSXRlbSogZGlhbG9nUGFyZW50LCBRT2JqZWN0KiBjb250ZXh0T2JqZWN0KQogewogICAg
IFFEZWNsYXJhdGl2ZUNvbnRleHQqIGJhc2VDb250ZXh0ID0gY29tcG9uZW50LT5jcmVhdGlvbkNv
bnRleHQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdERpYWxv
Z1J1bm5lci5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmgK
aW5kZXggMGU5NDgxYmQ5MzU2N2M3OWJhN2Q4ZGY3NjI1YjJkMTg2OGEzODlmNC4uMDdmMTM1ZWYy
OWZlMGU1Njc4YjBiOTZkNDE0NTc1Njk3YjNlNDg0MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL3F0L1F0RGlhbG9nUnVubmVyLmgKQEAgLTQzLDYgKzQzLDcgQEAgcHVibGljOgogICAg
IGJvb2wgaW5pdEZvckNlcnRpZmljYXRlVmVyaWZpY2F0aW9uKFFEZWNsYXJhdGl2ZUNvbXBvbmVu
dCosIFFRdWlja0l0ZW0qLCBjb25zdCBRU3RyaW5nJiBob3N0bmFtZSk7CiAgICAgYm9vbCBpbml0
Rm9yUHJveHlBdXRoZW50aWNhdGlvbihRRGVjbGFyYXRpdmVDb21wb25lbnQqLCBRUXVpY2tJdGVt
KiwgY29uc3QgUVN0cmluZyYgaG9zdG5hbWUsIHVpbnQxNl90IHBvcnQsIGNvbnN0IFFTdHJpbmcm
IHByZWZpbGxlZFVzZXJuYW1lKTsKICAgICBib29sIGluaXRGb3JGaWxlUGlja2VyKFFEZWNsYXJh
dGl2ZUNvbXBvbmVudCosIFFRdWlja0l0ZW0qLCBjb25zdCBRU3RyaW5nTGlzdCYgc2VsZWN0ZWRG
aWxlcyk7CisgICAgYm9vbCBpbml0Rm9yRGF0YWJhc2VRdW90YURpYWxvZyhRRGVjbGFyYXRpdmVD
b21wb25lbnQqLCBRUXVpY2tJdGVtKiwgY29uc3QgUVN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25z
dCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1aW50NjQgY3Vy
cmVudE9yaWdpblVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBxdWludDY0IGV4
cGVjdGVkVXNhZ2UpOwogCiAgICAgUVF1aWNrSXRlbSogZGlhbG9nKCkgY29uc3QgeyByZXR1cm4g
bV9kaWFsb2cuZ2V0KCk7IH0KIApAQCAtNTIsNiArNTMsOCBAQCBwdWJsaWM6CiAgICAgUVN0cmlu
ZyB1c2VybmFtZSgpIGNvbnN0IHsgcmV0dXJuIG1fdXNlcm5hbWU7IH0KICAgICBRU3RyaW5nIHBh
c3N3b3JkKCkgY29uc3QgeyByZXR1cm4gbV9wYXNzd29yZDsgfQogCisgICAgcXVpbnQ2NCBkYXRh
YmFzZVF1b3RhKCkgY29uc3QgeyByZXR1cm4gbV9kYXRhYmFzZVF1b3RhOyB9CisKICAgICBRU3Ry
aW5nTGlzdCBmaWxlUGF0aHMoKSBjb25zdCB7IHJldHVybiBtX2ZpbGVwYXRoczsgfQogCiBwdWJs
aWMgc2xvdHM6CkBAIC03Myw2ICs3NiwxMiBAQCBwdWJsaWMgc2xvdHM6CiAgICAgICAgIG1fZmls
ZXBhdGhzID0gZmlsZVBhdGhzOwogICAgIH0KIAorICAgIHZvaWQgb25EYXRhYmFzZVF1b3RhQWNj
ZXB0ZWQocXVpbnQ2NCBxdW90YSkKKyAgICB7CisgICAgICAgIG1fd2FzQWNjZXB0ZWQgPSB0cnVl
OworICAgICAgICBtX2RhdGFiYXNlUXVvdGEgPSBxdW90YTsKKyAgICB9CisKIHByaXZhdGU6CiAg
ICAgYm9vbCBjcmVhdGVEaWFsb2coUURlY2xhcmF0aXZlQ29tcG9uZW50KiwgUVF1aWNrSXRlbSog
ZGlhbG9nUGFyZW50LCBRT2JqZWN0KiBjb250ZXh0T2JqZWN0KTsKIApAQCAtODQsNiArOTMsNyBA
QCBwcml2YXRlOgogICAgIFFTdHJpbmcgbV91c2VybmFtZTsKICAgICBRU3RyaW5nIG1fcGFzc3dv
cmQ7CiAgICAgUVN0cmluZ0xpc3QgbV9maWxlcGF0aHM7CisgICAgcXVpbnQ2NCBtX2RhdGFiYXNl
UXVvdGE7CiB9OwogCiAjZW5kaWYgLy8gUXREaWFsb2dSdW5uZXJfaApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VVSUNsaWVudC5jcHAKaW5kZXggZWY3NjRjNWM5
ZmIwYmE5N2VhY2ZlZjJhYzVkZGI5YjBjNGUyNmE3MS4uN2VkYmRlNTU5NDdkYWMzMDg1YmJhNDNh
OWZiNmI4YjU4N2UyMjIwOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0
L1F0V2ViUGFnZVVJQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQv
UXRXZWJQYWdlVUlDbGllbnQuY3BwCkBAIC00MywxMCArNDMsMTYgQEAgUXRXZWJQYWdlVUlDbGll
bnQ6OlF0V2ViUGFnZVVJQ2xpZW50KFdLUGFnZVJlZiBwYWdlUmVmLCBRUXVpY2tXZWJWaWV3KiB3
ZWJWaWV3KQogICAgIHVpQ2xpZW50LnJ1bkphdmFTY3JpcHRQcm9tcHQgPSBydW5KYXZhU2NyaXB0
UHJvbXB0OwogICAgIHVpQ2xpZW50LnJ1bk9wZW5QYW5lbCA9IHJ1bk9wZW5QYW5lbDsKICAgICB1
aUNsaWVudC5tb3VzZURpZE1vdmVPdmVyRWxlbWVudCA9IG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50
OworICAgIHVpQ2xpZW50LmV4Y2VlZGVkRGF0YWJhc2VRdW90YSA9IGV4Y2VlZGVkRGF0YWJhc2VR
dW90YTsKICAgICB1aUNsaWVudC5kZWNpZGVQb2xpY3lGb3JHZW9sb2NhdGlvblBlcm1pc3Npb25S
ZXF1ZXN0ID0gcG9saWN5Rm9yR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdDsKICAgICBXS1Bh
Z2VTZXRQYWdlVUlDbGllbnQocGFnZVJlZiwgJnVpQ2xpZW50KTsKIH0KIAorcXVpbnQ2NCBRdFdl
YlBhZ2VVSUNsaWVudDo6ZXhjZWVkZWREYXRhYmFzZVF1b3RhKGNvbnN0IFFTdHJpbmcmIGRhdGFi
YXNlTmFtZSwgY29uc3QgUVN0cmluZyYgZGlzcGxheU5hbWUsIHF1aW50NjQgY3VycmVudFF1b3Rh
LCBxdWludDY0IGN1cnJlbnRPcmlnaW5Vc2FnZSwgcXVpbnQ2NCBjdXJyZW50RGF0YWJhc2VVc2Fn
ZSwgcXVpbnQ2NCBleHBlY3RlZFVzYWdlKQoreworICAgIHJldHVybiBtX3dlYlZpZXctPmRfZnVu
YygpLT5leGNlZWRlZERhdGFiYXNlUXVvdGEoZGF0YWJhc2VOYW1lLCBkaXNwbGF5TmFtZSwgY3Vy
cmVudFF1b3RhLCBjdXJyZW50T3JpZ2luVXNhZ2UsIGN1cnJlbnREYXRhYmFzZVVzYWdlLCBleHBl
Y3RlZFVzYWdlKTsKK30KKwogdm9pZCBRdFdlYlBhZ2VVSUNsaWVudDo6cnVuSmF2YVNjcmlwdEFs
ZXJ0KGNvbnN0IFFTdHJpbmcmIG1lc3NhZ2UpCiB7CiAgICAgbV93ZWJWaWV3LT5kX2Z1bmMoKS0+
cnVuSmF2YVNjcmlwdEFsZXJ0KG1lc3NhZ2UpOwpAQCAtODgsNiArOTQsMTMgQEAgc3RhdGljIFF0
V2ViUGFnZVVJQ2xpZW50KiB0b1F0V2ViUGFnZVVJQ2xpZW50KGNvbnN0IHZvaWQqIGNsaWVudElu
Zm8pCiAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3Q8UXRXZWJQYWdlVUlDbGllbnQqPihjb25z
dF9jYXN0PHZvaWQqPihjbGllbnRJbmZvKSk7CiB9CiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBRdFdl
YlBhZ2VVSUNsaWVudDo6ZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdLUGFnZVJlZiBwYWdlLCBXS0Zy
YW1lUmVmIGZyYW1lLCBXS1NlY3VyaXR5T3JpZ2luUmVmLCBXS1N0cmluZ1JlZiBkYXRhYmFzZU5h
bWUsIFdLU3RyaW5nUmVmIGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudFF1
b3RhLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudE9yaWdpblVzYWdlLCB1bnNpZ25lZCBsb25n
IGxvbmcgY3VycmVudERhdGFiYXNlVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBleHBlY3RlZFVz
YWdlLCBjb25zdCB2b2lkICpjbGllbnRJbmZvKQoreworICAgIFFTdHJpbmcgcURpc3BsYXlOYW1l
ID0gV0tTdHJpbmdDb3B5UVN0cmluZyhkaXNwbGF5TmFtZSk7CisgICAgUVN0cmluZyBxRGF0YWJh
c2VOYW1lID0gV0tTdHJpbmdDb3B5UVN0cmluZyhkYXRhYmFzZU5hbWUpOworICAgIHJldHVybiB0
b1F0V2ViUGFnZVVJQ2xpZW50KGNsaWVudEluZm8pLT5leGNlZWRlZERhdGFiYXNlUXVvdGEocURh
dGFiYXNlTmFtZSwgcURpc3BsYXlOYW1lLCBjdXJyZW50UXVvdGEsIGN1cnJlbnRPcmlnaW5Vc2Fn
ZSwgY3VycmVudERhdGFiYXNlVXNhZ2UsIGV4cGVjdGVkVXNhZ2UpOworfQorCiB2b2lkIFF0V2Vi
UGFnZVVJQ2xpZW50OjpydW5KYXZhU2NyaXB0QWxlcnQoV0tQYWdlUmVmLCBXS1N0cmluZ1JlZiBh
bGVydFRleHQsIFdLRnJhbWVSZWYsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pCiB7CiAgICAgUVN0
cmluZyBxQWxlcnRUZXh0ID0gV0tTdHJpbmdDb3B5UVN0cmluZyhhbGVydFRleHQpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1F0V2ViUGFnZVVJQ2xpZW50LmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvUXRXZWJQYWdlVUlDbGllbnQuaAppbmRleCA4Y2Zl
MTNjMjEzZjExMTA4YTUzYjdjY2EwY2MwZTFkZjI5ZmZlMzdhLi43MzllYzgzZGJkNzhjN2RkMDNk
ODIwMjU4NjJiNDNmZWVkMDZjZWNlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvcXQvUXRXZWJQYWdlVUlDbGllbnQuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
cXQvUXRXZWJQYWdlVUlDbGllbnQuaApAQCAtNDEsNiArNDEsNyBAQCBwdWJsaWM6CiAgICAgUXRX
ZWJQYWdlVUlDbGllbnQoV0tQYWdlUmVmLCBRUXVpY2tXZWJWaWV3Kik7CiAKIHByaXZhdGU6Cisg
ICAgcXVpbnQ2NCBleGNlZWRlZERhdGFiYXNlUXVvdGEoY29uc3QgUVN0cmluZyYgZGF0YWJhc2VO
YW1lLCBjb25zdCBRU3RyaW5nJiBkaXNwbGF5TmFtZSwgcXVpbnQ2NCBjdXJyZW50UXVvdGEsIHF1
aW50NjQgY3VycmVudE9yaWdpblVzYWdlLCBxdWludDY0IGN1cnJlbnREYXRhYmFzZVVzYWdlLCBx
dWludDY0IGV4cGVjdGVkVXNhZ2UpOwogICAgIHZvaWQgcnVuSmF2YVNjcmlwdEFsZXJ0KGNvbnN0
IFFTdHJpbmcmIG1lc3NhZ2UpOwogICAgIGJvb2wgcnVuSmF2YVNjcmlwdENvbmZpcm0oY29uc3Qg
UVN0cmluZyYgbWVzc2FnZSk7CiAgICAgUVN0cmluZyBydW5KYXZhU2NyaXB0UHJvbXB0KGNvbnN0
IFFTdHJpbmcmIG1lc3NhZ2UsIGNvbnN0IFFTdHJpbmcmIGRlZmF1bHRWYWx1ZSwgYm9vbCYgb2sp
OwpAQCAtNTQsNiArNTUsNyBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBXS1N0cmluZ1JlZiBydW5K
YXZhU2NyaXB0UHJvbXB0KFdLUGFnZVJlZiwgV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tTdHJpbmdS
ZWYgZGVmYXVsdFZhbHVlLCBXS0ZyYW1lUmVmLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKTsKICAg
ICBzdGF0aWMgdm9pZCBydW5PcGVuUGFuZWwoV0tQYWdlUmVmLCBXS0ZyYW1lUmVmLCBXS09wZW5Q
YW5lbFBhcmFtZXRlcnNSZWYsIFdLT3BlblBhbmVsUmVzdWx0TGlzdGVuZXJSZWYsIGNvbnN0IHZv
aWQqIGNsaWVudEluZm8pOwogICAgIHN0YXRpYyB2b2lkIG1vdXNlRGlkTW92ZU92ZXJFbGVtZW50
KFdLUGFnZVJlZiwgV0tIaXRUZXN0UmVzdWx0UmVmLCBXS0V2ZW50TW9kaWZpZXJzLCBXS1R5cGVS
ZWYgdXNlckRhdGEsIGNvbnN0IHZvaWQqIGNsaWVudEluZm8pOworICAgIHN0YXRpYyB1bnNpZ25l
ZCBsb25nIGxvbmcgZXhjZWVkZWREYXRhYmFzZVF1b3RhKFdLUGFnZVJlZiwgV0tGcmFtZVJlZiwg
V0tTZWN1cml0eU9yaWdpblJlZiwgV0tTdHJpbmdSZWYgZGF0YWJhc2VOYW1lLCBXS1N0cmluZ1Jl
ZiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnRRdW90YSwgdW5zaWduZWQg
bG9uZyBsb25nIGN1cnJlbnRPcmlnaW5Vc2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnRE
YXRhYmFzZVVzYWdlLCB1bnNpZ25lZCBsb25nIGxvbmcgZXhwZWN0ZWRVc2FnZSwgY29uc3Qgdm9p
ZCAqY2xpZW50SW5mbyk7CiAgICAgc3RhdGljIHZvaWQgcG9saWN5Rm9yR2VvbG9jYXRpb25QZXJt
aXNzaW9uUmVxdWVzdChXS1BhZ2VSZWYsIFdLRnJhbWVSZWYsIFdLU2VjdXJpdHlPcmlnaW5SZWYs
IFdLR2VvbG9jYXRpb25QZXJtaXNzaW9uUmVxdWVzdFJlZiwgY29uc3Qgdm9pZCopOwogCiAgICAg
UVF1aWNrV2ViVmlldyogbV93ZWJWaWV3Owo=
</data>
<flag name="review"
          id="137163"
          type_id="1"
          status="+"
          setter="hausmann"
    />
          </attachment>
      

    </bug>

</bugzilla>