From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 66414 invoked by alias); 18 Aug 2017 19:38:09 -0000 Mailing-List: contact newlib-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: newlib-owner@sourceware.org Received: (qmail 66397 invoked by uid 89); 18 Aug 2017 19:38:07 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-6.3 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.2 spammy= X-HELO: smtp-out-no.shaw.ca Received: from smtp-out-no.shaw.ca (HELO smtp-out-no.shaw.ca) (64.59.134.9) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 18 Aug 2017 19:38:03 +0000 Received: from [192.168.1.100] ([24.64.240.204]) by shaw.ca with SMTP id in5kd4Hv7I8mCin5ld2gWy; Fri, 18 Aug 2017 13:38:02 -0600 X-Authority-Analysis: v=2.2 cv=HahkdmM8 c=1 sm=1 tr=0 a=MVEHjbUiAHxQW0jfcDq5EA==:117 a=MVEHjbUiAHxQW0jfcDq5EA==:17 a=r77TgQKjGQsHNAKrUKIA:9 a=IbfvxoeZcJBkOggOyB0A:9 a=QEXdDO2ut3YA:10 a=V5f5n6qJDE6Q5ZhsZPoA:9 a=jHgzpwVyrusA:10 From: Brian Inglis Subject: Re: Cygwin strptime() is missing "%s" which strftime() has Reply-To: Brian.Inglis@SystematicSw.ab.ca To: newlib@sourceware.org References: <851e9a02-f7c2-25c4-f37d-64d17d5c6d54@SystematicSw.ab.ca> <20170725091613.GB14419@calimero.vinschen.de> <20170725185206.GE14419@calimero.vinschen.de> <9c38bcee-fbb0-9a30-0c28-58629f54aa0e@SystematicSw.ab.ca> <20170726104918.GF14419@calimero.vinschen.de> <6ae417fd-e109-4549-f005-5cfa7b6fdb62@SystematicSw.ab.ca> <20170726193443.GD30367@calimero.vinschen.de> <20170731095532.GK24013@calimero.vinschen.de> Message-ID: <70bc8cc1-c6fd-0838-faea-46e69443d65b@SystematicSw.ab.ca> Date: Fri, 18 Aug 2017 19:38:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: <20170731095532.GK24013@calimero.vinschen.de> Content-Type: multipart/mixed; boundary="------------5722E6741526015F631EDF0E" X-CMAE-Envelope: MS4wfARqfbunquIBibz1w+eGDhK+G6xvJ9uQhVgPtvxiZOv1ri9LHhxEViWZ8B/NxiGDIJVFnc3eQkAI3Koqbklnr9NEWh2yH3m5MKdOAgqBQ24H3IzIupu5 9mZMnJ8jJadZk/q9otq6zTPwQgVu43sxMZvlsBZup1RlvzLfxMwYKd5c4P/zYfDHAWQVHAwD6sqE6g== X-IsSubscribed: yes X-SW-Source: 2017/txt/msg00841.txt.bz2 This is a multi-part message in MIME format. --------------5722E6741526015F631EDF0E Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-length: 2426 On 2017-07-31 03:55, Corinna Vinschen wrote: > On Jul 28 14:50, Brian Inglis wrote: >> On 2017-07-26 13:34, Corinna Vinschen wrote: >>> On Jul 26 11:27, Brian Inglis wrote: >>>> On 2017-07-26 04:49, Corinna Vinschen wrote: >>>>> On Jul 25 14:13, Brian Inglis wrote: >>>>>> On 2017-07-25 12:52, Corinna Vinschen wrote: >>>>>>> Well... on *third* thought, targets may redefine time_t via redefining >>>>>>> _TIME_T_. Targets not doing that will get long, so yeah, you're right. >>>>>>> Maybe it is safer to use always strtoll_l and just break this down to >>>>>>> time_t on the way. >>>>>> >>>>>> My concern has always been do all newlib RTEMS targets support long >>>>>> long, even if same as long, and stroll_l? >>>>> >>>>> Yes. The long long functions are not excluded like we do with long >>>>> double stuff. >>>>> >>>>>> Trying to build standalone or combined STC for this with changed strptime.c >>>>>> ld/collect2 fails to resolve ...global_locale. >>>>> >>>>> Yeah, it's an internal function to newlib. You need to include >>>>> libc/locale/setlocale.h somehow to accomplish that. STC from Cygwin >>>>> userspace will do. >>>> >>>> Not doing it for me: that's why I asked if there were undistributed locale >>>> changes in the tree, and maybe in a dev snapshot? >>> >>> No, it's an *internal* function, it doesn't get exported. There's no >>> (easy) way to build strptime.c outside the newlib tree as part of the >>> lib. That's why I said a userspace STC is enough. Don't try to build >>> strptime.c as standalone. Just build it as part of newlib/Cygwin and >>> test it from userspace by calling it. >> >> Finally got all the prereqs installed and a clean build. >> My configure uses the default prefix /usr/local, which is at the head of my >> personal path. >> Is that enough for a test build, and how do I do that, or do I have to replace >> the current release, with configure --prefix=/, make install into /bin/? > > The configured paths don't matter for the Cygwin DLL itself, and your > patch doesn't change any headers or entry points of the lib. So just exit > from Cygwin, replace the DLL in Explorer, start a shell and go ahead. Test still won't run as expected after DLL replacement, nor coreutils strptime. Aren't there lib import files or maps or anything I also have to move? Attached slightly redacted build config and make logs. This wasn't getting thru so trying one attachment at a time. --------------5722E6741526015F631EDF0E Content-Type: text/plain; charset=UTF-8; name="config.log" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.log" Content-length: 38561 VGhpcyBmaWxlIGNvbnRhaW5zIGFueSBtZXNzYWdlcyBwcm9kdWNlZCBieSBj b21waWxlcnMgd2hpbGUKcnVubmluZyBjb25maWd1cmUsIHRvIGFpZCBkZWJ1 Z2dpbmcgaWYgY29uZmlndXJlIG1ha2VzIGEgbWlzdGFrZS4KCkl0IHdhcyBj cmVhdGVkIGJ5IGNvbmZpZ3VyZSwgd2hpY2ggd2FzCmdlbmVyYXRlZCBieSBH TlUgQXV0b2NvbmYgMi42NC4gIEludm9jYXRpb24gY29tbWFuZCBsaW5lIHdh cwoKICAkIC4vY29uZmlndXJlIAoKIyMgLS0tLS0tLS0tICMjCiMjIFBsYXRm b3JtLiAjIwojIyAtLS0tLS0tLS0gIyMKCmhvc3RuYW1lID0gWFhYeHh4eHh4 WAp1bmFtZSAtbSA9IHg4Nl82NAp1bmFtZSAtciA9IDIuOC4yKDAuMzEyLzUv MykKdW5hbWUgLXMgPSBDWUdXSU5fTlQtMTAuMAp1bmFtZSAtdiA9IDIwMTct MDctMjYgMTQ6MzkKCi91c3IvYmluL3VuYW1lIC1wID0gdW5rbm93bgovYmlu L3VuYW1lIC1YICAgICA9IHVua25vd24KCi9iaW4vYXJjaCAgICAgICAgICAg ICAgPSB4ODZfNjQKL3Vzci9iaW4vYXJjaCAtayAgICAgICA9IHVua25vd24K L3Vzci9jb252ZXgvZ2V0c3lzaW5mbyA9IHVua25vd24KL3Vzci9iaW4vaG9z dGluZm8gICAgICA9IHVua25vd24KL2Jpbi9tYWNoaW5lICAgICAgICAgICA9 IHVua25vd24KL3Vzci9iaW4vb3NsZXZlbCAgICAgICA9IHVua25vd24KL2Jp bi91bml2ZXJzZSAgICAgICAgICA9IHVua25vd24KClBBVEg6IC4uLi9iaW4K UEFUSDogL3Vzci9sb2NhbC9iaW4KUEFUSDogL3Vzci9sb2NhbC9zYmluClBB VEg6IC91c3IvYmluClBBVEg6IC91c3Ivc2JpbgpQQVRIOiAvc2JpbgpQQVRI OiAvdXNyL2k2ODYtdzY0LW1pbmd3MzIvYmluClBBVEg6IC91c3IveDg2XzY0 LXBjLWN5Z3dpbi9iaW4KUEFUSDogL3Vzci94ODZfNjQtdzY0LW1pbmd3MzIv YmluClBBVEg6IC91c3IvaTY4Ni1wYy1jeWd3aW4vc3lzLXJvb3QvdXNyL2Jp bgpQQVRIOiAvdXNyL2k2ODYtdzY0LW1pbmd3MzIvc3lzLXJvb3QvbWluZ3cv YmluClBBVEg6IC91c3IveDg2XzY0LXc2NC1taW5ndzMyL3N5cy1yb290L21p bmd3L2JpbgpQQVRIOiAvY3lnZHJpdmUvYy9iaW4KUEFUSDogL2N5Z2RyaXZl L2Mvc2JpbgpQQVRIOiAvY3lnZHJpdmUvYy8uLi4vYmluClBBVEg6IC9jeWdk cml2ZS9jLy4uLi9hc3QvYmluClBBVEg6IC9jeWdkcml2ZS9jLy4uLi9jeWd3 aW4zMi9iaW4KUEFUSDogL2N5Z2RyaXZlL2MvLi4uL2N5Z3dpbjMyL3NiaW4K UEFUSDogL2N5Z2RyaXZlL2MvLi4uL2N5Z3dpbjMyL3Vzci9sb2NhbC9iaW4K UEFUSDogL2N5Z2RyaXZlL2MvLi4uL2N5Z3dpbjMyL3Vzci9zYmluClBBVEg6 IC9jeWdkcml2ZS9jLy4uLi9hc3QvYXJjaC9jeWd3aW4uaTM4Ni9iaW4KUEFU SDogL2N5Z2RyaXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9BTUQgQVBQL2Jp bi94ODZfNjQKUEFUSDogL2N5Z2RyaXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2 KS9BVEkvQVRJLkFDRS9Db3JlLVN0YXRpYwpQQVRIOiAvY3lnZHJpdmUvYy9X SU5ET1dTL1N5c3RlbTMyL1dpbmRvd3NQb3dlclNoZWxsL3YxLjAKUEFUSDog L2N5Z2RyaXZlL2MvV0lORE9XUy9TeXN0ZW0zMi9XYmVtClBBVEg6IC9jeWdk cml2ZS9jL1dJTkRPV1Mvc3lzdGVtMzIKUEFUSDogL2N5Z2RyaXZlL2MvV0lO RE9XUwpQQVRIOiAvY3lnZHJpdmUvYy9Qcm9ncmFtIEZpbGVzICh4ODYpL05U UC9iaW4KUEFUSDogL2N5Z2RyaXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9N aWNyb3NvZnQgU0RLcy9UeXBlU2NyaXB0LzEuMApQQVRIOiAvY3lnZHJpdmUv Yy9Qcm9ncmFtIEZpbGVzL01pY3Jvc29mdCBTUUwgU2VydmVyLzEyMC9Ub29s cy9CaW5uClBBVEg6IC9jeWdkcml2ZS9jL1Byb2dyYW0gRmlsZXMvTWljcm9z b2Z0IFNRTCBTZXJ2ZXIvMTEwL1Rvb2xzL0Jpbm4KUEFUSDogL2N5Z2RyaXZl L2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9CaXRLZWVwZXIKUEFUSDogL2N5Z2Ry aXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9HTlUvR251UEcvcHViClBBVEg6 IC9jeWdkcml2ZS9jL1Byb2dyYW0gRmlsZXMgKHg4NikvZ251cGxvdC9iaW4K UEFUSDogL2N5Z2RyaXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9QdVRUWQpQ QVRIOiAvY3lnZHJpdmUvYy9Qcm9ncmFtIEZpbGVzL1RvcnRvaXNlR2l0L2Jp bgpQQVRIOiAvY3lnZHJpdmUvYy9Qcm9ncmFtIEZpbGVzL1RvcnRvaXNlSGcK UEFUSDogL2N5Z2RyaXZlL2MvUHJvZ3JhbSBGaWxlcyAoeDg2KS9WaW0vdmlt ODAKUEFUSDogLi4uL0FwcERhdGEvTG9jYWwvTWljcm9zb2Z0L1dpbmRvd3NB cHBzClBBVEg6IC91c3IvbGliL2xhcGFjawpQQVRIOiAvcHJvYy9jeWdkcml2 ZS9jL1Byb2dyYW0gRmlsZXMgKHg4NikvVmltL3ZpbTgwCgoKIyMgLS0tLS0t LS0tLS0gIyMKIyMgQ29yZSB0ZXN0cy4gIyMKIyMgLS0tLS0tLS0tLS0gIyMK CmNvbmZpZ3VyZToyMjk3OiBjaGVja2luZyBidWlsZCBzeXN0ZW0gdHlwZQpj b25maWd1cmU6MjMxMTogcmVzdWx0OiB4ODZfNjQtdW5rbm93bi1jeWd3aW4K Y29uZmlndXJlOjIzNTg6IGNoZWNraW5nIGhvc3Qgc3lzdGVtIHR5cGUKY29u ZmlndXJlOjIzNzE6IHJlc3VsdDogeDg2XzY0LXVua25vd24tY3lnd2luCmNv bmZpZ3VyZToyMzkxOiBjaGVja2luZyB0YXJnZXQgc3lzdGVtIHR5cGUKY29u ZmlndXJlOjI0MDQ6IHJlc3VsdDogeDg2XzY0LXVua25vd24tY3lnd2luCmNv bmZpZ3VyZToyNDU4OiBjaGVja2luZyBmb3IgYSBCU0QtY29tcGF0aWJsZSBp bnN0YWxsCmNvbmZpZ3VyZToyNTI2OiByZXN1bHQ6IC91c3IvYmluL2luc3Rh bGwgLWMKY29uZmlndXJlOjI1Mzc6IGNoZWNraW5nIHdoZXRoZXIgbG4gd29y a3MKY29uZmlndXJlOjI1NTk6IHJlc3VsdDogeWVzCmNvbmZpZ3VyZToyNTYz OiBjaGVja2luZyB3aGV0aGVyIGxuIC1zIHdvcmtzCmNvbmZpZ3VyZToyNTY3 OiByZXN1bHQ6IHllcwpjb25maWd1cmU6MjU3NDogY2hlY2tpbmcgZm9yIGEg c2VkIHRoYXQgZG9lcyBub3QgdHJ1bmNhdGUgb3V0cHV0CmNvbmZpZ3VyZToy NjM4OiByZXN1bHQ6IC91c3IvYmluL3NlZApjb25maWd1cmU6MjY0NzogY2hl Y2tpbmcgZm9yIGdhd2sKY29uZmlndXJlOjI2NjM6IGZvdW5kIC91c3IvYmlu L2dhd2sKY29uZmlndXJlOjI2NzQ6IHJlc3VsdDogZ2F3awpjb25maWd1cmU6 Mzk5MTogY2hlY2tpbmcgdG8gc2VlIGlmIGNhdCB3b3JrcyBhcyBleHBlY3Rl ZApjb25maWd1cmU6Mzk5NjogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQxMTc6 IGNoZWNraW5nIGZvciBnY2MKY29uZmlndXJlOjQxMzM6IGZvdW5kIC91c3Iv YmluL2djYwpjb25maWd1cmU6NDE0NDogcmVzdWx0OiBnY2MKY29uZmlndXJl OjQzNzM6IGNoZWNraW5nIGZvciBDIGNvbXBpbGVyIHZlcnNpb24KY29uZmln dXJlOjQzODI6IGdjYyAtLXZlcnNpb24gPiY1CmdjYyAoR0NDKSA1LjQuMApD b3B5cmlnaHQgKEMpIDIwMTUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuClRoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9y IGNvcHlpbmcgY29uZGl0aW9ucy4gIFRoZXJlIGlzIE5PCndhcnJhbnR5OyBu b3QgZXZlbiBmb3IgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEg UEFSVElDVUxBUiBQVVJQT1NFLgoKY29uZmlndXJlOjQzOTM6ICQ/ID0gMApj b25maWd1cmU6NDM4MjogZ2NjIC12ID4mNQpVc2luZyBidWlsdC1pbiBzcGVj cy4KQ09MTEVDVF9HQ0M9Z2NjCkNPTExFQ1RfTFRPX1dSQVBQRVI9L3Vzci9s aWIvZ2NjL3g4Nl82NC1wYy1jeWd3aW4vNS40LjAvbHRvLXdyYXBwZXIuZXhl ClRhcmdldDogeDg2XzY0LXBjLWN5Z3dpbgpDb25maWd1cmVkIHdpdGg6IC9j eWdkcml2ZS9pL3N6c3ovdG1wcC9nY2MvZ2NjLTUuNC4wLTEueDg2XzY0L3Ny Yy9nY2MtNS40LjAvY29uZmlndXJlIC0tc3JjZGlyPS9jeWdkcml2ZS9pL3N6 c3ovdG1wcC9nY2MvZ2NjLTUuNC4wLTEueDg2XzY0L3NyYy9nY2MtNS40LjAg LS1wcmVmaXg9L3VzciAtLWV4ZWMtcHJlZml4PS91c3IgLS1sb2NhbHN0YXRl ZGlyPS92YXIgLS1zeXNjb25mZGlyPS9ldGMgLS1kb2NkaXI9L3Vzci9zaGFy ZS9kb2MvZ2NjIC0taHRtbGRpcj0vdXNyL3NoYXJlL2RvYy9nY2MvaHRtbCAt QyAtLWJ1aWxkPXg4Nl82NC1wYy1jeWd3aW4gLS1ob3N0PXg4Nl82NC1wYy1j eWd3aW4gLS10YXJnZXQ9eDg2XzY0LXBjLWN5Z3dpbiAtLXdpdGhvdXQtbGli aWNvbnYtcHJlZml4IC0td2l0aG91dC1saWJpbnRsLXByZWZpeCAtLWxpYmV4 ZWNkaXI9L3Vzci9saWIgLS1lbmFibGUtc2hhcmVkIC0tZW5hYmxlLXNoYXJl ZC1saWJnY2MgLS1lbmFibGUtc3RhdGljIC0tZW5hYmxlLXZlcnNpb24tc3Bl Y2lmaWMtcnVudGltZS1saWJzIC0tZW5hYmxlLWJvb3RzdHJhcCAtLWVuYWJs ZS1fX2N4YV9hdGV4aXQgLS13aXRoLWR3YXJmMiAtLXdpdGgtdHVuZT1nZW5l cmljIC0tZW5hYmxlLWxhbmd1YWdlcz1hZGEsYyxjKyssZm9ydHJhbixsdG8s b2JqYyxvYmotYysrIC0tZW5hYmxlLWdyYXBoaXRlIC0tZW5hYmxlLXRocmVh ZHM9cG9zaXggLS1lbmFibGUtbGliYXRvbWljIC0tZW5hYmxlLWxpYmNpbGty dHMgLS1lbmFibGUtbGliZ29tcCAtLWVuYWJsZS1saWJpdG0gLS1lbmFibGUt bGlicXVhZG1hdGggLS1lbmFibGUtbGlicXVhZG1hdGgtc3VwcG9ydCAtLWVu YWJsZS1saWJzc3AgLS1lbmFibGUtbGliYWRhIC0tZW5hYmxlLWxpYmdjai1z dWJsaWJzIC0tZGlzYWJsZS1qYXZhLWF3dCAtLWRpc2FibGUtc3ltdmVycyAt LXdpdGgtZWNqLWphcj0vdXNyL3NoYXJlL2phdmEvZWNqLmphciAtLXdpdGgt Z251LWxkIC0td2l0aC1nbnUtYXMgLS13aXRoLWNsb29nLWluY2x1ZGU9L3Vz ci9pbmNsdWRlL2Nsb29nLWlzbCAtLXdpdGhvdXQtbGliaWNvbnYtcHJlZml4 IC0td2l0aG91dC1saWJpbnRsLXByZWZpeCAtLXdpdGgtc3lzdGVtLXpsaWIg LS1lbmFibGUtbGlua2VyLWJ1aWxkLWlkIC0td2l0aC1kZWZhdWx0LWxpYnN0 ZGN4eC1hYmk9Z2NjNC1jb21wYXRpYmxlClRocmVhZCBtb2RlbDogcG9zaXgK Z2NjIHZlcnNpb24gNS40LjAgKEdDQykgCmNvbmZpZ3VyZTo0MzkzOiAkPyA9 IDAKY29uZmlndXJlOjQzODI6IGdjYyAtViA+JjUKZ2NjOiBlcnJvcjogdW5y ZWNvZ25pemVkIGNvbW1hbmQgbGluZSBvcHRpb24gJy1WJwpnY2M6IGZhdGFs IGVycm9yOiBubyBpbnB1dCBmaWxlcwpjb21waWxhdGlvbiB0ZXJtaW5hdGVk Lgpjb25maWd1cmU6NDM5MzogJD8gPSAxCmNvbmZpZ3VyZTo0MzgyOiBnY2Mg LXF2ZXJzaW9uID4mNQpnY2M6IGVycm9yOiB1bnJlY29nbml6ZWQgY29tbWFu ZCBsaW5lIG9wdGlvbiAnLXF2ZXJzaW9uJwpnY2M6IGZhdGFsIGVycm9yOiBu byBpbnB1dCBmaWxlcwpjb21waWxhdGlvbiB0ZXJtaW5hdGVkLgpjb25maWd1 cmU6NDM5MzogJD8gPSAxCmNvbmZpZ3VyZTo0NDEzOiBjaGVja2luZyBmb3Ig QyBjb21waWxlciBkZWZhdWx0IG91dHB1dCBmaWxlIG5hbWUKY29uZmlndXJl OjQ0MzU6IGdjYyAgICBjb25mdGVzdC5jICA+JjUKY29uZmlndXJlOjQ0Mzk6 ICQ/ID0gMApjb25maWd1cmU6NDQ3NjogcmVzdWx0OiBhLmV4ZQpjb25maWd1 cmU6NDQ5MjogY2hlY2tpbmcgd2hldGhlciB0aGUgQyBjb21waWxlciB3b3Jr cwpjb25maWd1cmU6NDUwMTogLi9hLmV4ZQpjb25maWd1cmU6NDUwNTogJD8g PSAwCmNvbmZpZ3VyZTo0NTIwOiByZXN1bHQ6IHllcwpjb25maWd1cmU6NDUy NzogY2hlY2tpbmcgd2hldGhlciB3ZSBhcmUgY3Jvc3MgY29tcGlsaW5nCmNv bmZpZ3VyZTo0NTI5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo0NTMyOiBjaGVj a2luZyBmb3Igc3VmZml4IG9mIGV4ZWN1dGFibGVzCmNvbmZpZ3VyZTo0NTM5 OiBnY2MgLW8gY29uZnRlc3QuZXhlICAgIGNvbmZ0ZXN0LmMgID4mNQpjb25m aWd1cmU6NDU0MzogJD8gPSAwCmNvbmZpZ3VyZTo0NTY1OiByZXN1bHQ6IC5l eGUKY29uZmlndXJlOjQ1NzE6IGNoZWNraW5nIGZvciBzdWZmaXggb2Ygb2Jq ZWN0IGZpbGVzCmNvbmZpZ3VyZTo0NTkzOiBnY2MgLWMgICBjb25mdGVzdC5j ID4mNQpjb25maWd1cmU6NDU5NzogJD8gPSAwCmNvbmZpZ3VyZTo0NjE4OiBy ZXN1bHQ6IG8KY29uZmlndXJlOjQ2MjI6IGNoZWNraW5nIHdoZXRoZXIgd2Ug YXJlIHVzaW5nIHRoZSBHTlUgQyBjb21waWxlcgpjb25maWd1cmU6NDY0MTog Z2NjIC1jICAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2NDE6ICQ/ID0g MApjb25maWd1cmU6NDY1MDogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjQ2NTk6 IGNoZWNraW5nIHdoZXRoZXIgZ2NjIGFjY2VwdHMgLWcKY29uZmlndXJlOjQ2 Nzk6IGdjYyAtYyAtZyAgY29uZnRlc3QuYyA+JjUKY29uZmlndXJlOjQ2Nzk6 ICQ/ID0gMApjb25maWd1cmU6NDcyMDogcmVzdWx0OiB5ZXMKY29uZmlndXJl OjQ3Mzc6IGNoZWNraW5nIGZvciBnY2Mgb3B0aW9uIHRvIGFjY2VwdCBJU08g Qzg5CmNvbmZpZ3VyZTo0ODAxOiBnY2MgIC1jIC1nIC1PMiAgY29uZnRlc3Qu YyA+JjUKY29uZmlndXJlOjQ4MDE6ICQ/ID0gMApjb25maWd1cmU6NDgxNDog cmVzdWx0OiBub25lIG5lZWRlZApjb25maWd1cmU6NDg5MjogY2hlY2tpbmcg Zm9yIGcrKwpjb25maWd1cmU6NDkwODogZm91bmQgL3Vzci9iaW4vZysrCmNv bmZpZ3VyZTo0OTE5OiByZXN1bHQ6IGcrKwpjb25maWd1cmU6NDk0NjogY2hl Y2tpbmcgZm9yIEMrKyBjb21waWxlciB2ZXJzaW9uCmNvbmZpZ3VyZTo0OTU1 OiBnKysgLS12ZXJzaW9uID4mNQpnKysgKEdDQykgNS40LjAKQ29weXJpZ2h0 IChDKSAyMDE1IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgpUaGlz IGlzIGZyZWUgc29mdHdhcmU7IHNlZSB0aGUgc291cmNlIGZvciBjb3B5aW5n IGNvbmRpdGlvbnMuICBUaGVyZSBpcyBOTwp3YXJyYW50eTsgbm90IGV2ZW4g Zm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4KCmNvbmZpZ3VyZTo0OTY2OiAkPyA9IDAKY29uZmlndXJl OjQ5NTU6IGcrKyAtdiA+JjUKVXNpbmcgYnVpbHQtaW4gc3BlY3MuCkNPTExF Q1RfR0NDPWcrKwpDT0xMRUNUX0xUT19XUkFQUEVSPS91c3IvbGliL2djYy94 ODZfNjQtcGMtY3lnd2luLzUuNC4wL2x0by13cmFwcGVyLmV4ZQpUYXJnZXQ6 IHg4Nl82NC1wYy1jeWd3aW4KQ29uZmlndXJlZCB3aXRoOiAvY3lnZHJpdmUv aS9zenN6L3RtcHAvZ2NjL2djYy01LjQuMC0xLng4Nl82NC9zcmMvZ2NjLTUu NC4wL2NvbmZpZ3VyZSAtLXNyY2Rpcj0vY3lnZHJpdmUvaS9zenN6L3RtcHAv Z2NjL2djYy01LjQuMC0xLng4Nl82NC9zcmMvZ2NjLTUuNC4wIC0tcHJlZml4 PS91c3IgLS1leGVjLXByZWZpeD0vdXNyIC0tbG9jYWxzdGF0ZWRpcj0vdmFy IC0tc3lzY29uZmRpcj0vZXRjIC0tZG9jZGlyPS91c3Ivc2hhcmUvZG9jL2dj YyAtLWh0bWxkaXI9L3Vzci9zaGFyZS9kb2MvZ2NjL2h0bWwgLUMgLS1idWls ZD14ODZfNjQtcGMtY3lnd2luIC0taG9zdD14ODZfNjQtcGMtY3lnd2luIC0t dGFyZ2V0PXg4Nl82NC1wYy1jeWd3aW4gLS13aXRob3V0LWxpYmljb252LXBy ZWZpeCAtLXdpdGhvdXQtbGliaW50bC1wcmVmaXggLS1saWJleGVjZGlyPS91 c3IvbGliIC0tZW5hYmxlLXNoYXJlZCAtLWVuYWJsZS1zaGFyZWQtbGliZ2Nj IC0tZW5hYmxlLXN0YXRpYyAtLWVuYWJsZS12ZXJzaW9uLXNwZWNpZmljLXJ1 bnRpbWUtbGlicyAtLWVuYWJsZS1ib290c3RyYXAgLS1lbmFibGUtX19jeGFf YXRleGl0IC0td2l0aC1kd2FyZjIgLS13aXRoLXR1bmU9Z2VuZXJpYyAtLWVu YWJsZS1sYW5ndWFnZXM9YWRhLGMsYysrLGZvcnRyYW4sbHRvLG9iamMsb2Jq LWMrKyAtLWVuYWJsZS1ncmFwaGl0ZSAtLWVuYWJsZS10aHJlYWRzPXBvc2l4 IC0tZW5hYmxlLWxpYmF0b21pYyAtLWVuYWJsZS1saWJjaWxrcnRzIC0tZW5h YmxlLWxpYmdvbXAgLS1lbmFibGUtbGliaXRtIC0tZW5hYmxlLWxpYnF1YWRt YXRoIC0tZW5hYmxlLWxpYnF1YWRtYXRoLXN1cHBvcnQgLS1lbmFibGUtbGli c3NwIC0tZW5hYmxlLWxpYmFkYSAtLWVuYWJsZS1saWJnY2otc3VibGlicyAt LWRpc2FibGUtamF2YS1hd3QgLS1kaXNhYmxlLXN5bXZlcnMgLS13aXRoLWVj ai1qYXI9L3Vzci9zaGFyZS9qYXZhL2Vjai5qYXIgLS13aXRoLWdudS1sZCAt LXdpdGgtZ251LWFzIC0td2l0aC1jbG9vZy1pbmNsdWRlPS91c3IvaW5jbHVk ZS9jbG9vZy1pc2wgLS13aXRob3V0LWxpYmljb252LXByZWZpeCAtLXdpdGhv dXQtbGliaW50bC1wcmVmaXggLS13aXRoLXN5c3RlbS16bGliIC0tZW5hYmxl LWxpbmtlci1idWlsZC1pZCAtLXdpdGgtZGVmYXVsdC1saWJzdGRjeHgtYWJp PWdjYzQtY29tcGF0aWJsZQpUaHJlYWQgbW9kZWw6IHBvc2l4CmdjYyB2ZXJz aW9uIDUuNC4wIChHQ0MpIApjb25maWd1cmU6NDk2NjogJD8gPSAwCmNvbmZp Z3VyZTo0OTU1OiBnKysgLVYgPiY1CmcrKzogZXJyb3I6IHVucmVjb2duaXpl ZCBjb21tYW5kIGxpbmUgb3B0aW9uICctVicKZysrOiBmYXRhbCBlcnJvcjog bm8gaW5wdXQgZmlsZXMKY29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmln dXJlOjQ5NjY6ICQ/ID0gMQpjb25maWd1cmU6NDk1NTogZysrIC1xdmVyc2lv biA+JjUKZysrOiBlcnJvcjogdW5yZWNvZ25pemVkIGNvbW1hbmQgbGluZSBv cHRpb24gJy1xdmVyc2lvbicKZysrOiBmYXRhbCBlcnJvcjogbm8gaW5wdXQg ZmlsZXMKY29tcGlsYXRpb24gdGVybWluYXRlZC4KY29uZmlndXJlOjQ5NjY6 ICQ/ID0gMQpjb25maWd1cmU6NDk3MDogY2hlY2tpbmcgd2hldGhlciB3ZSBh cmUgdXNpbmcgdGhlIEdOVSBDKysgY29tcGlsZXIKY29uZmlndXJlOjQ5ODk6 IGcrKyAtYyAgIGNvbmZ0ZXN0LmNwcCA+JjUKY29uZmlndXJlOjQ5ODk6ICQ/ ID0gMApjb25maWd1cmU6NDk5ODogcmVzdWx0OiB5ZXMKY29uZmlndXJlOjUw MDc6IGNoZWNraW5nIHdoZXRoZXIgZysrIGFjY2VwdHMgLWcKY29uZmlndXJl OjUwMjc6IGcrKyAtYyAtZyAgY29uZnRlc3QuY3BwID4mNQpjb25maWd1cmU6 NTAyNzogJD8gPSAwCmNvbmZpZ3VyZTo1MDY4OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NTExNzogY2hlY2tpbmcgd2hldGhlciBnKysgYWNjZXB0cyAtc3Rh dGljLWxpYnN0ZGMrKyAtc3RhdGljLWxpYmdjYwpjb25maWd1cmU6NTEzNDog ZysrIC1vIGNvbmZ0ZXN0LmV4ZSAtZyAtTzIgICAtc3RhdGljLWxpYnN0ZGMr KyAtc3RhdGljLWxpYmdjYyBjb25mdGVzdC5jcHAgID4mNQpjb25maWd1cmU6 NTEzNDogJD8gPSAwCmNvbmZpZ3VyZTo1MTM1OiByZXN1bHQ6IHllcwpjb25m aWd1cmU6NTE5OTogY2hlY2tpbmcgZm9yIGduYXRiaW5kCmNvbmZpZ3VyZTo1 MjI5OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo1MjkxOiBjaGVja2luZyBmb3Ig Z25hdG1ha2UKY29uZmlndXJlOjUzMjE6IHJlc3VsdDogbm8KY29uZmlndXJl OjUzNDA6IGNoZWNraW5nIHdoZXRoZXIgY29tcGlsZXIgZHJpdmVyIHVuZGVy c3RhbmRzIEFkYQpjb25maWd1cmU6NTM2MzogcmVzdWx0OiBubwpjb25maWd1 cmU6NTM3MjogY2hlY2tpbmcgaG93IHRvIGNvbXBhcmUgYm9vdHN0cmFwcGVk IG9iamVjdHMKY29uZmlndXJlOjUzOTc6IHJlc3VsdDogY21wIC0taWdub3Jl LWluaXRpYWw9MTYgJCRmMSAkJGYyCmNvbmZpZ3VyZTo1NDU3OiBjaGVja2lu ZyBmb3Igb2JqZGlyCmNvbmZpZ3VyZTo1NDcyOiByZXN1bHQ6IC5saWJzCmNv bmZpZ3VyZTo2MDE2OiBjaGVja2luZyBmb3IgaXNsIDAuMTYsIDAuMTUsIG9y IGRlcHJlY2F0ZWQgMC4xNApjb25maWd1cmU6NjAyOTogZ2NjIC1vIGNvbmZ0 ZXN0LmV4ZSAtZyAtTzIgICAgICAtbGlzbCAtbG1wYyAtbG1wZnIgLWxnbXAg Y29uZnRlc3QuYyAgLWxpc2wgLWxnbXAgPiY1Ci91c3IvbGliL2djYy94ODZf NjQtcGMtY3lnd2luLzUuNC4wLy4uLy4uLy4uLy4uL3g4Nl82NC1wYy1jeWd3 aW4vYmluL2xkOiBjYW5ub3QgZmluZCAtbG1wYwovdXNyL2xpYi9nY2MveDg2 XzY0LXBjLWN5Z3dpbi81LjQuMC8uLi8uLi8uLi8uLi94ODZfNjQtcGMtY3ln d2luL2Jpbi9sZDogY2Fubm90IGZpbmQgLWxtcGZyCmNvbGxlY3QyOiBlcnJv cjogbGQgcmV0dXJuZWQgMSBleGl0IHN0YXR1cwpjb25maWd1cmU6NjAyOTog JD8gPSAxCmNvbmZpZ3VyZTogZmFpbGVkIHByb2dyYW0gd2FzOgp8IC8qIGNv bmZkZWZzLmggKi8KfCAjZGVmaW5lIFBBQ0tBR0VfTkFNRSAiIgp8ICNkZWZp bmUgUEFDS0FHRV9UQVJOQU1FICIiCnwgI2RlZmluZSBQQUNLQUdFX1ZFUlNJ T04gIiIKfCAjZGVmaW5lIFBBQ0tBR0VfU1RSSU5HICIiCnwgI2RlZmluZSBQ QUNLQUdFX0JVR1JFUE9SVCAiIgp8ICNkZWZpbmUgUEFDS0FHRV9VUkwgIiIK fCAjZGVmaW5lIExUX09CSkRJUiAiLmxpYnMvIgp8IC8qIGVuZCBjb25mZGVm cy5oLiAgKi8KfCAjaW5jbHVkZSA8aXNsL2N0eC5oPgp8IGludAp8IG1haW4g KCkKfCB7CnwgaXNsX2N0eF9nZXRfbWF4X29wZXJhdGlvbnMgKGlzbF9jdHhf YWxsb2MgKCkpOwp8ICAgOwp8ICAgcmV0dXJuIDA7CnwgfQpjb25maWd1cmU6 NjAzNjogcmVzdWx0OiBubwpjb25maWd1cmU6NjA0MDogcmVzdWx0OiByZWNv bW1lbmRlZCBpc2wgdmVyc2lvbiBpcyAwLjE2IG9yIDAuMTUsIHRoZSBtaW5p bXVtIHJlcXVpcmVkIGlzbCB2ZXJzaW9uIDAuMTQgaXMgZGVwcmVjYXRlZApj b25maWd1cmU6NjA0NDogY2hlY2tpbmcgZm9yIGlzbCAwLjE2IG9yIDAuMTUK Y29uZmlndXJlOjYwNTc6IGdjYyAtbyBjb25mdGVzdC5leGUgLWcgLU8yICAg ICAgLWxpc2wgLWxtcGMgLWxtcGZyIC1sZ21wIGNvbmZ0ZXN0LmMgIC1saXNs IC1sZ21wID4mNQpjb25mdGVzdC5jOiBJbiBmdW5jdGlvbiAnbWFpbic6CmNv bmZ0ZXN0LmM6MTQ6MTogd2FybmluZzogaW1wbGljaXQgZGVjbGFyYXRpb24g b2YgZnVuY3Rpb24gJ2lzbF9vcHRpb25zX3NldF9zY2hlZHVsZV9zZXJpYWxp emVfc2NjcycgWy1XaW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb25dCiBp c2xfb3B0aW9uc19zZXRfc2NoZWR1bGVfc2VyaWFsaXplX3NjY3MgKE5VTEws IDApOwogXgovdXNyL2xpYi9nY2MveDg2XzY0LXBjLWN5Z3dpbi81LjQuMC8u Li8uLi8uLi8uLi94ODZfNjQtcGMtY3lnd2luL2Jpbi9sZDogY2Fubm90IGZp bmQgLWxtcGMKL3Vzci9saWIvZ2NjL3g4Nl82NC1wYy1jeWd3aW4vNS40LjAv Li4vLi4vLi4vLi4veDg2XzY0LXBjLWN5Z3dpbi9iaW4vbGQ6IGNhbm5vdCBm aW5kIC1sbXBmcgpjb2xsZWN0MjogZXJyb3I6IGxkIHJldHVybmVkIDEgZXhp dCBzdGF0dXMKY29uZmlndXJlOjYwNTc6ICQ/ID0gMQpjb25maWd1cmU6IGZh aWxlZCBwcm9ncmFtIHdhczoKfCAvKiBjb25mZGVmcy5oICovCnwgI2RlZmlu ZSBQQUNLQUdFX05BTUUgIiIKfCAjZGVmaW5lIFBBQ0tBR0VfVEFSTkFNRSAi Igp8ICNkZWZpbmUgUEFDS0FHRV9WRVJTSU9OICIiCnwgI2RlZmluZSBQQUNL QUdFX1NUUklORyAiIgp8ICNkZWZpbmUgUEFDS0FHRV9CVUdSRVBPUlQgIiIK fCAjZGVmaW5lIFBBQ0tBR0VfVVJMICIiCnwgI2RlZmluZSBMVF9PQkpESVIg Ii5saWJzLyIKfCAvKiBlbmQgY29uZmRlZnMuaC4gICovCnwgI2luY2x1ZGUg PGlzbC9zY2hlZHVsZS5oPgp8IGludAp8IG1haW4gKCkKfCB7CnwgaXNsX29w dGlvbnNfc2V0X3NjaGVkdWxlX3NlcmlhbGl6ZV9zY2NzIChOVUxMLCAwKTsK fCAgIDsKfCAgIHJldHVybiAwOwp8IH0KY29uZmlndXJlOjYwNjQ6IHJlc3Vs dDogbm8KY29uZmlndXJlOjcwNjg6IGNoZWNraW5nIGZvciBkZWZhdWx0IEJV SUxEX0NPTkZJRwpjb25maWd1cmU6NzEwMDogcmVzdWx0OiAKY29uZmlndXJl OjcxMDU6IGNoZWNraW5nIGZvciAtLWVuYWJsZS12dGFibGUtdmVyaWZ5CmNv bmZpZ3VyZTo3MTE4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3NzE0OiBjaGVj a2luZyBmb3IgYmlzb24KY29uZmlndXJlOjc3MzA6IGZvdW5kIC91c3IvYmlu L2Jpc29uCmNvbmZpZ3VyZTo3NzQxOiByZXN1bHQ6IGJpc29uIC15CmNvbmZp Z3VyZTo3NzYxOiBjaGVja2luZyBmb3IgYmlzb24KY29uZmlndXJlOjc3Nzc6 IGZvdW5kIC91c3IvYmluL2Jpc29uCmNvbmZpZ3VyZTo3Nzg4OiByZXN1bHQ6 IGJpc29uCmNvbmZpZ3VyZTo3ODA4OiBjaGVja2luZyBmb3IgZ200CmNvbmZp Z3VyZTo3ODM4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3ODA4OiBjaGVja2lu ZyBmb3IgZ251bTQKY29uZmlndXJlOjc4Mzg6IHJlc3VsdDogbm8KY29uZmln dXJlOjc4MDg6IGNoZWNraW5nIGZvciBtNApjb25maWd1cmU6NzgyNDogZm91 bmQgL3Vzci9iaW4vbTQKY29uZmlndXJlOjc4MzU6IHJlc3VsdDogbTQKY29u ZmlndXJlOjc4NTU6IGNoZWNraW5nIGZvciBmbGV4CmNvbmZpZ3VyZTo3ODg1 OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3ODU1OiBjaGVja2luZyBmb3IgbGV4 CmNvbmZpZ3VyZTo3ODg1OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZTo3OTAzOiBj aGVja2luZyBmb3IgZmxleApjb25maWd1cmU6NzkzMzogcmVzdWx0OiBubwpj b25maWd1cmU6Nzk1MDogY2hlY2tpbmcgZm9yIG1ha2VpbmZvCmNvbmZpZ3Vy ZTo3OTY2OiBmb3VuZCAvdXNyL2Jpbi9tYWtlaW5mbwpjb25maWd1cmU6Nzk3 NzogcmVzdWx0OiBtYWtlaW5mbwpjb25maWd1cmU6ODAxMTogY2hlY2tpbmcg Zm9yIGV4cGVjdApjb25maWd1cmU6ODAyNzogZm91bmQgL3Vzci9iaW4vZXhw ZWN0CmNvbmZpZ3VyZTo4MDM4OiByZXN1bHQ6IGV4cGVjdApjb25maWd1cmU6 ODA2MDogY2hlY2tpbmcgZm9yIHJ1bnRlc3QKY29uZmlndXJlOjgwNzY6IGZv dW5kIC91c3IvYmluL3J1bnRlc3QKY29uZmlndXJlOjgwODc6IHJlc3VsdDog cnVudGVzdApjb25maWd1cmU6ODIwNTogY2hlY2tpbmcgZm9yIGFyCmNvbmZp Z3VyZTo4MjIxOiBmb3VuZCAvdXNyL2Jpbi9hcgpjb25maWd1cmU6ODIzMjog cmVzdWx0OiBhcgpjb25maWd1cmU6ODM0NjogY2hlY2tpbmcgZm9yIGFzCmNv bmZpZ3VyZTo4MzYyOiBmb3VuZCAvdXNyL2Jpbi9hcwpjb25maWd1cmU6ODM3 MzogcmVzdWx0OiBhcwpjb25maWd1cmU6ODQ4NzogY2hlY2tpbmcgZm9yIGRs bHRvb2wKY29uZmlndXJlOjg1MDM6IGZvdW5kIC91c3IvYmluL2RsbHRvb2wK Y29uZmlndXJlOjg1MTQ6IHJlc3VsdDogZGxsdG9vbApjb25maWd1cmU6ODU0 NzogY2hlY2tpbmcgZm9yIGxkCmNvbmZpZ3VyZTo4NTc0OiByZXN1bHQ6IC91 c3IvbGliL2djYy94ODZfNjQtcGMtY3lnd2luLzUuNC4wLy4uLy4uLy4uLy4u L3g4Nl82NC1wYy1jeWd3aW4vYmluL2xkLmV4ZQpjb25maWd1cmU6ODc2OTog Y2hlY2tpbmcgZm9yIGxpcG8KY29uZmlndXJlOjg3OTk6IHJlc3VsdDogbm8K Y29uZmlndXJlOjg5MTA6IGNoZWNraW5nIGZvciBubQpjb25maWd1cmU6ODky NjogZm91bmQgL3Vzci9iaW4vbm0KY29uZmlndXJlOjg5Mzc6IHJlc3VsdDog bm0KY29uZmlndXJlOjkwNTE6IGNoZWNraW5nIGZvciByYW5saWIKY29uZmln dXJlOjkwNjc6IGZvdW5kIC91c3IvYmluL3JhbmxpYgpjb25maWd1cmU6OTA3 ODogcmVzdWx0OiByYW5saWIKY29uZmlndXJlOjkxODc6IGNoZWNraW5nIGZv ciBzdHJpcApjb25maWd1cmU6OTIwMzogZm91bmQgL3Vzci9iaW4vc3RyaXAK Y29uZmlndXJlOjkyMTQ6IHJlc3VsdDogc3RyaXAKY29uZmlndXJlOjkzMjM6 IGNoZWNraW5nIGZvciB3aW5kcmVzCmNvbmZpZ3VyZTo5MzM5OiBmb3VuZCAv dXNyL2Jpbi93aW5kcmVzCmNvbmZpZ3VyZTo5MzUwOiByZXN1bHQ6IHdpbmRy ZXMKY29uZmlndXJlOjk0NjQ6IGNoZWNraW5nIGZvciB3aW5kbWMKY29uZmln dXJlOjk0ODA6IGZvdW5kIC91c3IvYmluL3dpbmRtYwpjb25maWd1cmU6OTQ5 MTogcmVzdWx0OiB3aW5kbWMKY29uZmlndXJlOjk2MDU6IGNoZWNraW5nIGZv ciBvYmpjb3B5CmNvbmZpZ3VyZTo5NjIxOiBmb3VuZCAvdXNyL2Jpbi9vYmpj b3B5CmNvbmZpZ3VyZTo5NjMyOiByZXN1bHQ6IG9iamNvcHkKY29uZmlndXJl Ojk3NDY6IGNoZWNraW5nIGZvciBvYmpkdW1wCmNvbmZpZ3VyZTo5NzYyOiBm b3VuZCAvdXNyL2Jpbi9vYmpkdW1wCmNvbmZpZ3VyZTo5NzczOiByZXN1bHQ6 IG9iamR1bXAKY29uZmlndXJlOjk4ODc6IGNoZWNraW5nIGZvciByZWFkZWxm CmNvbmZpZ3VyZTo5OTAzOiBmb3VuZCAvdXNyL2Jpbi9yZWFkZWxmCmNvbmZp Z3VyZTo5OTE0OiByZXN1bHQ6IHJlYWRlbGYKY29uZmlndXJlOjEwMDY3OiBj aGVja2luZyBmb3IgY2MKY29uZmlndXJlOjEwMDgzOiBmb3VuZCAvdXNyL2Jp bi9jYwpjb25maWd1cmU6MTAwOTQ6IHJlc3VsdDogY2MKY29uZmlndXJlOjEw MjI4OiBjaGVja2luZyBmb3IgYysrCmNvbmZpZ3VyZToxMDI0NDogZm91bmQg L3Vzci9iaW4vYysrCmNvbmZpZ3VyZToxMDI1NTogcmVzdWx0OiBjKysKY29u ZmlndXJlOjEwMzg5OiBjaGVja2luZyBmb3IgZ2NjCmNvbmZpZ3VyZToxMDQw NTogZm91bmQgL3Vzci9iaW4vZ2NjCmNvbmZpZ3VyZToxMDQxNjogcmVzdWx0 OiBnY2MKY29uZmlndXJlOjEwNTQ1OiBjaGVja2luZyBmb3IgZ2NqCmNvbmZp Z3VyZToxMDU3NTogcmVzdWx0OiBubwpjb25maWd1cmU6MTA3MDY6IGNoZWNr aW5nIGZvciBnZm9ydHJhbgpjb25maWd1cmU6MTA3MzY6IHJlc3VsdDogbm8K Y29uZmlndXJlOjEwODY3OiBjaGVja2luZyBmb3IgZ2NjZ28KY29uZmlndXJl OjEwODk3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMTEwODogY2hlY2tpbmcg Zm9yIGFyCmNvbmZpZ3VyZToxMTEyNDogZm91bmQgL3Vzci9iaW4vYXIKY29u ZmlndXJlOjExMTM1OiByZXN1bHQ6IGFyCmNvbmZpZ3VyZToxMTMzODogY2hl Y2tpbmcgZm9yIGFzCmNvbmZpZ3VyZToxMTM1NDogZm91bmQgL3Vzci9iaW4v YXMKY29uZmlndXJlOjExMzY1OiByZXN1bHQ6IGFzCmNvbmZpZ3VyZToxMTU2 ODogY2hlY2tpbmcgZm9yIGRsbHRvb2wKY29uZmlndXJlOjExNTg0OiBmb3Vu ZCAvdXNyL2Jpbi9kbGx0b29sCmNvbmZpZ3VyZToxMTU5NTogcmVzdWx0OiBk bGx0b29sCmNvbmZpZ3VyZToxMTc5ODogY2hlY2tpbmcgZm9yIGxkCmNvbmZp Z3VyZToxMTgxNDogZm91bmQgL3Vzci9iaW4vbGQKY29uZmlndXJlOjExODI1 OiByZXN1bHQ6IGxkCmNvbmZpZ3VyZToxMjAyODogY2hlY2tpbmcgZm9yIGxp cG8KY29uZmlndXJlOjEyMDU4OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxMjI1 ODogY2hlY2tpbmcgZm9yIG5tCmNvbmZpZ3VyZToxMjI3NDogZm91bmQgL3Vz ci9iaW4vbm0KY29uZmlndXJlOjEyMjg1OiByZXN1bHQ6IG5tCmNvbmZpZ3Vy ZToxMjQ4ODogY2hlY2tpbmcgZm9yIG9iamNvcHkKY29uZmlndXJlOjEyNTA0 OiBmb3VuZCAvdXNyL2Jpbi9vYmpjb3B5CmNvbmZpZ3VyZToxMjUxNTogcmVz dWx0OiBvYmpjb3B5CmNvbmZpZ3VyZToxMjcxODogY2hlY2tpbmcgZm9yIG9i amR1bXAKY29uZmlndXJlOjEyNzM0OiBmb3VuZCAvdXNyL2Jpbi9vYmpkdW1w CmNvbmZpZ3VyZToxMjc0NTogcmVzdWx0OiBvYmpkdW1wCmNvbmZpZ3VyZTox Mjk0ODogY2hlY2tpbmcgZm9yIHJhbmxpYgpjb25maWd1cmU6MTI5NjQ6IGZv dW5kIC91c3IvYmluL3JhbmxpYgpjb25maWd1cmU6MTI5NzU6IHJlc3VsdDog cmFubGliCmNvbmZpZ3VyZToxMzE3ODogY2hlY2tpbmcgZm9yIHJlYWRlbGYK Y29uZmlndXJlOjEzMTk0OiBmb3VuZCAvdXNyL2Jpbi9yZWFkZWxmCmNvbmZp Z3VyZToxMzIwNTogcmVzdWx0OiByZWFkZWxmCmNvbmZpZ3VyZToxMzQwODog Y2hlY2tpbmcgZm9yIHN0cmlwCmNvbmZpZ3VyZToxMzQyNDogZm91bmQgL3Vz ci9iaW4vc3RyaXAKY29uZmlndXJlOjEzNDM1OiByZXN1bHQ6IHN0cmlwCmNv bmZpZ3VyZToxMzYzODogY2hlY2tpbmcgZm9yIHdpbmRyZXMKY29uZmlndXJl OjEzNjU0OiBmb3VuZCAvdXNyL2Jpbi93aW5kcmVzCmNvbmZpZ3VyZToxMzY2 NTogcmVzdWx0OiB3aW5kcmVzCmNvbmZpZ3VyZToxMzg2ODogY2hlY2tpbmcg Zm9yIHdpbmRtYwpjb25maWd1cmU6MTM4ODQ6IGZvdW5kIC91c3IvYmluL3dp bmRtYwpjb25maWd1cmU6MTM4OTU6IHJlc3VsdDogd2luZG1jCmNvbmZpZ3Vy ZToxMzkyNjogY2hlY2tpbmcgd2hlcmUgdG8gZmluZCB0aGUgdGFyZ2V0IGFy CmNvbmZpZ3VyZToxMzk1OTogcmVzdWx0OiBob3N0IHRvb2wKY29uZmlndXJl OjEzOTY4OiBjaGVja2luZyB3aGVyZSB0byBmaW5kIHRoZSB0YXJnZXQgYXMK Y29uZmlndXJlOjE0MDAxOiByZXN1bHQ6IGhvc3QgdG9vbApjb25maWd1cmU6 MTQwMTA6IGNoZWNraW5nIHdoZXJlIHRvIGZpbmQgdGhlIHRhcmdldCBjYwpj b25maWd1cmU6MTQwNDM6IHJlc3VsdDogaG9zdCB0b29sCmNvbmZpZ3VyZTox NDA1MjogY2hlY2tpbmcgd2hlcmUgdG8gZmluZCB0aGUgdGFyZ2V0IGMrKwpj b25maWd1cmU6MTQwODg6IHJlc3VsdDogaG9zdCB0b29sCmNvbmZpZ3VyZTox NDA5NzogY2hlY2tpbmcgd2hlcmUgdG8gZmluZCB0aGUgdGFyZ2V0IGMrKyBm b3IgbGlic3RkYysrCmNvbmZpZ3VyZToxNDEzMzogcmVzdWx0OiBob3N0IHRv b2wKY29uZmlndXJlOjE0MTQyOiBjaGVja2luZyB3aGVyZSB0byBmaW5kIHRo ZSB0YXJnZXQgZGxsdG9vbApjb25maWd1cmU6MTQxNzU6IHJlc3VsdDogaG9z dCB0b29sCmNvbmZpZ3VyZToxNDE4NDogY2hlY2tpbmcgd2hlcmUgdG8gZmlu ZCB0aGUgdGFyZ2V0IGdjYwpjb25maWd1cmU6MTQyMTc6IHJlc3VsdDogaG9z dCB0b29sCmNvbmZpZ3VyZToxNDIyNjogY2hlY2tpbmcgd2hlcmUgdG8gZmlu ZCB0aGUgdGFyZ2V0IGdjagpjb25maWd1cmU6MTQyNjI6IHJlc3VsdDogaG9z dCB0b29sCmNvbmZpZ3VyZToxNDI3MTogY2hlY2tpbmcgd2hlcmUgdG8gZmlu ZCB0aGUgdGFyZ2V0IGdmb3J0cmFuCmNvbmZpZ3VyZToxNDMwNzogcmVzdWx0 OiBob3N0IHRvb2wKY29uZmlndXJlOjE0MzE2OiBjaGVja2luZyB3aGVyZSB0 byBmaW5kIHRoZSB0YXJnZXQgZ2NjZ28KY29uZmlndXJlOjE0MzUyOiByZXN1 bHQ6IGhvc3QgdG9vbApjb25maWd1cmU6MTQzNjE6IGNoZWNraW5nIHdoZXJl IHRvIGZpbmQgdGhlIHRhcmdldCBsZApjb25maWd1cmU6MTQzOTQ6IHJlc3Vs dDogaG9zdCB0b29sCmNvbmZpZ3VyZToxNDQwMzogY2hlY2tpbmcgd2hlcmUg dG8gZmluZCB0aGUgdGFyZ2V0IGxpcG8KY29uZmlndXJlOjE0NDI1OiByZXN1 bHQ6IGhvc3QgdG9vbApjb25maWd1cmU6MTQ0MzQ6IGNoZWNraW5nIHdoZXJl IHRvIGZpbmQgdGhlIHRhcmdldCBubQpjb25maWd1cmU6MTQ0Njc6IHJlc3Vs dDogaG9zdCB0b29sCmNvbmZpZ3VyZToxNDQ3NjogY2hlY2tpbmcgd2hlcmUg dG8gZmluZCB0aGUgdGFyZ2V0IG9iamNvcHkKY29uZmlndXJlOjE0NTA5OiBy ZXN1bHQ6IGhvc3QgdG9vbApjb25maWd1cmU6MTQ1MTg6IGNoZWNraW5nIHdo ZXJlIHRvIGZpbmQgdGhlIHRhcmdldCBvYmpkdW1wCmNvbmZpZ3VyZToxNDU1 MTogcmVzdWx0OiBob3N0IHRvb2wKY29uZmlndXJlOjE0NTYwOiBjaGVja2lu ZyB3aGVyZSB0byBmaW5kIHRoZSB0YXJnZXQgcmFubGliCmNvbmZpZ3VyZTox NDU5MzogcmVzdWx0OiBob3N0IHRvb2wKY29uZmlndXJlOjE0NjAyOiBjaGVj a2luZyB3aGVyZSB0byBmaW5kIHRoZSB0YXJnZXQgcmVhZGVsZgpjb25maWd1 cmU6MTQ2MzU6IHJlc3VsdDogaG9zdCB0b29sCmNvbmZpZ3VyZToxNDY0NDog Y2hlY2tpbmcgd2hlcmUgdG8gZmluZCB0aGUgdGFyZ2V0IHN0cmlwCmNvbmZp Z3VyZToxNDY3NzogcmVzdWx0OiBob3N0IHRvb2wKY29uZmlndXJlOjE0Njg2 OiBjaGVja2luZyB3aGVyZSB0byBmaW5kIHRoZSB0YXJnZXQgd2luZHJlcwpj b25maWd1cmU6MTQ3MTk6IHJlc3VsdDogaG9zdCB0b29sCmNvbmZpZ3VyZTox NDcyODogY2hlY2tpbmcgd2hlcmUgdG8gZmluZCB0aGUgdGFyZ2V0IHdpbmRt Ywpjb25maWd1cmU6MTQ3NjE6IHJlc3VsdDogaG9zdCB0b29sCmNvbmZpZ3Vy ZToxNDc5ODogY2hlY2tpbmcgd2hldGhlciB0byBlbmFibGUgbWFpbnRhaW5l ci1zcGVjaWZpYyBwb3J0aW9ucyBvZiBNYWtlZmlsZXMKY29uZmlndXJlOjE0 ODA3OiByZXN1bHQ6IG5vCmNvbmZpZ3VyZToxNTA2NTogY3JlYXRpbmcgLi9j b25maWcuc3RhdHVzCgojIyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICMjCiMj IFJ1bm5pbmcgY29uZmlnLnN0YXR1cy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0t LS0tLS0tLSAjIwoKVGhpcyBmaWxlIHdhcyBleHRlbmRlZCBieSBjb25maWcu c3RhdHVzLCB3aGljaCB3YXMKZ2VuZXJhdGVkIGJ5IEdOVSBBdXRvY29uZiAy LjY0LiAgSW52b2NhdGlvbiBjb21tYW5kIGxpbmUgd2FzCgogIENPTkZJR19G SUxFUyAgICA9IAogIENPTkZJR19IRUFERVJTICA9IAogIENPTkZJR19MSU5L UyAgICA9IAogIENPTkZJR19DT01NQU5EUyA9IAogICQgLi9jb25maWcuc3Rh dHVzIAoKb24gWFhYeHh4eHh4WAoKY29uZmlnLnN0YXR1czo5MTI6IGNyZWF0 aW5nIE1ha2VmaWxlCgojIyAtLS0tLS0tLS0tLS0tLS0tICMjCiMjIENhY2hl IHZhcmlhYmxlcy4gIyMKIyMgLS0tLS0tLS0tLS0tLS0tLSAjIwoKYWNfY3Zf YnVpbGQ9J3g4Nl82NC11bmtub3duLWN5Z3dpbicKYWNfY3ZfY19jb21waWxl cl9nbnU9J3llcycKYWNfY3ZfY3h4X2NvbXBpbGVyX2dudT0neWVzJwphY19j dl9lbnZfQVJfRk9SX1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X0FSX0ZPUl9U QVJHRVRfdmFsdWU9JycKYWNfY3ZfZW52X0FSX3NldD0nJwphY19jdl9lbnZf QVJfdmFsdWU9JycKYWNfY3ZfZW52X0FTX0ZPUl9UQVJHRVRfc2V0PScnCmFj X2N2X2Vudl9BU19GT1JfVEFSR0VUX3ZhbHVlPScnCmFjX2N2X2Vudl9BU19z ZXQ9JycKYWNfY3ZfZW52X0FTX3ZhbHVlPScnCmFjX2N2X2Vudl9DQ0Nfc2V0 PScnCmFjX2N2X2Vudl9DQ0NfdmFsdWU9JycKYWNfY3ZfZW52X0NDX0ZPUl9U QVJHRVRfc2V0PScnCmFjX2N2X2Vudl9DQ19GT1JfVEFSR0VUX3ZhbHVlPScn CmFjX2N2X2Vudl9DQ19zZXQ9JycKYWNfY3ZfZW52X0NDX3ZhbHVlPScnCmFj X2N2X2Vudl9DRkxBR1Nfc2V0PScnCmFjX2N2X2Vudl9DRkxBR1NfdmFsdWU9 JycKYWNfY3ZfZW52X0NQUEZMQUdTX3NldD0nJwphY19jdl9lbnZfQ1BQRkxB R1NfdmFsdWU9JycKYWNfY3ZfZW52X0NYWEZMQUdTX3NldD0nJwphY19jdl9l bnZfQ1hYRkxBR1NfdmFsdWU9JycKYWNfY3ZfZW52X0NYWF9GT1JfVEFSR0VU X3NldD0nJwphY19jdl9lbnZfQ1hYX0ZPUl9UQVJHRVRfdmFsdWU9JycKYWNf Y3ZfZW52X0NYWF9zZXQ9JycKYWNfY3ZfZW52X0NYWF92YWx1ZT0nJwphY19j dl9lbnZfRExMVE9PTF9GT1JfVEFSR0VUX3NldD0nJwphY19jdl9lbnZfRExM VE9PTF9GT1JfVEFSR0VUX3ZhbHVlPScnCmFjX2N2X2Vudl9ETExUT09MX3Nl dD0nJwphY19jdl9lbnZfRExMVE9PTF92YWx1ZT0nJwphY19jdl9lbnZfR0ND X0ZPUl9UQVJHRVRfc2V0PScnCmFjX2N2X2Vudl9HQ0NfRk9SX1RBUkdFVF92 YWx1ZT0nJwphY19jdl9lbnZfR0NKX0ZPUl9UQVJHRVRfc2V0PScnCmFjX2N2 X2Vudl9HQ0pfRk9SX1RBUkdFVF92YWx1ZT0nJwphY19jdl9lbnZfR0ZPUlRS QU5fRk9SX1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X0dGT1JUUkFOX0ZPUl9U QVJHRVRfdmFsdWU9JycKYWNfY3ZfZW52X0dPQ19GT1JfVEFSR0VUX3NldD0n JwphY19jdl9lbnZfR09DX0ZPUl9UQVJHRVRfdmFsdWU9JycKYWNfY3ZfZW52 X0xERkxBR1Nfc2V0PScnCmFjX2N2X2Vudl9MREZMQUdTX3ZhbHVlPScnCmFj X2N2X2Vudl9MRF9GT1JfVEFSR0VUX3NldD0nJwphY19jdl9lbnZfTERfRk9S X1RBUkdFVF92YWx1ZT0nJwphY19jdl9lbnZfTERfc2V0PScnCmFjX2N2X2Vu dl9MRF92YWx1ZT0nJwphY19jdl9lbnZfTElCU19zZXQ9JycKYWNfY3ZfZW52 X0xJQlNfdmFsdWU9JycKYWNfY3ZfZW52X0xJUE9fRk9SX1RBUkdFVF9zZXQ9 JycKYWNfY3ZfZW52X0xJUE9fRk9SX1RBUkdFVF92YWx1ZT0nJwphY19jdl9l bnZfTElQT19zZXQ9JycKYWNfY3ZfZW52X0xJUE9fdmFsdWU9JycKYWNfY3Zf ZW52X05NX0ZPUl9UQVJHRVRfc2V0PScnCmFjX2N2X2Vudl9OTV9GT1JfVEFS R0VUX3ZhbHVlPScnCmFjX2N2X2Vudl9OTV9zZXQ9JycKYWNfY3ZfZW52X05N X3ZhbHVlPScnCmFjX2N2X2Vudl9PQkpDT1BZX0ZPUl9UQVJHRVRfc2V0PScn CmFjX2N2X2Vudl9PQkpDT1BZX0ZPUl9UQVJHRVRfdmFsdWU9JycKYWNfY3Zf ZW52X09CSkNPUFlfc2V0PScnCmFjX2N2X2Vudl9PQkpDT1BZX3ZhbHVlPScn CmFjX2N2X2Vudl9PQkpEVU1QX0ZPUl9UQVJHRVRfc2V0PScnCmFjX2N2X2Vu dl9PQkpEVU1QX0ZPUl9UQVJHRVRfdmFsdWU9JycKYWNfY3ZfZW52X09CSkRV TVBfc2V0PScnCmFjX2N2X2Vudl9PQkpEVU1QX3ZhbHVlPScnCmFjX2N2X2Vu dl9SQU5MSUJfRk9SX1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X1JBTkxJQl9G T1JfVEFSR0VUX3ZhbHVlPScnCmFjX2N2X2Vudl9SQU5MSUJfc2V0PScnCmFj X2N2X2Vudl9SQU5MSUJfdmFsdWU9JycKYWNfY3ZfZW52X1JFQURFTEZfRk9S X1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X1JFQURFTEZfRk9SX1RBUkdFVF92 YWx1ZT0nJwphY19jdl9lbnZfUkVBREVMRl9zZXQ9JycKYWNfY3ZfZW52X1JF QURFTEZfdmFsdWU9JycKYWNfY3ZfZW52X1NUUklQX0ZPUl9UQVJHRVRfc2V0 PScnCmFjX2N2X2Vudl9TVFJJUF9GT1JfVEFSR0VUX3ZhbHVlPScnCmFjX2N2 X2Vudl9TVFJJUF9zZXQ9JycKYWNfY3ZfZW52X1NUUklQX3ZhbHVlPScnCmFj X2N2X2Vudl9XSU5ETUNfRk9SX1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X1dJ TkRNQ19GT1JfVEFSR0VUX3ZhbHVlPScnCmFjX2N2X2Vudl9XSU5ETUNfc2V0 PScnCmFjX2N2X2Vudl9XSU5ETUNfdmFsdWU9JycKYWNfY3ZfZW52X1dJTkRS RVNfRk9SX1RBUkdFVF9zZXQ9JycKYWNfY3ZfZW52X1dJTkRSRVNfRk9SX1RB UkdFVF92YWx1ZT0nJwphY19jdl9lbnZfV0lORFJFU19zZXQ9JycKYWNfY3Zf ZW52X1dJTkRSRVNfdmFsdWU9JycKYWNfY3ZfZW52X2J1aWxkX2FsaWFzX3Nl dD0nJwphY19jdl9lbnZfYnVpbGRfYWxpYXNfdmFsdWU9JycKYWNfY3ZfZW52 X2J1aWxkX2NvbmZpZ2FyZ3Nfc2V0PScnCmFjX2N2X2Vudl9idWlsZF9jb25m aWdhcmdzX3ZhbHVlPScnCmFjX2N2X2Vudl9ob3N0X2FsaWFzX3NldD0nJwph Y19jdl9lbnZfaG9zdF9hbGlhc192YWx1ZT0nJwphY19jdl9lbnZfaG9zdF9j b25maWdhcmdzX3NldD0nJwphY19jdl9lbnZfaG9zdF9jb25maWdhcmdzX3Zh bHVlPScnCmFjX2N2X2Vudl90YXJnZXRfYWxpYXNfc2V0PScnCmFjX2N2X2Vu dl90YXJnZXRfYWxpYXNfdmFsdWU9JycKYWNfY3ZfZW52X3RhcmdldF9jb25m aWdhcmdzX3NldD0nJwphY19jdl9lbnZfdGFyZ2V0X2NvbmZpZ2FyZ3NfdmFs dWU9JycKYWNfY3ZfZXhlZXh0PScuZXhlJwphY19jdl9ob3N0PSd4ODZfNjQt dW5rbm93bi1jeWd3aW4nCmFjX2N2X29iamV4dD0nbycKYWNfY3ZfcGF0aF9T RUQ9Jy91c3IvYmluL3NlZCcKYWNfY3ZfcGF0aF9pbnN0YWxsPScvdXNyL2Jp bi9pbnN0YWxsIC1jJwphY19jdl9wcm9nX0FSPSdhcicKYWNfY3ZfcHJvZ19B Ul9GT1JfVEFSR0VUPSdhcicKYWNfY3ZfcHJvZ19BUz0nYXMnCmFjX2N2X3By b2dfQVNfRk9SX1RBUkdFVD0nYXMnCmFjX2N2X3Byb2dfQVdLPSdnYXdrJwph Y19jdl9wcm9nX0JJU09OPSdiaXNvbicKYWNfY3ZfcHJvZ19DQ19GT1JfVEFS R0VUPSdjYycKYWNfY3ZfcHJvZ19DWFhfRk9SX1RBUkdFVD0nYysrJwphY19j dl9wcm9nX0RMTFRPT0w9J2RsbHRvb2wnCmFjX2N2X3Byb2dfRExMVE9PTF9G T1JfVEFSR0VUPSdkbGx0b29sJwphY19jdl9wcm9nX0VYUEVDVD0nZXhwZWN0 JwphY19jdl9wcm9nX0dDQ19GT1JfVEFSR0VUPSdnY2MnCmFjX2N2X3Byb2df TEQ9Jy91c3IvbGliL2djYy94ODZfNjQtcGMtY3lnd2luLzUuNC4wLy4uLy4u Ly4uLy4uL3g4Nl82NC1wYy1jeWd3aW4vYmluL2xkLmV4ZScKYWNfY3ZfcHJv Z19MRF9GT1JfVEFSR0VUPSdsZCcKYWNfY3ZfcHJvZ19NND0nbTQnCmFjX2N2 X3Byb2dfTUFLRUlORk89J21ha2VpbmZvJwphY19jdl9wcm9nX05NPSdubScK YWNfY3ZfcHJvZ19OTV9GT1JfVEFSR0VUPSdubScKYWNfY3ZfcHJvZ19PQkpD T1BZPSdvYmpjb3B5JwphY19jdl9wcm9nX09CSkNPUFlfRk9SX1RBUkdFVD0n b2JqY29weScKYWNfY3ZfcHJvZ19PQkpEVU1QPSdvYmpkdW1wJwphY19jdl9w cm9nX09CSkRVTVBfRk9SX1RBUkdFVD0nb2JqZHVtcCcKYWNfY3ZfcHJvZ19S QU5MSUI9J3JhbmxpYicKYWNfY3ZfcHJvZ19SQU5MSUJfRk9SX1RBUkdFVD0n cmFubGliJwphY19jdl9wcm9nX1JFQURFTEY9J3JlYWRlbGYnCmFjX2N2X3By b2dfUkVBREVMRl9GT1JfVEFSR0VUPSdyZWFkZWxmJwphY19jdl9wcm9nX1JV TlRFU1Q9J3J1bnRlc3QnCmFjX2N2X3Byb2dfU1RSSVA9J3N0cmlwJwphY19j dl9wcm9nX1NUUklQX0ZPUl9UQVJHRVQ9J3N0cmlwJwphY19jdl9wcm9nX1dJ TkRNQz0nd2luZG1jJwphY19jdl9wcm9nX1dJTkRNQ19GT1JfVEFSR0VUPSd3 aW5kbWMnCmFjX2N2X3Byb2dfV0lORFJFUz0nd2luZHJlcycKYWNfY3ZfcHJv Z19XSU5EUkVTX0ZPUl9UQVJHRVQ9J3dpbmRyZXMnCmFjX2N2X3Byb2dfWUFD Qz0nYmlzb24gLXknCmFjX2N2X3Byb2dfYWNfY3RfQ0M9J2djYycKYWNfY3Zf cHJvZ19hY19jdF9DWFg9J2crKycKYWNfY3ZfcHJvZ19jY19jODk9JycKYWNf Y3ZfcHJvZ19jY19nPSd5ZXMnCmFjX2N2X3Byb2dfY3h4X2c9J3llcycKYWNf Y3ZfdGFyZ2V0PSd4ODZfNjQtdW5rbm93bi1jeWd3aW4nCmFjeF9jdl9jY19n Y2Nfc3VwcG9ydHNfYWRhPSdubycKYWN4X2N2X3Byb2dfTE49J2xuJwpnY2Nf Y3ZfaXNsPSdubycKZ2NjX2N2X3Byb2dfY21wX3NraXA9J2NtcCAtLWlnbm9y ZS1pbml0aWFsPTE2ICQkZjEgJCRmMicKZ2NjX2N2X3Rvb2xfZGlycz0nJwpn Y2NfY3ZfdG9vbF9wcmVmaXg9Jy91c3IvbG9jYWwnCmx0X2N2X29iamRpcj0n LmxpYnMnCgojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwojIyBPdXRwdXQgdmFy aWFibGVzLiAjIwojIyAtLS0tLS0tLS0tLS0tLS0tLSAjIwoKQVI9J2FyJwpB Ul9GT1JfQlVJTEQ9JyQoQVIpJwpBUl9GT1JfVEFSR0VUPSckKEFSKScKQVM9 J2FzJwpBU19GT1JfQlVJTEQ9JyQoQVMpJwpBU19GT1JfVEFSR0VUPSckKEFT KScKQVdLPSdnYXdrJwpCSVNPTj0nYmlzb24nCkJVSUxEX0NPTkZJRz0nJwpD Qz0nZ2NjJwpDQ19GT1JfQlVJTEQ9JyQoQ0MpJwpDQ19GT1JfVEFSR0VUPSck KENDKScKQ0ZMQUdTPSctZyAtTzInCkNGTEFHU19GT1JfQlVJTEQ9Jy1nIC1P MicKQ0ZMQUdTX0ZPUl9UQVJHRVQ9Jy1nIC1PMicKQ09NUElMRVJfQVNfRk9S X1RBUkdFVD0nJChBU19GT1JfVEFSR0VUKScKQ09NUElMRVJfTERfRk9SX1RB UkdFVD0nJChMRF9GT1JfVEFSR0VUKScKQ09NUElMRVJfTk1fRk9SX1RBUkdF VD0nJChOTV9GT1JfVEFSR0VUKScKQ09ORklHVVJFX0dEQl9USz0nJwpDUFBG TEFHUz0nJwpDWFg9J2crKycKQ1hYRkxBR1M9Jy1nIC1PMicKQ1hYRkxBR1Nf Rk9SX0JVSUxEPSctZyAtTzInCkNYWEZMQUdTX0ZPUl9UQVJHRVQ9Jy1nIC1P MicKQ1hYX0ZPUl9CVUlMRD0nJChDWFgpJwpDWFhfRk9SX1RBUkdFVD0nJChD WFgpJwpERUJVR19QUkVGSVhfQ0ZMQUdTX0ZPUl9UQVJHRVQ9JycKREVGUz0n LURQQUNLQUdFX05BTUU9XCJcIiAtRFBBQ0tBR0VfVEFSTkFNRT1cIlwiIC1E UEFDS0FHRV9WRVJTSU9OPVwiXCIgLURQQUNLQUdFX1NUUklORz1cIlwiIC1E UEFDS0FHRV9CVUdSRVBPUlQ9XCJcIiAtRFBBQ0tBR0VfVVJMPVwiXCIgLURM VF9PQkpESVI9XCIubGlicy9cIicKRExMVE9PTD0nZGxsdG9vbCcKRExMVE9P TF9GT1JfQlVJTEQ9JyQoRExMVE9PTCknCkRMTFRPT0xfRk9SX1RBUkdFVD0n JChETExUT09MKScKRUNIT19DPScnCkVDSE9fTj0nLW4nCkVDSE9fVD0nJwpF WEVFWFQ9Jy5leGUnCkVYUEVDVD0nZXhwZWN0JwpFWFRSQV9DT05GSUdBUkdT X0xJQkpBVkE9Jy0tZGlzYWJsZS1zdGF0aWMnCkZMQUdTX0ZPUl9UQVJHRVQ9 JyAtTCQkci8kKFRBUkdFVF9TVUJESVIpL3dpbnN1cC9jeWd3aW4gLWlzeXN0 ZW0gJCRzL3dpbnN1cC9jeWd3aW4vaW5jbHVkZSAtQiQkci8kKFRBUkdFVF9T VUJESVIpL25ld2xpYi8gLWlzeXN0ZW0gJCRyLyQoVEFSR0VUX1NVQkRJUikv bmV3bGliL3RhcmctaW5jbHVkZSAtaXN5c3RlbSAkJHMvbmV3bGliL2xpYmMv aW5jbHVkZScKRkxFWD0nLi4uL25ld2xpYi1jeWd3aW4vbWlzc2luZyBmbGV4 JwpHQ0NfRk9SX1RBUkdFVD0nJCgpJwpHQ0NfU0hMSUJfU1VCRElSPScvc2hs aWInCkdDSl9GT1JfQlVJTEQ9JyQoR0NKKScKR0NKX0ZPUl9UQVJHRVQ9JyQo R0NKKScKR0RCX1RLPScnCkdGT1JUUkFOX0ZPUl9CVUlMRD0nJChHRk9SVFJB TiknCkdGT1JUUkFOX0ZPUl9UQVJHRVQ9JyQoR0ZPUlRSQU4pJwpHTkFUQklO RD0nbm8nCkdOQVRNQUtFPSdubycKR09DX0ZPUl9CVUlMRD0nJChHT0MpJwpH T0NfRk9SX1RBUkdFVD0nJChHT0MpJwpJTlNUQUxMX0RBVEE9JyR7SU5TVEFM TH0gLW0gNjQ0JwpJTlNUQUxMX0dEQl9USz0nJwpJTlNUQUxMX1BST0dSQU09 JyR7SU5TVEFMTH0nCklOU1RBTExfU0NSSVBUPScke0lOU1RBTEx9JwpMRD0n L3Vzci9saWIvZ2NjL3g4Nl82NC1wYy1jeWd3aW4vNS40LjAvLi4vLi4vLi4v Li4veDg2XzY0LXBjLWN5Z3dpbi9iaW4vbGQuZXhlJwpMREZMQUdTPScnCkxE RkxBR1NfRk9SX0JVSUxEPScnCkxERkxBR1NfRk9SX1RBUkdFVD0nJwpMRF9G T1JfQlVJTEQ9JyQoTEQpJwpMRF9GT1JfVEFSR0VUPSckKExEKScKTEVYPScu Li4vbmV3bGliLWN5Z3dpbi9taXNzaW5nIGZsZXgnCkxJQk9CSlM9JycKTElC Uz0nJwpMSVBPPSdsaXBvJwpMSVBPX0ZPUl9UQVJHRVQ9JyQoTElQTyknCkxO PSdsbicKTE5fUz0nbG4gLXMnCkxUTElCT0JKUz0nJwpNND0nbTQnCk1BSU5U PScjJwpNQUlOVEFJTkVSX01PREVfRkFMU0U9JycKTUFJTlRBSU5FUl9NT0RF X1RSVUU9JyMnCk1BS0VJTkZPPSdtYWtlaW5mbycKTk09J25tJwpOTV9GT1Jf QlVJTEQ9JyQoTk0pJwpOTV9GT1JfVEFSR0VUPSckKE5NKScKT0JKQ09QWT0n b2JqY29weScKT0JKQ09QWV9GT1JfVEFSR0VUPSckKE9CSkNPUFkpJwpPQkpE VU1QPSdvYmpkdW1wJwpPQkpEVU1QX0ZPUl9UQVJHRVQ9JyQoT0JKRFVNUCkn Ck9CSkVYVD0nbycKUEFDS0FHRV9CVUdSRVBPUlQ9JycKUEFDS0FHRV9OQU1F PScnClBBQ0tBR0VfU1RSSU5HPScnClBBQ0tBR0VfVEFSTkFNRT0nJwpQQUNL QUdFX1VSTD0nJwpQQUNLQUdFX1ZFUlNJT049JycKUEFUSF9TRVBBUkFUT1I9 JzonClJBTkxJQj0ncmFubGliJwpSQU5MSUJfRk9SX0JVSUxEPSckKFJBTkxJ QiknClJBTkxJQl9GT1JfVEFSR0VUPSckKFJBTkxJQiknClJBV19DWFhfRk9S X1RBUkdFVD0nJChDWFgpJwpSRUFERUxGPSdyZWFkZWxmJwpSRUFERUxGX0ZP Ul9UQVJHRVQ9JyQoUkVBREVMRiknClJQQVRIX0VOVlZBUj0nUEFUSCcKUlVO VEVTVD0ncnVudGVzdCcKU0VEPScvdXNyL2Jpbi9zZWQnClNIRUxMPScvYmlu L3NoJwpTVFJJUD0nc3RyaXAnClNUUklQX0ZPUl9UQVJHRVQ9JyQoU1RSSVAp JwpTWVNST09UX0NGTEFHU19GT1JfVEFSR0VUPScnClRPUExFVkVMX0NPTkZJ R1VSRV9BUkdVTUVOVFM9Jy4vY29uZmlndXJlJwpXSU5ETUM9J3dpbmRtYycK V0lORE1DX0ZPUl9CVUlMRD0nJChXSU5ETUMpJwpXSU5ETUNfRk9SX1RBUkdF VD0nJChXSU5ETUMpJwpXSU5EUkVTPSd3aW5kcmVzJwpXSU5EUkVTX0ZPUl9C VUlMRD0nJChXSU5EUkVTKScKV0lORFJFU19GT1JfVEFSR0VUPSckKFdJTkRS RVMpJwpZQUNDPSdiaXNvbiAteScKYWNfY3RfQ0M9J2djYycKYWNfY3RfQ1hY PSdnKysnCmJpbmRpcj0nJHtleGVjX3ByZWZpeH0vYmluJwpidWlsZD0neDg2 XzY0LXVua25vd24tY3lnd2luJwpidWlsZF9hbGlhcz0nJwpidWlsZF9jb25m aWdhcmdzPScgLS1jYWNoZS1maWxlPS4vY29uZmlnLmNhY2hlICAtLXByb2dy YW0tdHJhbnNmb3JtLW5hbWU9J1wnJ3MseSx5LCdcJycgLS1kaXNhYmxlLW9w dGlvbi1jaGVja2luZycKYnVpbGRfY29uZmlnZGlycz0nJwpidWlsZF9jcHU9 J3g4Nl82NCcKYnVpbGRfbGlic3ViZGlyPSdidWlsZC14ODZfNjQtdW5rbm93 bi1jeWd3aW4nCmJ1aWxkX25vbmNhbm9uaWNhbD0neDg2XzY0LXVua25vd24t Y3lnd2luJwpidWlsZF9vcz0nY3lnd2luJwpidWlsZF9zdWJkaXI9J2J1aWxk LXg4Nl82NC11bmtub3duLWN5Z3dpbicKYnVpbGRfdG9vbGRpcj0nJHtleGVj X3ByZWZpeH0veDg2XzY0LXVua25vd24tY3lnd2luJwpidWlsZF92ZW5kb3I9 J3Vua25vd24nCmNvbXBhcmVfZXhjbHVzaW9ucz0nZ2NjL2NjKi1jaGVja3N1 bSQob2JqZXh0KSB8IGdjYy9hZGEvKnRvb2xzLyonCmNvbmZpZ2RpcnM9JyBl dGMnCmRhdGFkaXI9JyR7ZGF0YXJvb3RkaXJ9JwpkYXRhcm9vdGRpcj0nJHtw cmVmaXh9L3NoYXJlJwpkb19jb21wYXJlPSdjbXAgLS1pZ25vcmUtaW5pdGlh bD0xNiAkJGYxICQkZjInCmRvY2Rpcj0nJHtkYXRhcm9vdGRpcn0vZG9jLyR7 UEFDS0FHRX0nCmR2aWRpcj0nJHtkb2NkaXJ9JwpleGVjX3ByZWZpeD0nJHtw cmVmaXh9JwpleHRyYV9ob3N0X2xpYmliZXJ0eV9jb25maWd1cmVfZmxhZ3M9 JycKZXh0cmFfaG9zdF96bGliX2NvbmZpZ3VyZV9mbGFncz0nJwpleHRyYV9p c2xfZ21wX2NvbmZpZ3VyZV9mbGFncz0nJwpleHRyYV9saWJvZmZsb2FkbWlj X2NvbmZpZ3VyZV9mbGFncz0nJwpleHRyYV9saW5rZXJfcGx1Z2luX2NvbmZp Z3VyZV9mbGFncz0nJwpleHRyYV9saW5rZXJfcGx1Z2luX2ZsYWdzPScnCmV4 dHJhX21wY19nbXBfY29uZmlndXJlX2ZsYWdzPScnCmV4dHJhX21wY19tcGZy X2NvbmZpZ3VyZV9mbGFncz0nJwpleHRyYV9tcGZyX2NvbmZpZ3VyZV9mbGFn cz0nJwpnbXBpbmM9JycKZ21wbGlicz0nLWxtcGMgLWxtcGZyIC1sZ21wJwpo b3N0PSd4ODZfNjQtdW5rbm93bi1jeWd3aW4nCmhvc3RfYWxpYXM9JycKaG9z dF9jb25maWdhcmdzPScgLS1jYWNoZS1maWxlPS4vY29uZmlnLmNhY2hlICAt LXdpdGgtc3lzdGVtLXpsaWIgLS13aXRoLW5ld2xpYiAgLS1wcm9ncmFtLXRy YW5zZm9ybS1uYW1lPSdcJydzLHkseSwnXCcnIC0tZGlzYWJsZS1vcHRpb24t Y2hlY2tpbmcnCmhvc3RfY3B1PSd4ODZfNjQnCmhvc3Rfbm9uY2Fub25pY2Fs PSd4ODZfNjQtdW5rbm93bi1jeWd3aW4nCmhvc3Rfb3M9J2N5Z3dpbicKaG9z dF9zaGFyZWQ9J25vJwpob3N0X3N1YmRpcj0nLicKaG9zdF92ZW5kb3I9J3Vu a25vd24nCmh0bWxkaXI9JyR7ZG9jZGlyfScKaW5jbHVkZWRpcj0nJHtwcmVm aXh9L2luY2x1ZGUnCmluZm9kaXI9JyR7ZGF0YXJvb3RkaXJ9L2luZm8nCmlz bGluYz0nJwppc2xsaWJzPScnCmlzbHZlcj0nJwpsaWJkaXI9JyR7ZXhlY19w cmVmaXh9L2xpYicKbGliZXhlY2Rpcj0nJHtleGVjX3ByZWZpeH0vbGliZXhl YycKbG9jYWxlZGlyPScke2RhdGFyb290ZGlyfS9sb2NhbGUnCmxvY2Fsc3Rh dGVkaXI9JyR7cHJlZml4fS92YXInCm1hbmRpcj0nJHtkYXRhcm9vdGRpcn0v bWFuJwpvbGRpbmNsdWRlZGlyPScvdXNyL2luY2x1ZGUnCnBkZmRpcj0nJHtk b2NkaXJ9Jwpwb3N0c3RhZ2UxX2xkZmxhZ3M9Jy1zdGF0aWMtbGlic3RkYysr IC1zdGF0aWMtbGliZ2NjJwpwb3N0c3RhZ2UxX2xpYnM9JycKcHJlZml4PScv dXNyL2xvY2FsJwpwcm9ncmFtX3RyYW5zZm9ybV9uYW1lPSdzLHkseSwnCnBz ZGlyPScke2RvY2Rpcn0nCnNiaW5kaXI9JyR7ZXhlY19wcmVmaXh9L3NiaW4n CnNoYXJlZHN0YXRlZGlyPScke3ByZWZpeH0vY29tJwpzdGFnZTFfY2ZsYWdz PSctZycKc3RhZ2UxX2NoZWNraW5nPSctLWVuYWJsZS1jaGVja2luZz15ZXMs dHlwZXMnCnN0YWdlMV9sYW5ndWFnZXM9JyxjLCcKc3RhZ2UxX2xkZmxhZ3M9 Jy1zdGF0aWMtbGlic3RkYysrIC1zdGF0aWMtbGliZ2NjJwpzdGFnZTFfbGli cz0nJwpzdGFnZTJfd2Vycm9yX2ZsYWc9JycKc3lzY29uZmRpcj0nJHtwcmVm aXh9L2V0YycKdGFyZ2V0PSd4ODZfNjQtdW5rbm93bi1jeWd3aW4nCnRhcmdl dF9hbGlhcz0nJwp0YXJnZXRfY29uZmlnYXJncz0nLS1jYWNoZS1maWxlPS4v Y29uZmlnLmNhY2hlIC0td2l0aC1uZXdsaWIgLS1lbmFibGUtbXVsdGlsaWIg ICAtLXByb2dyYW0tdHJhbnNmb3JtLW5hbWU9J1wnJ3MseSx5LCdcJycgLS1k aXNhYmxlLW9wdGlvbi1jaGVja2luZycKdGFyZ2V0X2NvbmZpZ2RpcnM9J25l d2xpYiB3aW5zdXAnCnRhcmdldF9jcHU9J3g4Nl82NCcKdGFyZ2V0X25vbmNh bm9uaWNhbD0neDg2XzY0LXVua25vd24tY3lnd2luJwp0YXJnZXRfb3M9J2N5 Z3dpbicKdGFyZ2V0X3N1YmRpcj0neDg2XzY0LXVua25vd24tY3lnd2luJwp0 YXJnZXRfdmVuZG9yPSd1bmtub3duJwp0b29sZGlyPScke2V4ZWNfcHJlZml4 fS94ODZfNjQtdW5rbm93bi1jeWd3aW4nCgojIyAtLS0tLS0tLS0tLS0tLS0t LS0tICMjCiMjIEZpbGUgc3Vic3RpdHV0aW9ucy4gIyMKIyMgLS0tLS0tLS0t LS0tLS0tLS0tLSAjIwoKYWxwaGFpZWVlX2ZyYWc9Jy9kZXYvbnVsbCcKaG9z dF9tYWtlZmlsZV9mcmFnPScuL2NvbmZpZy9taC1jeWd3aW4nCm9zcGFjZV9m cmFnPScvZGV2L251bGwnCnNlcmlhbGl6YXRpb25fZGVwZW5kZW5jaWVzPSdz ZXJkZXAudG1wJwp0YXJnZXRfbWFrZWZpbGVfZnJhZz0nL2Rldi9udWxsJwoK IyMgLS0tLS0tLS0tLS0gIyMKIyMgY29uZmRlZnMuaC4gIyMKIyMgLS0tLS0t LS0tLS0gIyMKCi8qIGNvbmZkZWZzLmggKi8KI2RlZmluZSBQQUNLQUdFX05B TUUgIiIKI2RlZmluZSBQQUNLQUdFX1RBUk5BTUUgIiIKI2RlZmluZSBQQUNL QUdFX1ZFUlNJT04gIiIKI2RlZmluZSBQQUNLQUdFX1NUUklORyAiIgojZGVm aW5lIFBBQ0tBR0VfQlVHUkVQT1JUICIiCiNkZWZpbmUgUEFDS0FHRV9VUkwg IiIKI2RlZmluZSBMVF9PQkpESVIgIi5saWJzLyIKCmNvbmZpZ3VyZTogZXhp dCAwCg== --------------5722E6741526015F631EDF0E--