<?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>83039</bug_id>
          
          <creation_ts>2012-04-03 09:22:10 -0700</creation_ts>
          <short_desc>Web Inspector: CodeGeneratorInspector.py: switch IndexedDB, DOMStorage, ApplicationCache domains to typed API</short_desc>
          <delta_ts>2012-04-04 11:19:01 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>72861</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Peter Rybin">prybin</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>apavlov</cc>
    
    <cc>bweinstein</cc>
    
    <cc>caseq</cc>
    
    <cc>joepeck</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>rik</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>594550</commentid>
    <comment_count>0</comment_count>
    <who name="Peter Rybin">prybin</who>
    <bug_when>2012-04-03 09:22:10 -0700</bug_when>
    <thetext>Do not allow InspectorObject and other raw interfaces in IndexedDB, DOMStorage, ApplicationCache domains anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>594849</commentid>
    <comment_count>1</comment_count>
      <attachid>135416</attachid>
    <who name="Peter Rybin">prybin</who>
    <bug_when>2012-04-03 13:50:46 -0700</bug_when>
    <thetext>Created attachment 135416
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595596</commentid>
    <comment_count>2</comment_count>
      <attachid>135606</attachid>
    <who name="Peter Rybin">prybin</who>
    <bug_when>2012-04-04 09:11:04 -0700</bug_when>
    <thetext>Created attachment 135606
Merge</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595692</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Kosyakov">caseq</who>
    <bug_when>2012-04-04 10:43:56 -0700</bug_when>
    <thetext>Committed r113213: &lt;http://trac.webkit.org/changeset/113213&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135416</attachid>
            <date>2012-04-03 13:50:46 -0700</date>
            <delta_ts>2012-04-04 09:10:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-83039-20120404005043.patch</filename>
            <type>text/plain</type>
            <size>15198</size>
            <attacher name="Peter Rybin">prybin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzMDM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDU0MWJhNjc1YTkzOWMz
