<?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>43386</bug_id>
          
          <creation_ts>2010-08-02 15:47:37 -0700</creation_ts>
          <short_desc>WTR: Move all the utility functions for working with strings to a shared header.</short_desc>
          <delta_ts>2010-08-03 11:02: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>WebKit2</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>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>259160</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-08-02 15:47:37 -0700</bug_when>
    <thetext>Move all the utility functions for working with strings in WebKitTestRunner to a shared header.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>259161</commentid>
    <comment_count>1</comment_count>
      <attachid>63272</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-08-02 15:48:37 -0700</bug_when>
    <thetext>Created attachment 63272
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>259554</commentid>
    <comment_count>2</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-08-03 11:02:40 -0700</bug_when>
    <thetext>Landed in r64566.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>63272</attachid>
            <date>2010-08-02 15:48:37 -0700</date>
            <delta_ts>2010-08-03 10:59:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>utilities.diff</filename>
            <type>text/plain</type>
            <size>15962</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDY0NTAxKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTAtMDgtMDIgIFNhbSBXZWluaWcgIDxzYW1A
d2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBNb3ZlIGFsbCB0aGUgdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBzdHJp
bmdzIHRvIGEgc2hhcmVkIGhlYWRlci4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQzMzg2CisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL0luamVj
dGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5jcHA6CisgICAgICAgIChXVFI6OkluamVjdGVk
QnVuZGxlUGFnZTo6c2hvdWxkSW5zZXJ0Tm9kZSk6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgICogV2Vi
S2l0VGVzdFJ1bm5lci9TdHJpbmdVdGlsaXRpZXMuaDogQWRkZWQuCisgICAgICAgICogV2ViS2l0
VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHA6CisgICAgICAgIChXVFI6OlRlc3RJbnZvY2F0
aW9uOjpyZXNldFByZWZlcmVuY2VzVG9Db25zaXN0ZW50VmFsdWVzKToKKyAgICAgICAgKFdUUjo6
VGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVNZXNzYWdlRnJvbUluamVjdGVkQnVuZGxlKToKKyAg
ICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1dlYktpdFRlc3RSdW5uZXIueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajoKKwogMjAxMC0wOC0wMiAgSm9uIEhvbmV5Y3V0dCAgPGpob25leWN1dHRAYXBw
bGUuY29tPgogCiAgICAgICAgIE1vdmUgSW5qZWN0ZWRCdW5kbGUudmNwcm9qIHRvIHdoZXJlIHRo
ZSBvdGhlciBXZWJLaXRUZXN0UnVubmVyIHZjcHJvanMgbGl2ZS4KSW5kZXg6IFdlYktpdFRvb2xz
L1dlYktpdFRlc3RSdW5uZXIvU3RyaW5nVXRpbGl0aWVzLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9TdHJpbmdVdGlsaXRpZXMuaAkocmV2aXNpb24gMCkKKysr
IFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvU3RyaW5nVXRpbGl0aWVzLmgJKHJldmlzaW9u
IDApCkBAIC0wLDAgKzEsMTIwIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisg
KiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICog
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwg
RVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRlZiBTdHJpbmdVdGlsaXRp
ZXNfaAorI2RlZmluZSBTdHJpbmdVdGlsaXRpZXNfaAorCisjaW5jbHVkZSA8SmF2YVNjcmlwdENv
cmUvSlNSZXRhaW5QdHIuaD4KKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29y
ZS5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KKyNpbmNsdWRlIDxXZWJLaXQy
L1dLU3RyaW5nLmg+CisjaW5jbHVkZSA8V2ViS2l0Mi9XS1N0cmluZ0NGLmg+CisjaW5jbHVkZSA8
V2ViS2l0Mi9XS1VSTC5oPgorI2luY2x1ZGUgPFdlYktpdDIvV0tVUkxDRi5oPgorI2luY2x1ZGUg
PHNzdHJlYW0+CisjaW5jbHVkZSA8d3RmL1BsYXRmb3JtLmg+CisjaW5jbHVkZSA8d3RmL1JldGFp
blB0ci5oPgorI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKworbmFtZXNwYWNlIFdUUiB7CisKKy8v
IENvbnZlcnNpb24gZnVuY3Rpb25zCisKK2lubGluZSBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IHRv
Q0YoSlNTdHJpbmdSZWYgc3RyaW5nKQoreworICAgIHJldHVybiBSZXRhaW5QdHI8Q0ZTdHJpbmdS
ZWY+KEFkb3B0Q0YsIEpTU3RyaW5nQ29weUNGU3RyaW5nKDAsIHN0cmluZykpOworfQorCitpbmxp
bmUgUmV0YWluUHRyPENGU3RyaW5nUmVmPiB0b0NGKFdLU3RyaW5nUmVmIHN0cmluZykKK3sKKyAg
ICByZXR1cm4gUmV0YWluUHRyPENGU3RyaW5nUmVmPihBZG9wdENGLCBXS1N0cmluZ0NvcHlDRlN0
cmluZygwLCBzdHJpbmcpKTsKK30KKworaW5saW5lIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiB0
b1dLKEpTU3RyaW5nUmVmIHN0cmluZykKK3sKKyAgICByZXR1cm4gV0tSZXRhaW5QdHI8V0tTdHJp
bmdSZWY+KEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKHRvQ0Yoc3RyaW5nKS5n
ZXQoKSkpOworfQorCitpbmxpbmUgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHRvV0soSlNSZXRh
aW5QdHI8SlNTdHJpbmdSZWY+IHN0cmluZykKK3sKKyAgICByZXR1cm4gV0tSZXRhaW5QdHI8V0tT
dHJpbmdSZWY+KEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKHRvQ0Yoc3RyaW5n
LmdldCgpKS5nZXQoKSkpOworfQorCitpbmxpbmUgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHRv
SlMoV0tTdHJpbmdSZWYgc3RyaW5nKQoreworICAgIHJldHVybiBKU1JldGFpblB0cjxKU1N0cmlu
Z1JlZj4oQWRvcHQsIEpTU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKHRvQ0Yoc3RyaW5nKS5nZXQo
KSkpOworfQorCitpbmxpbmUgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHRvSlMoY29uc3QgV0tS
ZXRhaW5QdHI8V0tTdHJpbmdSZWY+JiBzdHJpbmcpCit7CisgICAgcmV0dXJuIHRvSlMoc3RyaW5n
LmdldCgpKTsKK30KKworLy8gU3RyZWFtaW5nIGZ1bmN0aW9ucworCitpbmxpbmUgc3RkOjpvc3Ry
ZWFtJiBvcGVyYXRvcjw8KHN0ZDo6b3N0cmVhbSYgb3V0LCBDRlN0cmluZ1JlZiBzdHJpbmdSZWYp
Cit7CisgICAgaWYgKCFzdHJpbmdSZWYpCisgICAgICAgIHJldHVybiBvdXQ7CisgICAgQ0ZJbmRl
eCBidWZmZXJMZW5ndGggPSBDRlN0cmluZ0dldE1heGltdW1TaXplRm9yRW5jb2RpbmcoQ0ZTdHJp
bmdHZXRMZW5ndGgoc3RyaW5nUmVmKSwga0NGU3RyaW5nRW5jb2RpbmdVVEY4KSArIDE7CisgICAg
VmVjdG9yPGNoYXI+IGJ1ZmZlcihidWZmZXJMZW5ndGgpOworICAgIGlmICghQ0ZTdHJpbmdHZXRD
U3RyaW5nKHN0cmluZ1JlZiwgYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVuZ3RoLCBrQ0ZTdHJpbmdF
bmNvZGluZ1VURjgpKQorICAgICAgICByZXR1cm4gb3V0OworICAgIHJldHVybiBvdXQgPDwgYnVm
ZmVyLmRhdGEoKTsKK30KKworaW5saW5lIHN0ZDo6b3N0cmVhbSYgb3BlcmF0b3I8PChzdGQ6Om9z
dHJlYW0mIG91dCwgV0tTdHJpbmdSZWYgc3RyaW5nUmVmKQoreworICAgIGlmICghc3RyaW5nUmVm
KQorICAgICAgICByZXR1cm4gb3V0OworICAgIHJldHVybiBvdXQgPDwgdG9DRihzdHJpbmdSZWYp
LmdldCgpOworfQorCitpbmxpbmUgc3RkOjpvc3RyZWFtJiBvcGVyYXRvcjw8KHN0ZDo6b3N0cmVh
bSYgb3V0LCBjb25zdCBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+JiBzdHJpbmdSZWYpCit7CisgICAg
cmV0dXJuIG91dCA8PCBzdHJpbmdSZWYuZ2V0KCk7Cit9CisKKy8vIFVSTCBjcmVhdGlvbgorCitp
bmxpbmUgV0tVUkxSZWYgY3JlYXRlV0tVUkwoY29uc3QgY2hhciogcGF0aE9yVVJMKQoreworICAg
IFJldGFpblB0cjxDRlN0cmluZ1JlZj4gcGF0aE9yVVJMQ0ZTdHJpbmcoQWRvcHRDRiwgQ0ZTdHJp
bmdDcmVhdGVXaXRoQ1N0cmluZygwLCBwYXRoT3JVUkwsIGtDRlN0cmluZ0VuY29kaW5nVVRGOCkp
OworICAgIFJldGFpblB0cjxDRlVSTFJlZj4gY2ZVUkw7CisgICAgaWYgKENGU3RyaW5nSGFzUHJl
Zml4KHBhdGhPclVSTENGU3RyaW5nLmdldCgpLCBDRlNUUigiaHR0cDovLyIpKSB8fCBDRlN0cmlu
Z0hhc1ByZWZpeChwYXRoT3JVUkxDRlN0cmluZy5nZXQoKSwgQ0ZTVFIoImh0dHBzOi8vIikpKQor
ICAgICAgICBjZlVSTC5hZG9wdENGKENGVVJMQ3JlYXRlV2l0aFN0cmluZygwLCBwYXRoT3JVUkxD
RlN0cmluZy5nZXQoKSwgMCkpOworICAgIGVsc2UKKyNpZiBQTEFURk9STShXSU4pCisgICAgICAg
IGNmVVJMLmFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5c3RlbVBhdGgoMCwgcGF0aE9yVVJM
Q0ZTdHJpbmcuZ2V0KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5bGUsIGZhbHNlKSk7CisjZWxzZQor
ICAgICAgICBjZlVSTC5hZG9wdENGKENGVVJMQ3JlYXRlV2l0aEZpbGVTeXN0ZW1QYXRoKDAsIHBh
dGhPclVSTENGU3RyaW5nLmdldCgpLCBrQ0ZVUkxQT1NJWFBhdGhTdHlsZSwgZmFsc2UpKTsKKyNl
bmRpZgorICAgIHJldHVybiBXS1VSTENyZWF0ZVdpdGhDRlVSTChjZlVSTC5nZXQoKSk7Cit9CisK
KworfSAvLyBuYW1lc3BhY2UgV1RSCisKKyNlbmRpZiAvLyBTdHJpbmdVdGlsaXRpZXNfaApJbmRl
eDogV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52b2NhdGlvbi5jcHAJ
KHJldmlzaW9uIDY0NDg2KQorKysgV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0SW52
b2NhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDQ3ICsyNiwxNyBAQAogI2luY2x1ZGUg
IlRlc3RJbnZvY2F0aW9uLmgiCiAKICNpbmNsdWRlICJQbGF0Zm9ybVdlYlZpZXcuaCIKKyNpbmNs
dWRlICJTdHJpbmdVdGlsaXRpZXMuaCIKICNpbmNsdWRlICJUZXN0Q29udHJvbGxlci5oIgogI2lu
Y2x1ZGUgPFdlYktpdDIvV0tDb250ZXh0UHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tS
ZXRhaW5QdHIuaD4KLSNpbmNsdWRlIDxXZWJLaXQyL1dLU3RyaW5nQ0YuaD4KLSNpbmNsdWRlIDxX
ZWJLaXQyL1dLVVJMQ0YuaD4KLSNpbmNsdWRlIDx3dGYvUGFzc093blB0ci5oPgogI2luY2x1ZGUg
PHd0Zi9SZXRhaW5QdHIuaD4KLSNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CiAKIHVzaW5nIG5hbWVz
cGFjZSBXZWJLaXQ7Cit1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2UgV1RSIHsKIAot
c3RhdGljIFdLVVJMUmVmIGNyZWF0ZVdLVVJMKGNvbnN0IGNoYXIqIHBhdGhPclVSTCkKLXsKLSAg
ICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IHBhdGhPclVSTENGU3RyaW5nKEFkb3B0Q0YsIENGU3Ry
aW5nQ3JlYXRlV2l0aENTdHJpbmcoMCwgcGF0aE9yVVJMLCBrQ0ZTdHJpbmdFbmNvZGluZ1VURjgp
KTsKLSAgICBSZXRhaW5QdHI8Q0ZVUkxSZWY+IGNmVVJMOwotICAgIGlmIChDRlN0cmluZ0hhc1By
ZWZpeChwYXRoT3JVUkxDRlN0cmluZy5nZXQoKSwgQ0ZTVFIoImh0dHA6Ly8iKSkgfHwgQ0ZTdHJp
bmdIYXNQcmVmaXgocGF0aE9yVVJMQ0ZTdHJpbmcuZ2V0KCksIENGU1RSKCJodHRwczovLyIpKSkK
LSAgICAgICAgY2ZVUkwuYWRvcHRDRihDRlVSTENyZWF0ZVdpdGhTdHJpbmcoMCwgcGF0aE9yVVJM
Q0ZTdHJpbmcuZ2V0KCksIDApKTsKLSAgICBlbHNlCi0jaWYgZGVmaW5lZChXSU4zMikgfHwgZGVm
aW5lZChfV0lOMzIpCi0gICAgICAgIGNmVVJMLmFkb3B0Q0YoQ0ZVUkxDcmVhdGVXaXRoRmlsZVN5
c3RlbVBhdGgoMCwgcGF0aE9yVVJMQ0ZTdHJpbmcuZ2V0KCksIGtDRlVSTFdpbmRvd3NQYXRoU3R5
bGUsIGZhbHNlKSk7Ci0jZWxzZQotICAgICAgICBjZlVSTC5hZG9wdENGKENGVVJMQ3JlYXRlV2l0
aEZpbGVTeXN0ZW1QYXRoKDAsIHBhdGhPclVSTENGU3RyaW5nLmdldCgpLCBrQ0ZVUkxQT1NJWFBh
dGhTdHlsZSwgZmFsc2UpKTsKLSNlbmRpZgotICAgIHJldHVybiBXS1VSTENyZWF0ZVdpdGhDRlVS
TChjZlVSTC5nZXQoKSk7Ci19Ci0KLXN0YXRpYyBQYXNzT3duUHRyPFZlY3RvcjxjaGFyPiA+IFdL
U3RyaW5nVG9VVEY4KFdLU3RyaW5nUmVmIHdrU3RyaW5nUmVmKQotewotICAgIFJldGFpblB0cjxD
RlN0cmluZ1JlZj4gY2ZTdHJpbmcoQWRvcHRDRiwgV0tTdHJpbmdDb3B5Q0ZTdHJpbmcoMCwgd2tT
dHJpbmdSZWYpKTsKLSAgICBDRkluZGV4IGJ1ZmZlckxlbmd0aCA9IENGU3RyaW5nR2V0TWF4aW11
bVNpemVGb3JFbmNvZGluZyhDRlN0cmluZ0dldExlbmd0aChjZlN0cmluZy5nZXQoKSksIGtDRlN0
cmluZ0VuY29kaW5nVVRGOCkgKyAxOwotICAgIE93blB0cjxWZWN0b3I8Y2hhcj4gPiBidWZmZXIo
bmV3IFZlY3RvcjxjaGFyPihidWZmZXJMZW5ndGgpKTsKLSAgICBpZiAoIUNGU3RyaW5nR2V0Q1N0
cmluZyhjZlN0cmluZy5nZXQoKSwgYnVmZmVyLT5kYXRhKCksIGJ1ZmZlckxlbmd0aCwga0NGU3Ry
aW5nRW5jb2RpbmdVVEY4KSkgewotICAgICAgICBidWZmZXItPnNocmluaygxKTsKLSAgICAgICAg
KCpidWZmZXIpWzBdID0gMDsKLSAgICB9IGVsc2UKLSAgICAgICAgYnVmZmVyLT5zaHJpbmsoc3Ry
bGVuKGJ1ZmZlci0+ZGF0YSgpKSArIDEpOwotICAgIHJldHVybiBidWZmZXIucmVsZWFzZSgpOwot
fQotCiBUZXN0SW52b2NhdGlvbjo6VGVzdEludm9jYXRpb24oY29uc3QgY2hhciogcGF0aE9yVVJM
KQogICAgIDogbV91cmwoQWRvcHRXSywgY3JlYXRlV0tVUkwocGF0aE9yVVJMKSkKICAgICAsIG1f
cGF0aE9yVVJMKGZhc3RTdHJEdXAocGF0aE9yVVJMKSkKQEAgLTk5LDcgKzY5LDYgQEAgc3RhdGlj
IHZvaWQgc2l6ZVdlYlZpZXdGb3JDdXJyZW50VGVzdChjaAogdm9pZCBUZXN0SW52b2NhdGlvbjo6
cmVzZXRQcmVmZXJlbmNlc1RvQ29uc2lzdGVudFZhbHVlcygpCiB7CiAgICAgV0tQcmVmZXJlbmNl
c1JlZiBwcmVmZXJlbmNlcyA9IFdLQ29udGV4dEdldFByZWZlcmVuY2VzKFRlc3RDb250cm9sbGVy
OjpzaGFyZWQoKS5jb250ZXh0KCkpOwotICAgIAogICAgIFdLUHJlZmVyZW5jZXNTZXRPZmZsaW5l
V2ViQXBwbGljYXRpb25DYWNoZUVuYWJsZWQocHJlZmVyZW5jZXMsIHRydWUpOwogfQogCkBAIC0x
NjUsOCArMTM0LDExIEBAIHZvaWQgVGVzdEludm9jYXRpb246OmRpZFJlY2VpdmVNZXNzYWdlRnIK
IAogICAgIGlmIChDRkVxdWFsKGNmTWVzc2FnZU5hbWUuZ2V0KCksIENGU1RSKCJEb25lIikpKSB7
CiAgICAgICAgIEFTU0VSVChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tTdHJpbmdHZXRU
eXBlSUQoKSk7Ci0gICAgICAgIE93blB0cjxWZWN0b3I8Y2hhcj4gPiB1dGY4TWVzc2FnZSA9IFdL
U3RyaW5nVG9VVEY4KHN0YXRpY19jYXN0PFdLU3RyaW5nUmVmPihtZXNzYWdlQm9keSkpOwotICAg
ICAgICBkdW1wKHV0ZjhNZXNzYWdlLT5kYXRhKCkpOworICAgICAgICBvc3RyaW5nc3RyZWFtIG91
dDsKKyAgICAgICAgb3V0IDw8IHN0YXRpY19jYXN0PFdLU3RyaW5nUmVmPihtZXNzYWdlQm9keSk7
CisKKyAgICAgICAgZHVtcChvdXQuc3RyKCkuY19zdHIoKSk7CisKICAgICAgICAgbV9nb3RGaW5h
bE1lc3NhZ2UgPSB0cnVlOwogICAgICAgICByZXR1cm47CiAgICAgfQpJbmRleDogV2ViS2l0VG9v
bHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5k
bGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNwcAkocmV2aXNpb24gNjQ0ODYpCisrKyBXZWJLaXRUb29s
cy9XZWJLaXRUZXN0UnVubmVyL0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJJbmplY3RlZEJ1bmRs
ZVBhZ2UuaCIKIAogI2luY2x1ZGUgIkluamVjdGVkQnVuZGxlLmgiCisjaW5jbHVkZSAiU3RyaW5n
VXRpbGl0aWVzLmgiCiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNSZXRhaW5QdHIuaD4KICNp
bmNsdWRlIDxXZWJLaXQyL1dLQXJyYXkuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dLQnVuZGxlRnJh
bWUuaD4KQEAgLTM0LDQ1ICszNSwxMSBAQAogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQYWdl
UHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KICNpbmNsdWRlIDxX
ZWJLaXQyL1dLQnVuZGxlUmFuZ2UuaD4KLSNpbmNsdWRlIDxXZWJLaXQyL1dLU3RyaW5nLmg+Ci0j
aW5jbHVkZSA8V2ViS2l0Mi9XS1N0cmluZ0NGLmg+Ci0jaW5jbHVkZSA8d3RmL1Bhc3NPd25QdHIu
aD4KLSNpbmNsdWRlIDx3dGYvUmV0YWluUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL1ZlY3Rvci5oPgog
CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBuYW1lc3BhY2UgV1RSIHsKIAotc3RhdGljIG9zdHJl
YW0mIG9wZXJhdG9yPDwob3N0cmVhbSYgb3V0LCBDRlN0cmluZ1JlZiBzdHJpbmdSZWYpCi17Ci0g
ICAgaWYgKCFzdHJpbmdSZWYpCi0gICAgICAgIHJldHVybiBvdXQ7Ci0gICAgQ0ZJbmRleCBidWZm
ZXJMZW5ndGggPSBDRlN0cmluZ0dldE1heGltdW1TaXplRm9yRW5jb2RpbmcoQ0ZTdHJpbmdHZXRM
ZW5ndGgoc3RyaW5nUmVmKSwga0NGU3RyaW5nRW5jb2RpbmdVVEY4KSArIDE7Ci0gICAgVmVjdG9y
PGNoYXI+IGJ1ZmZlcihidWZmZXJMZW5ndGgpOwotICAgIGlmICghQ0ZTdHJpbmdHZXRDU3RyaW5n
KHN0cmluZ1JlZiwgYnVmZmVyLmRhdGEoKSwgYnVmZmVyTGVuZ3RoLCBrQ0ZTdHJpbmdFbmNvZGlu
Z1VURjgpKQotICAgICAgICByZXR1cm4gb3V0OwotICAgIHJldHVybiBvdXQgPDwgYnVmZmVyLmRh
dGEoKTsKLX0KLQotc3RhdGljIG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0cmVhbSYgb3V0LCBjb25z
dCBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+JiBzdHJpbmdSZWYpCi17Ci0gICAgcmV0dXJuIG91dCA8
PCBzdHJpbmdSZWYuZ2V0KCk7Ci19Ci0KLXN0YXRpYyBvc3RyZWFtJiBvcGVyYXRvcjw8KG9zdHJl
YW0mIG91dCwgV0tTdHJpbmdSZWYgc3RyaW5nUmVmKQotewotICAgIGlmICghc3RyaW5nUmVmKQot
ICAgICAgICByZXR1cm4gb3V0OwotICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4gY2ZTdHJpbmco
QWRvcHRDRiwgV0tTdHJpbmdDb3B5Q0ZTdHJpbmcoMCwgc3RyaW5nUmVmKSk7Ci0gICAgcmV0dXJu
IG91dCA8PCBjZlN0cmluZzsKLX0KLQotc3RhdGljIG9zdHJlYW0mIG9wZXJhdG9yPDwob3N0cmVh
bSYgb3V0LCBjb25zdCBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4mIHN0cmluZ1JlZikKLXsKLSAg
ICByZXR1cm4gb3V0IDw8IHN0cmluZ1JlZi5nZXQoKTsKLX0KLQogc3RhdGljIHN0cmluZyBkdW1w
UGF0aChXS0J1bmRsZU5vZGVSZWYgbm9kZSkKIHsKICAgICBpZiAoIW5vZGUpCkBAIC00OTIsNyAr
NDU5LDcgQEAgYm9vbCBJbmplY3RlZEJ1bmRsZVBhZ2U6OnNob3VsZEVuZEVkaXRpbgogCiBib29s
IEluamVjdGVkQnVuZGxlUGFnZTo6c2hvdWxkSW5zZXJ0Tm9kZShXS0J1bmRsZU5vZGVSZWYgbm9k
ZSwgV0tCdW5kbGVSYW5nZVJlZiByYW5nZVRvUmVwbGFjZSwgV0tJbnNlcnRBY3Rpb25UeXBlIGFj
dGlvbikKIHsKLSAgICBzdGF0aWMgY29uc3QgY2hhciAqaW5zZXJ0YWN0aW9uc3RyaW5nW10gPSB7
CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIGluc2VydGFjdGlvbnN0cmluZ1tdID0gewogICAgICAg
ICAiV2ViVmlld0luc2VydEFjdGlvblR5cGVkIiwKICAgICAgICAgIldlYlZpZXdJbnNlcnRBY3Rp
b25QYXN0ZWQiLAogICAgICAgICAiV2ViVmlld0luc2VydEFjdGlvbkRyb3BwZWQiLApJbmRleDog
V2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9MYXlvdXRUZXN0Q29u
dHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9J
bmplY3RlZEJ1bmRsZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAJKHJldmlzaW9uIDY0NDg2KQor
KysgV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9JbmplY3RlZEJ1bmRsZS9MYXlvdXRUZXN0
Q29udHJvbGxlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4LDEyICsyOCwxMSBAQAogI2luY2x1
ZGUgIkluamVjdGVkQnVuZGxlLmgiCiAjaW5jbHVkZSAiSW5qZWN0ZWRCdW5kbGVQYWdlLmgiCiAj
aW5jbHVkZSAiSlNMYXlvdXRUZXN0Q29udHJvbGxlci5oIgotI2luY2x1ZGUgPEphdmFTY3JpcHRD
b3JlL0pTUmV0YWluUHRyLmg+CisjaW5jbHVkZSAiU3RyaW5nVXRpbGl0aWVzLmgiCiAjaW5jbHVk
ZSA8V2ViS2l0Mi9XS0J1bmRsZUZyYW1lLmg+CiAjaW5jbHVkZSA8V2ViS2l0Mi9XS0J1bmRsZUZy
YW1lUHJpdmF0ZS5oPgogI2luY2x1ZGUgPFdlYktpdDIvV0tCdW5kbGVQYWdlUHJpdmF0ZS5oPgog
I2luY2x1ZGUgPFdlYktpdDIvV0tSZXRhaW5QdHIuaD4KLSNpbmNsdWRlIDxXZWJLaXQyL1dLU3Ry
aW5nQ0YuaD4KICNpbmNsdWRlIDxXZWJLaXQyL1dlYktpdDIuaD4KIAogbmFtZXNwYWNlIFdUUiB7
CkBAIC00MiwzMSArNDEsNiBAQCBuYW1lc3BhY2UgV1RSIHsKIC8vIEV2ZW50dWFsbHkgaXQgc2hv
dWxkIGJlIGNoYW5nZWQgdG8gbWF0Y2guCiBzdGF0aWMgY29uc3QgQ0ZUaW1lSW50ZXJ2YWwgd2Fp
dFRvRHVtcFdhdGNoZG9nSW50ZXJ2YWwgPSA2LjA7CiAKLXN0YXRpYyBSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IHRvQ0YoSlNTdHJpbmdSZWYgc3RyaW5nKQotewotICAgIHJldHVybiBSZXRhaW5QdHI8
Q0ZTdHJpbmdSZWY+KEFkb3B0Q0YsIEpTU3RyaW5nQ29weUNGU3RyaW5nKDAsIHN0cmluZykpOwot
fQotCi1zdGF0aWMgUmV0YWluUHRyPENGU3RyaW5nUmVmPiB0b0NGKFdLU3RyaW5nUmVmIHN0cmlu
ZykKLXsKLSAgICByZXR1cm4gUmV0YWluUHRyPENGU3RyaW5nUmVmPihBZG9wdENGLCBXS1N0cmlu
Z0NvcHlDRlN0cmluZygwLCBzdHJpbmcpKTsKLX0KLQotc3RhdGljIFdLUmV0YWluUHRyPFdLU3Ry
aW5nUmVmPiB0b1dLKEpTU3RyaW5nUmVmIHN0cmluZykKLXsKLSAgICByZXR1cm4gV0tSZXRhaW5Q
dHI8V0tTdHJpbmdSZWY+KEFkb3B0V0ssIFdLU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKHRvQ0Yo
c3RyaW5nKS5nZXQoKSkpOwotfQotCi1zdGF0aWMgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHRv
SlMoV0tTdHJpbmdSZWYgc3RyaW5nKQotewotICAgIHJldHVybiBKU1JldGFpblB0cjxKU1N0cmlu
Z1JlZj4oQWRvcHQsIEpTU3RyaW5nQ3JlYXRlV2l0aENGU3RyaW5nKHRvQ0Yoc3RyaW5nKS5nZXQo
KSkpOwotfQotCi1zdGF0aWMgSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+IHRvSlMoY29uc3QgV0tS
ZXRhaW5QdHI8V0tTdHJpbmdSZWY+JiBzdHJpbmcpCi17Ci0gICAgcmV0dXJuIHRvSlMoc3RyaW5n
LmdldCgpKTsKLX0KLQogc3RhdGljIHZvaWQgc2V0UHJvcGVydHkoSlNDb250ZXh0UmVmIGNvbnRl
eHQsIEpTT2JqZWN0UmVmIG9iamVjdCwgY29uc3QgY2hhciogcHJvcGVydHlOYW1lLCBKU1dyYXBw
YWJsZSogdmFsdWUsIEpTUHJvcGVydHlBdHRyaWJ1dGVzIGF0dHJpYnV0ZXMsIEpTVmFsdWVSZWYq
IGV4Y2VwdGlvbikKIHsKICAgICBKU1JldGFpblB0cjxKU1N0cmluZ1JlZj4gcHJvcGVydHlOYW1l
U3RyaW5nKEFkb3B0LCBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyhwcm9wZXJ0eU5hbWUp
KTsKSW5kZXg6IFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvV2ViS2l0VGVzdFJ1bm5lci54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1dlYktp
dFRlc3RSdW5uZXIvV2ViS2l0VGVzdFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShy
ZXZpc2lvbiA2NDQ4NikKKysrIFdlYktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvV2ViS2l0VGVz
dFJ1bm5lci54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xMDks
NiArMTA5LDcgQEAKIAkJQkM5NTJFRDMxMUYzQzMxODAwMzM5OEI0IC8qIENvZGVHZW5lcmF0b3JU
ZXN0UnVubmVyLnBtICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5zY3JpcHQucGVybDsgcGF0aCA9IENvZGVHZW5l
cmF0b3JUZXN0UnVubmVyLnBtOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzk1MkYx
RDExRjNDNjUyMDAzMzk4QjQgLyogSlNMYXlvdXRUZXN0Q29udHJvbGxlci5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU0xheW91dFRlc3RDb250cm9sbGVyLmNwcDsg
cGF0aCA9IERlcml2ZWRTb3VyY2VzL1dlYktpdFRlc3RSdW5uZXIvSlNMYXlvdXRUZXN0Q29udHJv
bGxlci5jcHA7IHNvdXJjZVRyZWUgPSBCVUlMVF9QUk9EVUNUU19ESVI7IH07CiAJCUJDOTUyRjFF
MTFGM0M2NTIwMDMzOThCNCAvKiBKU0xheW91dFRlc3RDb250cm9sbGVyLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTTGF5b3V0VGVzdENvbnRyb2xsZXIuaDsgcGF0aCA9IERl
cml2ZWRTb3VyY2VzL1dlYktpdFRlc3RSdW5uZXIvSlNMYXlvdXRUZXN0Q29udHJvbGxlci5oOyBz
b3VyY2VUcmVlID0gQlVJTFRfUFJPRFVDVFNfRElSOyB9OworCQlCQzk5Q0JGMDEyMDc2NDI1MDBG
REVFNzYgLyogU3RyaW5nVXRpbGl0aWVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFN0cmluZ1V0aWxpdGllcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0M5
OTdBMDExRDNDOEY2MDAxN0JDQTIgLyogSW5qZWN0ZWRCdW5kbGUuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQlCQ0M5OTdBMTExRDNDOEY2MDAxN0JDQTIgLyogSW5qZWN0ZWRCdW5k
bGUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSW5qZWN0ZWRCdW5kbGUuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNDOTk3QTIxMUQzQzhGNjAwMTdCQ0EyIC8q
IEluamVjdGVkQnVuZGxlUGFnZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBJbmplY3RlZEJ1bmRsZVBhZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTQ5LDcgKzE1MCw4IEBACiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKAog
CQkJCUJDOTUyRUM1MTFGM0MxMEYwMDMzOThCNCAvKiBEZXJpdmVkU291cmNlcy5tYWtlICovLAot
CQkJCTA4RkI3Nzk1RkU4NDE1NURDMDJBQUMwNyAvKiBTb3VyY2UgKi8sCisJCQkJQkM5OUNCRjEx
MjA3NjQyRDAwRkRFRTc2IC8qIFNoYXJlZCAqLywKKwkJCQkwOEZCNzc5NUZFODQxNTVEQzAyQUFD
MDcgLyogVGVzdFJ1bm5lciAqLywKIAkJCQlCQzI1MTgzNTExRDE1NzFEMDAyRUJDMDEgLyogSW5q
ZWN0ZWRCdW5kbGUgKi8sCiAJCQkJQkM3OTM0MDExMThGN0M4QTAwNUVBOEUyIC8qIENvbmZpZ3Vy
YXRpb25zICovLAogCQkJCTA4RkI3NzlERkU4NDE1NURDMDJBQUMwNyAvKiBFeHRlcm5hbCBGcmFt
ZXdvcmtzIGFuZCBMaWJyYXJpZXMgKi8sCkBAIC0xNTksNyArMTYxLDcgQEAKIAkJCW5hbWUgPSBX
ZWJLaXRUZXN0UnVubmVyOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKIAkJfTsKLQkJMDhG
Qjc3OTVGRTg0MTU1REMwMkFBQzA3IC8qIFNvdXJjZSAqLyA9IHsKKwkJMDhGQjc3OTVGRTg0MTU1
REMwMkFBQzA3IC8qIFRlc3RSdW5uZXIgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNo
aWxkcmVuID0gKAogCQkJCUJDNzkzM0ZFMTE4RjdDNzQwMDVFQThFMiAvKiBtYWMgKi8sCkBAIC0x
NzAsNyArMTcyLDcgQEAKIAkJCQlCQ0Q3RDJGNjExOTIxMjc4MDA2REI3RUUgLyogVGVzdEludm9j
YXRpb24uaCAqLywKIAkJCQlCQ0Q3RDJGNzExOTIxMjc4MDA2REI3RUUgLyogVGVzdEludm9jYXRp
b24uY3BwICovLAogCQkJKTsKLQkJCW5hbWUgPSBTb3VyY2U7CisJCQluYW1lID0gVGVzdFJ1bm5l
cjsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CiAJCX07CiAJCTA4RkI3NzlERkU4NDE1NURD
MDJBQUMwNyAvKiBFeHRlcm5hbCBGcmFtZXdvcmtzIGFuZCBMaWJyYXJpZXMgKi8gPSB7CkBAIC0y
ODAsNiArMjgyLDE0IEBACiAJCQluYW1lID0gIkRlcml2ZWQgU291cmNlcyI7CiAJCQlzb3VyY2VU
cmVlID0gIjxncm91cD4iOwogCQl9OworCQlCQzk5Q0JGMTEyMDc2NDJEMDBGREVFNzYgLyogU2hh
cmVkICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQlCQzk5
Q0JGMDEyMDc2NDI1MDBGREVFNzYgLyogU3RyaW5nVXRpbGl0aWVzLmggKi8sCisJCQkpOworCQkJ
bmFtZSA9IFNoYXJlZDsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CiAvKiBFbmQg
UEJYR3JvdXAgc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhOYXRpdmVUYXJnZXQgc2VjdGlvbiAq
Lwo=
</data>
<flag name="review"
          id="51588"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>