From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18369 invoked by alias); 4 Apr 2011 23:30:40 -0000 Received: (qmail 18132 invoked by uid 22791); 4 Apr 2011 23:30:37 -0000 X-SWARE-Spam-Status: No, hits=-2.2 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (74.125.121.67) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 04 Apr 2011 23:30:32 +0000 Received: from kpbe17.cbf.corp.google.com (kpbe17.cbf.corp.google.com [172.25.105.81]) by smtp-out.google.com with ESMTP id p34NUURh030949 for ; Mon, 4 Apr 2011 16:30:31 -0700 Received: from qyk7 (qyk7.prod.google.com [10.241.83.135]) by kpbe17.cbf.corp.google.com with ESMTP id p34NU232016623 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for ; Mon, 4 Apr 2011 16:30:29 -0700 Received: by qyk7 with SMTP id 7so3955464qyk.10 for ; Mon, 04 Apr 2011 16:30:29 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.117.73 with SMTP id p9mr6199102qcq.96.1301959828869; Mon, 04 Apr 2011 16:30:28 -0700 (PDT) Received: by 10.229.15.146 with HTTP; Mon, 4 Apr 2011 16:30:28 -0700 (PDT) Date: Mon, 04 Apr 2011 23:30:00 -0000 Message-ID: Subject: [gold patch] Incremental 15/18: Add --incremental-base option. From: Cary Coutant To: Ian Lance Taylor , Binutils Content-Type: multipart/mixed; boundary=000e0cd5cd541c914904a02025d9 X-System-Of-Record: true X-IsSubscribed: yes Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org X-SW-Source: 2011-04/txt/msg00031.txt.bz2 --000e0cd5cd541c914904a02025d9 Content-Type: text/plain; charset=ISO-8859-1 Content-length: 957 This patch adds a --incremental-base option, so that the base file for the incremental link can be different from the output file. For simplicity, I simply copy the base file contents to a new output file, then carry on with a normal incremental link. -cary * gold.cc (queue_initial_tasks): Pass incremental base filename to Output_file::open_for_modification. * incremental-dump.cc (main): Adjust call to Output_file::open_for_modification. * incremental.cc (Incremental_inputs::report_command_line): Ignore --incremental-base option when comparing command lines. * options.h (class General_options): Add --incremental-base. * output.cc (Output_file::Output_file): (Output_file::open_for_modification): Add base_name parameter; copy base file to new file. * output.h (Output_file::open_for_modification): Add base_name parameter. * testsuite/Makefile.am (incremental_test_4): Test --incremental-base. * testsuite/Makefile.in: Regenerate. --000e0cd5cd541c914904a02025d9 Content-Type: text/plain; charset=US-ASCII; name="incr-patch-15.txt" Content-Disposition: attachment; filename="incr-patch-15.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gm4199j20 Content-length: 9521 QWRkIC0taW5jcmVtZW50YWwtYmFzZSBvcHRpb24uCgoKMjAxMS0wNC0wNCBD YXJ5IENvdXRhbnQgIDxjY291dGFudEBnb29nbGUuY29tPgoKCSogZ29sZC5j YyAocXVldWVfaW5pdGlhbF90YXNrcyk6IFBhc3MgaW5jcmVtZW50YWwgYmFz ZSBmaWxlbmFtZQoJdG8gT3V0cHV0X2ZpbGU6Om9wZW5fZm9yX21vZGlmaWNh dGlvbi4KCSogaW5jcmVtZW50YWwtZHVtcC5jYyAobWFpbik6IEFkanVzdCBj YWxsIHRvCglPdXRwdXRfZmlsZTo6b3Blbl9mb3JfbW9kaWZpY2F0aW9uLgoJ KiBpbmNyZW1lbnRhbC5jYyAoSW5jcmVtZW50YWxfaW5wdXRzOjpyZXBvcnRf Y29tbWFuZF9saW5lKToKCUlnbm9yZSAtLWluY3JlbWVudGFsLWJhc2Ugb3B0 aW9uIHdoZW4gY29tcGFyaW5nIGNvbW1hbmQgbGluZXMuCgkqIG9wdGlvbnMu aCAoY2xhc3MgR2VuZXJhbF9vcHRpb25zKTogQWRkIC0taW5jcmVtZW50YWwt YmFzZS4KCSogb3V0cHV0LmNjIChPdXRwdXRfZmlsZTo6T3V0cHV0X2ZpbGUp OgoJKE91dHB1dF9maWxlOjpvcGVuX2Zvcl9tb2RpZmljYXRpb24pOiBBZGQg YmFzZV9uYW1lIHBhcmFtZXRlcjsKCWNvcHkgYmFzZSBmaWxlIHRvIG5ldyBm aWxlLgoJKiBvdXRwdXQuaCAoT3V0cHV0X2ZpbGU6Om9wZW5fZm9yX21vZGlm aWNhdGlvbik6IEFkZCBiYXNlX25hbWUKCXBhcmFtZXRlci4KCSogdGVzdHN1 aXRlL01ha2VmaWxlLmFtIChpbmNyZW1lbnRhbF90ZXN0XzQpOiBUZXN0Cgkt LWluY3JlbWVudGFsLWJhc2UuCgkqIHRlc3RzdWl0ZS9NYWtlZmlsZS5pbjog UmVnZW5lcmF0ZS4KCgpkaWZmIC0tZ2l0IGEvZ29sZC9nb2xkLmNjIGIvZ29s ZC9nb2xkLmNjCmluZGV4IDg0MDA4Y2EuLjg1YjI5MDcgMTAwNjQ0Ci0tLSBh L2dvbGQvZ29sZC5jYworKysgYi9nb2xkL2dvbGQuY2MKQEAgLTIwNCw3ICsy MDQsNyBAQCBxdWV1ZV9pbml0aWFsX3Rhc2tzKGNvbnN0IEdlbmVyYWxfb3B0 aW9ucyYgb3B0aW9ucywKICAgICAgIGlmIChwYXJhbWV0ZXJzLT5pbmNyZW1l bnRhbF91cGRhdGUoKSkKIAl7CiAJICBPdXRwdXRfZmlsZSogb2YgPSBuZXcg T3V0cHV0X2ZpbGUob3B0aW9ucy5vdXRwdXRfZmlsZV9uYW1lKCkpOwotCSAg aWYgKCFvZi0+b3Blbl9mb3JfbW9kaWZpY2F0aW9uKCkpCisJICBpZiAoIW9m LT5vcGVuX2Zvcl9tb2RpZmljYXRpb24ob3B0aW9ucy5pbmNyZW1lbnRhbF9i YXNlKCkpKQogCSAgICBnb2xkX2luZm8oXygiaW5jcmVtZW50YWwgdXBkYXRl IG5vdCBwb3NzaWJsZTogIgogCQkJImNhbm5vdCBvcGVuICVzIiksCiAJCSAg ICAgIG9wdGlvbnMub3V0cHV0X2ZpbGVfbmFtZSgpKTsKZGlmZiAtLWdpdCBh L2dvbGQvaW5jcmVtZW50YWwtZHVtcC5jYyBiL2dvbGQvaW5jcmVtZW50YWwt ZHVtcC5jYwppbmRleCAxODg3ZGI4Li4xYTNjY2U5IDEwMDY0NAotLS0gYS9n b2xkL2luY3JlbWVudGFsLWR1bXAuY2MKKysrIGIvZ29sZC9pbmNyZW1lbnRh bC1kdW1wLmNjCkBAIC00NDksNyArNDQ5LDcgQEAgbWFpbihpbnQgYXJnYywg Y2hhcioqIGFyZ3YpCiAKICAgT3V0cHV0X2ZpbGUqIGZpbGUgPSBuZXcgT3V0 cHV0X2ZpbGUoZmlsZW5hbWUpOwogCi0gIGJvb2wgdCA9IGZpbGUtPm9wZW5f Zm9yX21vZGlmaWNhdGlvbigpOworICBib29sIHQgPSBmaWxlLT5vcGVuX2Zv cl9tb2RpZmljYXRpb24oTlVMTCk7CiAgIGlmICghdCkKICAgICB7CiAgICAg ICBmcHJpbnRmKHN0ZGVyciwgIiVzOiBvcGVuX2Zvcl9tb2RpZmljYXRpb24o JXMpOiAlc1xuIiwgYXJndlswXSwgZmlsZW5hbWUsCmRpZmYgLS1naXQgYS9n b2xkL2luY3JlbWVudGFsLmNjIGIvZ29sZC9pbmNyZW1lbnRhbC5jYwppbmRl eCA4MjQ2MDhiLi44MTcwMDBlIDEwMDY0NAotLS0gYS9nb2xkL2luY3JlbWVu dGFsLmNjCisrKyBiL2dvbGQvaW5jcmVtZW50YWwuY2MKQEAgLTg2MSw2ICs4 NjEsNyBAQCBJbmNyZW1lbnRhbF9pbnB1dHM6OnJlcG9ydF9jb21tYW5kX2xp bmUoaW50IGFyZ2MsIGNvbnN0IGNoYXIqIGNvbnN0KiBhcmd2KQogCSAgfHwg c3RyY21wKGFyZ3ZbaV0sICItLWluY3JlbWVudGFsLWNoYW5nZWQiKSA9PSAw CiAJICB8fCBzdHJjbXAoYXJndltpXSwgIi0taW5jcmVtZW50YWwtdW5jaGFu Z2VkIikgPT0gMAogCSAgfHwgc3RyY21wKGFyZ3ZbaV0sICItLWluY3JlbWVu dGFsLXVua25vd24iKSA9PSAwCisJICB8fCBpc19wcmVmaXhfb2YoIi0taW5j cmVtZW50YWwtYmFzZT0iLCBhcmd2W2ldKQogCSAgfHwgaXNfcHJlZml4X29m KCItLWRlYnVnPSIsIGFyZ3ZbaV0pKQogICAgICAgICBjb250aW51ZTsKIApk aWZmIC0tZ2l0IGEvZ29sZC9vcHRpb25zLmggYi9nb2xkL29wdGlvbnMuaApp bmRleCAzOTQ5NjkwLi5lMjcyYWU3IDEwMDY0NAotLS0gYS9nb2xkL29wdGlv bnMuaAorKysgYi9nb2xkL29wdGlvbnMuaApAQCAtNzkwLDYgKzc5MCwxMSBA QCBjbGFzcyBHZW5lcmFsX29wdGlvbnMKICAgREVGSU5FX3NwZWNpYWwoaW5j cmVtZW50YWxfdXBkYXRlLCBvcHRpb25zOjpUV09fREFTSEVTLCAnXDAnLAog CQkgTl8oIkRvIGFuIGluY3JlbWVudGFsIGxpbms7IGV4aXQgaWYgbm90IHBv c3NpYmxlIiksIE5VTEwpOwogCisgIERFRklORV9zdHJpbmcoaW5jcmVtZW50 YWxfYmFzZSwgb3B0aW9uczo6VFdPX0RBU0hFUywgJ1wwJywgTlVMTCwKKyAg ICAgICAgICAgICAgICBOXygiU2V0IGJhc2UgZmlsZSBmb3IgaW5jcmVtZW50 YWwgbGlua2luZyIKKyAgICAgICAgICAgICAgICAgICAiIChkZWZhdWx0IGlz IG91dHB1dCBmaWxlKSIpLAorICAgICAgICAgICAgICAgIE5fKCJGSUxFIikp OworCiAgIERFRklORV9zcGVjaWFsKGluY3JlbWVudGFsX2NoYW5nZWQsIG9w dGlvbnM6OlRXT19EQVNIRVMsICdcMCcsCiAgICAgICAgICAgICAgICAgIE5f KCJBc3N1bWUgZmlsZXMgY2hhbmdlZCIpLCBOVUxMKTsKIApkaWZmIC0tZ2l0 IGEvZ29sZC9vdXRwdXQuY2MgYi9nb2xkL291dHB1dC5jYwppbmRleCBmNjZk NDcxLi42YWYwNmM1IDEwMDY0NAotLS0gYS9nb2xkL291dHB1dC5jYworKysg Yi9nb2xkL291dHB1dC5jYwpAQCAtNDQzMywzMCArNDQzMywzNiBAQCBPdXRw dXRfZmlsZTo6T3V0cHV0X2ZpbGUoY29uc3QgY2hhciogbmFtZSkKIH0KIAog Ly8gVHJ5IHRvIG9wZW4gYW4gZXhpc3RpbmcgZmlsZS4gIFJldHVybnMgZmFs c2UgaWYgdGhlIGZpbGUgZG9lc24ndAotLy8gZXhpc3QsIGhhcyBhIHNpemUg b2YgMCBvciBjYW4ndCBiZSBtbWFwcGVkLgorLy8gZXhpc3QsIGhhcyBhIHNp emUgb2YgMCBvciBjYW4ndCBiZSBtbWFwcGVkLiAgSWYgQkFTRV9OQU1FIGlz IG5vdAorLy8gTlVMTCwgb3BlbiB0aGF0IGZpbGUgYXMgdGhlIGJhc2UgZm9y IGluY3JlbWVudGFsIGxpbmtpbmcsIGFuZAorLy8gY29weSBpdHMgY29udGVu dHMgdG8gdGhlIG5ldyBvdXRwdXQgZmlsZS4KIAogYm9vbAotT3V0cHV0X2Zp bGU6Om9wZW5fZm9yX21vZGlmaWNhdGlvbigpCitPdXRwdXRfZmlsZTo6b3Bl bl9mb3JfbW9kaWZpY2F0aW9uKGNvbnN0IGNoYXIqIGJhc2VfbmFtZSkKIHsK ICAgLy8gVGhlIG5hbWUgIi0iIG1lYW5zICJzdGRvdXQiLgogICBpZiAoc3Ry Y21wKHRoaXMtPm5hbWVfLCAiLSIpID09IDApCiAgICAgcmV0dXJuIGZhbHNl OwogCisgIGJvb2wgdXNlX2Jhc2VfZmlsZSA9IGJhc2VfbmFtZSAhPSBOVUxM OworICBpZiAoIXVzZV9iYXNlX2ZpbGUpCisgICAgYmFzZV9uYW1lID0gdGhp cy0+bmFtZV87CisgIGVsc2UgaWYgKHN0cmNtcChiYXNlX25hbWUsIHRoaXMt Pm5hbWVfKSA9PSAwKQorICAgIGdvbGRfZmF0YWwoXygiJXM6IGluY3JlbWVu dGFsIGJhc2UgYW5kIG91dHB1dCBmaWxlIG5hbWUgYXJlIHRoZSBzYW1lIiks CisJICAgICAgIGJhc2VfbmFtZSk7CisKICAgLy8gRG9uJ3QgYm90aGVyIG9w ZW5pbmcgZmlsZXMgd2l0aCBhIHNpemUgb2YgemVyby4KICAgc3RydWN0IHN0 YXQgczsKLSAgaWYgKDo6c3RhdCh0aGlzLT5uYW1lXywgJnMpICE9IDAgfHwg cy5zdF9zaXplID09IDApCisgIGlmICg6OnN0YXQoYmFzZV9uYW1lLCAmcykg IT0gMCB8fCBzLnN0X3NpemUgPT0gMCkKICAgICByZXR1cm4gZmFsc2U7CiAK LSAgaW50IG8gPSBvcGVuX2Rlc2NyaXB0b3IoLTEsIHRoaXMtPm5hbWVfLCBP X1JEV1IsIDApOworICBpbnQgbyA9IG9wZW5fZGVzY3JpcHRvcigtMSwgYmFz ZV9uYW1lLCBPX1JEV1IsIDApOwogICBpZiAobyA8IDApCi0gICAgZ29sZF9m YXRhbChfKCIlczogb3BlbjogJXMiKSwgdGhpcy0+bmFtZV8sIHN0cmVycm9y KGVycm5vKSk7CisgICAgZ29sZF9mYXRhbChfKCIlczogb3BlbjogJXMiKSwg YmFzZV9uYW1lLCBzdHJlcnJvcihlcnJubykpOworCiAgIHRoaXMtPm9fID0g bzsKICAgdGhpcy0+ZmlsZV9zaXplXyA9IHMuc3Rfc2l6ZTsKIAotICAvLyBJ ZiB0aGUgZmlsZSBjYW4ndCBiZSBtbWFwcGVkLCBjb3B5aW5nIHRoZSBjb250 ZW50IHRvIGFuIGFub255bW91cwotICAvLyBtYXAgd2lsbCBwcm9iYWJseSBu ZWdhdGUgdGhlIHBlcmZvcm1hbmNlIGJlbmVmaXRzIG9mIGluY3JlbWVudGFs Ci0gIC8vIGxpbmtpbmcuICBUaGlzIGNvdWxkIGJlIGhlbHBlZCBieSB1c2lu ZyB2aWV3cyBhbmQgbG9hZGluZyBvbmx5Ci0gIC8vIHRoZSBuZWNlc3Nhcnkg cGFydHMsIGJ1dCB0aGlzIGlzIG5vdCBzdXBwb3J0ZWQgYXMgb2Ygbm93Lgog ICBpZiAoIXRoaXMtPm1hcF9ub19hbm9ueW1vdXMoKSkKICAgICB7CiAgICAg ICByZWxlYXNlX2Rlc2NyaXB0b3IobywgdHJ1ZSk7CkBAIC00NDY1LDYgKzQ0 NzEsMTcgQEAgT3V0cHV0X2ZpbGU6Om9wZW5fZm9yX21vZGlmaWNhdGlvbigp CiAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgfQogCisgIC8vIElmIHRoZSBi YXNlIGZpbGUgYW5kIHRoZSBvdXRwdXQgZmlsZSBhcmUgZGlmZmVyZW50LCBv cGVuIGEKKyAgLy8gbmV3IG91dHB1dCBmaWxlIGFuZCBjb3B5IHRoZSBjb250 ZW50cyBmcm9tIHRoZSBiYXNlIGZpbGUuCisgIGlmICh1c2VfYmFzZV9maWxl KQorICAgIHsKKyAgICAgIHVuc2lnbmVkIGNoYXIqIGJhc2UgPSB0aGlzLT5i YXNlXzsKKyAgICAgIHRoaXMtPm9wZW4ocy5zdF9zaXplKTsKKyAgICAgIG1l bWNweSh0aGlzLT5iYXNlXywgYmFzZSwgcy5zdF9zaXplKTsKKyAgICAgIDo6 bXVubWFwKGJhc2UsIHMuc3Rfc2l6ZSk7CisgICAgICA6OmNsb3NlKG8pOwor ICAgIH0KKwogICByZXR1cm4gdHJ1ZTsKIH0KIApkaWZmIC0tZ2l0IGEvZ29s ZC9vdXRwdXQuaCBiL2dvbGQvb3V0cHV0LmgKaW5kZXggNTRjZTRmOS4uZGVk Zjg5OCAxMDA2NDQKLS0tIGEvZ29sZC9vdXRwdXQuaAorKysgYi9nb2xkL291 dHB1dC5oCkBAIC00MjMxLDkgKzQyMzEsMTAgQEAgY2xhc3MgT3V0cHV0X2Zp bGUKIAogICAvLyBUcnkgdG8gb3BlbiBhbiBleGlzdGluZyBmaWxlLiBSZXR1 cm5zIGZhbHNlIGlmIHRoZSBmaWxlIGRvZXNuJ3QKICAgLy8gZXhpc3QsIGhh cyBhIHNpemUgb2YgMCBvciBjYW4ndCBiZSBtbWFwZWQuICBUaGlzIG1ldGhv ZCBpcwotICAvLyB0aHJlYWQtdW5zYWZlLgorICAvLyB0aHJlYWQtdW5zYWZl LiAgSWYgQkFTRV9OQU1FIGlzIG5vdCBOVUxMLCB1c2UgdGhlIGNvbnRlbnRz IG9mCisgIC8vIHRoYXQgZmlsZSBhcyB0aGUgYmFzZSBmb3IgaW5jcmVtZW50 YWwgbGlua2luZy4KICAgYm9vbAotICBvcGVuX2Zvcl9tb2RpZmljYXRpb24o KTsKKyAgb3Blbl9mb3JfbW9kaWZpY2F0aW9uKGNvbnN0IGNoYXIqIGJhc2Vf bmFtZSk7CiAKICAgLy8gT3BlbiB0aGUgb3V0cHV0IGZpbGUuICBGSUxFX1NJ WkUgaXMgdGhlIGZpbmFsIHNpemUgb2YgdGhlIGZpbGUuCiAgIC8vIElmIHRo ZSBmaWxlIGFscmVhZHkgZXhpc3RzLCBpdCBpcyBkZWxldGVkL3RydW5jYXRl ZC4gIFRoaXMgbWV0aG9kCmRpZmYgLS1naXQgYS9nb2xkL3Rlc3RzdWl0ZS9N YWtlZmlsZS5hbSBiL2dvbGQvdGVzdHN1aXRlL01ha2VmaWxlLmFtCmluZGV4 IDkwODYwZjEuLjgyMWE5YmIgMTAwNjQ0Ci0tLSBhL2dvbGQvdGVzdHN1aXRl L01ha2VmaWxlLmFtCisrKyBiL2dvbGQvdGVzdHN1aXRlL01ha2VmaWxlLmFt CkBAIC0xODQwLDEzICsxODQwLDE1IEBAIGluY3JlbWVudGFsX3Rlc3RfMzog dHdvX2ZpbGVfdGVzdF8xLm8gdHdvX2ZpbGVfdGVzdF8xYl92MS5vIHR3b19m aWxlX3Rlc3RfMWIubyBcCiAJJChDWFhMSU5LKSAtV2wsLS1pbmNyZW1lbnRh bC11cGRhdGUgLUJnY2N0ZXN0ZGlyLyB0d29fZmlsZV90ZXN0XzEubyB0d29f ZmlsZV90ZXN0X3RtcC5vIHR3b19maWxlX3Rlc3RfMi5vIHR3b19maWxlX3Rl c3RfbWFpbi5vCiAKIGNoZWNrX1BST0dSQU1TICs9IGluY3JlbWVudGFsX3Rl c3RfNAorTU9TVExZQ0xFQU5GSUxFUyArPSBpbmNyZW1lbnRhbF90ZXN0XzQu YmFzZQogaW5jcmVtZW50YWxfdGVzdF80OiB0d29fZmlsZV90ZXN0XzEubyB0 d29fZmlsZV90ZXN0XzFiLm8gdHdvX2ZpbGVfdGVzdF8yX3YxLm8gXAogCQkg ICAgdHdvX2ZpbGVfdGVzdF8yLm8gdHdvX2ZpbGVfdGVzdF9tYWluLm8gZ2Nj dGVzdGRpci9sZAogCWNwIC1mIHR3b19maWxlX3Rlc3RfMl92MS5vIHR3b19m aWxlX3Rlc3RfdG1wLm8KIAkkKENYWExJTkspIC1XbCwtLWluY3JlbWVudGFs LWZ1bGwgLUJnY2N0ZXN0ZGlyLyB0d29fZmlsZV90ZXN0XzEubyB0d29fZmls ZV90ZXN0XzFiLm8gdHdvX2ZpbGVfdGVzdF90bXAubyB0d29fZmlsZV90ZXN0 X21haW4ubworCW12IC1mIGluY3JlbWVudGFsX3Rlc3RfNCBpbmNyZW1lbnRh bF90ZXN0XzQuYmFzZQogCUBzbGVlcCAxCiAJY3AgLWYgdHdvX2ZpbGVfdGVz dF8yLm8gdHdvX2ZpbGVfdGVzdF90bXAubwotCSQoQ1hYTElOSykgLVdsLC0t aW5jcmVtZW50YWwtdXBkYXRlIC1CZ2NjdGVzdGRpci8gdHdvX2ZpbGVfdGVz dF8xLm8gdHdvX2ZpbGVfdGVzdF8xYi5vIHR3b19maWxlX3Rlc3RfdG1wLm8g dHdvX2ZpbGVfdGVzdF9tYWluLm8KKwkkKENYWExJTkspIC1XbCwtLWluY3Jl bWVudGFsLXVwZGF0ZSwtLWluY3JlbWVudGFsLWJhc2U9aW5jcmVtZW50YWxf dGVzdF80LmJhc2UgLUJnY2N0ZXN0ZGlyLyB0d29fZmlsZV90ZXN0XzEubyB0 d29fZmlsZV90ZXN0XzFiLm8gdHdvX2ZpbGVfdGVzdF90bXAubyB0d29fZmls ZV90ZXN0X21haW4ubwogCiBlbmRpZiBERUZBVUxUX1RBUkdFVF9YODZfNjQK IAo= --000e0cd5cd541c914904a02025d9--