YmIyMTBkNmI5M2FkMjRlZDIzOTExOGE0ZC4uZjg1MWY0NzE2ZmIwOTlmNGU0MmFhN2Q3N2M1OWUz
MmYwZDU1MWQxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTA0LTAzICBQZXRl
ciBSeWJpbiAgPHBldGVyLnJ5YmluQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiBDb2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5OiBzd2l0Y2ggSW5kZXhlZERCLCBET01TdG9yYWdl
LCBBcHBsaWNhdGlvbkNhY2hlIGRvbWFpbnMgdG8gdHlwZWQgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MzAzOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENsaWVudCBjb2RlIGlzIHN3aXRjaGVkIHRv
IHR5cGVkIEFQSSAoYWxsIEluc3BlY3Rvck9iamVjdCBhbmQgSW5zcGVjdG9yQXJyYXkgdHlwZXMg
YXJlCisgICAgICAgIHJlcGxhY2VkIHdpdGggZ2VuZXJhdGVkIHR5cGVzIGZyb20gVHlwZUJ1aWxk
ZXIgYWNjb3JkaW5nIHRvIEluc3BlY3Rvci5qc29uKS4KKworICAgICAgICBNaXNzaW5nIGFycmF5
IG9mIGFycmF5IHNwZWNpYWxpemF0aW9uIGlzIGFkZGVkLiBJbnNwZWN0b3IuanNvbiBpcyBmaXhl
ZCB0byBjb21mb3JtCisgICAgICAgIHdpdGggYWN0dWFsIGJlaGF2aW9yIG9mIEluc3BlY3RvckRP
TVN0b3JhZ2VBZ2VudC4KKworICAgICAgICBPdXRwdXQgcGFyYW1ldGVyIGluaXRpYWxpemF0aW9u
IGlzIGFzc3VyZWQuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rv
ci5weToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmpzb246CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVz
dHMpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpn
ZXRBcHBsaWNhdGlvbkNhY2hlRm9yRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUpOgor
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaDoKKyAg
ICAgICAgKEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCk6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JET01TdG9yYWdlQWdlbnQ6OmdldERPTVN0b3JhZ2VFbnRyaWVzKToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6c2V0RE9NU3RvcmFnZUl0ZW0pOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50OjpyZW1vdmVET01TdG9yYWdl
SXRlbSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5oOgor
ICAgICAgICAoSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRE9NU3RvcmFnZVJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckRPTVN0b3JhZ2VSZXNvdXJjZTo6YmluZCk6CisKIDIwMTItMDQtMDMgIE1hcmsgUGlsZ3Jp
bSAgPHBpbGdyaW1AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIENhbGwgaW5jcmVtZW50U3RhdHND
b3VudGVyIGRpcmVjdGx5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29k
ZUdlbmVyYXRvckluc3BlY3Rvci5weSBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db2RlR2Vu
ZXJhdG9ySW5zcGVjdG9yLnB5CmluZGV4IDBlYWU5NDdkNGU3YzA2MmNhNGVjYzVkZmEzNDhmNDkz
MDliOWI1MGYuLjRlNDc0MmYwZmUwMDU3MTgyMzllYzU2NjY4N2E1MjM5ZmI2NTQ3OGEgMTAwNzU1
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9Db2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5
CkBAIC02MCw3ICs2MCw4IEBAIFRZUEVTX1dJVEhfUlVOVElNRV9DQVNUX1NFVCA9IGZyb3plbnNl
dChbIlJ1bnRpbWUuUmVtb3RlT2JqZWN0IiwgIlJ1bnRpbWUuUHJvcGVyCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEZWJ1Z2dlci5GdW5jdGlvbkRldGFpbHMiLCAi
RGVidWdnZXIuQ2FsbEZyYW1lIl0pCiAKIFNUUklDVF9FTkFCTEVEX0RPTUFJTlMgPSBbIkNvbnNv
bGUiLCAiRE9NRGVidWdnZXIiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAiQ1NTIiwgIkRl
YnVnZ2VyIiwgIkRPTSIsICJOZXR3b3JrIiwgIlBhZ2UiLCAiUnVudGltZSJdCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICJDU1MiLCAiRGVidWdnZXIiLCAiRE9NIiwgIk5ldHdvcmsiLCAiUGFn
ZSIsICJSdW50aW1lIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIkluZGV4ZWREQiIsICJE
T01TdG9yYWdlIiwgIkFwcGxpY2F0aW9uQ2FjaGUiXQogCiAKIGNtZGxpbmVfcGFyc2VyID0gb3B0
cGFyc2UuT3B0aW9uUGFyc2VyKCkKQEAgLTIyNzcsOCArMjI3OCw2IEBAIHN0cnVjdCBBcnJheUl0
ZW1IZWxwZXI8aW50PiB7CiAgICAgfTsKIH07CiAKLQotCiB0ZW1wbGF0ZTw+CiBzdHJ1Y3QgQXJy
YXlJdGVtSGVscGVyPEluc3BlY3Rvck9iamVjdD4gewogICAgIHN0cnVjdCBUcmFpdHMgewpAQCAt
MjI4OSw2ICsyMjg4LDE2IEBAIHN0cnVjdCBBcnJheUl0ZW1IZWxwZXI8SW5zcGVjdG9yT2JqZWN0
PiB7CiAgICAgfTsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+CitzdHJ1Y3QgQXJyYXlJdGVt
SGVscGVyPFR5cGVCdWlsZGVyOjpBcnJheTxUPiA+IHsKKyAgICBzdHJ1Y3QgVHJhaXRzIHsKKyAg
ICAgICAgc3RhdGljIHZvaWQgcHVzaFJlZlB0cihJbnNwZWN0b3JBcnJheSogYXJyYXksIFBhc3NS
ZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFQ+ID4gdmFsdWUpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIGFycmF5LT5wdXNoQXJyYXkodmFsdWUpOworICAgICAgICB9CisgICAgfTsKK307CisKICR7
Zm9yd2FyZHN9CiAKIFN0cmluZyBnZXRFbnVtQ29uc3RhbnRWYWx1ZShpbnQgY29kZSk7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24gYi9Tb3VyY2Uv
V2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KaW5kZXggMTgxNDZkZTkxOGZlYmExYWRl
ZTIxMDA5ODUxYWE2Yzg0M2ZlODhmMS4uOWYxMmU5MGVmZmM1NjdiMWYwYjlkNDc2M2FlYjhhYzZj
YzI3MDgzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rvci5q
c29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgpAQCAtMTEz
MSw2ICsxMTMxLDEzIEBACiAgICAgICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiaXNMb2NhbFN0
b3JhZ2UiLCAidHlwZSI6ICJib29sZWFuIiwgImRlc2NyaXB0aW9uIjogIlRydWUgZm9yIGxvY2Fs
IHN0b3JhZ2UuIiB9LAogICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImlkIiwgIiRyZWYi
OiAiU3RvcmFnZUlkIiwgImRlc2NyaXB0aW9uIjogIkVudHJ5IGlkIGZvciBmdXJ0aGVyIHJlZmVy
ZW5jZS4iIH0KICAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgICJpZCI6ICJJdGVtIiwKKyAgICAgICAgICAgICAgICAidHlwZSI6
ICJhcnJheSIsCisgICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkRPTSBTdG9yYWdlIGl0
ZW0uIiwKKyAgICAgICAgICAgICAgICAiaGlkZGVuIjogdHJ1ZSwKKyAgICAgICAgICAgICAgICAi
aXRlbXMiOiB7ICJ0eXBlIjogInN0cmluZyIgfQogICAgICAgICAgICAgfQogICAgICAgICBdLAog
ICAgICAgICAiY29tbWFuZHMiOiBbCkBAIC0xMTQ4LDcgKzExNTUsNyBAQAogICAgICAgICAgICAg
ICAgICAgICB7ICJuYW1lIjogInN0b3JhZ2VJZCIsICIkcmVmIjogIlN0b3JhZ2VJZCIgfQogICAg
ICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgInJldHVybnMiOiBbCi0gICAgICAgICAg
ICAgICAgICAgIHsgIm5hbWUiOiAiZW50cmllcyIsICJ0eXBlIjogImFycmF5IiwgIml0ZW1zIjog
eyAiJHJlZiI6ICJFbnRyeSJ9IH0KKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJlbnRy
aWVzIiwgInR5cGUiOiAiYXJyYXkiLCAiaXRlbXMiOiB7ICIkcmVmIjogIkl0ZW0iIH0gfQogICAg
ICAgICAgICAgICAgIF0KICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICB7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQuY3BwCmluZGV4IGM4MGY4MmI1ZGFjMTg4ODZkYmY5NjBmZmFhMWYxNGQ2NDUxZDM3OTYu
LmM0NWY4MTNiYTcyMGZhMTg4MGNiMDFkM2JhMmIxZTMyMTY0ZDJmOGUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hl
QWdlbnQuY3BwCkBAIC0xMDQsOSArMTA0LDkgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIG1fZnJvbnRlbmQtPm5ldHdvcmtT
dGF0ZVVwZGF0ZWQoaXNOb3dPbmxpbmUpOwogfQogCi12b2lkIEluc3BlY3RvckFwcGxpY2F0aW9u
Q2FjaGVBZ2VudDo6Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJvclN0cmluZyosIFJlZlB0cjxJ
bnNwZWN0b3JBcnJheT4mIHJlc3VsdCkKK3ZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9yU3RyaW5nKiwgUmVmUHRyPFR5cGVCdWls
ZGVyOjpBcnJheTxUeXBlQnVpbGRlcjo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZl
c3Q+ID4mIHJlc3VsdCkKIHsKLSAgICByZXN1bHQgPSBJbnNwZWN0b3JBcnJheTo6Y3JlYXRlKCk7
CisgICAgcmVzdWx0ID0gVHlwZUJ1aWxkZXI6OkFycmF5PFR5cGVCdWlsZGVyOjpBcHBsaWNhdGlv
bkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgRnJhbWUqIG1haW5G
cmFtZSA9IG1fcGFnZUFnZW50LT5tYWluRnJhbWUoKTsKICAgICBmb3IgKEZyYW1lKiBmcmFtZSA9
IG1haW5GcmFtZTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS0+dHJhdmVyc2VOZXh0KG1h
aW5GcmFtZSkpIHsKQEAgLTExOCwxMSArMTE4LDExIEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRp
b25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9yU3RyaW5nKiwgUmVmUHRy
CiAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3QtPmFw
cGxpY2F0aW9uQ2FjaGVJbmZvKCk7CiAgICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGluZm8u
bV9tYW5pZmVzdC5zdHJpbmcoKTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5KCkp
IHsKLSAgICAgICAgICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IHZhbHVlID0gSW5zcGVjdG9y
T2JqZWN0OjpjcmVhdGUoKTsKLSAgICAgICAgICAgIHZhbHVlLT5zZXRTdHJpbmcoImZyYW1lSWQi
LCBtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSkpOwotICAgICAgICAgICAgdmFsdWUtPnNldFN0
cmluZygibWFuaWZlc3RVUkwiLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgICAgICB2YWx1ZS0+c2V0
TnVtYmVyKCJzdGF0dXMiLCBob3N0LT5zdGF0dXMoKSk7Ci0gICAgICAgICAgICByZXN1bHQtPnB1
c2hPYmplY3QodmFsdWUpOworICAgICAgICAgICAgUmVmUHRyPFR5cGVCdWlsZGVyOjpBcHBsaWNh
dGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4gdmFsdWUgPSBUeXBlQnVpbGRlcjo6QXBwbGlj
YXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCisgICAgICAgICAgICAgICAg
LnNldEZyYW1lSWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpKQorICAgICAgICAgICAgICAg
IC5zZXRNYW5pZmVzdFVSTChtYW5pZmVzdFVSTCkKKyAgICAgICAgICAgICAgICAuc2V0U3RhdHVz
KGhvc3QtPnN0YXR1cygpKTsKKyAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbSh2YWx1ZSk7CiAg
ICAgICAgIH0KICAgICB9CiB9CkBAIC0xNDYsNyArMTQ2LDcgQEAgdm9pZCBJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcqIGVycm9y
U3RyaW4KICAgICAqbWFuaWZlc3RVUkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CiB9CiAK
LXZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlvbkNhY2hl
Rm9yRnJhbWUoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQs
IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBhcHBsaWNhdGlvbkNhY2hlKQordm9pZCBJbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShFcnJv
clN0cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPFR5cGVC
dWlsZGVyOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiYgYXBwbGljYXRpb25D
YWNoZSkKIHsKICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRGcmFt
ZVdpdGhEb2N1bWVudExvYWRlcihlcnJvclN0cmluZywgZnJhbWVJZCk7CiAgICAgaWYgKCFkb2N1
bWVudExvYWRlcikKQEAgLTE2MSwxNSArMTYxLDE0IEBAIHZvaWQgSW5zcGVjdG9yQXBwbGljYXRp
b25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlvbkNhY2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcqIGVy
CiAgICAgYXBwbGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNoZShy
ZXNvdXJjZXMsIGluZm8pOwogfQogCi1QYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gSW5zcGVj
dG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUo
Y29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9u
Q2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFw
cGxpY2F0aW9uQ2FjaGVJbmZvKQorUGFzc1JlZlB0cjxUeXBlQnVpbGRlcjo6QXBwbGljYXRpb25D
YWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpi
dWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6
OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxp
Y2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQogewotICAg
IFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IHZhbHVlID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUo
KTsKLSAgICB2YWx1ZS0+c2V0TnVtYmVyKCJzaXplIiwgYXBwbGljYXRpb25DYWNoZUluZm8ubV9z
aXplKTsKLSAgICB2YWx1ZS0+c2V0U3RyaW5nKCJtYW5pZmVzdFVSTCIsIGFwcGxpY2F0aW9uQ2Fj
aGVJbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCkpOwotICAgIHZhbHVlLT5zZXROdW1iZXIoImNyZWF0
aW9uVGltZSIsIGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKTsKLSAgICB2YWx1
ZS0+c2V0TnVtYmVyKCJ1cGRhdGVUaW1lIiwgYXBwbGljYXRpb25DYWNoZUluZm8ubV91cGRhdGVU
aW1lKTsKLSAgICB2YWx1ZS0+c2V0QXJyYXkoInJlc291cmNlcyIsIGJ1aWxkQXJyYXlGb3JBcHBs
aWNhdGlvbkNhY2hlUmVzb3VyY2VzKGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpKTsKLSAgICBy
ZXR1cm4gdmFsdWU7CisgICAgcmV0dXJuIFR5cGVCdWlsZGVyOjpBcHBsaWNhdGlvbkNhY2hlOjpB
cHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKQorICAgICAgICAuc2V0TWFuaWZlc3RVUkwoYXBwbGlj
YXRpb25DYWNoZUluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKSkKKyAgICAgICAgLnNldFNpemUoYXBw
bGljYXRpb25DYWNoZUluZm8ubV9zaXplKQorICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFwcGxp
Y2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKQorICAgICAgICAuc2V0VXBkYXRlVGltZShh
cHBsaWNhdGlvbkNhY2hlSW5mby5tX3VwZGF0ZVRpbWUpCisgICAgICAgIC5zZXRSZXNvdXJjZXMo
YnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoYXBwbGljYXRpb25DYWNoZVJl
c291cmNlcykpOwogfQogCiBQYXNzUmVmUHRyPEluc3BlY3RvckFycmF5PiBJbnNwZWN0b3JBcHBs
aWNhdGlvbkNhY2hlQWdlbnQ6OmJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3VyY2Vz
KGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiBhcHBsaWNhdGlv
bkNhY2hlUmVzb3VyY2VzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCmluZGV4IDdhZmEzY2Y3MmVkMzU5MjUz
MDY2ZmU1N2Y0ZTcwZmI1YjNkN2MxZjIuLjM1YmI4NzI5NTdlODRmODM4N2FjM2MwMTczNjFiMjdh
MDgyN2I0YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKQEAgLTY5LDEzICs2OSwxMyBAQCBwdWJsaWM6
CiAKICAgICAvLyBBcHBsaWNhdGlvbkNhY2hlIEFQSSBmb3IgSW5zcGVjdG9yRnJvbnRlbmQKICAg
ICB2aXJ0dWFsIHZvaWQgZW5hYmxlKEVycm9yU3RyaW5nKik7Ci0gICAgdmlydHVhbCB2b2lkIGdl
dEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcqLCBSZWZQdHI8SW5zcGVjdG9yQXJyYXk+
JiByZXN1bHQpOworICAgIHZpcnR1YWwgdm9pZCBnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9y
U3RyaW5nKiwgUmVmUHRyPFR5cGVCdWlsZGVyOjpBcnJheTxUeXBlQnVpbGRlcjo6QXBwbGljYXRp
b25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+ID4mIHJlc3VsdCk7CiAgICAgdmlydHVhbCB2b2lk
IGdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQs
IFN0cmluZyogbWFuaWZlc3RVUkwpOwotICAgIHZpcnR1YWwgdm9pZCBnZXRBcHBsaWNhdGlvbkNh
Y2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQsIFJlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+JiBhcHBsaWNhdGlvbkNhY2hlKTsKKyAgICB2aXJ0dWFsIHZvaWQgZ2V0
QXBwbGljYXRpb25DYWNoZUZvckZyYW1lKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBmcmFt
ZUlkLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9uQ2Fj
aGU+Jik7CiAKIHByaXZhdGU6CiAgICAgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50KElu
c3RydW1lbnRpbmdBZ2VudHMqLCBJbnNwZWN0b3JTdGF0ZSosIEluc3BlY3RvclBhZ2VBZ2VudCop
OwotICAgIFBhc3NSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBidWlsZE9iamVjdEZvckFwcGxpY2F0
aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmLCBj
b25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvJik7CisgICAgUGFzc1JlZlB0cjxU
eXBlQnVpbGRlcjo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRPYmpl
Y3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJj
ZUluZm9MaXN0JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwogICAg
IFBhc3NSZWZQdHI8SW5zcGVjdG9yQXJyYXk+IGJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNhY2hl
UmVzb3VyY2VzKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0Jik7
CiAgICAgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRp
b25DYWNoZVJlc291cmNlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm8m
KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0
b3JhZ2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3Rv
cmFnZUFnZW50LmNwcAppbmRleCAxZDVjYmFiMDJmNzhmMzc0ZGRlMDU2MzEyMjA0MmY2YjNhMjBh
YTBmLi4zZjY2OTYwYjFlZjFlMTNiMTAxY2I1NDBmYjQ4ZTE2ZjliMzRmYmQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50LmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50LmNw
cApAQCAtMTA4LDggKzEwOCwxMSBAQCB2b2lkIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6ZGlz
YWJsZShFcnJvclN0cmluZyopCiAgICAgbV9zdGF0ZS0+c2V0Qm9vbGVhbihET01TdG9yYWdlQWdl
bnRTdGF0ZTo6ZG9tU3RvcmFnZUFnZW50RW5hYmxlZCwgbV9lbmFibGVkKTsKIH0KIAotdm9pZCBJ
bnNwZWN0b3JET01TdG9yYWdlQWdlbnQ6OmdldERPTVN0b3JhZ2VFbnRyaWVzKEVycm9yU3RyaW5n
KiwgY29uc3QgU3RyaW5nJiBzdG9yYWdlSWQsIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4mIGVudHJp
ZXMpCit2b2lkIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6Z2V0RE9NU3RvcmFnZUVudHJpZXMo
RXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZCwgUmVmUHRyPFR5cGVCdWlsZGVy
OjpBcnJheTxUeXBlQnVpbGRlcjo6QXJyYXk8U3RyaW5nPiA+ID4mIGVudHJpZXMpCiB7CisgICAg
Ly8gRklYTUU6IGNvbnNpZGVyIGluaXRpYWxpemluZyB0aGlzIGFycmF5IGFmdGVyIDIgY2hlY2tz
IGJlbG93LiBUaGUgY2hlY2tzIHNob3VsZCByZXR1cm4gZXJyb3IgbWVzc2FnZXMgaW4gdGhpcyBj
YXNlLgorICAgIGVudHJpZXMgPSBUeXBlQnVpbGRlcjo6QXJyYXk8VHlwZUJ1aWxkZXI6OkFycmF5
PFN0cmluZz4gPjo6Y3JlYXRlKCk7CisKICAgICBJbnNwZWN0b3JET01TdG9yYWdlUmVzb3VyY2Uq
IHN0b3JhZ2VSZXNvdXJjZSA9IGdldERPTVN0b3JhZ2VSZXNvdXJjZUZvcklkKHN0b3JhZ2VJZCk7
CiAgICAgaWYgKCFzdG9yYWdlUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKQEAgLTEyMiwxMCAr
MTI1LDEwIEBAIHZvaWQgSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50OjpnZXRET01TdG9yYWdlRW50
cmllcyhFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYKICAgICBmb3IgKHVuc2lnbmVkIGkgPSAw
OyBpIDwgc3RvcmFnZUFyZWEtPmxlbmd0aChmcmFtZSk7ICsraSkgewogICAgICAgICBTdHJpbmcg
bmFtZShzdG9yYWdlQXJlYS0+a2V5KGksIGZyYW1lKSk7CiAgICAgICAgIFN0cmluZyB2YWx1ZShz
dG9yYWdlQXJlYS0+Z2V0SXRlbShuYW1lLCBmcmFtZSkpOwotICAgICAgICBSZWZQdHI8SW5zcGVj
dG9yQXJyYXk+IGVudHJ5ID0gSW5zcGVjdG9yQXJyYXk6OmNyZWF0ZSgpOwotICAgICAgICBlbnRy
eS0+cHVzaFN0cmluZyhuYW1lKTsKLSAgICAgICAgZW50cnktPnB1c2hTdHJpbmcodmFsdWUpOwot
ICAgICAgICBlbnRyaWVzLT5wdXNoQXJyYXkoZW50cnkpOworICAgICAgICBSZWZQdHI8VHlwZUJ1
aWxkZXI6OkFycmF5PFN0cmluZz4gPiBlbnRyeSA9IFR5cGVCdWlsZGVyOjpBcnJheTxTdHJpbmc+
OjpjcmVhdGUoKTsKKyAgICAgICAgZW50cnktPmFkZEl0ZW0obmFtZSk7CisgICAgICAgIGVudHJ5
LT5hZGRJdGVtKHZhbHVlKTsKKyAgICAgICAgZW50cmllcy0+YWRkSXRlbShlbnRyeSk7CiAgICAg
fQogfQogCkBAIC0xMzYsNyArMTM5LDggQEAgdm9pZCBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQ6
OnNldERPTVN0b3JhZ2VJdGVtKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBzdG8KICAgICAg
ICAgRXhjZXB0aW9uQ29kZSBleGNlcHRpb24gPSAwOwogICAgICAgICBzdG9yYWdlUmVzb3VyY2Ut
PnN0b3JhZ2VBcmVhKCktPnNldEl0ZW0oa2V5LCB2YWx1ZSwgZXhjZXB0aW9uLCBzdG9yYWdlUmVz
b3VyY2UtPmZyYW1lKCkpOwogICAgICAgICAqc3VjY2VzcyA9ICFleGNlcHRpb247Ci0gICAgfQor
ICAgIH0gZWxzZQorICAgICAgICAqc3VjY2VzcyA9IGZhbHNlOwogfQogCiB2b2lkIEluc3BlY3Rv
ckRPTVN0b3JhZ2VBZ2VudDo6cmVtb3ZlRE9NU3RvcmFnZUl0ZW0oRXJyb3JTdHJpbmcqLCBjb25z
dCBTdHJpbmcmIHN0b3JhZ2VJZCwgY29uc3QgU3RyaW5nJiBrZXksIGJvb2wqIHN1Y2Nlc3MpCkBA
IC0xNDUsNyArMTQ5LDggQEAgdm9pZCBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQ6OnJlbW92ZURP
TVN0b3JhZ2VJdGVtKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJgogICAgIGlmIChzdG9yYWdl
UmVzb3VyY2UpIHsKICAgICAgICAgc3RvcmFnZVJlc291cmNlLT5zdG9yYWdlQXJlYSgpLT5yZW1v
dmVJdGVtKGtleSwgc3RvcmFnZVJlc291cmNlLT5mcmFtZSgpKTsKICAgICAgICAgKnN1Y2Nlc3Mg
PSB0cnVlOwotICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgKnN1Y2Nlc3MgPSBmYWxzZTsKIH0K
IAogU3RyaW5nIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6c3RvcmFnZUlkKFN0b3JhZ2UqIHN0
b3JhZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9N
U3RvcmFnZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3Rv
cmFnZUFnZW50LmgKaW5kZXggYjBhMWNlM2MyM2FkNjdhMDJhMGIxNGI1NzZmMmZmY2UyYzY2NTYx
Ny4uOTg3YjFjOWM3NGY1NTJkYjViMDM1YTlkMjdmZWYxMzc1NTNlNDQ3YiAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01TdG9yYWdlQWdlbnQuaApAQCAt
NjQsNyArNjQsNyBAQCBwdWJsaWM6CiAgICAgLy8gQ2FsbGVkIGZyb20gdGhlIGZyb250LWVuZC4K
ICAgICB2aXJ0dWFsIHZvaWQgZW5hYmxlKEVycm9yU3RyaW5nKik7CiAgICAgdmlydHVhbCB2b2lk
IGRpc2FibGUoRXJyb3JTdHJpbmcqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZ2V0RE9NU3RvcmFnZUVu
dHJpZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZCwgUmVmUHRyPEluc3Bl
Y3RvckFycmF5PiYgZW50cmllcyk7CisgICAgdmlydHVhbCB2b2lkIGdldERPTVN0b3JhZ2VFbnRy
aWVzKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBzdG9yYWdlSWQsIFJlZlB0cjxUeXBlQnVp
bGRlcjo6QXJyYXk8VHlwZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiA+JiBlbnRyaWVzKTsKICAg
ICB2aXJ0dWFsIHZvaWQgc2V0RE9NU3RvcmFnZUl0ZW0oRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJp
bmcmIHN0b3JhZ2VJZCwgY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUsIGJv
b2wqIHN1Y2Nlc3MpOwogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVET01TdG9yYWdlSXRlbShFcnJv
clN0cmluZyosIGNvbnN0IFN0cmluZyYgc3RvcmFnZUlkLCBjb25zdCBTdHJpbmcmIGtleSwgYm9v
bCogc3VjY2Vzcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JET01TdG9yYWdlUmVzb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckRPTVN0b3JhZ2VSZXNvdXJjZS5jcHAKaW5kZXggYjExYTcyOTAxZWY2NjRkMDhmYmEw
MmM2ZjI5MzY5ZDhmMGVkOTdjZi4uMDI5Y2EzYjY1NWMzOGQ5NWVmOTAyNTcyODU3YmY5NWUyNDE0
ODEyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0
b3JhZ2VSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckRPTVN0b3JhZ2VSZXNvdXJjZS5jcHAKQEAgLTcyLDEwICs3MiwxMCBAQCB2b2lkIEluc3BlY3Rv
ckRPTVN0b3JhZ2VSZXNvdXJjZTo6YmluZChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQpCiAg
ICAgQVNTRVJUKCFtX2Zyb250ZW5kKTsKICAgICBtX2Zyb250ZW5kID0gZnJvbnRlbmQtPmRvbXN0
b3JhZ2UoKTsKIAotICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGpzb25PYmplY3QgPSBJbnNw
ZWN0b3JPYmplY3Q6OmNyZWF0ZSgpOwotICAgIGpzb25PYmplY3QtPnNldFN0cmluZygiaG9zdCIs
IG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmhvc3QoKSk7Ci0gICAganNv
bk9iamVjdC0+c2V0Qm9vbGVhbigiaXNMb2NhbFN0b3JhZ2UiLCBtX2lzTG9jYWxTdG9yYWdlKTsK
LSAgICBqc29uT2JqZWN0LT5zZXRTdHJpbmcoImlkIiwgbV9pZCk7CisgICAgUmVmUHRyPFR5cGVC
dWlsZGVyOjpET01TdG9yYWdlOjpFbnRyeT4ganNvbk9iamVjdCA9IFR5cGVCdWlsZGVyOjpET01T
dG9yYWdlOjpFbnRyeTo6Y3JlYXRlKCkKKyAgICAgICAgLnNldEhvc3QobV9mcmFtZS0+ZG9jdW1l
bnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+aG9zdCgpKQorICAgICAgICAuc2V0SXNMb2NhbFN0b3Jh
Z2UobV9pc0xvY2FsU3RvcmFnZSkKKyAgICAgICAgLnNldElkKG1faWQpOwogICAgIG1fZnJvbnRl
bmQtPmFkZERPTVN0b3JhZ2UoanNvbk9iamVjdCk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135606</attachid>
            <date>2012-04-04 09:11:04 -0700</date>
            <delta_ts>2012-04-04 11:19:12 -0700</delta_ts>
            <desc>Merge</desc>
            <filename>bug-83039-20120404201102.patch</filename>
            <type>text/plain</type>
            <size>15030</size>
            <attacher name="Peter Rybin">prybin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEzMTkzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjVhZjU3MTE2YjE2ZmQy
