From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DNS_FROM_AHBL_RHSBL, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW, SPF_PASS autolearn=no autolearn_force=no version=3.4.0 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.ru; s=mail2; h=Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject; bh=LNNa+m1WWB5pV/byCv0jF4H9F6oUjEbN36G5ORqsskE=; b=cE12nJBN/2vyhVakNw2RQzEAw4YOjWI1i7njUvMhrKTFLsIO7oEIYXM77zOEO1XsJ2OK1WDaEdCTUKp5GqVz1N4K4196cSjsufNdvlH/+BCzVMY14wp/2Ir93df6mNjcunuiCp0rNW9m8G5gAgeruZjpRlzPxe3qjVTIIuLJpxw=; To: ALT Linux Community general discussions References: <56025BE1.9040902@mail.ru> <56025D82.1000404@mail.ru> <201509231427.08180@3114> From: =?UTF-8?B?0KjQtdC90YbQtdCyINCQ0LvQtdC60YHQtdC5INCS0LvQsNC00LjQvNC40YA=?= =?UTF-8?B?0L7QstC40Yc=?= Message-ID: <5602A519.7020903@mail.ru> Date: Wed, 23 Sep 2015 16:11:53 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.0.1 MIME-Version: 1.0 In-Reply-To: <201509231427.08180@3114> Content-Type: multipart/mixed; boundary="------------040100040200070008040206" X-Mras: Ok Subject: Re: [Comm] boost & FreeOrion X-BeenThere: community@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Community general discussions List-Id: ALT Linux Community general discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Sep 2015 13:12:01 -0000 Archived-At: List-Archive: List-Post: This is a multi-part message in MIME format. --------------040100040200070008040206 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit 23.09.2015 14:27, Хихин Руслан пишет: > Здравствуйте ! > On Wednesday 23 September 2015 11:06:26 Шенцев Алексей Владимирович > написал(а): > >> Как я понял просто make verbose=1 . >> Для cmake же в конфиге указать set (CMAKE_VERBOSE_MAKEFILE ON) >> >>> Видно, что ошибки идут на уровне линковки. Тут одно из двух - или >>> не находится какая-то библиотека при линковке, или в makefile >>> указан неправильный порядок линковки библиотек (as-need). По >>> приложенным логам я не понял какой это случай. >> В общем уровень болтливости я повысил. Логи во вложении. > -o ../freeoriond -rdynamic ../libfreeorioncommon.so ../libfreeorionparse.so -lpython2.7 -lboost_python-mt -lboost_log-mt -lpthread -lboost_chrono-mt -lboost_date_time-mt -lboost_filesystem-mt -lboost_regex-mt -lboost_serialization-mt -lboost_signals-mt -lboost_system-mt -lboost_thread-mt -lz > -lboost_log-mt > > А что это -lboost_log-mt в самом конце оказался? > Во вложении конфиг по которому работает cmake. Ни как не могу понять, где и что надо исправить, что б -lboost_log-mt была не в самом конце ... :( -- С уважением, Шенцев Алексей Владимирович. --------------040100040200070008040206 Content-Type: text/plain; charset=UTF-8; name="CMakeLists.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="CMakeLists.txt" Y21ha2VfbWluaW11bV9yZXF1aXJlZChWRVJTSU9OIDIuNikKY21ha2VfcG9saWN5KFZFUlNJ T04gMi42LjQpCgpsaXN0KEFQUEVORCBDTUFLRV9NT0RVTEVfUEFUSCAke0NNQUtFX0hPTUVf RElSRUNUT1JZfS9jbWFrZSAke0NNQUtFX0hPTUVfRElSRUNUT1JZfS9HRy9jbWFrZSkKc2V0 KENNQUtFX0NPTkZJR1VSQVRJT05fVFlQRVMgRGVidWcgUmVsZWFzZSkKSUYoTk9UIENNQUtF X0JVSUxEX1RZUEUpCiAgTUVTU0FHRShTVEFUVVMgIlNldHRpbmcgYnVpbGQgdHlwZSB0byAn UmVsZWFzZScgYXMgbm9uZSB3YXMgc3BlY2lmaWVkLiIpCiAgU0VUKENNQUtFX0JVSUxEX1RZ UEUgUmVsZWFzZSBDQUNIRSBTVFJJTkcgIkNob29zZSB0aGUgdHlwZSBvZiBidWlsZC4iIEZP UkNFKQogICMgU2V0IHRoZSBwb3NzaWJsZSB2YWx1ZXMgb2YgYnVpbGQgdHlwZSBmb3IgY21h a2UtZ3VpCiAgU0VUX1BST1BFUlRZKENBQ0hFIENNQUtFX0JVSUxEX1RZUEUgUFJPUEVSVFkg U1RSSU5HUyAiRGVidWciICJSZWxlYXNlIiAiTWluU2l6ZVJlbCIgIlJlbFdpdGhEZWJJbmZv IikKRU5ESUYoTk9UIENNQUtFX0JVSUxEX1RZUEUpCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjCiMgQ29uZmlndXJhdGlvbiAgICAgICAgICAgICAgICAgICAg ICAgICMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpwcm9qZWN0 KEZyZWVPcmlvbikKCnNldChGcmVlT3Jpb25fVkVSU0lPTiAwLjQuNSkKc2V0KEZSRUVPUklP Tl9SRUxFQVNFIGZhbHNlKQoKI3NldChNSU5JTVVNX0JPT1NUX1ZFUlNJT04gMS41NC4wKQpz ZXQoTUlOSU1VTV9CT09TVF9WRVJTSU9OIDEuNTguMCkKc2V0KFBZVEhPTl9WRVJTSU9OIDIu NykKCnNldCAoQ01BS0VfVkVSQk9TRV9NQUtFRklMRSBPTikKCm9wdGlvbihCVUlMRF9URVNU UyAiQ29udHJvbHMgZ2VuZXJhdGlvbiBvZiB1bml0IHRlc3RzLiIgT0ZGKQoKaWYgKEJVSUxE X1RFU1RTKQogICAgZW5hYmxlX3Rlc3RpbmcoKQplbmRpZiAoKQoKZmluZF9wYWNrYWdlIChU aHJlYWRzKQoKc2V0KENNQUtFX1JVTlRJTUVfT1VUUFVUX0RJUkVDVE9SWSAke0NNQUtFX0JJ TkFSWV9ESVJ9KQpzZXQoQ01BS0VfQVJDSElWRV9PVVRQVVRfRElSRUNUT1JZICR7Q01BS0Vf QklOQVJZX0RJUn0pCnNldChDTUFLRV9MSUJSQVJZX09VVFBVVF9ESVJFQ1RPUlkgJHtDTUFL RV9CSU5BUllfRElSfSkKCnNldChDTUFLRV9TS0lQX0JVSUxEX1JQQVRIIEZBTFNFKQpzZXQo Q01BS0VfQlVJTERfV0lUSF9JTlNUQUxMX1JQQVRIIEZBTFNFKQpzZXQoQ01BS0VfSU5TVEFM TF9SUEFUSCAiJHtDTUFLRV9JTlNUQUxMX1BSRUZJWH0vbGliJHtMSUJfU1VGRklYfS9mcmVl b3Jpb24iKQpzZXQoQ01BS0VfSU5TVEFMTF9SUEFUSF9VU0VfTElOS19QQVRIIFRSVUUpCgpp ZiAoV0lOMzIpCiAgICBhZGRfZGVmaW5pdGlvbnMoCiAgICAgICAgLURfQ1JUX1NFQ1VSRV9O T19ERVBSRUNBVEUKICAgICAgICAtRF9TQ0xfU0VDVVJFX05PX0RFUFJFQ0FURQogICAgICAg IC1EX0NSVF9OT05TVERDX05PX0RFUFJFQ0FURQogICAgICAgIC1EQk9PU1RfQUxMX0RZTl9M SU5LCiAgICAgICAgLURGUkVFT1JJT05fV0lOMzIKICAgICAgICAtRF9XSU4zMl9XSU5OVD0w eDA1MDEKICAgICkKICAgIGlmIChNU1ZDKQogICAgICAgIHNldCAoQ01BS0VfUFJFRklYX1BB VEggIiR7Q01BS0VfQklOQVJZX0RJUn0vLi4vIikKICAgICAgICBzZXQgKEJPT1NUX1JPT1Qg IiR7Q01BS0VfQklOQVJZX0RJUn0vLi4vQm9vc3QiKQogICAgICAgIHNldCAoQ01BS0VfU1RB VElDX0xJQlJBUllfUFJFRklYICJsaWIiKQogICAgICAgIHNldCAoQ01BS0VfQ1hYX0ZMQUdT ICIke0NNQUtFX0NYWF9GTEFHU30gL3dkNDA5OSAvd2Q0MTAxIC93ZDQxNDYgL3dkNDI0NCAv d2Q0MjUxIC93ZDQyNTggL3dkNDI2NyAvd2Q0Mjc1IC93ZDQzNTEgL3dkNDgwMCAvd2Q0OTk2 IikKICAgICAgICBzZXQgKENNQUtFX0VYRV9MSU5LRVJfRkxBR1MgIiR7Q01BS0VfRVhFX0xJ TktFUl9GTEFHU30gL05PREVGQVVMVExJQjpMSUJDTVQiKQogICAgICAgIHNldCAoQ01BS0Vf U0hBUkVEX0xJTktFUl9GTEFHUyAiJHtDTUFLRV9TSEFSRURfTElOS0VSX0ZMQUdTfSAvTk9E RUZBVUxUTElCOkxJQkNNVCIpCiAgICBlbmRpZiAoKQplbHNlaWYgKEFQUExFKQogICAgYWRk X2RlZmluaXRpb25zKC1ERlJFRU9SSU9OX01BQ09TWCkKZWxzZWlmIChDTUFLRV9TWVNURU1f TkFNRSBTVFJFUVVBTCAiTGludXgiKQogICAgYWRkX2RlZmluaXRpb25zKAogICAgICAgIC1E RlJFRU9SSU9OX0xJTlVYCiAgICAgICAgLURFTkFCTEVfQklOUkVMT0MKICAgICAgICAtREJP T1NUX0FMTF9EWU5fTElOSwogICAgKQogICAgc2V0IChDTUFLRV9DWFhfRkxBR1MgIiR7Q01B S0VfQ1hYX0ZMQUdTfSAtV25vLWRlcHJlY2F0ZWQgLVdhbGwgLVduby1wYXJlbnRoZXNlcyIp CmVsc2VpZiAoQ01BS0VfU1lTVEVNX05BTUUgU1RSRVFVQUwgIkZyZWVCU0QiKQogICAgYWRk X2RlZmluaXRpb25zKAogICAgICAgIC1ERlJFRU9SSU9OX0ZSRUVCU0QKICAgICAgICAtREVO QUJMRV9CSU5SRUxPQwogICAgICAgIC1EQk9PU1RfREFURV9USU1FX05PX0xPQ0FMRQogICAg KQogICAgc2V0IChDTUFLRV9DWFhfRkxBR1MgIiR7Q01BS0VfQ1hYX0ZMQUdTfSAtV25vLWRl cHJlY2F0ZWQgLVdhbGwgLVduby1wYXJlbnRoZXNlcyIpCmVsc2UgKCkKICAgIG1lc3NhZ2Uo RkFUQUxfRVJST1IgIlVua25vd24gcGxhdGZvcm0gdHlwZSEgWW91ciBzZXR1cCBpcyBub3Qg YSBzdXBwb3J0ZWQgcGxhdGZvcm0gZm9yIEZyZWVPcmlvbi4iKQplbmRpZiAoKQoKZmluZF9w YWNrYWdlKFB5dGhvbkludGVycCAke1BZVEhPTl9WRVJTSU9OfSBSRVFVSVJFRCkKCiMgVG8g cnVuIHRoZSB2ZXJzaW9uIGdlbmVyYXRpb24gZXZlcnkgY29tcGlsZSB3ZSBuZWVkIHRvIGRl ZmVyciB0aGUKIyBleGVjdXRpb24gdG8gYSBzZXBhcmF0ZSB0YXJnZXQgYW5kIHRoZSBleGlz dGluZyBweXRob24gY29tbWFuZAphZGRfY3VzdG9tX3RhcmdldChmcmVlb3Jpb252ZXJzaW9u CiAgICBDT01NQU5ECiAgICAiJHtQWVRIT05fRVhFQ1VUQUJMRX0iCiAgICAiJHtDTUFLRV9T T1VSQ0VfRElSfS9jbWFrZS9tYWtlX3ZlcnNpb25jcHAucHkiCiAgICAiJHtDTUFLRV9TT1VS Q0VfRElSfSIKICAgICJDTWFrZSIKKQoKc2V0X3NvdXJjZV9maWxlc19wcm9wZXJ0aWVzKAog ICAgJHtDTUFLRV9DVVJSRU5UX1NPVVJDRV9ESVJ9L3V0aWwvVmVyc2lvbi5jcHAKICAgIFBS T1BFUlRJRVMKICAgIEdFTkVSQVRFRCBUUlVFCikKCmlmIChXSU4zMikKICAgICMgQWRkIGlj b24gcmVzb3VyY2UgZmlsZSB0byBmcmVlb3Jpb24uZXhlCiAgICBpZiAoTk9UIEVYSVNUUyAk e0NNQUtFX0JJTkFSWV9ESVJ9L3dpbjMyX3Jlc291cmNlcy5yYykKICAgICAgICBmaWxlKFdS SVRFICR7Q01BS0VfQklOQVJZX0RJUn0vd2luMzJfcmVzb3VyY2VzLnJjICJJRElfSUNPTiBJ Q09OIFwiJHtDTUFLRV9TT1VSQ0VfRElSfS9GcmVlT3Jpb24uaWNvXCIiKQogICAgZW5kaWYg KCkKZW5kaWYgKCkKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK IyBCdWlsZCBjb21tb24gY29kZSBsaWJyYXJ5ICAgICAgICAgICAgIwojIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCnNldChCVUlMRF9ERVZFTF9QQUNLQUdFIE9G RiBDQUNIRSBJTlRFUk5BTCAiRGlzYWJsZXMgaW5zdGFsbGF0aW9uIG9mIEdpR2kgZGV2ZWxv cG1lbnQgZmlsZXMuIiBGT1JDRSkKc2V0KE9MRF9MSUJfU1VGRklYICR7TElCX1NVRkZJWH0p CnNldChMSUJfU1VGRklYICIke0xJQl9TVUZGSVh9L2ZyZWVvcmlvbiIpCmFkZF9zdWJkaXJl Y3RvcnkoR0cpCnNldChMSUJfU1VGRklYICR7T0xEX0xJQl9TVUZGSVh9KQoKIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIERlcGVuZGVuY2llcyAgICAgICAg ICAgICAgICAgICAgICAgICAjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKZmluZF9wYWNrYWdlKEJvb3N0ICR7TUlOSU1VTV9CT09TVF9WRVJTSU9OfSBDT01Q T05FTlRTIGNocm9ubyBkYXRlX3RpbWUgZmlsZXN5c3RlbSByZWdleCBzZXJpYWxpemF0aW9u IHNpZ25hbHMgc3lzdGVtIHRocmVhZCBsb2cgUkVRVUlSRUQpCmZpbmRfcGFja2FnZShaTElC IFJFUVVJUkVEKQoKaW5jbHVkZV9kaXJlY3RvcmllcygKICAgICR7Qm9vc3RfSU5DTFVERV9E SVJTfQogICAgJHtaTElCX0lOQ0xVREVfRElSfQogICAgJHtDTUFLRV9TT1VSQ0VfRElSfQog ICAgR0cKKQoKbGlua19kaXJlY3RvcmllcygKICAgICR7Qm9vc3RfTElCUkFSWV9ESVJTfQop CgppZiAoRlJFRU9SSU9OX1JFTEVBU0UpCiAgICBhZGRfZGVmaW5pdGlvbnMoLURGUkVFT1JJ T05fUkVMRUFTRSkKZW5kaWYgKCkKCnNldCAoZnJlZW9yaW9uY29tbW9uX0hFQURFUgogICAg Y29tYmF0L0NvbWJhdEV2ZW50LmgKICAgIGNvbWJhdC9Db21iYXRFdmVudHMuaAogICAgY29t YmF0L0NvbWJhdExvZ01hbmFnZXIuaAogICAgY29tYmF0L0NvbWJhdFN5c3RlbS5oCiAgICBF bXBpcmUvRGlwbG9tYWN5LmgKICAgIEVtcGlyZS9FbXBpcmUuaAogICAgRW1waXJlL0VtcGly ZU1hbmFnZXIuaAogICAgRW1waXJlL1Jlc291cmNlUG9vbC5oCiAgICBuZXR3b3JrL01lc3Nh Z2UuaAogICAgbmV0d29yay9NZXNzYWdlUXVldWUuaAogICAgbmV0d29yay9OZXR3b3JraW5n LmgKICAgIHB5dGhvbi9QeXRob25TZXRXcmFwcGVyLmgKICAgIHB5dGhvbi9QeXRob25XcmFw cGVycy5oCiAgICB1bml2ZXJzZS9CdWlsZGluZy5oCiAgICB1bml2ZXJzZS9Db25kaXRpb24u aAogICAgdW5pdmVyc2UvRWZmZWN0QWNjb3VudGluZy5oCiAgICB1bml2ZXJzZS9FZmZlY3Qu aAogICAgdW5pdmVyc2UvRW5jeWNsb3BlZGlhLmgKICAgIHVuaXZlcnNlL0VudW1zLmgKICAg IHVuaXZlcnNlL0ZpZWxkLmgKICAgIHVuaXZlcnNlL0ZsZWV0LmgKICAgIHVuaXZlcnNlL01l dGVyLmgKICAgIHVuaXZlcnNlL09iamVjdE1hcC5oCiAgICB1bml2ZXJzZS9QbGFuZXQuaAog ICAgdW5pdmVyc2UvUG9wQ2VudGVyLmgKICAgIHVuaXZlcnNlL1ByZWRpY2F0ZXMuaAogICAg dW5pdmVyc2UvUmVzb3VyY2VDZW50ZXIuaAogICAgdW5pdmVyc2UvU2hpcERlc2lnbi5oCiAg ICB1bml2ZXJzZS9TaGlwLmgKICAgIHVuaXZlcnNlL1NwZWNpYWwuaAogICAgdW5pdmVyc2Uv U3BlY2llcy5oCiAgICB1bml2ZXJzZS9TeXN0ZW0uaAogICAgdW5pdmVyc2UvVGVjaC5oCiAg ICB1bml2ZXJzZS9Vbml2ZXJzZS5oCiAgICB1bml2ZXJzZS9Vbml2ZXJzZU9iamVjdC5oCiAg ICB1bml2ZXJzZS9UZW1wb3JhcnlQdHIuaAogICAgdW5pdmVyc2UvVmFsdWVSZWYuaAogICAg dW5pdmVyc2UvVmFsdWVSZWZGd2QuaAogICAgdXRpbC9BcHBJbnRlcmZhY2UuaAogICAgdXRp bC9ibG9ja2luZ19jb21iaW5lci5oCiAgICB1dGlsL0RhdGFUYWJsZS5oCiAgICB1dGlsL0Rp cmVjdG9yaWVzLmgKICAgIHV0aWwvRW51bVRleHQuaAogICAgdXRpbC9pMThuLmgKICAgIHV0 aWwvTG9nZ2VyLmgKICAgIHV0aWwvTWF0aC5oCiAgICB1dGlsL01vZGVyYXRvckFjdGlvbi5o CiAgICB1dGlsL011bHRpcGxheWVyQ29tbW9uLmgKICAgIHV0aWwvT3B0aW9uc0RCLmgKICAg IHV0aWwvT3B0aW9uVmFsaWRhdG9ycy5oCiAgICB1dGlsL09yZGVyLmgKICAgIHV0aWwvT3Jk ZXJTZXQuaAogICAgdXRpbC9Qcm9jZXNzLmgKICAgIHV0aWwvUmFuZG9tLmgKICAgIHV0aWwv U2F2ZUdhbWVQcmV2aWV3VXRpbHMuaAogICAgdXRpbC9TY29wZWRUaW1lci5oCiAgICB1dGls L1NlcmlhbGl6ZS5oCiAgICB1dGlsL1NlcmlhbGl6ZS5pcHAKICAgIHV0aWwvU2l0UmVwRW50 cnkuaAogICAgdXRpbC9TdHJpbmdUYWJsZS5oCiAgICB1dGlsL1ZhclRleHQuaAogICAgdXRp bC9WZXJzaW9uLmgKICAgIHV0aWwvWE1MRG9jLmgKKQoKc2V0IChmcmVlb3Jpb25jb21tb25f U09VUkNFCiAgICBjb21iYXQvQ29tYmF0RXZlbnQuY3BwCiAgICBjb21iYXQvQ29tYmF0RXZl bnRzLmNwcAogICAgY29tYmF0L0NvbWJhdExvZ01hbmFnZXIuY3BwCiAgICBFbXBpcmUvRGlw bG9tYWN5LmNwcAogICAgRW1waXJlL0VtcGlyZS5jcHAKICAgIEVtcGlyZS9FbXBpcmVNYW5h Z2VyLmNwcAogICAgRW1waXJlL1Jlc291cmNlUG9vbC5jcHAKICAgIG5ldHdvcmsvTWVzc2Fn ZS5jcHAKICAgIG5ldHdvcmsvTWVzc2FnZVF1ZXVlLmNwcAogICAgbmV0d29yay9OZXR3b3Jr aW5nLmNwcAogICAgdW5pdmVyc2UvQnVpbGRpbmcuY3BwCiAgICB1bml2ZXJzZS9Db25kaXRp b24uY3BwCiAgICB1bml2ZXJzZS9FZmZlY3RBY2NvdW50aW5nLmNwcAogICAgdW5pdmVyc2Uv RWZmZWN0LmNwcAogICAgdW5pdmVyc2UvRW5jeWNsb3BlZGlhLmNwcAogICAgdW5pdmVyc2Uv RW51bXMuY3BwCiAgICB1bml2ZXJzZS9GaWVsZC5jcHAKICAgIHVuaXZlcnNlL0ZsZWV0LmNw cAogICAgdW5pdmVyc2UvTWV0ZXIuY3BwCiAgICB1bml2ZXJzZS9PYmplY3RNYXAuY3BwCiAg ICB1bml2ZXJzZS9QbGFuZXQuY3BwCiAgICB1bml2ZXJzZS9Qb3BDZW50ZXIuY3BwCiAgICB1 bml2ZXJzZS9QcmVkaWNhdGVzLmNwcAogICAgdW5pdmVyc2UvUmVzb3VyY2VDZW50ZXIuY3Bw CiAgICB1bml2ZXJzZS9TaGlwLmNwcAogICAgdW5pdmVyc2UvU2hpcERlc2lnbi5jcHAKICAg IHVuaXZlcnNlL1NwZWNpYWwuY3BwCiAgICB1bml2ZXJzZS9TcGVjaWVzLmNwcAogICAgdW5p dmVyc2UvU3lzdGVtLmNwcAogICAgdW5pdmVyc2UvVGVjaC5jcHAKICAgIHVuaXZlcnNlL1Vu aXZlcnNlLmNwcAogICAgdW5pdmVyc2UvVW5pdmVyc2VPYmplY3QuY3BwCiAgICB1bml2ZXJz ZS9WYWx1ZVJlZi5jcHAKICAgIHV0aWwvQXBwSW50ZXJmYWNlLmNwcAogICAgdXRpbC9EYXRh VGFibGUuY3BwCiAgICB1dGlsL0RpcmVjdG9yaWVzLmNwcAogICAgdXRpbC9FbnVtVGV4dC5j cHAKICAgIHV0aWwvaTE4bi5jcHAKICAgIHV0aWwvTG9nZ2VyLmNwcAogICAgdXRpbC9NYXRo LmNwcAogICAgdXRpbC9Nb2RlcmF0b3JBY3Rpb24uY3BwCiAgICB1dGlsL011bHRpcGxheWVy Q29tbW9uLmNwcAogICAgdXRpbC9PcHRpb25zREIuY3BwCiAgICB1dGlsL09yZGVyLmNwcAog ICAgdXRpbC9PcmRlclNldC5jcHAKICAgIHV0aWwvUHJvY2Vzcy5jcHAKICAgIHV0aWwvUmFu ZG9tLmNwcAogICAgdXRpbC9TYXZlR2FtZVByZXZpZXdVdGlscy5jcHAKICAgIHV0aWwvU2Nv cGVkVGltZXIuY3BwCiAgICB1dGlsL1NlcmlhbGl6ZUVtcGlyZS5jcHAKICAgIHV0aWwvU2Vy aWFsaXplTW9kZXJhdG9yQWN0aW9uLmNwcAogICAgdXRpbC9TZXJpYWxpemVNdWx0aXBsYXll ckNvbW1vbi5jcHAKICAgIHV0aWwvU2VyaWFsaXplT3JkZXJTZXQuY3BwCiAgICB1dGlsL1Nl cmlhbGl6ZVVuaXZlcnNlLmNwcAogICAgdXRpbC9TaXRSZXBFbnRyeS5jcHAKICAgIHV0aWwv U3RyaW5nVGFibGUuY3BwCiAgICB1dGlsL1ZhclRleHQuY3BwCiAgICB1dGlsL1ZlcnNpb24u Y3BwCiAgICB1dGlsL1hNTERvYy5jcHAKKQoKaWYgKE5PVCBXSU4zMikKICAgIGxpc3QoQVBQ RU5EIGZyZWVvcmlvbmNvbW1vbl9TT1VSQ0UKICAgICAgICB1dGlsL2JpbnJlbG9jLmMKICAg ICkKZW5kaWYgKCkKCiNhZGRfbGlicmFyeShmcmVlb3Jpb25jb21tb24gCiMgICAgJHtmcmVl b3Jpb25jb21tb25fSEVBREVSfQojICAgICR7ZnJlZW9yaW9uY29tbW9uX1NPVVJDRX0KIykK CmFkZF9saWJyYXJ5KGZyZWVvcmlvbmNvbW1vbiBTSEFSRUQKICAgICR7ZnJlZW9yaW9uY29t bW9uX0hFQURFUn0KICAgICR7ZnJlZW9yaW9uY29tbW9uX1NPVVJDRX0KKQoKYWRkX2RlcGVu ZGVuY2llcyhmcmVlb3Jpb25jb21tb24gZnJlZW9yaW9udmVyc2lvbikKCmlmIChDTUFLRV9D WFhfQ09NUElMRVJfSUQgU1RSRVFVQUwgQ2xhbmcpCiAgICBzZXRfcHJvcGVydHkoCiAgICAg ICAgU09VUkNFCiAgICAgICAgdXRpbC9TZXJpYWxpemVQYXRoaW5nRW5naW5lLmNwcAogICAg ICAgIFBST1BFUlRZCiAgICAgICAgQ09NUElMRV9GTEFHUyAtZnRlbXBsYXRlLWRlcHRoPTUx MgogICAgKQplbmRpZiAoKQoKdGFyZ2V0X2xpbmtfbGlicmFyaWVzKGZyZWVvcmlvbmNvbW1v bgogICAgJHtCb29zdF9MSUJSQVJJRVN9CiAgICAke1pMSUJfTElCUkFSSUVTfQogICAgJHtP UEVOR0xfTElCUkFSSUVTfQopCgoKc2V0X3RhcmdldF9wcm9wZXJ0aWVzKGZyZWVvcmlvbmNv bW1vbgogICAgUFJPUEVSVElFUwogICAgREVGSU5FX1NZTUJPTCAiRlJFRU9SSU9OX0JVSUxE X0NPTU1PTiIKKQoKaWYgKENNQUtFX0NPTVBJTEVSX0lTX0dOVUNYWCkKICAgIHNldF90YXJn ZXRfcHJvcGVydGllcyhmcmVlb3Jpb25jb21tb24KICAgICAgICBQUk9QRVJUSUVTCiAgICAg ICAgQ09NUElMRV9GTEFHUyAiLWZ2aXNpYmlsaXR5PWhpZGRlbiIKKQplbmRpZiAoKQoKIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIFJlY3Vyc2UgSW50byBT b3VyY2VzICAgICAgICAgICAgICAgICAjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKYWRkX3N1YmRpcmVjdG9yeShwYXJzZSkKYWRkX3N1YmRpcmVjdG9yeShz ZXJ2ZXIpCmFkZF9zdWJkaXJlY3RvcnkoY2xpZW50L0FJKQphZGRfc3ViZGlyZWN0b3J5KGNs aWVudC9odW1hbikKCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK IyBQYWNrYWdpbmcgICAgICAgICAgICAgICAgICAgICAgICAgICAgIwojIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCnNldChCVUlMRF9QQUNLQUdJTkcKICAgIGZh bHNlCiAgICBDQUNIRSBCT09MCiAgICAiV2hldGhlciB0byBidWlsZCBpbnN0YWxsZXIvYmlu YXJ5IHBhY2thZ2UuIChUaGlzIGlzIHRoZSBleGVjdXRhYmxlIGluc3RhbGxlciBvbiBXaW4z MiwgYW5kIGFuIFJQTS9ERUIvdGFyYmFsbCBvbiBMaW51eC4iCikKCmlmIChXSU4zMikKICAg IHNldChCVUlMRF9TREsKICAgICAgICBmYWxzZQogICAgICAgIENBQ0hFIEJPT0wKICAgICAg ICAiV2hldGhlciB0byBidWlsZCB0aGUgV2luMzIgU0RLIGluc3RhbGxlci4iCiAgICApCmVu ZGlmICgpCgppZiAoQlVJTERfU0RLKQogICAgaW5zdGFsbCgKICAgICAgICBESVJFQ1RPUlkg Li4vRnJlZU9yaW9uCiAgICAgICAgREVTVElOQVRJT04gLgogICAgICAgIENPTVBPTkVOVCBD T01QT05FTlRfRlJFRU9SSU9OX1NPVVJDRQogICAgICAgIFBBVFRFUk4gIip+IiBFWENMVURF CiAgICApCgogICAgaW5zdGFsbCgKICAgICAgICBESVJFQ1RPUlkgLi4vQm9vc3QKICAgICAg ICBERVNUSU5BVElPTiAuCiAgICAgICAgQ09NUE9ORU5UIENPTVBPTkVOVF9GUkVFT1JJT05f QlVJTERfRklMRVNfQk9PU1QKICAgICAgICBQQVRURVJOICIqfiIgRVhDTFVERQogICAgKQoK ICAgIGluc3RhbGwoCiAgICAgICAgRElSRUNUT1JZIC4uL2luY2x1ZGUKICAgICAgICBERVNU SU5BVElPTiAuCiAgICAgICAgQ09NUE9ORU5UIENPTVBPTkVOVF9GUkVFT1JJT05fQlVJTERf RklMRVNfSU5DTFVERQogICAgICAgIFBBVFRFUk4gIip+IiBFWENMVURFCiAgICApCgogICAg aW5zdGFsbCgKICAgICAgICBESVJFQ1RPUlkgLi4vbGliCiAgICAgICAgREVTVElOQVRJT04g LgogICAgICAgIENPTVBPTkVOVCBDT01QT05FTlRfRlJFRU9SSU9OX0JVSUxEX0ZJTEVTX0xJ QgogICAgICAgIFBBVFRFUk4gIip+IiBFWENMVURFCiAgICApCgogICAgaW5zdGFsbCgKICAg ICAgICBGSUxFUwogICAgICAgIC4uL2J1aWxkL0dHL0NNYWtlQ2FjaGUudHh0CiAgICAgICAg REVTVElOQVRJT04gYnVpbGQvR0cKICAgICAgICBDT01QT05FTlQgQ09NUE9ORU5UX0ZSRUVP UklPTl9CVUlMRF9GSUxFU19HSUdJCiAgICApCgogICAgaW5zdGFsbCgKICAgICAgICBGSUxF UwogICAgICAgIC4uL2J1aWxkL0NNYWtlQ2FjaGUudHh0CiAgICAgICAgREVTVElOQVRJT04g YnVpbGQKICAgICAgICBDT01QT05FTlQgQ09NUE9ORU5UX0ZSRUVPUklPTl9CVUlMRF9GSUxF U19GUkVFT1JJT04KICAgICkKCiAgICBpbnN0YWxsKAogICAgICAgIEZJTEVTCiAgICAgICAg Li4vUkVBRE1FLnR4dAogICAgICAgIC4uL3ZjcmVkaXN0X3g4Ni5leGUKICAgICAgICAuLi9j bWFrZS0yLjguMC13aW4zMi14ODYuZXhlCiAgICAgICAgREVTVElOQVRJT04gLgogICAgICAg IENPTVBPTkVOVCBDT01QT05FTlRfRlJFRU9SSU9OX01JU0NfU0RLX0ZJTEVTCiAgICApCmVs c2UgKCkKICAgIGluc3RhbGwoCiAgICAgICAgRElSRUNUT1JZIGRlZmF1bHQvCiAgICAgICAg REVTVElOQVRJT04gc2hhcmUvZnJlZW9yaW9uL2RlZmF1bHQKICAgICAgICBDT01QT05FTlQg Q09NUE9ORU5UX0ZSRUVPUklPTl9EQVRBCiAgICAgICAgUEFUVEVSTiAiLnN2biIgRVhDTFVE RQogICAgICAgIFBBVFRFUk4gIip+IiBFWENMVURFCiAgICAgICAgUEFUVEVSTiAiKi5weWMi IEVYQ0xVREUKICAgICkKCiAgICBpbnN0YWxsKAogICAgICAgIFRBUkdFVFMgZnJlZW9yaW9u Y29tbW9uCiAgICAgICAgTElCUkFSWSBERVNUSU5BVElPTiBsaWIke0xJQl9TVUZGSVh9L2Zy ZWVvcmlvbgogICAgICAgIFJVTlRJTUUgREVTVElOQVRJT04gLgogICAgICAgIENPTVBPTkVO VCBDT01QT05FTlRfRlJFRU9SSU9OCiAgICApCgogICAgIGluc3RhbGwoCiAgICAgICAgRklM RVMKICAgICAgICAke0NNQUtFX1NPVVJDRV9ESVJ9L2ZyZWVvcmlvbi5kZXNrdG9wCiAgICAg ICAgREVTVElOQVRJT04gc2hhcmUvYXBwbGljYXRpb25zCiAgICAgICAgQ09NUE9ORU5UIENP TVBPTkVOVF9GUkVFT1JJT04KICAgICkKCiAgICBpbnN0YWxsKAogICAgICAgIEZJTEVTCiAg ICAgICAgJHtDTUFLRV9TT1VSQ0VfRElSfS9kZWZhdWx0L2RhdGEvYXJ0L2ljb25zL0ZPX0lj b25fMTZ4MTYucG5nCiAgICAgICAgREVTVElOQVRJT04gc2hhcmUvaWNvbnMvaGljb2xvci8x NngxNi9hcHBzLwogICAgICAgIFJFTkFNRSBmcmVlb3Jpb24ucG5nCiAgICAgICAgQ09NUE9O RU5UIENPTVBPTkVOVF9GUkVFT1JJT04KICAgICkKCiAgICBpbnN0YWxsKAogICAgICAgIEZJ TEVTCiAgICAgICAgJHtDTUFLRV9TT1VSQ0VfRElSfS9kZWZhdWx0L2RhdGEvYXJ0L2ljb25z L0ZPX0ljb25fMjR4MjQucG5nCiAgICAgICAgREVTVElOQVRJT04gc2hhcmUvaWNvbnMvaGlj b2xvci8yNHgyNC9hcHBzLwogICAgICAgIFJFTkFNRSBmcmVlb3Jpb24ucG5nCiAgICAgICAg Q09NUE9ORU5UIENPTVBPTkVOVF9GUkVFT1JJT04KICAgICkKCiAgICBpbnN0YWxsKAogICAg ICAgIEZJTEVTCiAgICAgICAgJHtDTUFLRV9TT1VSQ0VfRElSfS9kZWZhdWx0L2RhdGEvYXJ0 L2ljb25zL0ZPX0ljb25fMzJ4MzIucG5nCiAgICAgICAgREVTVElOQVRJT04gc2hhcmUvaWNv bnMvaGljb2xvci8zMngzMi9hcHBzLwogICAgICAgIFJFTkFNRSBmcmVlb3Jpb24ucG5nCiAg ICAgICAgQ09NUE9ORU5UIENPTVBPTkVOVF9GUkVFT1JJT04KICAgICkKCiAgICBpbnN0YWxs KAogICAgICAgIEZJTEVTCiAgICAgICAgJHtDTUFLRV9TT1VSQ0VfRElSfS9kZWZhdWx0L2Rh dGEvYXJ0L2ljb25zL0ZPX0ljb25fNjR4NjQucG5nCiAgICAgICAgREVTVElOQVRJT04gc2hh cmUvaWNvbnMvaGljb2xvci82NHg2NC9hcHBzLwogICAgICAgIFJFTkFNRSBmcmVlb3Jpb24u cG5nCiAgICAgICAgQ09NUE9ORU5UIENPTVBPTkVOVF9GUkVFT1JJT04KICAgICkKCiAgICBp bnN0YWxsKAogICAgICAgIEZJTEVTCiAgICAgICAgJHtDTUFLRV9TT1VSQ0VfRElSfS9kZWZh dWx0L2RhdGEvYXJ0L2ljb25zL0ZPX0ljb25fMTI4eDEyOC5wbmcKICAgICAgICBERVNUSU5B VElPTiBzaGFyZS9pY29ucy9oaWNvbG9yLzEyOHgxMjgvYXBwcy8KICAgICAgICBSRU5BTUUg ZnJlZW9yaW9uLnBuZwogICAgICAgIENPTVBPTkVOVCBDT01QT05FTlRfRlJFRU9SSU9OCiAg ICApCgogICAgaW5zdGFsbCgKICAgICAgICBGSUxFUwogICAgICAgICR7Q01BS0VfU09VUkNF X0RJUn0vZGVmYXVsdC9kYXRhL2FydC9pY29ucy9GT19JY29uXzI1NngyNTYucG5nCiAgICAg ICAgREVTVElOQVRJT04gc2hhcmUvaWNvbnMvaGljb2xvci8yNTZ4MjU2L2FwcHMvCiAgICAg ICAgUkVOQU1FIGZyZWVvcmlvbi5wbmcKICAgICAgICBDT01QT05FTlQgQ09NUE9ORU5UX0ZS RUVPUklPTgogICAgKQoKICAgIGlmIChXSU4zMikKICAgICAgICBpbnN0YWxsKAogICAgICAg ICAgICBGSUxFUwogICAgICAgICAgICBPcGVuQUwzMi5kbGwKICAgICAgICAgICAgYm9vc3Rf ZGF0ZV90aW1lLXZjOTAtbXQtMV80NC5kbGwKICAgICAgICAgICAgYm9vc3RfZmlsZXN5c3Rl bS12YzkwLW10LTFfNDQuZGxsCiAgICAgICAgICAgIGJvb3N0X2lvc3RyZWFtcy12YzkwLW10 LTFfNDQuZGxsCiAgICAgICAgICAgIGJvb3N0X3B5dGhvbi12YzkwLW10LTFfNDQuZGxsCiAg ICAgICAgICAgIGJvb3N0X3JlZ2V4LXZjOTAtbXQtMV80NC5kbGwKICAgICAgICAgICAgYm9v c3Rfc2VyaWFsaXphdGlvbi12YzkwLW10LTFfNDQuZGxsCiAgICAgICAgICAgIGJvb3N0X3Np Z25hbHMtdmM5MC1tdC0xXzQ0LmRsbAogICAgICAgICAgICBib29zdF9zeXN0ZW0tdmM5MC1t dC0xXzQ0LmRsbAogICAgICAgICAgICBib29zdF90aHJlYWQtdmM5MC1tdC0xXzQ0LmRsbAog ICAgICAgICAgICBnbGV3MzIuZGxsCiAgICAgICAgICAgIGpwZWcuZGxsCiAgICAgICAgICAg IGxpYmV4cGF0LmRsbAogICAgICAgICAgICBsaWJvZ2cuZGxsCiAgICAgICAgICAgIGxpYnBu ZzEzLmRsbAogICAgICAgICAgICBsaWJ2b3JiaXMuZGxsCiAgICAgICAgICAgIGxpYnZvcmJp c2ZpbGUuZGxsCiAgICAgICAgICAgIHB5dGhvbjI2LmRsbAogICAgICAgICAgICB3cmFwX29h bC5kbGwKICAgICAgICAgICAgei5kbGwKICAgICAgICAgICAgemxpYjEuZGxsCiAgICAgICAg ICAgIERFU1RJTkFUSU9OIGJpbgogICAgICAgICAgICBDT01QT05FTlQgQ09NUE9ORU5UX0ZS RUVPUklPTl9XSU4zMl9SVU5USU1FX0RFUFMKICAgICAgICApCiAgICBlbmRpZiAoKQplbmRp ZiAoKQoKaWYgKEJVSUxEX1NESykKICAgIHNldChDUEFDS19QQUNLQUdFX1ZFUlNJT04gIjEu MCIpCmVsc2UgKCkKICAgIHNldChDUEFDS19QQUNLQUdFX1ZFUlNJT04gJHtGcmVlT3Jpb25f VkVSU0lPTn0pCmVuZGlmICgpCgpzZXQoQ1BBQ0tfUEFDS0FHRV9WRU5ET1IgIkZyZWVPcmlv biBDb21tdW5pdHkiKQpzZXQoQ1BBQ0tfUEFDS0FHRV9DT05UQUNUIGh0dHA6Ly9mcmVlb3Jp b24ub3JnL2ZvcnVtKQpzZXQoQ1BBQ0tfUEFDS0FHRV9ERVNDUklQVElPTl9TVU1NQVJZICJG cmVlT3Jpb24gaXMgYSBmcmVlLCBvcGVuIHNvdXJjZSwgdHVybi1iYXNlZCBzcGFjZSBlbXBp cmUgYW5kIGdhbGFjdGljIGNvbnF1ZXN0ICg0WCkgY29tcHV0ZXIgZ2FtZSBiZWluZyBkZXNp Z25lZCBhbmQgYnVpbHQgYnkgdGhlIEZyZWVPcmlvbiBwcm9qZWN0LiBGcmVlT3Jpb24gaXMg aW5zcGlyZWQgYnkgdGhlIHRyYWRpdGlvbiBvZiB0aGUgTWFzdGVyIG9mIE9yaW9uIGdhbWVz LCBidXQgaXMgbm90IGEgY2xvbmUgb3IgcmVtYWtlIG9mIHRoYXQgc2VyaWVzIG9yIGFueSBv dGhlciBnYW1lLiIpCnNldChDUEFDS19SRVNPVVJDRV9GSUxFX0xJQ0VOU0UgJHtDTUFLRV9I T01FX0RJUkVDVE9SWX0vZGVmYXVsdC9DT1BZSU5HKQppZiAoQlVJTERfU0RLKQogICAgc2V0 KENQQUNLX1JFU09VUkNFX0ZJTEVfUkVBRE1FICR7Q01BS0VfSE9NRV9ESVJFQ1RPUll9Ly4u L1JFQURNRS50eHQpCmVuZGlmICgpCmlmIChCVUlMRF9QQUNLQUdJTkcpCiAgICBzZXQoQ1BB Q0tfU1lTVEVNX05BTUUgJHtDTUFLRV9TWVNURU1fTkFNRX0pCiAgICBpZiAoV0lOMzIpCiAg ICAgICAgc2V0KFBBQ0tBR0VfRklMRV9TWVNURU1fTkFNRSB3aW4zMikKICAgIGVsc2UgKCkK ICAgICAgICBzZXQoUEFDS0FHRV9GSUxFX1NZU1RFTV9OQU1FICR7Q1BBQ0tfU1lTVEVNX05B TUV9KQogICAgZW5kaWYgKCkKICAgIGlmIChCVUlMRF9TREspCiAgICAgICAgc2V0KENQQUNL X1BBQ0tBR0VfTkFNRSAiRnJlZU9yaW9uIFNESyIpCiAgICAgICAgc2V0KENQQUNLX1BBQ0tB R0VfRklMRV9OQU1FICJGcmVlT3Jpb25fV2luMzJfU0RLIikKICAgICAgICBzdHJpbmcoQ09O RklHVVJFICJGcmVlT3Jpb25fU0RLXyR7Q1BBQ0tfUEFDS0FHRV9WRVJTSU9OfSIgZGlyKQog ICAgICAgIHNldChDUEFDS19QQUNLQUdFX0lOU1RBTExfRElSRUNUT1JZICR7ZGlyfSkKICAg IGVsc2UgKCkKICAgICAgICBzZXQoQ1BBQ0tfUEFDS0FHRV9OQU1FICR7Q01BS0VfUFJPSkVD VF9OQU1FfSkKICAgICAgICBzZXQoQ1BBQ0tfUEFDS0FHRV9GSUxFX05BTUUgIiR7Q1BBQ0tf UEFDS0FHRV9OQU1FfS0ke0NQQUNLX1BBQ0tBR0VfVkVSU0lPTn0tJHtQQUNLQUdFX0ZJTEVf U1lTVEVNX05BTUV9IikKICAgICAgICBzdHJpbmcoVE9MT1dFUiAke0NQQUNLX1BBQ0tBR0Vf RklMRV9OQU1FfSBDUEFDS19QQUNLQUdFX0ZJTEVfTkFNRSkKICAgIGVuZGlmICgpCiAgICBz ZXQoQ1BBQ0tfTU9OT0xJVEhJQ19JTlNUQUxMIE9OKQplbmRpZiAoKQoKIyBOU0lTLXNwZWNp ZmljIHNldHRpbmdzCnNldChDUEFDS19OU0lTX0NPTVBSRVNTT1IgYnppcDIpCnNldChDUEFD S19OU0lTX1VSTF9JTkZPX0FCT1VUIGh0dHA6Ly9mcmVlb3Jpb24ub3JnKQpzdHJpbmcoUkVQ TEFDRSAiLyIgIlxcXFwiIGNtYWtlX2hvbWVfZGlyZWN0b3J5X3dpdGhfbmF0aXZlX3dpbmRv d3NfcGF0aF9zZXBhcmF0b3JzICR7Q01BS0VfSE9NRV9ESVJFQ1RPUll9KQoKaWYgKEJVSUxE X1NESykKICAgIHN0cmluZyhSRUdFWCBSRVBMQUNFICIvRnJlZU9yaW9uJCIgIiIgc2RrX3Jv b3QgJHtDTUFLRV9IT01FX0RJUkVDVE9SWX0pCiAgICBzZXQoQ1BBQ0tfTlNJU19FWFRSQV9J TlNUQUxMX0NPTU1BTkRTICIKICAgICAgICAhaW5jbHVkZSBcXFwiV29yZEZ1bmMubnNoXFxc IgoKICAgICAgICBTdHJDcHkgJDcgJElOU1RESVIKICAgICAgICBcXFwke1dvcmRSZXBsYWNl fSAkNyBcXFwiXFxcXFxcXCIgXFxcIi9cXFwiIFxcXCIrXFxcIiAkOAoKCVJlbmFtZSAkSU5T VERJUlxcXFxidWlsZFxcXFxHR1xcXFxDTWFrZUNhY2hlLnR4dCAkSU5TVERJUlxcXFxidWls ZFxcXFxHR1xcXFxDTWFrZUNhY2hlLnR4dC5pbgogICAgICAgIEZpbGVPcGVuICQwICRJTlNU RElSXFxcXGJ1aWxkXFxcXEdHXFxcXENNYWtlQ2FjaGUudHh0LmluIHIKICAgICAgICBGaWxl T3BlbiAkNSAkSU5TVERJUlxcXFxidWlsZFxcXFxHR1xcXFxDTWFrZUNhY2hlLnR4dCB3CiAg ICAgICAgQ2xlYXJFcnJvcnMKICAgICAgICBsb29wMToKICAgICAgICAgICAgRmlsZVJlYWQg JDAgJDEKICAgICAgICAgICAgSWZFcnJvcnMgZG9uZTEKICAgICAgICAgICAgXFxcJHtXb3Jk UmVwbGFjZX0gJDEgXFxcIiR7c2RrX3Jvb3R9XFxcIiAkOCBcXFwiK1xcXCIgJDIKICAgICAg ICAgICAgRmlsZVdyaXRlICQ1ICQyCiAgICAgICAgICAgIEdvdG8gbG9vcDEKICAgICAgICBk b25lMToKICAgICAgICBGaWxlQ2xvc2UgJDAKICAgICAgICBGaWxlQ2xvc2UgJDUKICAgICAg ICBEZWxldGUgJElOU1RESVJcXFxcYnVpbGRcXFxcR0dcXFxcQ01ha2VDYWNoZS50eHQuaW4K CglSZW5hbWUgJElOU1RESVJcXFxcYnVpbGRcXFxcQ01ha2VDYWNoZS50eHQgJElOU1RESVJc XFxcYnVpbGRcXFxcQ01ha2VDYWNoZS50eHQuaW4KICAgICAgICBGaWxlT3BlbiAkMCAkSU5T VERJUlxcXFxidWlsZFxcXFxDTWFrZUNhY2hlLnR4dC5pbiByCiAgICAgICAgRmlsZU9wZW4g JDUgJElOU1RESVJcXFxcYnVpbGRcXFxcQ01ha2VDYWNoZS50eHQgdwogICAgICAgIENsZWFy RXJyb3JzCiAgICAgICAgbG9vcDI6CiAgICAgICAgICAgIEZpbGVSZWFkICQwICQxCiAgICAg ICAgICAgIElmRXJyb3JzIGRvbmUyCiAgICAgICAgICAgIFxcXCR7V29yZFJlcGxhY2V9ICQx IFxcXCIke3Nka19yb290fVxcXCIgJDggXFxcIitcXFwiICQyCiAgICAgICAgICAgIEZpbGVX cml0ZSAkNSAkMgogICAgICAgICAgICBHb3RvIGxvb3AyCiAgICAgICAgZG9uZTI6CiAgICAg ICAgRmlsZUNsb3NlICQwCiAgICAgICAgRmlsZUNsb3NlICQ1CiAgICAgICAgRGVsZXRlICRJ TlNURElSXFxcXGJ1aWxkXFxcXENNYWtlQ2FjaGUudHh0LmluCgogICAgICAgIENyZWF0ZVNo b3J0Q3V0IFxcXCIkU01QUk9HUkFNU1xcXFwkU1RBUlRNRU5VX0ZPTERFUlxcXFxGcmVlT3Jp b24gU0RLLmxua1xcXCIgXFxcIiRJTlNURElSXFxcIgogICAgICAgIFdyaXRlSW5pU3RyIFxc XCIkSU5TVERJUlxcXFxmcmVlb3Jpb24udXJsXFxcIiBcXFwiSW50ZXJuZXRTaG9ydGN1dFxc XCIgXFxcIlVSTFxcXCIgXFxcImh0dHA6Ly9mcmVlb3Jpb24ub3JnXFxcIgogICAgICAgIENy ZWF0ZVNob3J0Q3V0IFxcXCIkU01QUk9HUkFNU1xcXFwkU1RBUlRNRU5VX0ZPTERFUlxcXFxS RUFETUUubG5rXFxcIiBcXFwiJElOU1RESVJcXFxcUkVBRE1FLnR4dFxcXCIKICAgICAgICBD cmVhdGVTaG9ydEN1dCBcXFwiJFNNUFJPR1JBTVNcXFxcJFNUQVJUTUVOVV9GT0xERVJcXFxc V2Vic2l0ZS5sbmtcXFwiIFxcXCIkSU5TVERJUlxcXFxmcmVlb3Jpb24udXJsXFxcIgogICAg ICAgIEZpbGUgXFxcIiR7Y21ha2VfaG9tZV9kaXJlY3Rvcnlfd2l0aF9uYXRpdmVfd2luZG93 c19wYXRoX3NlcGFyYXRvcnN9XFxcXC4uXFxcXGNtYWtlLTIuOC4wLXdpbjMyLXg4Ni5leGVc XFwiCiAgICAgICAgRXhlY1dhaXQgXFxcIiRJTlNURElSXFxcXGNtYWtlLTIuOC4wLXdpbjMy LXg4Ni5leGVcXFwiIgogICAgKQogICAgc2V0KENQQUNLX05TSVNfRVhUUkFfVU5JTlNUQUxM X0NPTU1BTkRTICIKICAgICAgICBEZWxldGUgXFxcIiRTTVBST0dSQU1TXFxcXCRTVEFSVF9N RU5VXFxcXEZyZWVPcmlvbiBTREsubG5rXFxcIgogICAgICAgIERlbGV0ZSBcXFwiJFNNUFJP R1JBTVNcXFxcJFNUQVJUX01FTlVcXFxcUkVBRE1FLmxua1xcXCIKICAgICAgICBEZWxldGUg XFxcIiRTTVBST0dSQU1TXFxcXCRTVEFSVF9NRU5VXFxcXFdlYnNpdGUubG5rXFxcIgogICAg ICAgIFJNRGlyIC9yIC9SRUJPT1RPSyAkSU5TVERJUiIKICAgICkKZWxzZSAoKQogICAgc2V0 KENQQUNLX05TSVNfRVhUUkFfSU5TVEFMTF9DT01NQU5EUyAiCiAgICAgICAgRmlsZSBcXFwi JHtjbWFrZV9ob21lX2RpcmVjdG9yeV93aXRoX25hdGl2ZV93aW5kb3dzX3BhdGhfc2VwYXJh dG9yc31cXFxcLi5cXFxcdmNyZWRpc3RfeDg2LmV4ZVxcXCIKICAgICAgICBFeGVjV2FpdCBc XFwiJElOU1RESVJcXFxcdmNyZWRpc3RfeDg2LmV4ZSAvcVxcXCIKICAgICAgICBDcmVhdGVT aG9ydEN1dCBcXFwiJFNNUFJPR1JBTVNcXFxcJFNUQVJUTUVOVV9GT0xERVJcXFxcRnJlZU9y aW9uLmxua1xcXCIgXFxcIiRJTlNURElSXFxcXGZyZWVvcmlvbi5leGVcXFwiIFxcXCItLWZ1 bGxzY3JlZW4gMVxcXCIKICAgICAgICBDcmVhdGVTaG9ydEN1dCBcXFwiJFNNUFJPR1JBTVNc XFxcJFNUQVJUTUVOVV9GT0xERVJcXFxcRnJlZU9yaW9uIHdpbmRvd2VkLmxua1xcXCIgXFxc IiRJTlNURElSXFxcXGZyZWVvcmlvbi5leGVcXFwiCiAgICAgICAgQ3JlYXRlU2hvcnRDdXQg XFxcIiRERVNLVE9QXFxcXEZyZWVPcmlvbi5sbmtcXFwiIFxcXCIkSU5TVERJUlxcXFxmcmVl b3Jpb24uZXhlXFxcIiBcXFwiLS1mdWxsc2NyZWVuIDFcXFwiCiAgICAgICAgV3JpdGVJbmlT dHIgXFxcIiRJTlNURElSXFxcXGZyZWVvcmlvbi51cmxcXFwiIFxcXCJJbnRlcm5ldFNob3J0 Y3V0XFxcIiBcXFwiVVJMXFxcIiBcXFwiaHR0cDovL2ZyZWVvcmlvbi5vcmdcXFwiCiAgICAg ICAgQ3JlYXRlU2hvcnRDdXQgXFxcIiRTTVBST0dSQU1TXFxcXCRTVEFSVE1FTlVfRk9MREVS XFxcXFdlYnNpdGUubG5rXFxcIiBcXFwiJElOU1RESVJcXFxcZnJlZW9yaW9uLnVybFxcXCIi CiAgICApCiAgICBzZXQoQ1BBQ0tfTlNJU19FWFRSQV9VTklOU1RBTExfQ09NTUFORFMgIgog ICAgICAgIERlbGV0ZSBcXFwiJFNNUFJPR1JBTVNcXFxcJFNUQVJUX01FTlVcXFxcV2Vic2l0 ZS5sbmtcXFwiCiAgICAgICAgRGVsZXRlIFxcXCIkREVTS1RPUFxcXFxGcmVlT3Jpb24ubG5r XFxcIgogICAgICAgIERlbGV0ZSBcXFwiJFNNUFJPR1JBTVNcXFxcJFNUQVJUX01FTlVcXFxc RnJlZU9yaW9uLmxua1xcXCIKICAgICAgICBEZWxldGUgXFxcIiRTTVBST0dSQU1TXFxcXCRT VEFSVF9NRU5VXFxcXEZyZWVPcmlvbiB3aW5kb3dlZC5sbmtcXFwiIgogICAgKQplbmRpZiAo KQoKIyBSUE0tc3BlY2lmaWMgc2V0dGluZ3MKc2V0KENQQUNLX1JQTV9QQUNLQUdFX0xJQ0VO U0UgR1BMKQpzZXQoQ1BBQ0tfUlBNX1BBQ0tBR0VfUkVRVUlSRVMpCiMgVE9ETwoKIyBEZWIt c3BlY2lmaWMgc2V0dGluZ3MKc2V0KENQQUNLX0RFQklBTl9QQUNLQUdFX1NFQ1RJT04gZ2Ft ZXMpCiMgVE9ETwoKaWYgKFVOSVgpCiAgICBzZXQoQ1BBQ0tfR0VORVJBVE9SICJUR1o7VEJa MiIpCiAgICBmaW5kX3Byb2dyYW0oUlBNQlVJTEQgcnBtYnVpbGQpCiAgICBpZiAoUlBNQlVJ TEQpCiAgICAgICAgbGlzdChBUFBFTkQgQ1BBQ0tfR0VORVJBVE9SIFJQTSkKICAgIGVuZGlm ICgpCiAgICBzZXQoUlBNQlVJTEQgJHtSUE1CVUlMRH0gQ0FDSEUgSU5URVJOQUwgIiIpCiAg ICBmaW5kX3Byb2dyYW0oRFBLRyBkcGtnKQogICAgaWYgKERQS0cpCiAgICAgICAgbGlzdChB UFBFTkQgQ1BBQ0tfR0VORVJBVE9SIERFQikKICAgIGVuZGlmICgpCiAgICBzZXQoRFBLRyAk e0RQS0d9IENBQ0hFIElOVEVSTkFMICIiKQplbHNlaWYgKFdJTjMyKQogICAgc2V0KENQQUNL X0dFTkVSQVRPUiAiTlNJUyIpCmVuZGlmICgpCgoKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIwojIFNvdXJjZSBQYWNrYWdpbmcgICAgICAgICAgICAgICAgICAg ICAjCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCmlmIChVTklY KQogICAgc2V0KENQQUNLX1NPVVJDRV9HRU5FUkFUT1IgIlRHWiIpCmVsc2VpZiAoV0lOMzIp CiAgICBzZXQoQ1BBQ0tfU09VUkNFX0dFTkVSQVRPUiAiWklQIikKZW5kaWYgKCkKCnNldChD UEFDS19TT1VSQ0VfSUdOT1JFX0ZJTEVTCiAgICAifiQiCiAgICAiXFxcXC5hc20kIgogICAg IlxcXFwuYnoyJCIKICAgICIvQ01ha2VDYWNoZVxcXFwudHh0JCIKICAgICIvQ01ha2VGaWxl cy8iCiAgICAiL2NtYWtlX2luc3RhbGxcXFxcLmNtYWtlJCIKICAgICIvQ1BhY2tDb25maWcu Y21ha2UkIgogICAgIi9fQ1BhY2tfUGFja2FnZXMvIgogICAgIi9DUGFja1NvdXJjZUNvbmZp Zy5jbWFrZSQiCiAgICAiL0NUZXN0VGVzdGZpbGVcXFxcLmNtYWtlJCIKICAgICJcXFxcLmRs bCQiCiAgICAiXFxcXC5leGUkIgogICAgIlxcXFwuZXhwJCIKICAgICIvZnJlZW9yaW9uJCIK ICAgICIvZnJlZW9yaW9uY2EkIgogICAgIi9mcmVlb3Jpb25kJCIKICAgICJHRy9HRy9Db25m aWcuaCQiCiAgICAiXFxcXC5naXQvIgogICAgIlxcXFwuZ3okIgogICAgIlxcXFwubGliJCIK ICAgICIvTWFrZWZpbGUkIgogICAgIlxcXFwucGMkIgogICAgIlxcXFwucGRiJCIKICAgICJc XFxcLnB5YyQiCiAgICAiL1JlbGVhc2UvIgogICAgIlxcXFwuc28kIgogICAgIlxcXFwuc3dw JCIKKQoKc2V0KENQQUNLX1NPVVJDRV9QQUNLQUdFX0ZJTEVfTkFNRQogICAgIiR7Q01BS0Vf UFJPSkVDVF9OQU1FfS12JHtGcmVlT3Jpb25fVkVSU0lPTn0tJHtGcmVlT3Jpb25fV0NfUkVW SVNJT059LXNvdXJjZSIKKQoKaW5jbHVkZShDUGFjaykKCmlmIChCVUlMRF9TREspCiAgICBj cGFja19hZGRfY29tcG9uZW50KAogICAgICAgIENPTVBPTkVOVF9GUkVFT1JJT05fU09VUkNF CiAgICAgICAgRElTUExBWV9OQU1FIEZyZWVPcmlvbiBTb3VyY2UgQ29kZQogICAgICAgIERF U0NSSVBUSU9OICIiCiAgICAgICAgSElEREVOCiAgICAgICAgUkVRVUlSRUQKICAgICkKICAg IGNwYWNrX2FkZF9jb21wb25lbnQoCiAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklPTl9CVUlM RF9GSUxFU19CT09TVAogICAgICAgIERJU1BMQVlfTkFNRSBGcmVlT3Jpb24gQnVpbGQgRmls ZXMgLS0gQm9vc3QgRGlyZWN0b3J5CiAgICAgICAgREVTQ1JJUFRJT04gIiIKICAgICAgICBI SURERU4KICAgICAgICBSRVFVSVJFRAogICAgKQoKICAgIGNwYWNrX2FkZF9jb21wb25lbnQo CiAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklPTl9CVUlMRF9GSUxFU19JTkNMVURFCiAgICAg ICAgRElTUExBWV9OQU1FIEZyZWVPcmlvbiBCdWlsZCBGaWxlcyAtLSBJbmNsdWRlIERpcmVj dG9yeQogICAgICAgIERFU0NSSVBUSU9OICIiCiAgICAgICAgSElEREVOCiAgICAgICAgUkVR VUlSRUQKICAgICkKCiAgICBjcGFja19hZGRfY29tcG9uZW50KAogICAgICAgIENPTVBPTkVO VF9GUkVFT1JJT05fQlVJTERfRklMRVNfTElCCiAgICAgICAgRElTUExBWV9OQU1FIEZyZWVP cmlvbiBCdWlsZCBGaWxlcyAtLSBMaWIgRGlyZWN0b3J5CiAgICAgICAgREVTQ1JJUFRJT04g IiIKICAgICAgICBISURERU4KICAgICAgICBSRVFVSVJFRAogICAgKQoKICAgIGNwYWNrX2Fk ZF9jb21wb25lbnQoCiAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklPTl9CVUlMRF9GSUxFU19H SUdJCiAgICAgICAgRElTUExBWV9OQU1FIEZyZWVPcmlvbiBCdWlsZCBGaWxlcyAtLSBHaWdp IENNYWtlIENhY2hlCiAgICAgICAgREVTQ1JJUFRJT04gIiIKICAgICAgICBISURERU4KICAg ICAgICBSRVFVSVJFRAogICAgKQoKICAgIGNwYWNrX2FkZF9jb21wb25lbnQoCiAgICAgICAg Q09NUE9ORU5UX0ZSRUVPUklPTl9CVUlMRF9GSUxFU19GUkVFT1JJT04KICAgICAgICBESVNQ TEFZX05BTUUgRnJlZU9yaW9uIEJ1aWxkIEZpbGVzIC0tIEZyZWVPcmlvbiBDTWFrZSBDYWNo ZQogICAgICAgIERFU0NSSVBUSU9OICIiCiAgICAgICAgSElEREVOCiAgICAgICAgUkVRVUlS RUQKICAgICkKCiAgICBjcGFja19hZGRfY29tcG9uZW50KAogICAgICAgIENPTVBPTkVOVF9G UkVFT1JJT05fTUlTQ19TREtfRklMRVMKICAgICAgICBESVNQTEFZX05BTUUgRnJlZU9yaW9u IE1pc2MgU0RLIEZpbGVzCiAgICAgICAgREVTQ1JJUFRJT04gIiIKICAgICAgICBISURERU4K ICAgICAgICBSRVFVSVJFRAogICAgKQplbHNlICgpCiAgICBpZiAoV0lOMzIpCiAgICAgICAg Y3BhY2tfYWRkX2NvbXBvbmVudCgKICAgICAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklPTl9X SU4zMl9SVU5USU1FX0RFUFMKICAgICAgICAgICAgRElTUExBWV9OQU1FIEZyZWVPcmlvbiBX aW4zMiBSdW50aW1lIERlcGVuZGVuY2llcwogICAgICAgICAgICBERVNDUklQVElPTiAiIgog ICAgICAgICAgICBISURERU4KICAgICAgICAgICAgUkVRVUlSRUQKICAgICAgICApCiAgICBl bmRpZiAoKQoKICAgIGNwYWNrX2FkZF9jb21wb25lbnQoCiAgICAgICAgQ09NUE9ORU5UX0ZS RUVPUklPTl9EQVRBCiAgICAgICAgRElTUExBWV9OQU1FIEZyZWVPcmlvbiBEYXRhCiAgICAg ICAgREVTQ1JJUFRJT04gIiIKICAgICAgICBISURERU4KICAgICAgICBSRVFVSVJFRAogICAg KQoKICAgIGNwYWNrX2FkZF9jb21wb25lbnQoCiAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklP TgogICAgICAgIERJU1BMQVlfTkFNRSBGcmVlT3Jpb24gQ2xpZW50CiAgICAgICAgREVTQ1JJ UFRJT04gIiIKICAgICAgICBISURERU4KICAgICAgICBSRVFVSVJFRAogICAgKQoKICAgIGNw YWNrX2FkZF9jb21wb25lbnQoCiAgICAgICAgQ09NUE9ORU5UX0ZSRUVPUklPTkQKICAgICAg ICBESVNQTEFZX05BTUUgRnJlZU9yaW9uIFNlcnZlcgogICAgICAgIERFU0NSSVBUSU9OICIi CiAgICAgICAgSElEREVOCiAgICAgICAgUkVRVUlSRUQKICAgICkKCiAgICBjcGFja19hZGRf Y29tcG9uZW50KAogICAgICAgIENPTVBPTkVOVF9GUkVFT1JJT05DQQogICAgICAgIERJU1BM QVlfTkFNRSBGcmVlT3Jpb24gQUkKICAgICAgICBERVNDUklQVElPTiAiIgogICAgICAgIEhJ RERFTgogICAgICAgIFJFUVVJUkVECiAgICApCmVuZGlmICgpCg== --------------040100040200070008040206--