<?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>41772</bug_id>
          
          <creation_ts>2010-07-07 08:51:31 -0700</creation_ts>
          <short_desc>Add basic piping for BackForwardControllerClient</short_desc>
          <delta_ts>2010-07-07 09:44:40 -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>History</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>247580</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-07-07 08:51:31 -0700</bug_when>
    <thetext>Add basic piping for BackForwardControllerClient.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247582</commentid>
    <comment_count>1</comment_count>
      <attachid>60738</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-07-07 08:57:39 -0700</bug_when>
    <thetext>Created attachment 60738
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>247586</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-07-07 09:00:23 -0700</bug_when>
    <thetext>Attachment 60738 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebKit2/WebProcess/WebCoreSupport/WebBackForwardControllerClient.cpp:26:  Found header this file implements before WebCore config.h. Should be: config.h, primary header, blank line, and then alphabetically sorted.  [build/include_order] [4]
WARNING: File exempt from style guide. Skipping: &quot;WebKit/qt/Api/qwebpage.cpp&quot;
Total errors found: 1 in 24 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>247600</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-07-07 09:44:40 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/62676.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>60738</attachid>
            <date>2010-07-07 08:57:39 -0700</date>
            <delta_ts>2010-07-07 09:29:48 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bf.diff</filename>
            <type>text/plain</type>
            <size>28384</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MjY3MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDctMDcgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4K
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQYXRjaCBm
b3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNzcyCisgICAgICAg
IEFkZCBiYXNpYyBwaXBpbmcgZm9yIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC4KKworICAg
ICAgICAqIFdlYkNvcmUuZXhwLmluOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKyAgICAgICAgKiBoaXN0b3J5L0JhY2tGb3J3YXJkQ29udHJvbGxlci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpCYWNrRm9yd2FyZENvbnRyb2xsZXI6OkJhY2tGb3J3YXJkQ29u
dHJvbGxlcik6CisgICAgICAgICogaGlzdG9yeS9CYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQu
aDoKKyAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGFnZTo6UGFn
ZSk6CisgICAgICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgICogc3ZnL2dyYXBoaWNzL1NWR0lt
YWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0ltYWdlOjpkYXRhQ2hhbmdlZCk6CisKIDIw
MTAtMDctMDcgIEx1Y2FzIERlIE1hcmNoaSAgPGx1Y2FzLmRlbWFyY2hpQHByb2Z1c2lvbi5tb2Jp
PgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGFmdGVyIHI2MjU3Ny4KSW5kZXg6IFdl
YkNvcmUvV2ViQ29yZS5leHAuaW4KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9XZWJDb3JlLmV4cC5p
bgkocmV2aXNpb24gNjI2MTUpCisrKyBXZWJDb3JlL1dlYkNvcmUuZXhwLmluCSh3b3JraW5nIGNv
cHkpCkBAIC01MDYsNiArNTA2LDcgQEAgX19aTjdXZWJDb3JlNEtVUkxDMUVOU18xOFBhcnNlZFVS
TFN0cmluZwogX19aTjdXZWJDb3JlNEtVUkxDMUVQNU5TVVJMCiBfX1pON1dlYkNvcmU0S1VSTEMx
RVBLN19fQ0ZVUkwKIF9fWk43V2ViQ29yZTRLVVJMQzFFUktTMF9SS05TXzZTdHJpbmdFCitfX1pO
N1dlYkNvcmU0Y29yZUVQMjBOU1VSTFByb3RlY3Rpb25TcGFjZQogX19aTjdXZWJDb3JlNE5vZGUx
MHJlbmRlclJlY3RFUGIKIF9fWk43V2ViQ29yZTROb2RlMTdzdG9wSWdub3JpbmdMZWFrc0V2CiBf
X1pON1dlYkNvcmU0Tm9kZTE4c3RhcnRJZ25vcmluZ0xlYWtzRXYKQEAgLTUzMCw5ICs1MzEsOCBA
QCBfX1pON1dlYkNvcmU0UGFnZTZnb0JhY2tFdgogX19aTjdXZWJDb3JlNFBhZ2U4Z29Ub0l0ZW1F
UE5TXzExSGlzdG9yeUl0ZW1FTlNfMTNGcmFtZUxvYWRUeXBlRQogX19aTjdXZWJDb3JlNFBhZ2U5
Z29Gb3J3YXJkRXYKIF9fWk43V2ViQ29yZTRQYWdlOWluaXRHcm91cEV2Ci1fX1pON1dlYkNvcmU0
UGFnZUMxRVBOU18xMkNocm9tZUNsaWVudEVQTlNfMTdDb250ZXh0TWVudUNsaWVudEVQTlNfMTJF
ZGl0b3JDbGllbnRFUE5TXzEwRHJhZ0NsaWVudEVQTlNfMTVJbnNwZWN0b3JDbGllbnRFUE5TXzE4
UGx1Z2luSGFsdGVyQ2xpZW50RVBOU18yN0dlb2xvY2F0aW9uQ29udHJvbGxlckNsaWVudEVQTlNf
MjNEZXZpY2VPcmllbnRhdGlvbkNsaWVudEUKK19fWk43V2ViQ29yZTRQYWdlQzFFUE5TXzEyQ2hy
b21lQ2xpZW50RVBOU18xN0NvbnRleHRNZW51Q2xpZW50RVBOU18xMkVkaXRvckNsaWVudEVQTlNf
MTBEcmFnQ2xpZW50RVBOU18xNUluc3BlY3RvckNsaWVudEVQTlNfMThQbHVnaW5IYWx0ZXJDbGll
bnRFUE5TXzI3R2VvbG9jYXRpb25Db250cm9sbGVyQ2xpZW50RVBOU18yM0RldmljZU9yaWVudGF0
aW9uQ2xpZW50RVBOU18yN0JhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudEUKIF9fWk43V2ViQ29y
ZTRQYWdlRDFFdgotX19aTjdXZWJDb3JlNGNvcmVFUDIwTlNVUkxQcm90ZWN0aW9uU3BhY2UKIF9f
Wk43V2ViQ29yZTR0b0pTRVBOM0pTQzlFeGVjU3RhdGVFUE5TXzE3SlNET01HbG9iYWxPYmplY3RF
UE5TXzE5Q1NTU3R5bGVEZWNsYXJhdGlvbkUKIF9fWk43V2ViQ29yZTVDYWNoZTExc2V0RGlzYWJs
ZWRFYgogX19aTjdXZWJDb3JlNUNhY2hlMTNnZXRTdGF0aXN0aWNzRXYKSW5kZXg6IFdlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA2MjYxNSkKKysrIFdl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBA
IC00NjkyLDcgKzQ2OTIsNyBAQAogCQlCQ0E4NUExMDBDM0FFQUY0MDA2RjgzMDggLyogRE9NU1ZH
TnVtYmVySW50ZXJuYWwuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IEJDQTg1QTBGMEMzQUVBRjQwMDZGODMwOCAvKiBET01TVkdOdW1iZXJJbnRlcm5hbC5o
ICovOyB9OwogCQlCQ0E4QzgxRTExRTNEMzY5MDA4MTJGQjcgLyogQmFja0ZvcndhcmRDb250cm9s
bGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0E4
QzgxQzExRTNEMzY5MDA4MTJGQjcgLyogQmFja0ZvcndhcmRDb250cm9sbGVyLmggKi87IH07CiAJ
CUJDQThDODFGMTFFM0QzNjkwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXIuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBOEM4MUQxMUUz
RDM2OTAwODEyRkI3IC8qIEJhY2tGb3J3YXJkQ29udHJvbGxlci5jcHAgKi87IH07Ci0JCUJDQThD
ODMxMTFFM0Q1MzIwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQThDODMwMTFFM0Q1
MzIwMDgxMkZCNyAvKiBCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuaCAqLzsgfTsKKwkJQkNB
OEM4MzExMUUzRDUzMjAwODEyRkI3IC8qIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNBOEM4MzAxMUUz
RDUzMjAwODEyRkI3IC8qIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5oICovOyBzZXR0aW5n
cyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCUJDQUE5MEMzMEE3RUJBNjAw
MDhCMTIyOSAvKiBTY3JvbGxiYXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQkNBQTkwQzIwQTdFQkE2MDAwOEIxMjI5IC8qIFNjcm9sbGJhci5jcHAg
Ki87IH07CiAJCUJDQUNGM0JDMTA3MjkyMUEwMEMwQzhBMyAvKiBVc2VyQ29udGVudFVSTFBhdHRl
cm4uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNB
Q0YzQkExMDcyOTIxQTAwQzBDOEEzIC8qIFVzZXJDb250ZW50VVJMUGF0dGVybi5jcHAgKi87IH07
CiAJCUJDQUNGM0JEMTA3MjkyMUEwMEMwQzhBMyAvKiBVc2VyQ29udGVudFVSTFBhdHRlcm4uaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQUNGM0JCMTA3
MjkyMUEwMEMwQzhBMyAvKiBVc2VyQ29udGVudFVSTFBhdHRlcm4uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpJbmRleDogV2ViQ29yZS9oaXN0b3J5L0Jh
Y2tGb3J3YXJkQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9oaXN0b3J5L0Jh
Y2tGb3J3YXJkQ29udHJvbGxlci5jcHAJKHJldmlzaW9uIDYyNjE1KQorKysgV2ViQ29yZS9oaXN0
b3J5L0JhY2tGb3J3YXJkQ29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3LDYgKzM3
LDggQEAgQmFja0ZvcndhcmRDb250cm9sbGVyOjpCYWNrRm9yd2FyZENvbnRybwogewogICAgIGlm
ICghbV9jbGllbnQpCiAgICAgICAgIG1fbGlzdCA9IEJhY2tGb3J3YXJkTGlzdDo6Y3JlYXRlKHBh
Z2UpOworICAgIGVsc2UKKyAgICAgICAgbV9saXN0ID0gbV9jbGllbnQtPmNyZWF0ZUJhY2tGb3J3
YXJkTGlzdCgpOwogfQogCiBCYWNrRm9yd2FyZENvbnRyb2xsZXI6On5CYWNrRm9yd2FyZENvbnRy
b2xsZXIoKQpJbmRleDogV2ViQ29yZS9oaXN0b3J5L0JhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVu
dC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvaGlzdG9yeS9CYWNrRm9yd2FyZENvbnRyb2xsZXJD
bGllbnQuaAkocmV2aXNpb24gNjI2MTUpCisrKyBXZWJDb3JlL2hpc3RvcnkvQmFja0ZvcndhcmRD
b250cm9sbGVyQ2xpZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDEyICsyNiwxNyBAQAogI2lm
bmRlZiBCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnRfaAogI2RlZmluZSBCYWNrRm9yd2FyZENv
bnRyb2xsZXJDbGllbnRfaAogCisjaW5jbHVkZSAiQmFja0ZvcndhcmRMaXN0LmgiCisjaW5jbHVk
ZSA8d3RmL1Bhc3NSZWZQdHIuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBCYWNr
Rm9yd2FyZENvbnRyb2xsZXJDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBiYWNr
Rm9yd2FyZENvbnRyb2xsZXJEZXN0cm95ZWQoKSA9IDA7CiAKKyAgICB2aXJ0dWFsIFBhc3NSZWZQ
dHI8QmFja0ZvcndhcmRMaXN0PiBjcmVhdGVCYWNrRm9yd2FyZExpc3QoKSA9IDA7CisKIHByb3Rl
Y3RlZDoKICAgICB2aXJ0dWFsIH5CYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQoKSB7IH0KIH07
CkluZGV4OiBXZWJDb3JlL3BhZ2UvUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wYWdl
L1BhZ2UuY3BwCShyZXZpc2lvbiA2MjYxNSkKKysrIFdlYkNvcmUvcGFnZS9QYWdlLmNwcAkod29y
a2luZyBjb3B5KQpAQCAtMTIxLDcgKzEyMSw3IEBAIHN0YXRpYyB2b2lkIG5ldHdvcmtTdGF0ZUNo
YW5nZWQoKQogICAgICAgICBmcmFtZXNbaV0tPmRvY3VtZW50KCktPmRpc3BhdGNoV2luZG93RXZl
bnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWUsIGZhbHNlLCBmYWxzZSkpOwogfQogCi1QYWdlOjpQ
YWdlKENocm9tZUNsaWVudCogY2hyb21lQ2xpZW50LCBDb250ZXh0TWVudUNsaWVudCogY29udGV4
dE1lbnVDbGllbnQsIEVkaXRvckNsaWVudCogZWRpdG9yQ2xpZW50LCBEcmFnQ2xpZW50KiBkcmFn
Q2xpZW50LCBJbnNwZWN0b3JDbGllbnQqIGluc3BlY3RvckNsaWVudCwgUGx1Z2luSGFsdGVyQ2xp
ZW50KiBwbHVnaW5IYWx0ZXJDbGllbnQsIEdlb2xvY2F0aW9uQ29udHJvbGxlckNsaWVudCogZ2Vv
bG9jYXRpb25Db250cm9sbGVyQ2xpZW50LCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudCogZGV2aWNl
T3JpZW50YXRpb25DbGllbnQpCitQYWdlOjpQYWdlKENocm9tZUNsaWVudCogY2hyb21lQ2xpZW50
LCBDb250ZXh0TWVudUNsaWVudCogY29udGV4dE1lbnVDbGllbnQsIEVkaXRvckNsaWVudCogZWRp
dG9yQ2xpZW50LCBEcmFnQ2xpZW50KiBkcmFnQ2xpZW50LCBJbnNwZWN0b3JDbGllbnQqIGluc3Bl
Y3RvckNsaWVudCwgUGx1Z2luSGFsdGVyQ2xpZW50KiBwbHVnaW5IYWx0ZXJDbGllbnQsIEdlb2xv
Y2F0aW9uQ29udHJvbGxlckNsaWVudCogZ2VvbG9jYXRpb25Db250cm9sbGVyQ2xpZW50LCBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudCogZGV2aWNlT3JpZW50YXRpb25DbGllbnQsIEJhY2tGb3J3YXJk
Q29udHJvbGxlckNsaWVudCogYmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50KQogICAgIDogbV9j
aHJvbWUobmV3IENocm9tZSh0aGlzLCBjaHJvbWVDbGllbnQpKQogICAgICwgbV9kcmFnQ2FyZXRD
b250cm9sbGVyKG5ldyBTZWxlY3Rpb25Db250cm9sbGVyKDAsIHRydWUpKQogI2lmIEVOQUJMRShE
UkFHX1NVUFBPUlQpCkBAIC0xNDIsNyArMTQyLDcgQEAgUGFnZTo6UGFnZShDaHJvbWVDbGllbnQq
IGNocm9tZUNsaWVudCwgQwogI2VuZGlmCiAgICAgLCBtX3NldHRpbmdzKG5ldyBTZXR0aW5ncyh0
aGlzKSkKICAgICAsIG1fcHJvZ3Jlc3MobmV3IFByb2dyZXNzVHJhY2tlcikKLSAgICAsIG1fYmFj
a0ZvcndhcmRDb250cm9sbGVyKG5ldyBCYWNrRm9yd2FyZENvbnRyb2xsZXIodGhpcywgMCkpCisg
ICAgLCBtX2JhY2tGb3J3YXJkQ29udHJvbGxlcihuZXcgQmFja0ZvcndhcmRDb250cm9sbGVyKHRo
aXMsIGJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudCkpCiAgICAgLCBtX3RoZW1lKFJlbmRlclRo
ZW1lOjp0aGVtZUZvclBhZ2UodGhpcykpCiAgICAgLCBtX2VkaXRvckNsaWVudChlZGl0b3JDbGll
bnQpCiAgICAgLCBtX2ZyYW1lQ291bnQoMCkKSW5kZXg6IFdlYkNvcmUvcGFnZS9QYWdlLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9wYWdlL1BhZ2UuaAkocmV2aXNpb24gNjI2MTUpCisrKyBXZWJD
b3JlL3BhZ2UvUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOCw2ICszOCw3IEBAIG5hbWVzcGFj
ZSBKU0MgewogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgQmFja0ZvcndhcmRDb250
cm9sbGVyOworICAgIGNsYXNzIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudDsKICAgICBjbGFz
cyBCYWNrRm9yd2FyZExpc3Q7CiAgICAgY2xhc3MgQ2hyb21lOwogICAgIGNsYXNzIENocm9tZUNs
aWVudDsKQEAgLTg4LDcgKzg5LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIHB1YmxpYzoK
ICAgICAgICAgc3RhdGljIHZvaWQgc2V0TmVlZHNSZWFwcGx5U3R5bGVzKCk7CiAKLSAgICAgICAg
UGFnZShDaHJvbWVDbGllbnQqLCBDb250ZXh0TWVudUNsaWVudCosIEVkaXRvckNsaWVudCosIERy
YWdDbGllbnQqLCBJbnNwZWN0b3JDbGllbnQqLCBQbHVnaW5IYWx0ZXJDbGllbnQqLCBHZW9sb2Nh
dGlvbkNvbnRyb2xsZXJDbGllbnQqLCBEZXZpY2VPcmllbnRhdGlvbkNsaWVudCopOworICAgICAg
ICBQYWdlKENocm9tZUNsaWVudCosIENvbnRleHRNZW51Q2xpZW50KiwgRWRpdG9yQ2xpZW50Kiwg
RHJhZ0NsaWVudCosIEluc3BlY3RvckNsaWVudCosIFBsdWdpbkhhbHRlckNsaWVudCosIEdlb2xv
Y2F0aW9uQ29udHJvbGxlckNsaWVudCosIERldmljZU9yaWVudGF0aW9uQ2xpZW50KiwgQmFja0Zv
cndhcmRDb250cm9sbGVyQ2xpZW50Kik7CiAgICAgICAgIH5QYWdlKCk7CiAKICAgICAgICAgUmVu
ZGVyVGhlbWUqIHRoZW1lKCkgY29uc3QgeyByZXR1cm4gbV90aGVtZS5nZXQoKTsgfTsKSW5kZXg6
IFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3Jl
L3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHAJKHJldmlzaW9uIDYyNjE1KQorKysgV2ViQ29yZS9z
dmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNTUsNyArMjU1LDcg
QEAgYm9vbCBTVkdJbWFnZTo6ZGF0YUNoYW5nZWQoYm9vbCBhbGxEYXRhUgogICAgICAgICAvLyBG
SVhNRTogSWYgdGhpcyBTVkcgZW5kcyB1cCBsb2FkaW5nIGl0c2VsZiwgd2UgbWlnaHQgbGVhayB0
aGUgd29ybGQuCiAgICAgICAgIC8vIFRoZSBjb21tZW50IHNhaWQgdGhhdCB0aGUgQ2FjaGUgY29k
ZSBkb2VzIG5vdCBrbm93IGFib3V0IENhY2hlZEltYWdlcwogICAgICAgICAvLyBob2xkaW5nIEZy
YW1lcyBhbmQgd29uJ3Qga25vdyB0byBicmVhayB0aGUgY3ljbGUuIEJ1dCAKLSAgICAgICAgbV9w
YWdlLnNldChuZXcgUGFnZShtX2Nocm9tZUNsaWVudC5nZXQoKSwgZHVtbXlDb250ZXh0TWVudUNs
aWVudCwgZHVtbXlFZGl0b3JDbGllbnQsIGR1bW15RHJhZ0NsaWVudCwgZHVtbXlJbnNwZWN0b3JD
bGllbnQsIDAsIDAsIDApKTsKKyAgICAgICAgbV9wYWdlLnNldChuZXcgUGFnZShtX2Nocm9tZUNs
aWVudC5nZXQoKSwgZHVtbXlDb250ZXh0TWVudUNsaWVudCwgZHVtbXlFZGl0b3JDbGllbnQsIGR1
bW15RHJhZ0NsaWVudCwgZHVtbXlJbnNwZWN0b3JDbGllbnQsIDAsIDAsIDAsIDApKTsKICAgICAg
ICAgbV9wYWdlLT5zZXR0aW5ncygpLT5zZXRNZWRpYUVuYWJsZWQoZmFsc2UpOwogICAgICAgICBt
X3BhZ2UtPnNldHRpbmdzKCktPnNldEphdmFTY3JpcHRFbmFibGVkKGZhbHNlKTsKICAgICAgICAg
bV9wYWdlLT5zZXR0aW5ncygpLT5zZXRQbHVnaW5zRW5hYmxlZChmYWxzZSk7CkluZGV4OiBXZWJL
aXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24g
NjI2NzIpCisrKyBXZWJLaXQyL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIy
IEBACisyMDEwLTA3LTA3ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUGF0Y2ggZm9yIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTc3MgorICAgICAgICBBZGQgYmFzaWMg
cGlwaW5nIGZvciBCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuCisKKyAgICAgICAgLSBBZGQg
dmVyeSBiYXNpYyBXZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuCisKKyAgICAgICAgKiBX
ZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuY3BwOiBBZGRlZC4K
KyAgICAgICAgKFdlYktpdDo6V2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50OjpiYWNrRm9y
d2FyZENvbnRyb2xsZXJEZXN0cm95ZWQpOgorICAgICAgICAoV2ViS2l0OjpXZWJCYWNrRm9yd2Fy
ZENvbnRyb2xsZXJDbGllbnQ6OmNyZWF0ZUJhY2tGb3J3YXJkTGlzdCk6CisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuaDog
QWRkZWQuCisgICAgICAgIChXZWJLaXQ6OldlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudDo6
V2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OldlYlBhZ2UpOgor
ICAgICAgICAqIHdpbi9XZWJLaXQyLnZjcHJvajoKKwogMjAxMC0wNy0wNyAgQW50dGkgS29pdmlz
dG8gIDxrb2l2aXN0b0Bpa2kuZmk+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgS2VubmV0aCBSb2hk
ZSBDaHJpc3RpYW5zZW4uCkluZGV4OiBXZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagkocmV2aXNpb24gNjI2MTUpCisrKyBXZWJLaXQyL1dlYktpdDIueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTgwLDYgKzE4MCw4IEBACiAJCUJDQThD
NkE5MTFFM0JBNUYwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VMb2FkZXJDbGllbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQThDNkE3MTFF
M0JBNUYwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VMb2FkZXJDbGllbnQuaCAqLzsgfTsK
IAkJQkNBOEM2QUYxMUUzQzA4NzAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQThD
NkFEMTFFM0MwODcwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5jcHAgKi87
IH07CiAJCUJDQThDNkIwMTFFM0MwODcwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNs
aWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNB
OEM2QUUxMUUzQzA4NzAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxlUGFnZVVJQ2xpZW50LmggKi87
IH07CisJCUJDQThDOURDMTFFNDA4NjUwMDgxMkZCNyAvKiBXZWJCYWNrRm9yd2FyZENvbnRyb2xs
ZXJDbGllbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEJDQThDOURBMTFFNDA4NjUwMDgxMkZCNyAvKiBXZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGll
bnQuaCAqLzsgfTsKKwkJQkNBOEM5REQxMUU0MDg2NTAwODEyRkI3IC8qIFdlYkJhY2tGb3J3YXJk
Q29udHJvbGxlckNsaWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0E4QzlEQjExRTQwODY1MDA4MTJGQjcgLyogV2ViQmFja0ZvcndhcmRDb250
cm9sbGVyQ2xpZW50LmNwcCAqLzsgfTsKIAkJQkNCNjM0NzgxMTZCRjEwNjAwNjAzMjE1IC8qIFdl
YktpdDIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJD
QjYzNDc3MTE2QkYxMDYwMDYwMzIxNSAvKiBXZWJLaXQyLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHVibGljLCApOyB9OyB9OwogCQlCQ0I3MzQ2RTExQ0VFM0ZGMDBFQzUwMDIgLyog
V2ViUHJvY2Vzc1Byb3h5TWVzc2FnZUtpbmRzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0I3MzQ2RDExQ0VFM0ZGMDBFQzUwMDIgLyogV2ViUHJvY2Vz
c1Byb3h5TWVzc2FnZUtpbmRzLmggKi87IH07CiAJCUJDQjlFMjQzMTEyMERBQ0EwMEExMzdFMCAv
KiBXZWJDb250ZXh0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCQ0I5RTI0MTExMjBEQUNBMDBBMTM3RTAgLyogV2ViQ29udGV4dC5oICovOyB9OwpAQCAt
NDMzLDYgKzQzNSw4IEBACiAJCUJDQThDNkE3MTFFM0JBNUYwMDgxMkZCNyAvKiBJbmplY3RlZEJ1
bmRsZVBhZ2VMb2FkZXJDbGllbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
SW5qZWN0ZWRCdW5kbGVQYWdlTG9hZGVyQ2xpZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDQThDNkFEMTFFM0MwODcwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNs
aWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBJbmplY3RlZEJ1
bmRsZVBhZ2VVSUNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUJDQThD
NkFFMTFFM0MwODcwMDgxMkZCNyAvKiBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBJbmplY3RlZEJ1bmRsZVBhZ2VVSUNsaWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlCQ0E4QzlEQTExRTQwODY1MDA4MTJGQjcg
LyogV2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OworCQlCQ0E4QzlEQjExRTQwODY1MDA4MTJGQjcgLyogV2ViQmFja0Zv
cndhcmRDb250cm9sbGVyQ2xpZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFdlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUJDQjYzNDc3MTE2QkYxMDYwMDYwMzIxNSAvKiBXZWJLaXQyLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYktpdDIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJQkNCNzM0NkQxMUNFRTNGRjAwRUM1MDAyIC8qIFdlYlByb2Nlc3NQcm94
eU1lc3NhZ2VLaW5kcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBXZWJQcm9j
ZXNzUHJveHlNZXNzYWdlS2luZHMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNC
ODZGNEIxMTZBQUFDRDAwQ0UyMEI3IC8qIFdlYktpdDIueGNjb25maWcgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0Mi54Y2NvbmZpZzsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTcwMCwxNSArNzA0LDE3IEBACiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxk
cmVuID0gKAogCQkJCUJDMTExQURFMTEyRjVCOUEwMDMzN0JBQiAvKiBtYWMgKi8sCisJCQkJQkNB
OEM5REIxMUU0MDg2NTAwODEyRkI3IC8qIFdlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5j
cHAgKi8sCisJCQkJQkNBOEM5REExMUU0MDg2NTAwODEyRkI3IC8qIFdlYkJhY2tGb3J3YXJkQ29u
dHJvbGxlckNsaWVudC5oICovLAogCQkJCUJDMTExQTUzMTEyRjRGQkIwMDMzN0JBQiAvKiBXZWJD
aHJvbWVDbGllbnQuY3BwICovLAogCQkJCUJDMDMyRDYwMTBGNDM3OEQwMDU4QzE1QSAvKiBXZWJD
aHJvbWVDbGllbnQuaCAqLywKIAkJCQlCQzExMUE1NDExMkY0RkJCMDAzMzdCQUIgLyogV2ViQ29u
dGV4dE1lbnVDbGllbnQuY3BwICovLAogCQkJCUJDMDMyRDYyMTBGNDM3OEQwMDU4QzE1QSAvKiBX
ZWJDb250ZXh0TWVudUNsaWVudC5oICovLAogCQkJCUJDMTExQTU2MTEyRjRGQkIwMDMzN0JBQiAv
KiBXZWJEcmFnQ2xpZW50LmNwcCAqLywKIAkJCQlCQzAzMkQ2NjEwRjQzNzhEMDA1OEMxNUEgLyog
V2ViRHJhZ0NsaWVudC5oICovLAotCQkJCTFBNDMzRjBDMTEzQzUzREQwMEZBQ0RFOSAvKiBXZWJF
cnJvcnMuaCAqLywKIAkJCQlCQzExMUE1NzExMkY0RkJCMDAzMzdCQUIgLyogV2ViRWRpdG9yQ2xp
ZW50LmNwcCAqLywKIAkJCQlCQzAzMkQ2ODEwRjQzNzhEMDA1OEMxNUEgLyogV2ViRWRpdG9yQ2xp
ZW50LmggKi8sCisJCQkJMUE0MzNGMEMxMTNDNTNERDAwRkFDREU5IC8qIFdlYkVycm9ycy5oICov
LAogCQkJCUJDMTExQTU4MTEyRjRGQkIwMDMzN0JBQiAvKiBXZWJGcmFtZUxvYWRlckNsaWVudC5j
cHAgKi8sCiAJCQkJQkMwMzJENkExMEY0Mzc4RDAwNThDMTVBIC8qIFdlYkZyYW1lTG9hZGVyQ2xp
ZW50LmggKi8sCiAJCQkJQkMxMTFBNTkxMTJGNEZCQjAwMzM3QkFCIC8qIFdlYkluc3BlY3RvckNs
aWVudC5jcHAgKi8sCkBAIC0xMTQxLDYgKzExNDcsNyBAQAogCQkJCTFBNkZBMDIwMTFFMTUyODcw
MERCMTM3MSAvKiBXZWJQcm9jZXNzTWFpbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkNBOEM2QTkx
MUUzQkE1RjAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkNBOEM2QjAxMUUzQzA4NzAwODEyRkI3IC8qIEluamVjdGVkQnVuZGxl
UGFnZVVJQ2xpZW50LmggaW4gSGVhZGVycyAqLywKKwkJCQlCQ0E4QzlEQzExRTQwODY1MDA4MTJG
QjcgLyogV2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJ
CSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAg
LTEzMjAsNiArMTMyNyw3IEBACiAJCQkJMUE2RkEzMTYxMUUzOTIzNjAwREIxMzcxIC8qIFdlYktp
dE1haW4uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQkNBOEM2QTgxMUUzQkE1RjAwODEyRkI3IC8q
IEluamVjdGVkQnVuZGxlUGFnZUxvYWRlckNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlC
Q0E4QzZBRjExRTNDMDg3MDA4MTJGQjcgLyogSW5qZWN0ZWRCdW5kbGVQYWdlVUlDbGllbnQuY3Bw
IGluIFNvdXJjZXMgKi8sCisJCQkJQkNBOEM5REQxMUU0MDg2NTAwODEyRkI3IC8qIFdlYkJhY2tG
b3J3YXJkQ29udHJvbGxlckNsaWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5P
bmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKSW5kZXg6IFdlYktpdDIv
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJC
YWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuY3BwCShyZXZpc2lvbiAwKQorKysgV2ViS2l0Mi9X
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5j
cHAJKHJldmlzaW9uIDApCkBAIC0wLDAgKzEsNDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9u
IGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICog
bW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBj
b25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhl
ciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMg
U09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBg
YEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN
RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBB
UkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJ
QlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFM
LCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xV
RElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBH
T09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lO
RVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9G
IExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9S
IFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4g
QU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQg
T0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAi
V2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmgiCisKKyNpbmNsdWRlICJXZWJQYWdlLmgi
CisjaW5jbHVkZSA8V2ViQ29yZS9CYWNrRm9yd2FyZExpc3QuaD4KKwordXNpbmcgbmFtZXNwYWNl
IFdlYkNvcmU7CisKK25hbWVzcGFjZSBXZWJLaXQgeworCit2b2lkIFdlYkJhY2tGb3J3YXJkQ29u
dHJvbGxlckNsaWVudDo6YmFja0ZvcndhcmRDb250cm9sbGVyRGVzdHJveWVkKCkKK3sKKyAgICBk
ZWxldGUgdGhpczsKK30KKworUGFzc1JlZlB0cjxCYWNrRm9yd2FyZExpc3Q+IFdlYkJhY2tGb3J3
YXJkQ29udHJvbGxlckNsaWVudDo6Y3JlYXRlQmFja0ZvcndhcmRMaXN0KCkKK3sKKyAgICByZXR1
cm4gQmFja0ZvcndhcmRMaXN0OjpjcmVhdGUobV9wYWdlLT5jb3JlUGFnZSgpKTsKK30KKworfSAv
LyBuYW1lc3BhY2UgV2ViS2l0CkluZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVu
dC5oCShyZXZpc2lvbiAwKQorKysgV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC5oCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUx
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1Mg
T1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAq
IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZP
UiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNI
QUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkg
RElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICog
Q09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJP
Q1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNF
LCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBP
UiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJ
UyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBXZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnRf
aAorI2RlZmluZSBXZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnRfaAorCisjaW5jbHVkZSA8
V2ViQ29yZS9CYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuaD4KKworbmFtZXNwYWNlIFdlYktp
dCB7CisKK2NsYXNzIFdlYlBhZ2U7CisKK2NsYXNzIFdlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNs
aWVudCA6IHB1YmxpYyBXZWJDb3JlOjpCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQgeworcHVi
bGljOgorICAgIFdlYkJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudChXZWJQYWdlKiBwYWdlKQor
ICAgICAgICA6IG1fcGFnZShwYWdlKQorICAgIHsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgdmly
dHVhbCB2b2lkIGJhY2tGb3J3YXJkQ29udHJvbGxlckRlc3Ryb3llZCgpOworICAgIHZpcnR1YWwg
UGFzc1JlZlB0cjxXZWJDb3JlOjpCYWNrRm9yd2FyZExpc3Q+IGNyZWF0ZUJhY2tGb3J3YXJkTGlz
dCgpOworCisgICAgV2ViUGFnZSogbV9wYWdlOworfTsKKworfSAvLyBuYW1lc3BhY2UgV2ViS2l0
CisKKyNlbmRpZiAvLyBXZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnRfaApJbmRleDogV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHJldmlzaW9uIDYyNjE1KQorKysgV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5
LDYgKzI5LDcgQEAKICNpbmNsdWRlICJEcmF3aW5nQXJlYS5oIgogI2luY2x1ZGUgIkluamVjdGVk
QnVuZGxlLmgiCiAjaW5jbHVkZSAiTWVzc2FnZUlELmgiCisjaW5jbHVkZSAiV2ViQmFja0Zvcndh
cmRDb250cm9sbGVyQ2xpZW50LmgiCiAjaW5jbHVkZSAiV2ViQ2hyb21lQ2xpZW50LmgiCiAjaW5j
bHVkZSAiV2ViQ29udGV4dE1lbnVDbGllbnQuaCIKICNpbmNsdWRlICJXZWJDb3JlQXJndW1lbnRD
b2RlcnMuaCIKQEAgLTc2LDcgKzc3LDcgQEAgUGFzc1JlZlB0cjxXZWJQYWdlPiBXZWJQYWdlOjpj
cmVhdGUodWludAogfQogCiBXZWJQYWdlOjpXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCwgY29uc3Qg
SW50U2l6ZSYgdmlld1NpemUsIGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlLCBEcmF3
aW5nQXJlYTo6VHlwZSBkcmF3aW5nQXJlYVR5cGUpCi0gICAgOiBtX3BhZ2UobmV3IFBhZ2UobmV3
IFdlYkNocm9tZUNsaWVudCh0aGlzKSwgbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHRoaXMpLCBu
ZXcgV2ViRWRpdG9yQ2xpZW50KHRoaXMpLCBuZXcgV2ViRHJhZ0NsaWVudCh0aGlzKSwgbmV3IFdl
Ykluc3BlY3RvckNsaWVudCh0aGlzKSwgMCwgMCwgMCkpCisgICAgOiBtX3BhZ2UobmV3IFBhZ2Uo
bmV3IFdlYkNocm9tZUNsaWVudCh0aGlzKSwgbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHRoaXMp
LCBuZXcgV2ViRWRpdG9yQ2xpZW50KHRoaXMpLCBuZXcgV2ViRHJhZ0NsaWVudCh0aGlzKSwgbmV3
IFdlYkluc3BlY3RvckNsaWVudCh0aGlzKSwgMCwgMCwgMCwgbmV3IFdlYkJhY2tGb3J3YXJkQ29u
dHJvbGxlckNsaWVudCh0aGlzKSkpCiAgICAgLCBtX3ZpZXdTaXplKHZpZXdTaXplKQogICAgICwg
bV9kcmF3aW5nQXJlYShEcmF3aW5nQXJlYTo6Y3JlYXRlKGRyYXdpbmdBcmVhVHlwZSwgdGhpcykp
CiAgICAgLCBtX2NhbkdvQmFjayhmYWxzZSkKSW5kZXg6IFdlYktpdDIvd2luL1dlYktpdDIudmNw
cm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdDIvd2luL1dlYktpdDIudmNwcm9qCShyZXZpc2lvbiA2
MjYxNSkKKysrIFdlYktpdDIvd2luL1dlYktpdDIudmNwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC01
ODcsNiArNTg3LDE0IEBACiAJCQkJTmFtZT0iV2ViQ29yZVN1cHBvcnQiDQogCQkJCT4NCiAJCQkJ
PEZpbGUNCisJCQkJCVJlbGF0aXZlUGF0aD0iLi5cV2ViUHJvY2Vzc1xXZWJDb3JlU3VwcG9ydFxX
ZWJCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuY3BwIg0KKwkJCQkJPg0KKwkJCQk8L0ZpbGU+
DQorCQkJCTxGaWxlDQorCQkJCQlSZWxhdGl2ZVBhdGg9Ii4uXFdlYlByb2Nlc3NcV2ViQ29yZVN1
cHBvcnRcV2ViQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmgiDQorCQkJCQk+DQorCQkJCTwv
RmlsZT4NCisJCQkJPEZpbGUNCiAJCQkJCVJlbGF0aXZlUGF0aD0iLi5cV2ViUHJvY2Vzc1xXZWJD
b3JlU3VwcG9ydFxXZWJDaHJvbWVDbGllbnQuY3BwIg0KIAkJCQkJPg0KIAkJCQk8L0ZpbGU+DQpJ
bmRleDogV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA2MjY3MikKKysrIFdlYktpdC9jaHJvbWl1bS9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxMC0wNy0wNyAgU2FtIFdl
aW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFBhdGNoIGZvciBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NDE3NzIKKyAgICAgICAgQWRkIGJhc2ljIHBpcGluZyBmb3IgQmFja0ZvcndhcmRD
b250cm9sbGVyQ2xpZW50LgorCisgICAgICAgICogc3JjL1dlYlZpZXdJbXBsLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViVmlld0ltcGw6OldlYlZpZXdJbXBsKToKKwogMjAxMC0wNy0wNyAgU2hl
cmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZp
ZXdlZCwgcm9sbGluZyBvdXQgcjYyNjQ1LgpJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJW
aWV3SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAJKHJldmlzaW9uIDYyNjE1KQorKysgV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2Myw3ICsyNjMsNyBAQCBXZWJWaWV3SW1wbDo6V2Vi
Vmlld0ltcGwoV2ViVmlld0NsaWVudCogCiAgICAgaWYgKGRldlRvb2xzQ2xpZW50KQogICAgICAg
ICBtX2RldlRvb2xzQWdlbnQgPSBuZXcgV2ViRGV2VG9vbHNBZ2VudEltcGwodGhpcywgZGV2VG9v
bHNDbGllbnQpOwogCi0gICAgbV9wYWdlLnNldChuZXcgUGFnZSgmbV9jaHJvbWVDbGllbnRJbXBs
LCAmbV9jb250ZXh0TWVudUNsaWVudEltcGwsICZtX2VkaXRvckNsaWVudEltcGwsICZtX2RyYWdD
bGllbnRJbXBsLCAmbV9pbnNwZWN0b3JDbGllbnRJbXBsLCAwLCAwLCAwKSk7CisgICAgbV9wYWdl
LnNldChuZXcgUGFnZSgmbV9jaHJvbWVDbGllbnRJbXBsLCAmbV9jb250ZXh0TWVudUNsaWVudElt
cGwsICZtX2VkaXRvckNsaWVudEltcGwsICZtX2RyYWdDbGllbnRJbXBsLCAmbV9pbnNwZWN0b3JD
bGllbnRJbXBsLCAwLCAwLCAwLCAwKSk7CiAKICAgICAvLyB0aGUgcGFnZSB3aWxsIHRha2Ugb3du
ZXJzaGlwIG9mIHRoZSB2YXJpb3VzIGNsaWVudHMKIApJbmRleDogV2ViS2l0L2d0ay9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHJldmlzaW9uIDYyNjcyKQor
KysgV2ViS2l0L2d0ay9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAor
MjAxMC0wNy0wNyAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFBhdGNoIGZvciBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDE3NzIKKyAgICAgICAgQWRkIGJhc2ljIHBpcGlu
ZyBmb3IgQmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LgorCisgICAgICAgICogd2Via2l0L3dl
YmtpdHdlYnZpZXcuY3BwOgorICAgICAgICAod2Via2l0X3dlYl92aWV3X2luaXQpOgorCiAyMDEw
LTA2LTE5ICBJbHlhIFRpa2hvbm92c2t5ICA8bG9pc2xvQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBZdXJ5IFNlbWlraGF0c2t5LgpJbmRleDogV2ViS2l0L2d0ay93ZWJraXQv
d2Via2l0d2Vidmlldy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vidmlldy5jcHAJKHJldmlzaW9uIDYyNjE1KQorKysgV2ViS2l0L2d0ay93ZWJraXQvd2Via2l0
d2Vidmlldy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5MDAsNyArMjkwMCw3IEBAIHN0YXRpYyB2
b2lkIHdlYmtpdF93ZWJfdmlld19pbml0KFdlYktpdFcKICAgICBwcml2LT5pbUNvbnRleHQgPSBn
dGtfaW1fbXVsdGljb250ZXh0X25ldygpOwogCiAgICAgV2ViS2l0OjpJbnNwZWN0b3JDbGllbnQq
IGluc3BlY3RvckNsaWVudCA9IG5ldyBXZWJLaXQ6Okluc3BlY3RvckNsaWVudCh3ZWJWaWV3KTsK
LSAgICBwcml2LT5jb3JlUGFnZSA9IG5ldyBQYWdlKG5ldyBXZWJLaXQ6OkNocm9tZUNsaWVudCh3
ZWJWaWV3KSwgbmV3IFdlYktpdDo6Q29udGV4dE1lbnVDbGllbnQod2ViVmlldyksIG5ldyBXZWJL
aXQ6OkVkaXRvckNsaWVudCh3ZWJWaWV3KSwgbmV3IFdlYktpdDo6RHJhZ0NsaWVudCh3ZWJWaWV3
KSwgaW5zcGVjdG9yQ2xpZW50LCAwLCAwLCAwKTsKKyAgICBwcml2LT5jb3JlUGFnZSA9IG5ldyBQ
YWdlKG5ldyBXZWJLaXQ6OkNocm9tZUNsaWVudCh3ZWJWaWV3KSwgbmV3IFdlYktpdDo6Q29udGV4
dE1lbnVDbGllbnQod2ViVmlldyksIG5ldyBXZWJLaXQ6OkVkaXRvckNsaWVudCh3ZWJWaWV3KSwg
bmV3IFdlYktpdDo6RHJhZ0NsaWVudCh3ZWJWaWV3KSwgaW5zcGVjdG9yQ2xpZW50LCAwLCAwLCAw
LCAwKTsKIAogICAgIC8vIFdlIGFsc28gYWRkIGEgc2ltcGxlIHdyYXBwZXIgY2xhc3MgdG8gcHJv
dmlkZSB0aGUgcHVibGljCiAgICAgLy8gaW50ZXJmYWNlIGZvciB0aGUgV2ViIEluc3BlY3Rvci4K
SW5kZXg6IFdlYktpdC9tYWMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvQ2hh
bmdlTG9nCShyZXZpc2lvbiA2MjY3MikKKysrIFdlYktpdC9tYWMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDctMDcgIFNhbSBXZWluaWcgIDxzYW1Ad2Vi
a2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBQYXRjaCBmb3IgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNzcy
CisgICAgICAgIEFkZCBiYXNpYyBwaXBpbmcgZm9yIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVu
dC4KKworICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbToKKyAgICAgICAgKC1bV2ViVmlldyBf
Y29tbW9uSW5pdGlhbGl6YXRpb25XaXRoRnJhbWVOYW1lOmdyb3VwTmFtZTp1c2VzRG9jdW1lbnRW
aWV3czpdKToKKwogMjAxMC0wNy0wNiAgU3RldmUgRmFsa2VuYnVyZyAgPHNmYWxrZW5AYXBwbGUu
Y29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNpbW9uIEZyYXNlci4KSW5kZXg6IFdlYktpdC9t
YWMvV2ViVmlldy9XZWJWaWV3Lm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9tYWMvV2ViVmlldy9X
ZWJWaWV3Lm1tCShyZXZpc2lvbiA2MjYxNSkKKysrIFdlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC02NzUsOCArNjc1LDcgQEAgLSAodm9pZClfY29tbW9uSW5p
dGlhbGl6YXRpb25XaXRoRnJhbWVOYQogI2Vsc2UKICAgICBXZWJHZW9sb2NhdGlvbkNvbnRyb2xs
ZXJDbGllbnQqIGdlb2xvY2F0aW9uQ29udHJvbGxlckNsaWVudCA9IDA7CiAjZW5kaWYKLSAgICBE
ZXZpY2VPcmllbnRhdGlvbkNsaWVudCogZGV2aWNlT3JpZW50YXRpb25DbGllbnQgPSAwOwotICAg
IF9wcml2YXRlLT5wYWdlID0gbmV3IFBhZ2UobmV3IFdlYkNocm9tZUNsaWVudChzZWxmKSwgbmV3
IFdlYkNvbnRleHRNZW51Q2xpZW50KHNlbGYpLCBuZXcgV2ViRWRpdG9yQ2xpZW50KHNlbGYpLCBu
ZXcgV2ViRHJhZ0NsaWVudChzZWxmKSwgbmV3IFdlYkluc3BlY3RvckNsaWVudChzZWxmKSwgbmV3
IFdlYlBsdWdpbkhhbHRlckNsaWVudChzZWxmKSwgZ2VvbG9jYXRpb25Db250cm9sbGVyQ2xpZW50
LCBkZXZpY2VPcmllbnRhdGlvbkNsaWVudCk7CisgICAgX3ByaXZhdGUtPnBhZ2UgPSBuZXcgUGFn
ZShuZXcgV2ViQ2hyb21lQ2xpZW50KHNlbGYpLCBuZXcgV2ViQ29udGV4dE1lbnVDbGllbnQoc2Vs
ZiksIG5ldyBXZWJFZGl0b3JDbGllbnQoc2VsZiksIG5ldyBXZWJEcmFnQ2xpZW50KHNlbGYpLCBu
ZXcgV2ViSW5zcGVjdG9yQ2xpZW50KHNlbGYpLCBuZXcgV2ViUGx1Z2luSGFsdGVyQ2xpZW50KHNl
bGYpLCBnZW9sb2NhdGlvbkNvbnRyb2xsZXJDbGllbnQsIDAsIDApOwogCiAgICAgX3ByaXZhdGUt
PnBhZ2UtPnNldENhblN0YXJ0TWVkaWEoW3NlbGYgd2luZG93XSk7CiAgICAgX3ByaXZhdGUtPnBh
Z2UtPnNldHRpbmdzKCktPnNldExvY2FsU3RvcmFnZURhdGFiYXNlUGF0aChbW3NlbGYgcHJlZmVy
ZW5jZXNdIF9sb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGhdKTsKSW5kZXg6IFdlYktpdC9xdC9DaGFu
Z2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0NoYW5nZUxvZwkocmV2aXNpb24gNjI2NzIp
CisrKyBXZWJLaXQvcXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAK
KzIwMTAtMDctMDcgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9yZz4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQYXRjaCBmb3IgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQxNzcyCisgICAgICAgIEFkZCBiYXNpYyBwaXBp
bmcgZm9yIEJhY2tGb3J3YXJkQ29udHJvbGxlckNsaWVudC4KKworICAgICAgICAqIEFwaS9xd2Vi
cGFnZS5jcHA6CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6OlFXZWJQYWdlUHJpdmF0ZSk6CisK
IDIwMTAtMDctMDcgIE1hcmMgTXV0eiAgPG1hcmMubXV0ekBrZGFiLmNvbT4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpJbmRleDogV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAJKHJldmlzaW9uIDYyNjE1
KQorKysgV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI3NSw3
ICsyNzUsNyBAQCBRV2ViUGFnZVByaXZhdGU6OlFXZWJQYWdlUHJpdmF0ZShRV2ViUGFnCiAgICAg
Y29udGV4dE1lbnVDbGllbnQgPSBuZXcgQ29udGV4dE1lbnVDbGllbnRRdCgpOwogICAgIGVkaXRv
ckNsaWVudCA9IG5ldyBFZGl0b3JDbGllbnRRdChxKTsKICAgICBwYWdlID0gbmV3IFBhZ2UoY2hy
b21lQ2xpZW50LCBjb250ZXh0TWVudUNsaWVudCwgZWRpdG9yQ2xpZW50LAotICAgICAgICAgICAg
ICAgICAgICBuZXcgRHJhZ0NsaWVudFF0KHEpLCBuZXcgSW5zcGVjdG9yQ2xpZW50UXQocSksIDAs
IDAsIDApOworICAgICAgICAgICAgICAgICAgICBuZXcgRHJhZ0NsaWVudFF0KHEpLCBuZXcgSW5z
cGVjdG9yQ2xpZW50UXQocSksIDAsIDAsIDAsIDApOwogCiAgICAgc2V0dGluZ3MgPSBuZXcgUVdl
YlNldHRpbmdzKHBhZ2UtPnNldHRpbmdzKCkpOwogCkluZGV4OiBXZWJLaXQvd2luL0NoYW5nZUxv
Zwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL0NoYW5nZUxvZwkocmV2aXNpb24gNjI2NzIpCisr
KyBXZWJLaXQvd2luL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisy
MDEwLTA3LTA3ICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUGF0Y2ggZm9yIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MTc3MgorICAgICAgICBBZGQgYmFzaWMgcGlwaW5n
IGZvciBCYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuCisKKyAgICAgICAgKiBXZWJWaWV3LmNw
cDoKKyAgICAgICAgKFdlYlZpZXc6OmluaXRXaXRoRnJhbWUpOgorCiAyMDEwLTA3LTA3ICBBZGFt
IFJvYmVuICA8YXJvYmVuQGFwcGxlLmNvbT4KIAogICAgICAgICBXaW5kb3dzIGJ1aWxkIGZpeApJ
bmRleDogV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvd2luL1dl
YlZpZXcuY3BwCShyZXZpc2lvbiA2MjYxNSkKKysrIFdlYktpdC93aW4vV2ViVmlldy5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTI1NzAsMTMgKzI1NzAsMTIgQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxM
VFlQRSBXZWJWaWV3Ojppbml0VwogI2Vsc2UKICAgICBXZWJHZW9sb2NhdGlvbkNvbnRyb2xsZXJD
bGllbnQqIGdlb2xvY2F0aW9uQ29udHJvbGxlckNsaWVudCA9IDA7CiAjZW5kaWYKLSAgICBEZXZp
Y2VPcmllbnRhdGlvbkNsaWVudCogZGV2aWNlT3JpZW50YXRpb25DbGllbnQgPSAwOwogCiAgICAg
Qk9PTCB1c2VIaWdoUmVzb2x1dGlvblRpbWVyOwogICAgIGlmIChTVUNDRUVERUQobV9wcmVmZXJl
bmNlcy0+c2hvdWxkVXNlSGlnaFJlc29sdXRpb25UaW1lcnMoJnVzZUhpZ2hSZXNvbHV0aW9uVGlt
ZXIpKSkKICAgICAgICAgU2V0dGluZ3M6OnNldFNob3VsZFVzZUhpZ2hSZXNvbHV0aW9uVGltZXJz
KHVzZUhpZ2hSZXNvbHV0aW9uVGltZXIpOwogCi0gICAgbV9wYWdlID0gbmV3IFBhZ2UobmV3IFdl
YkNocm9tZUNsaWVudCh0aGlzKSwgbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHRoaXMpLCBuZXcg
V2ViRWRpdG9yQ2xpZW50KHRoaXMpLCBuZXcgV2ViRHJhZ0NsaWVudCh0aGlzKSwgbmV3IFdlYklu
c3BlY3RvckNsaWVudCh0aGlzKSwgbmV3IFdlYlBsdWdpbkhhbHRlckNsaWVudCh0aGlzKSwgZ2Vv
bG9jYXRpb25Db250cm9sbGVyQ2xpZW50LCBkZXZpY2VPcmllbnRhdGlvbkNsaWVudCk7CisgICAg
bV9wYWdlID0gbmV3IFBhZ2UobmV3IFdlYkNocm9tZUNsaWVudCh0aGlzKSwgbmV3IFdlYkNvbnRl
eHRNZW51Q2xpZW50KHRoaXMpLCBuZXcgV2ViRWRpdG9yQ2xpZW50KHRoaXMpLCBuZXcgV2ViRHJh
Z0NsaWVudCh0aGlzKSwgbmV3IFdlYkluc3BlY3RvckNsaWVudCh0aGlzKSwgbmV3IFdlYlBsdWdp
bkhhbHRlckNsaWVudCh0aGlzKSwgZ2VvbG9jYXRpb25Db250cm9sbGVyQ2xpZW50LCAwLCAwKTsK
IAogICAgIEJTVFIgbG9jYWxTdG9yYWdlUGF0aDsKICAgICBpZiAoU1VDQ0VFREVEKG1fcHJlZmVy
ZW5jZXMtPmxvY2FsU3RvcmFnZURhdGFiYXNlUGF0aCgmbG9jYWxTdG9yYWdlUGF0aCkpKSB7Cg==
</data>
<flag name="review"
          id="48461"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>