MTFlYmQ3ODU2MmM5ZmUyN2Y4NDQzNjgyNC4uMTZkZmRjNzUyZGFiYWRiYTNkYzY2NWE1ZjcyNGM0
NjZjZDcwZTA2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTA0LTAzICBQZXRl
ciBSeWJpbiAgPHBldGVyLnJ5YmluQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgSW5zcGVjdG9y
OiBDb2RlR2VuZXJhdG9ySW5zcGVjdG9yLnB5OiBzd2l0Y2ggSW5kZXhlZERCLCBET01TdG9yYWdl
LCBBcHBsaWNhdGlvbkNhY2hlIGRvbWFpbnMgdG8gdHlwZWQgQVBJCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MzAzOQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENsaWVudCBjb2RlIGlzIHN3aXRjaGVkIHRv
IHR5cGVkIEFQSSAoYWxsIEluc3BlY3Rvck9iamVjdCBhbmQgSW5zcGVjdG9yQXJyYXkgdHlwZXMg
YXJlCisgICAgICAgIHJlcGxhY2VkIHdpdGggZ2VuZXJhdGVkIHR5cGVzIGZyb20gVHlwZUJ1aWxk
ZXIgYWNjb3JkaW5nIHRvIEluc3BlY3Rvci5qc29uKS4KKworICAgICAgICBNaXNzaW5nIGFycmF5
IG9mIGFycmF5IHNwZWNpYWxpemF0aW9uIGlzIGFkZGVkLiBJbnNwZWN0b3IuanNvbiBpcyBmaXhl
ZCB0byBjb21mb3JtCisgICAgICAgIHdpdGggYWN0dWFsIGJlaGF2aW9yIG9mIEluc3BlY3RvckRP
TVN0b3JhZ2VBZ2VudC4KKworICAgICAgICBPdXRwdXQgcGFyYW1ldGVyIGluaXRpYWxpemF0aW9u
IGlzIGFzc3VyZWQuCisKKyAgICAgICAgKiBpbnNwZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rv
ci5weToKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yLmpzb246CisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEZyYW1lc1dpdGhNYW5pZmVz
dHMpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50Ojpn
ZXRBcHBsaWNhdGlvbkNhY2hlRm9yRnJhbWUpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9y
QXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUpOgor
ICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaDoKKyAg
ICAgICAgKEluc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudCk6CisgICAgICAgICogaW5zcGVj
dG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNw
ZWN0b3JET01TdG9yYWdlQWdlbnQ6OmdldERPTVN0b3JhZ2VFbnRyaWVzKToKKyAgICAgICAgKFdl
YkNvcmU6Okluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6c2V0RE9NU3RvcmFnZUl0ZW0pOgorICAg
ICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50OjpyZW1vdmVET01TdG9yYWdl
SXRlbSk6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5oOgor
ICAgICAgICAoSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50KToKKyAgICAgICAgKiBpbnNwZWN0b3Iv
SW5zcGVjdG9yRE9NU3RvcmFnZVJlc291cmNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckRPTVN0b3JhZ2VSZXNvdXJjZTo6YmluZCk6CisKIDIwMTItMDQtMDQgIEFsbGFuIFNhbmRm
ZWxkIEplbnNlbiAgPGFsbGFuLmplbnNlbkBub2tpYS5jb20+CiAKICAgICAgICAgQmVzdCBjbGlj
a2FibGUgbm9kZSBtaWdodCByZXR1cm4gbm9uICJjbGlja2FibGUiIG5vZGUuIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0NvZGVHZW5lcmF0b3JJbnNwZWN0b3IucHkgYi9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rvci5weQppbmRleCA1
NTczNThlYmM4M2NkOGQ0MjhhMzA0MGY0MzkyNzcxYzQwYTVhYjU4Li43MmFkZGExMjA0ODQ5MmU2
MTk1MGViNWU2N2ZhNTgwMzM4NzUxNDY1IDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rvci5weQorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvQ29kZUdlbmVyYXRvckluc3BlY3Rvci5weQpAQCAtNjEsNyArNjEsOCBAQCBUWVBFU19X
SVRIX1JVTlRJTUVfQ0FTVF9TRVQgPSBmcm96ZW5zZXQoWyJSdW50aW1lLlJlbW90ZU9iamVjdCIs
ICJSdW50aW1lLlByb3BlcgogCiBTVFJJQ1RfRU5BQkxFRF9ET01BSU5TID0gWyJDb25zb2xlIiwg
IkRPTURlYnVnZ2VyIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIkNTUyIsICJEZWJ1Z2dl
ciIsICJET00iLCAiTmV0d29yayIsICJQYWdlIiwgIlJ1bnRpbWUiLAotICAgICAgICAgICAgICAg
ICAgICAgICAgICAiSW5zcGVjdG9yIiwgIk1lbW9yeSIsICJEYXRhYmFzZSJdCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICJJbnNwZWN0b3IiLCAiTWVtb3J5IiwgIkRhdGFiYXNlIiwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIkluZGV4ZWREQiIsICJET01TdG9yYWdlIiwgIkFwcGxpY2F0
aW9uQ2FjaGUiXQogCiAKIGNtZGxpbmVfcGFyc2VyID0gb3B0cGFyc2UuT3B0aW9uUGFyc2VyKCkK
QEAgLTIyODgsNiArMjI4OSwxNiBAQCBzdHJ1Y3QgQXJyYXlJdGVtSGVscGVyPEluc3BlY3RvclZh
bHVlPiB7CiAgICAgfTsKIH07CiAKK3RlbXBsYXRlPHR5cGVuYW1lIFQ+CitzdHJ1Y3QgQXJyYXlJ
dGVtSGVscGVyPFR5cGVCdWlsZGVyOjpBcnJheTxUPiA+IHsKKyAgICBzdHJ1Y3QgVHJhaXRzIHsK
KyAgICAgICAgc3RhdGljIHZvaWQgcHVzaFJlZlB0cihJbnNwZWN0b3JBcnJheSogYXJyYXksIFBh
c3NSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFQ+ID4gdmFsdWUpCisgICAgICAgIHsKKyAgICAg
ICAgICAgIGFycmF5LT5wdXNoQXJyYXkodmFsdWUpOworICAgICAgICB9CisgICAgfTsKK307CisK
ICR7Zm9yd2FyZHN9CiAKIFN0cmluZyBnZXRFbnVtQ29uc3RhbnRWYWx1ZShpbnQgY29kZSk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24gYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yLmpzb24KaW5kZXggMTgxNDZkZTkxOGZlYmEx
YWRlZTIxMDA5ODUxYWE2Yzg0M2ZlODhmMS4uOWYxMmU5MGVmZmM1NjdiMWYwYjlkNDc2M2FlYjhh
YzZjYzI3MDgzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ci5qc29uCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3IuanNvbgpAQCAt
MTEzMSw2ICsxMTMxLDEzIEBACiAgICAgICAgICAgICAgICAgICAgIHsgIm5hbWUiOiAiaXNMb2Nh
bFN0b3JhZ2UiLCAidHlwZSI6ICJib29sZWFuIiwgImRlc2NyaXB0aW9uIjogIlRydWUgZm9yIGxv
Y2FsIHN0b3JhZ2UuIiB9LAogICAgICAgICAgICAgICAgICAgICB7ICJuYW1lIjogImlkIiwgIiRy
ZWYiOiAiU3RvcmFnZUlkIiwgImRlc2NyaXB0aW9uIjogIkVudHJ5IGlkIGZvciBmdXJ0aGVyIHJl
ZmVyZW5jZS4iIH0KICAgICAgICAgICAgICAgICBdCisgICAgICAgICAgICB9LAorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgICJpZCI6ICJJdGVtIiwKKyAgICAgICAgICAgICAgICAidHlw
ZSI6ICJhcnJheSIsCisgICAgICAgICAgICAgICAgImRlc2NyaXB0aW9uIjogIkRPTSBTdG9yYWdl
IGl0ZW0uIiwKKyAgICAgICAgICAgICAgICAiaGlkZGVuIjogdHJ1ZSwKKyAgICAgICAgICAgICAg
ICAiaXRlbXMiOiB7ICJ0eXBlIjogInN0cmluZyIgfQogICAgICAgICAgICAgfQogICAgICAgICBd
LAogICAgICAgICAiY29tbWFuZHMiOiBbCkBAIC0xMTQ4LDcgKzExNTUsNyBAQAogICAgICAgICAg
ICAgICAgICAgICB7ICJuYW1lIjogInN0b3JhZ2VJZCIsICIkcmVmIjogIlN0b3JhZ2VJZCIgfQog
ICAgICAgICAgICAgICAgIF0sCiAgICAgICAgICAgICAgICAgInJldHVybnMiOiBbCi0gICAgICAg
ICAgICAgICAgICAgIHsgIm5hbWUiOiAiZW50cmllcyIsICJ0eXBlIjogImFycmF5IiwgIml0ZW1z
IjogeyAiJHJlZiI6ICJFbnRyeSJ9IH0KKyAgICAgICAgICAgICAgICAgICAgeyAibmFtZSI6ICJl
bnRyaWVzIiwgInR5cGUiOiAiYXJyYXkiLCAiaXRlbXMiOiB7ICIkcmVmIjogIkl0ZW0iIH0gfQog
ICAgICAgICAgICAgICAgIF0KICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICB7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFn
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwCmluZGV4IGM4MGY4MmI1ZGFjMTg4ODZkYmY5NjBmZmFhMWYxNGQ2NDUxZDM3
OTYuLmM0NWY4MTNiYTcyMGZhMTg4MGNiMDFkM2JhMmIxZTMyMTY0ZDJmOGUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBcHBsaWNhdGlvbkNh
Y2hlQWdlbnQuY3BwCkBAIC0xMDQsOSArMTA0LDkgQEAgdm9pZCBJbnNwZWN0b3JBcHBsaWNhdGlv
bkNhY2hlQWdlbnQ6Om5ldHdvcmtTdGF0ZUNoYW5nZWQoKQogICAgIG1fZnJvbnRlbmQtPm5ldHdv
cmtTdGF0ZVVwZGF0ZWQoaXNOb3dPbmxpbmUpOwogfQogCi12b2lkIEluc3BlY3RvckFwcGxpY2F0
aW9uQ2FjaGVBZ2VudDo6Z2V0RnJhbWVzV2l0aE1hbmlmZXN0cyhFcnJvclN0cmluZyosIFJlZlB0
cjxJbnNwZWN0b3JBcnJheT4mIHJlc3VsdCkKK3ZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNo
ZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9yU3RyaW5nKiwgUmVmUHRyPFR5cGVC
dWlsZGVyOjpBcnJheTxUeXBlQnVpbGRlcjo6QXBwbGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFu
aWZlc3Q+ID4mIHJlc3VsdCkKIHsKLSAgICByZXN1bHQgPSBJbnNwZWN0b3JBcnJheTo6Y3JlYXRl
KCk7CisgICAgcmVzdWx0ID0gVHlwZUJ1aWxkZXI6OkFycmF5PFR5cGVCdWlsZGVyOjpBcHBsaWNh
dGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD46OmNyZWF0ZSgpOwogCiAgICAgRnJhbWUqIG1h
aW5GcmFtZSA9IG1fcGFnZUFnZW50LT5tYWluRnJhbWUoKTsKICAgICBmb3IgKEZyYW1lKiBmcmFt
ZSA9IG1haW5GcmFtZTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS0+dHJhdmVyc2VOZXh0
KG1haW5GcmFtZSkpIHsKQEAgLTExOCwxMSArMTE4LDExIEBAIHZvaWQgSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50OjpnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVycm9yU3RyaW5nKiwgUmVm
UHRyCiAgICAgICAgIEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8gaW5mbyA9IGhvc3Qt
PmFwcGxpY2F0aW9uQ2FjaGVJbmZvKCk7CiAgICAgICAgIFN0cmluZyBtYW5pZmVzdFVSTCA9IGlu
Zm8ubV9tYW5pZmVzdC5zdHJpbmcoKTsKICAgICAgICAgaWYgKCFtYW5pZmVzdFVSTC5pc0VtcHR5
KCkpIHsKLSAgICAgICAgICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IHZhbHVlID0gSW5zcGVj
dG9yT2JqZWN0OjpjcmVhdGUoKTsKLSAgICAgICAgICAgIHZhbHVlLT5zZXRTdHJpbmcoImZyYW1l
SWQiLCBtX3BhZ2VBZ2VudC0+ZnJhbWVJZChmcmFtZSkpOwotICAgICAgICAgICAgdmFsdWUtPnNl
dFN0cmluZygibWFuaWZlc3RVUkwiLCBtYW5pZmVzdFVSTCk7Ci0gICAgICAgICAgICB2YWx1ZS0+
c2V0TnVtYmVyKCJzdGF0dXMiLCBob3N0LT5zdGF0dXMoKSk7Ci0gICAgICAgICAgICByZXN1bHQt
PnB1c2hPYmplY3QodmFsdWUpOworICAgICAgICAgICAgUmVmUHRyPFR5cGVCdWlsZGVyOjpBcHBs
aWNhdGlvbkNhY2hlOjpGcmFtZVdpdGhNYW5pZmVzdD4gdmFsdWUgPSBUeXBlQnVpbGRlcjo6QXBw
bGljYXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q6OmNyZWF0ZSgpCisgICAgICAgICAgICAg
ICAgLnNldEZyYW1lSWQobV9wYWdlQWdlbnQtPmZyYW1lSWQoZnJhbWUpKQorICAgICAgICAgICAg
ICAgIC5zZXRNYW5pZmVzdFVSTChtYW5pZmVzdFVSTCkKKyAgICAgICAgICAgICAgICAuc2V0U3Rh
dHVzKGhvc3QtPnN0YXR1cygpKTsKKyAgICAgICAgICAgIHJlc3VsdC0+YWRkSXRlbSh2YWx1ZSk7
CiAgICAgICAgIH0KICAgICB9CiB9CkBAIC0xNDYsNyArMTQ2LDcgQEAgdm9pZCBJbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcqIGVy
cm9yU3RyaW4KICAgICAqbWFuaWZlc3RVUkwgPSBpbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCk7CiB9
CiAKLXZvaWQgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlvbkNh
Y2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIGZyYW1l
SWQsIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+JiBhcHBsaWNhdGlvbkNhY2hlKQordm9pZCBJbnNw
ZWN0b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmdldEFwcGxpY2F0aW9uQ2FjaGVGb3JGcmFtZShF
cnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgZnJhbWVJZCwgUmVmUHRyPFR5
cGVCdWlsZGVyOjpBcHBsaWNhdGlvbkNhY2hlOjpBcHBsaWNhdGlvbkNhY2hlPiYgYXBwbGljYXRp
b25DYWNoZSkKIHsKICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2FkZXIgPSBhc3NlcnRG
cmFtZVdpdGhEb2N1bWVudExvYWRlcihlcnJvclN0cmluZywgZnJhbWVJZCk7CiAgICAgaWYgKCFk
b2N1bWVudExvYWRlcikKQEAgLTE2MSwxNSArMTYxLDE0IEBAIHZvaWQgSW5zcGVjdG9yQXBwbGlj
YXRpb25DYWNoZUFnZW50OjpnZXRBcHBsaWNhdGlvbkNhY2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcq
IGVyCiAgICAgYXBwbGljYXRpb25DYWNoZSA9IGJ1aWxkT2JqZWN0Rm9yQXBwbGljYXRpb25DYWNo
ZShyZXNvdXJjZXMsIGluZm8pOwogfQogCi1QYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gSW5z
cGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2Fj
aGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0
aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8m
IGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQorUGFzc1JlZlB0cjxUeXBlQnVpbGRlcjo6QXBwbGljYXRp
b25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
OjpidWlsZE9iamVjdEZvckFwcGxpY2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhv
c3Q6OlJlc291cmNlSW5mb0xpc3QmIGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMsIGNvbnN0IEFw
cGxpY2F0aW9uQ2FjaGVIb3N0OjpDYWNoZUluZm8mIGFwcGxpY2F0aW9uQ2FjaGVJbmZvKQogewot
ICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IHZhbHVlID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVh
dGUoKTsKLSAgICB2YWx1ZS0+c2V0TnVtYmVyKCJzaXplIiwgYXBwbGljYXRpb25DYWNoZUluZm8u
bV9zaXplKTsKLSAgICB2YWx1ZS0+c2V0U3RyaW5nKCJtYW5pZmVzdFVSTCIsIGFwcGxpY2F0aW9u
Q2FjaGVJbmZvLm1fbWFuaWZlc3Quc3RyaW5nKCkpOwotICAgIHZhbHVlLT5zZXROdW1iZXIoImNy
ZWF0aW9uVGltZSIsIGFwcGxpY2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKTsKLSAgICB2
YWx1ZS0+c2V0TnVtYmVyKCJ1cGRhdGVUaW1lIiwgYXBwbGljYXRpb25DYWNoZUluZm8ubV91cGRh
dGVUaW1lKTsKLSAgICB2YWx1ZS0+c2V0QXJyYXkoInJlc291cmNlcyIsIGJ1aWxkQXJyYXlGb3JB
cHBsaWNhdGlvbkNhY2hlUmVzb3VyY2VzKGFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMpKTsKLSAg
ICByZXR1cm4gdmFsdWU7CisgICAgcmV0dXJuIFR5cGVCdWlsZGVyOjpBcHBsaWNhdGlvbkNhY2hl
OjpBcHBsaWNhdGlvbkNhY2hlOjpjcmVhdGUoKQorICAgICAgICAuc2V0TWFuaWZlc3RVUkwoYXBw
bGljYXRpb25DYWNoZUluZm8ubV9tYW5pZmVzdC5zdHJpbmcoKSkKKyAgICAgICAgLnNldFNpemUo
YXBwbGljYXRpb25DYWNoZUluZm8ubV9zaXplKQorICAgICAgICAuc2V0Q3JlYXRpb25UaW1lKGFw
cGxpY2F0aW9uQ2FjaGVJbmZvLm1fY3JlYXRpb25UaW1lKQorICAgICAgICAuc2V0VXBkYXRlVGlt
ZShhcHBsaWNhdGlvbkNhY2hlSW5mby5tX3VwZGF0ZVRpbWUpCisgICAgICAgIC5zZXRSZXNvdXJj
ZXMoYnVpbGRBcnJheUZvckFwcGxpY2F0aW9uQ2FjaGVSZXNvdXJjZXMoYXBwbGljYXRpb25DYWNo
ZVJlc291cmNlcykpOwogfQogCiBQYXNzUmVmUHRyPEluc3BlY3RvckFycmF5PiBJbnNwZWN0b3JB
cHBsaWNhdGlvbkNhY2hlQWdlbnQ6OmJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNhY2hlUmVzb3Vy
Y2VzKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0JiBhcHBsaWNh
dGlvbkNhY2hlUmVzb3VyY2VzKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVj
dG9yL0luc3BlY3RvckFwcGxpY2F0aW9uQ2FjaGVBZ2VudC5oCmluZGV4IDdhZmEzY2Y3MmVkMzU5
MjUzMDY2ZmU1N2Y0ZTcwZmI1YjNkN2MxZjIuLjM1YmI4NzI5NTdlODRmODM4N2FjM2MwMTczNjFi
MjdhMDgyN2I0YTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBcHBsaWNhdGlvbkNhY2hlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50LmgKQEAgLTY5LDEzICs2OSwxMyBAQCBwdWJs
aWM6CiAKICAgICAvLyBBcHBsaWNhdGlvbkNhY2hlIEFQSSBmb3IgSW5zcGVjdG9yRnJvbnRlbmQK
ICAgICB2aXJ0dWFsIHZvaWQgZW5hYmxlKEVycm9yU3RyaW5nKik7Ci0gICAgdmlydHVhbCB2b2lk
IGdldEZyYW1lc1dpdGhNYW5pZmVzdHMoRXJyb3JTdHJpbmcqLCBSZWZQdHI8SW5zcGVjdG9yQXJy
YXk+JiByZXN1bHQpOworICAgIHZpcnR1YWwgdm9pZCBnZXRGcmFtZXNXaXRoTWFuaWZlc3RzKEVy
cm9yU3RyaW5nKiwgUmVmUHRyPFR5cGVCdWlsZGVyOjpBcnJheTxUeXBlQnVpbGRlcjo6QXBwbGlj
YXRpb25DYWNoZTo6RnJhbWVXaXRoTWFuaWZlc3Q+ID4mIHJlc3VsdCk7CiAgICAgdmlydHVhbCB2
b2lkIGdldE1hbmlmZXN0Rm9yRnJhbWUoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZyYW1l
SWQsIFN0cmluZyogbWFuaWZlc3RVUkwpOwotICAgIHZpcnR1YWwgdm9pZCBnZXRBcHBsaWNhdGlv
bkNhY2hlRm9yRnJhbWUoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZyYW1lSWQsIFJlZlB0
cjxJbnNwZWN0b3JPYmplY3Q+JiBhcHBsaWNhdGlvbkNhY2hlKTsKKyAgICB2aXJ0dWFsIHZvaWQg
Z2V0QXBwbGljYXRpb25DYWNoZUZvckZyYW1lKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBm
cmFtZUlkLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFwcGxpY2F0aW9uQ2FjaGU6OkFwcGxpY2F0aW9u
Q2FjaGU+Jik7CiAKIHByaXZhdGU6CiAgICAgSW5zcGVjdG9yQXBwbGljYXRpb25DYWNoZUFnZW50
KEluc3RydW1lbnRpbmdBZ2VudHMqLCBJbnNwZWN0b3JTdGF0ZSosIEluc3BlY3RvclBhZ2VBZ2Vu
dCopOwotICAgIFBhc3NSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiBidWlsZE9iamVjdEZvckFwcGxp
Y2F0aW9uQ2FjaGUoY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OlJlc291cmNlSW5mb0xpc3Qm
LCBjb25zdCBBcHBsaWNhdGlvbkNhY2hlSG9zdDo6Q2FjaGVJbmZvJik7CisgICAgUGFzc1JlZlB0
cjxUeXBlQnVpbGRlcjo6QXBwbGljYXRpb25DYWNoZTo6QXBwbGljYXRpb25DYWNoZT4gYnVpbGRP
YmplY3RGb3JBcHBsaWNhdGlvbkNhY2hlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNv
dXJjZUluZm9MaXN0JiwgY29uc3QgQXBwbGljYXRpb25DYWNoZUhvc3Q6OkNhY2hlSW5mbyYpOwog
ICAgIFBhc3NSZWZQdHI8SW5zcGVjdG9yQXJyYXk+IGJ1aWxkQXJyYXlGb3JBcHBsaWNhdGlvbkNh
Y2hlUmVzb3VyY2VzKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUluZm9MaXN0
Jik7CiAgICAgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yQXBwbGlj
YXRpb25DYWNoZVJlc291cmNlKGNvbnN0IEFwcGxpY2F0aW9uQ2FjaGVIb3N0OjpSZXNvdXJjZUlu
Zm8mKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRP
TVN0b3JhZ2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9N
U3RvcmFnZUFnZW50LmNwcAppbmRleCAxZDVjYmFiMDJmNzhmMzc0ZGRlMDU2MzEyMjA0MmY2YjNh
MjBhYTBmLi4zZjY2OTYwYjFlZjFlMTNiMTAxY2I1NDBmYjQ4ZTE2ZjliMzRmYmQ2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50
LmNwcApAQCAtMTA4LDggKzEwOCwxMSBAQCB2b2lkIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6
ZGlzYWJsZShFcnJvclN0cmluZyopCiAgICAgbV9zdGF0ZS0+c2V0Qm9vbGVhbihET01TdG9yYWdl
QWdlbnRTdGF0ZTo6ZG9tU3RvcmFnZUFnZW50RW5hYmxlZCwgbV9lbmFibGVkKTsKIH0KIAotdm9p
ZCBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQ6OmdldERPTVN0b3JhZ2VFbnRyaWVzKEVycm9yU3Ry
aW5nKiwgY29uc3QgU3RyaW5nJiBzdG9yYWdlSWQsIFJlZlB0cjxJbnNwZWN0b3JBcnJheT4mIGVu
dHJpZXMpCit2b2lkIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6Z2V0RE9NU3RvcmFnZUVudHJp
ZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZCwgUmVmUHRyPFR5cGVCdWls
ZGVyOjpBcnJheTxUeXBlQnVpbGRlcjo6QXJyYXk8U3RyaW5nPiA+ID4mIGVudHJpZXMpCiB7Cisg
ICAgLy8gRklYTUU6IGNvbnNpZGVyIGluaXRpYWxpemluZyB0aGlzIGFycmF5IGFmdGVyIDIgY2hl
Y2tzIGJlbG93LiBUaGUgY2hlY2tzIHNob3VsZCByZXR1cm4gZXJyb3IgbWVzc2FnZXMgaW4gdGhp
cyBjYXNlLgorICAgIGVudHJpZXMgPSBUeXBlQnVpbGRlcjo6QXJyYXk8VHlwZUJ1aWxkZXI6OkFy
cmF5PFN0cmluZz4gPjo6Y3JlYXRlKCk7CisKICAgICBJbnNwZWN0b3JET01TdG9yYWdlUmVzb3Vy
Y2UqIHN0b3JhZ2VSZXNvdXJjZSA9IGdldERPTVN0b3JhZ2VSZXNvdXJjZUZvcklkKHN0b3JhZ2VJ
ZCk7CiAgICAgaWYgKCFzdG9yYWdlUmVzb3VyY2UpCiAgICAgICAgIHJldHVybjsKQEAgLTEyMiwx
MCArMTI1LDEwIEBAIHZvaWQgSW5zcGVjdG9yRE9NU3RvcmFnZUFnZW50OjpnZXRET01TdG9yYWdl
RW50cmllcyhFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYKICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgc3RvcmFnZUFyZWEtPmxlbmd0aChmcmFtZSk7ICsraSkgewogICAgICAgICBTdHJp
bmcgbmFtZShzdG9yYWdlQXJlYS0+a2V5KGksIGZyYW1lKSk7CiAgICAgICAgIFN0cmluZyB2YWx1
ZShzdG9yYWdlQXJlYS0+Z2V0SXRlbShuYW1lLCBmcmFtZSkpOwotICAgICAgICBSZWZQdHI8SW5z
cGVjdG9yQXJyYXk+IGVudHJ5ID0gSW5zcGVjdG9yQXJyYXk6OmNyZWF0ZSgpOwotICAgICAgICBl
bnRyeS0+cHVzaFN0cmluZyhuYW1lKTsKLSAgICAgICAgZW50cnktPnB1c2hTdHJpbmcodmFsdWUp
OwotICAgICAgICBlbnRyaWVzLT5wdXNoQXJyYXkoZW50cnkpOworICAgICAgICBSZWZQdHI8VHlw
ZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiBlbnRyeSA9IFR5cGVCdWlsZGVyOjpBcnJheTxTdHJp
bmc+OjpjcmVhdGUoKTsKKyAgICAgICAgZW50cnktPmFkZEl0ZW0obmFtZSk7CisgICAgICAgIGVu
dHJ5LT5hZGRJdGVtKHZhbHVlKTsKKyAgICAgICAgZW50cmllcy0+YWRkSXRlbShlbnRyeSk7CiAg
ICAgfQogfQogCkBAIC0xMzYsNyArMTM5LDggQEAgdm9pZCBJbnNwZWN0b3JET01TdG9yYWdlQWdl
bnQ6OnNldERPTVN0b3JhZ2VJdGVtKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBzdG8KICAg
ICAgICAgRXhjZXB0aW9uQ29kZSBleGNlcHRpb24gPSAwOwogICAgICAgICBzdG9yYWdlUmVzb3Vy
Y2UtPnN0b3JhZ2VBcmVhKCktPnNldEl0ZW0oa2V5LCB2YWx1ZSwgZXhjZXB0aW9uLCBzdG9yYWdl
UmVzb3VyY2UtPmZyYW1lKCkpOwogICAgICAgICAqc3VjY2VzcyA9ICFleGNlcHRpb247Ci0gICAg
fQorICAgIH0gZWxzZQorICAgICAgICAqc3VjY2VzcyA9IGZhbHNlOwogfQogCiB2b2lkIEluc3Bl
Y3RvckRPTVN0b3JhZ2VBZ2VudDo6cmVtb3ZlRE9NU3RvcmFnZUl0ZW0oRXJyb3JTdHJpbmcqLCBj
b25zdCBTdHJpbmcmIHN0b3JhZ2VJZCwgY29uc3QgU3RyaW5nJiBrZXksIGJvb2wqIHN1Y2Nlc3Mp
CkBAIC0xNDUsNyArMTQ5LDggQEAgdm9pZCBJbnNwZWN0b3JET01TdG9yYWdlQWdlbnQ6OnJlbW92
ZURPTVN0b3JhZ2VJdGVtKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJgogICAgIGlmIChzdG9y
YWdlUmVzb3VyY2UpIHsKICAgICAgICAgc3RvcmFnZVJlc291cmNlLT5zdG9yYWdlQXJlYSgpLT5y
ZW1vdmVJdGVtKGtleSwgc3RvcmFnZVJlc291cmNlLT5mcmFtZSgpKTsKICAgICAgICAgKnN1Y2Nl
c3MgPSB0cnVlOwotICAgIH0KKyAgICB9IGVsc2UKKyAgICAgICAgKnN1Y2Nlc3MgPSBmYWxzZTsK
IH0KIAogU3RyaW5nIEluc3BlY3RvckRPTVN0b3JhZ2VBZ2VudDo6c3RvcmFnZUlkKFN0b3JhZ2Uq
IHN0b3JhZ2UpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
RE9NU3RvcmFnZUFnZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yRE9N
U3RvcmFnZUFnZW50LmgKaW5kZXggYjBhMWNlM2MyM2FkNjdhMDJhMGIxNGI1NzZmMmZmY2UyYzY2
NTYxNy4uOTg3YjFjOWM3NGY1NTJkYjViMDM1YTlkMjdmZWYxMzc1NTNlNDQ3YiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRPTVN0b3JhZ2VBZ2VudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JET01TdG9yYWdlQWdlbnQuaApA
QCAtNjQsNyArNjQsNyBAQCBwdWJsaWM6CiAgICAgLy8gQ2FsbGVkIGZyb20gdGhlIGZyb250LWVu
ZC4KICAgICB2aXJ0dWFsIHZvaWQgZW5hYmxlKEVycm9yU3RyaW5nKik7CiAgICAgdmlydHVhbCB2
b2lkIGRpc2FibGUoRXJyb3JTdHJpbmcqKTsKLSAgICB2aXJ0dWFsIHZvaWQgZ2V0RE9NU3RvcmFn
ZUVudHJpZXMoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIHN0b3JhZ2VJZCwgUmVmUHRyPElu
c3BlY3RvckFycmF5PiYgZW50cmllcyk7CisgICAgdmlydHVhbCB2b2lkIGdldERPTVN0b3JhZ2VF
bnRyaWVzKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiBzdG9yYWdlSWQsIFJlZlB0cjxUeXBl
QnVpbGRlcjo6QXJyYXk8VHlwZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiA+JiBlbnRyaWVzKTsK
ICAgICB2aXJ0dWFsIHZvaWQgc2V0RE9NU3RvcmFnZUl0ZW0oRXJyb3JTdHJpbmcqLCBjb25zdCBT
dHJpbmcmIHN0b3JhZ2VJZCwgY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUs
IGJvb2wqIHN1Y2Nlc3MpOwogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVET01TdG9yYWdlSXRlbShF
cnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgc3RvcmFnZUlkLCBjb25zdCBTdHJpbmcmIGtleSwg
Ym9vbCogc3VjY2Vzcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JET01TdG9yYWdlUmVzb3VyY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckRPTVN0b3JhZ2VSZXNvdXJjZS5jcHAKaW5kZXggYjExYTcyOTAxZWY2NjRkMDhm
YmEwMmM2ZjI5MzY5ZDhmMGVkOTdjZi4uMDI5Y2EzYjY1NWMzOGQ5NWVmOTAyNTcyODU3YmY5NWUy
NDE0ODEyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckRP
TVN0b3JhZ2VSZXNvdXJjZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckRPTVN0b3JhZ2VSZXNvdXJjZS5jcHAKQEAgLTcyLDEwICs3MiwxMCBAQCB2b2lkIEluc3Bl
Y3RvckRPTVN0b3JhZ2VSZXNvdXJjZTo6YmluZChJbnNwZWN0b3JGcm9udGVuZCogZnJvbnRlbmQp
CiAgICAgQVNTRVJUKCFtX2Zyb250ZW5kKTsKICAgICBtX2Zyb250ZW5kID0gZnJvbnRlbmQtPmRv
bXN0b3JhZ2UoKTsKIAotICAgIFJlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGpzb25PYmplY3QgPSBJ
bnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgpOwotICAgIGpzb25PYmplY3QtPnNldFN0cmluZygiaG9z
dCIsIG1fZnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCktPmhvc3QoKSk7Ci0gICAg
anNvbk9iamVjdC0+c2V0Qm9vbGVhbigiaXNMb2NhbFN0b3JhZ2UiLCBtX2lzTG9jYWxTdG9yYWdl
KTsKLSAgICBqc29uT2JqZWN0LT5zZXRTdHJpbmcoImlkIiwgbV9pZCk7CisgICAgUmVmUHRyPFR5
cGVCdWlsZGVyOjpET01TdG9yYWdlOjpFbnRyeT4ganNvbk9iamVjdCA9IFR5cGVCdWlsZGVyOjpE
T01TdG9yYWdlOjpFbnRyeTo6Y3JlYXRlKCkKKyAgICAgICAgLnNldEhvc3QobV9mcmFtZS0+ZG9j
dW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKS0+aG9zdCgpKQorICAgICAgICAuc2V0SXNMb2NhbFN0
b3JhZ2UobV9pc0xvY2FsU3RvcmFnZSkKKyAgICAgICAgLnNldElkKG1faWQpOwogICAgIG1fZnJv
bnRlbmQtPmFkZERPTVN0b3JhZ2UoanNvbk9iamVjdCk7CiB9CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>