From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id yBllHfpKCmd1eAEAe85BDQ:P1 (envelope-from ) for ; Sat, 12 Oct 2024 10:10:02 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:58f0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2.migadu.com with LMTPS id yBllHfpKCmd1eAEAe85BDQ (envelope-from ) for ; Sat, 12 Oct 2024 12:10:02 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=colorado.edu header.s=selector1 header.b=Fa+crWRg; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=colorado.edu; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1728727802; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=Fj3f2K1K6WQlyyU2ej761GINqlckz5iBzX7f6lFXczc=; b=M8D+p3ZLAdeTIusqfqvPkM4l8iBGJ7mgDEcAuxl6jYHdFQz1U7Edy3lDMPV7N9pmwmIDrr z+Ys2dJ3Z5i/GcivanA3W4CsK9LuIsVjCmHyJpaco3PglSAcVP8wHTHRGSvseZfGfZUMZG hR+947Gmk/KYKHYJ5+q/Kpja+HPYRaxOSKsf66Y5G0S269qCQLqmYBXmXpuZTD0FRm1rb5 hrg6BHhxAS+HDLVee6BGn3lQ0JCcytD9ujdoIjRDFsxJ9k21q0A6OZgB4mn8skx0PZMQyU f43Pi6ORWlTQYlSwxdLNYtuEUfJpF3dwCTS7aAYGHhy1/4kAJwbX0XaZ7Ea+Ww== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=colorado.edu header.s=selector1 header.b=Fa+crWRg; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=colorado.edu; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=key1; d=yhetil.org; t=1728727802; a=rsa-sha256; cv=pass; b=LqR7d172r1IQ7s8y0+oOiDVjmN7MPpG+KNHIyDqBahTqnehQUPjwDX8MwWEjs2ALpGFL32 d5BsSkA5iJy1TWYIL5ig/wxkz4IEPV+0/MqM9P5ZKzdfwP7KI6meNdFWXrKHZad7JAiwAe KuN8cYxGkZhiXMX5Vnt9idECQ0PE7w5GRYi4HxGDlsB9RjQNTFk7g4N/iG6Sg5YE+lXARw KlB62rR/wXUexQabolINsXCk2TrJFm1Sr9m+DhdyTlyttO4tMPH9KEFJhWiwWlvFfT1uI+ f8auKbz9Rtody5Mkc9UuFNTTmzpNGboRf7F9Wl5x5uRrysvNrMc+t6O73nhOzg== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 95EE979068 for ; Sat, 12 Oct 2024 12:10:01 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1szYa1-0003LD-Dv; Sat, 12 Oct 2024 05:38:33 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sz9ee-0007l7-OI for emacs-orgmode@gnu.org; Fri, 11 Oct 2024 03:01:40 -0400 Received: from mail-eastus2azlp170100000.outbound.protection.outlook.com ([2a01:111:f403:c110::] helo=BN1PR04CU002.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sz9eZ-0002h4-3z for emacs-orgmode@gnu.org; Fri, 11 Oct 2024 03:01:40 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=jmgwEpIrW+ECJHcsM/IPbxJPDBPDt4Y8mi8A7QTT8n06a0/V2DJJyNj6t2licN4MZGN70wyYHFbG/SD4WBAXS4aN8oyvSP8ETbnqrC/1LNOsnG4sUJfyQ8+uasXfLNPdVWoNaEG3Sqs9aw4wid49hlxDI7i76JxsB+TC/wo5OajCGuAP0kq7FKYAPN7grS7XC4kxO3ejDC8S2+MTPHOBvqTUS+bHPwGGgMEx2lzBPJnbKuUSHCtUNk14ISJBU13TYaPhhuMnUVKbQvn/778PlQ7PScGf0W09MdVAKxxvsTWblEzuvS9Ls2aqnlUO59X/gmJq9qSlplRWTbsyixhZ+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Fj3f2K1K6WQlyyU2ej761GINqlckz5iBzX7f6lFXczc=; b=Pg/CPkITYCLgatBC2Uvl9xN7NJBy59cIa0c3fs4ENpxRLfBRediN/Qs011JIl21RC+YDw9ibk3AXopopLCFZ22OMRcRHunU478iJY51N0l62wGvi/rDiz6y6Ksvn2f0C1MmlObmnnI2N6rDFPtP/8GkvLsSUafddCStovlWzpnfFyjNxSPlmgiKq+jm81K9r4h7MBTSKNET1pUaRS+ZQNmEXYwuiP2NdH6ZZHhQrd0y85N728gRfqzMG4BWzB1xsnnQykcmHaM0eUrCIyXrjUUfq7UnZC0iJ3MZ62DJsedmCB6t5il/QjN2ShhkwMzeWXbamhCVa50ZutzrKXLW/Zw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=colorado.edu; dmarc=pass action=none header.from=colorado.edu; dkim=pass header.d=colorado.edu; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=colorado.edu; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Fj3f2K1K6WQlyyU2ej761GINqlckz5iBzX7f6lFXczc=; b=Fa+crWRgZ9PTMDnvTE6GLSRnRvJiBWAjOWpRi0jM1kaiyvRVqoUGxZs7TqCW20TsOjojeCq5kkJGSxiqTvXRfOzD/nWgGcYLGzXj2ppK1PI+x0TluHws+Lckt1aH0DRpYNkX8nfX6Te5asNmCiXQT7y/BRnGWtD4Joo9kjiXzDLug+t7FHIGfAuC98P+iouSzy5hDn8uV7MefuYk+CT2HWFQfSt/oNVKuZTU2nQf+vui3EGL6YVTruBMhBLjXyhaz1M15tXsj6hUPj+7c93cpSGIA/dbhxYHMxAVETteRu/kyukLdIimpZar8rrEygV2QfFr8xY22o2lv4Bzs4s+gg== Received: from BYAPR03MB4552.namprd03.prod.outlook.com (2603:10b6:a03:cc::21) by SA0PR03MB5548.namprd03.prod.outlook.com (2603:10b6:806:c3::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8048.16; Fri, 11 Oct 2024 06:56:28 +0000 Received: from BYAPR03MB4552.namprd03.prod.outlook.com ([fe80::243:464d:2e20:ad5b]) by BYAPR03MB4552.namprd03.prod.outlook.com ([fe80::243:464d:2e20:ad5b%6]) with mapi id 15.20.8026.016; Fri, 11 Oct 2024 06:56:27 +0000 From: Andrew Berger To: "emacs-orgmode@gnu.org" Subject: [BUG] warning while loading org-agenda [9.7.12 (9.7.12-28c83e @ /Users/andrew/.emacs.d/elpa/29.1/develop/org-9.7.12/)] Thread-Topic: [BUG] warning while loading org-agenda [9.7.12 (9.7.12-28c83e @ /Users/andrew/.emacs.d/elpa/29.1/develop/org-9.7.12/)] Thread-Index: AQHbG6qxDJ11AnLxTUyGXgJ13tR7kg== Date: Fri, 11 Oct 2024 06:56:27 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BYAPR03MB4552:EE_|SA0PR03MB5548:EE_ x-ms-office365-filtering-correlation-id: fe749bf1-33b1-42ea-ee93-08dce9c1d407 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|376014|1800799024|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?RWpMZURFc3JRUHpxMCt1azJscWtuQzJpSGhnN2pMcmVYUGhaeDIrQ3laQUxn?= =?utf-8?B?YUd5T05Ec3VRYXJ5aEtEQldpVjV6bU1qNWQyT3R2Y0ZLcWtCV3pNbjVFSWFZ?= =?utf-8?B?bERhbnRiRnBUdWQycVYzTllIWDU3QzVxKzA0OTArVCsyOFdiclIxYUpNTDZY?= =?utf-8?B?VDh5VzFySWFyM1VYbkRESm4zcExmcys2R0Zlb01nMG1HblZIdHpBMytrYXVs?= =?utf-8?B?aDc2M1lqQkFqQlJmTXNraWhTbWFrZU44K3FYTHFmK3dHSXQ0NjF4S1VLemR4?= =?utf-8?B?WFl2R29rQm9ZcXJTQ2JWNWVXNGZmQzlidkhrVmc3eGZQZk9IR2JmV3FJZ2hx?= =?utf-8?B?U2xVOUJsU1RMc1hPUHprUjN5cFRXcVhWd2tGYTlhNFN5TWREOHBFSXhjak03?= =?utf-8?B?d3RyY2N1T2xITjJGNVVwaWxpanRWcHNSRTlwMG5vMC93WklLV25zMkFqa2RB?= =?utf-8?B?Q04zQVdIMHpCN1VydlJmMDFkTHg0dDRQWVhVZ2VLYVNiZ1E0WXY1K2J3T21E?= =?utf-8?B?UjBXTjZMbXJGcEdsVlk1M0FmWjZSakVNblJwSHFGWElHenhCVUpKbkNSVDg0?= =?utf-8?B?YjNCRzE5L2t0SzhlcWlaMWQ5UCtRUExqUTNyeklXWEJmL0dCMmNiRmhxaXk1?= =?utf-8?B?U1ZTQW9iNTZyRXRmdDBjTnNEODNhc2k5SXFsL3hyUHdaUGhWTXM0Wm40a3NQ?= =?utf-8?B?UjdqbURSRDVzQ2N5UFlMdzk1emNPM01ZSEdxS2lDeDk0ajdvZkVYVUVobGFF?= =?utf-8?B?VGp4dE1mdnpLTDkxeFZCRjJwOE9YaG5NeDJGZkkwSWpLZ0UzaTA3cWROaGM5?= =?utf-8?B?WXlCQmJXVU92cFNVOU4zd0hRREJlaDJzbHExWkw5ODFucUpNSDMyQWdXNjBF?= =?utf-8?B?MmsySTB4TGdRT29JbENCeGY2cTY3cEV2elhoaFVHQlNzejkwaDE4MmNCZGZM?= =?utf-8?B?Rnl0dGVoUjNydFM4dlpuU2lCR3BaT2Q4VnJvZkRpSkQwTnBDc09XZWhqZWhQ?= =?utf-8?B?dnBsTzNZUWpwZXdQS01XRFIzdVljK01OMy9WOG9pdURuVy9qVVFsdFNEUGdp?= =?utf-8?B?QkF1UHh4T2pZeVUzaGRjdVhjUHB6QmkzUU9rL0pPL2JxYVNkZjBITjROZmdV?= =?utf-8?B?MHNoVDdNUHRNMG55Mnh2dTNpYmhVbzlwUG9yYXRKYzIrem5yQUlaV0l6KzFv?= =?utf-8?B?UVhiR0dBTDNjYXYxVHFtemk0cE5xYUJhYm5yN3U4eTY2RERzWTVDYTVxUlMx?= =?utf-8?B?V2w3MUxKUHdkR0JMelFkVWJZeHJ1UHBuUEJYNTZTMjlKWGV6S21WU1lvNGE0?= =?utf-8?B?OUQzYU1jeTBVTEp3YW1XbkRxcEFjY2VyamVzeXhZVGNESTNkWjljNzU4Y0Yr?= =?utf-8?B?bHcyRGx1UkRZUFRCN3lZY0dSejh3Ym5Ua1NYcEZkYzRTRnRsekRrUDN2djBi?= =?utf-8?B?MFNPRjE5VWJkMG1yUWU5enRVM0V6U3RkQWJYTzFjUktNQ05Va2FnVnd1VUJZ?= =?utf-8?B?R0x6OVZNN0NyZ3RlMi9DZFZUOVZHbjZleE9ERzBNNmVhVWVTSkNudDlaR1Ix?= =?utf-8?B?U3NObVVoT0g4WHhoSi9MbzZXcktORHRMMTNFZXpzN0s5ZzdJSmJFQkYrYkNv?= =?utf-8?B?eWYzd1ZEWC9zbmVxWUUyQzJmRlZLZ0greW9BbXdudUljTWx1dXlRbVJPYXdN?= =?utf-8?B?WU9KU0luUzhmdnF2UjdwamRGenYzb2kvRXNrRjk0VFN0SlNCYlZoNTJQaU1W?= =?utf-8?B?c2JpTDIvbGc3anN6L25iYjZlNWF4bFRxNkhQU2wvWlVEK2VUU0owcWZZVGVL?= =?utf-8?B?eUVHZHRPQW1mRU5xTjdwZz09?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BYAPR03MB4552.namprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(38070700018); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?MmpLT2EwS2tXK3hFMVE5b25qZUpDTUNqR1lzMGdFb3V4NkYrZnRZOGdkblh6?= =?utf-8?B?K2RmQkRFRElYSWhUam1Fd1VmZitIT2RVQXptY2JDRFhRU3R5cUdIS2hNVG95?= =?utf-8?B?ejhyY2d5SDZMRzNtV1drYU5sM29malZ6T2E0MjJheEhSZzl5NG1LU0xqUU94?= =?utf-8?B?SitYZ3BFQlpEYTNLSHo0ZkU4UmFSeExFNTVKTEtldzFJeU1EMkJmU2VHRmtH?= =?utf-8?B?RE9JZFdIa0hWUE94UEpSQkZ5MnRma2FTZ1dyUk80cjA4dFdSaWltelhGQ0g2?= =?utf-8?B?RW4xYUVWZWpNNFVFMVoxU0ZabDNZcnFLeldYTEZ4VklzdjQ2SDRlNXArelpD?= =?utf-8?B?RG5MU0FoYng1bGlkSHVrYlBVdHlYZzYwaE9mN3lCU3ZZZW8zMEdIRmVjTVc2?= =?utf-8?B?cGNQTHNDemszSlpXc3pNVVVLT1NmcHJVak5UcCt0MS94ejJhVndHU1IvMnhL?= =?utf-8?B?czlHMXprQ3Zlb3ovczZPUGh1MlQwVXp1bHRqVFpOMVc1WG9YTFJEeCsveXFM?= =?utf-8?B?WXNFTU5qc3A0ZStzWEVhYzFFS0dyc2FFVEdNbTdDSkgyTUJuVzZHUTVNSjBE?= =?utf-8?B?M0dWN3RFNDFpTUFtNUNaUE9RVlZOek42U3Y3bDI0UnRDSkN6bllwSHJIdDhk?= =?utf-8?B?eFV4bEc5Q0V4R0ZjWmxlcjUzYmlUOStuQmorMUkzMnJvM2JxVW00MXN4dEoy?= =?utf-8?B?TVNVSm9aRi8vYWVuSnY2YXFzdEtDTXhiNkd0UDVvY1JjYTZ2Wkd3N0Q2UDVa?= =?utf-8?B?Z0dzUHJmMlJicEtGSjlkQnB0cS9QOTFLMHo4SExYRDJvUjg0ekF6RTRhTjZv?= =?utf-8?B?M0pZQWgvRm9tRUJYNlAzMTdockdWaHZIUGZSOVJoSGJJMzJhdFk0cDRvYnZF?= =?utf-8?B?QklDSTNHUXowY09GdjAySm84NDl1Q0liSUgwbVc2clJVWHExUkFxd0ZYcHFZ?= =?utf-8?B?V05oMTlwVGRkUkJrMHl2QzBaSGp1Vk9HL3U5ZUcrTTduei9EVk9iY0ZNclQv?= =?utf-8?B?dlRZbWdhTGRWNEVBeE16UGVHSkNFZzhIUzBOaVJqSVZXeHgveVpGV1lWM3A0?= =?utf-8?B?dG44dzU3SGd5dGxiZGRlWHJkbTdYMG1MRFpCRlE3a2JMOEFSd2xKbklDNWx3?= =?utf-8?B?MlFSbE9IMXlGVnRzRnhlcUpySW1uZWVWZ2E5bWQ0bjJ1aTNxRGx6Z0FFREw2?= =?utf-8?B?ME1SRmNJZ0ZZS2J6MXFzQ1Z3c0ppQjFZUE0yU09QOWRjT1VIQTQ3ZElvOHZL?= =?utf-8?B?ZmdYYVdzdzRmazA0WjBwUmVDV3JJeTBMVUNjZ1FrUkFJNE5vdWs1WUdsY1Bq?= =?utf-8?B?endQZUVxS1NLTGVycVJrZFRlN2JsZ2llTW11VFFEZFEyRXN3bjZCY3FhL0VW?= =?utf-8?B?QjAyeHVhcFlMRTZQOE5INC83bEROMkx3R1czenVjRXpPOXdNVHZpb2JlWUtp?= =?utf-8?B?YUFXQk1DM2NYbGZVRlJ4aEd4bDloaldUbVh5dmRKaGtoTnNIV3pOUlYwYS9P?= =?utf-8?B?QjliVkpZc1FwNXpZSktSeHgwYlRkOEl5K29EK0pzTVZqOHE5Sm1YZk44UTZ6?= =?utf-8?B?azJTODdoV0xodUNPcUgvMFY2WWEwVFVrNmZBa0VOVE0rR1p2Z1lLZ0g2OHkx?= =?utf-8?B?WlN2dVI0dUZXMlVzV1ZEbFQ4WVh6cjJTR1lGcC92bEVobGcvc2l0Wm1rMHVP?= =?utf-8?B?c28zSXVYaHdsK1FyMmJTRlVpOTI1cE0wUXdrdnRGVmsyYlN1d0x1dXJYTG1n?= =?utf-8?B?UW9VaUpyQ3pITDBJUkhxcUN4UnV4SGJjS2UxZlNnWTQ5L2RtZ3cxWjhhTEhV?= =?utf-8?B?aDZxb29rd09LRjZmMmo2OGUrSHdUSHMwUTBDYXRpZyt1WkV6T21aOWRkaXRy?= =?utf-8?B?emN4WHBvMjdLM3VGR2JYTDFzcGtZbGt6VkliNWNlZnhCb3V4ZUZoM2Uxd2NZ?= =?utf-8?B?RndJNXVmMWQ4bGJpS3E3dGc0VFRnUXg1T3N4aElwaUpXTU1hVjI3azg1eFNm?= =?utf-8?B?aTM3WmpFdGF1eFhsNVIzUUp1QTYxY3VyVjlGWUFsYk1YeUVZL0tzcGdFNDg2?= =?utf-8?B?MkRJUlRuT21lYmVMRE53YkV3c3FIV3BYN0pBVkM3bHFFWDBvdG1BTE5pSWVU?= =?utf-8?Q?W3uaFkKylXxNvv0b56vNSiNMD?= Content-Type: text/plain; charset="utf-8" Content-ID: <8EFD6F17A7A7D3469B9A15B2A3953A60@namprd03.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: colorado.edu X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR03MB4552.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: fe749bf1-33b1-42ea-ee93-08dce9c1d407 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 Oct 2024 06:56:27.4529 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3ded8b1b-070d-4629-82e4-c0b019f46057 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: eBadQ+wNY1Y8SxNgAIt2n8oZRGMl6hPttRIOyuquJpNPkvF7XISbNkLmHtSQsiFM/+7jS5IHtnipSQRgtRkKmQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5548 Received-SPF: pass client-ip=2a01:111:f403:c110::; envelope-from=aberger@colorado.edu; helo=BN1PR04CU002.outbound.protection.outlook.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 12 Oct 2024 05:38:29 -0400 X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Scanner: mx11.migadu.com X-Migadu-Spam-Score: 0.51 X-Spam-Score: 0.51 X-Migadu-Queue-Id: 95EE979068 X-TUID: bm1Aavj1VAzh DQoNCkdvdCB0aGUgZm9sbG93aW5nIHdhcm5pbmcgd2hpbGUgZXZhbHVhdGluZyBvcmctYWdlbmRh Lg0KDQpFbWFjcyA6IEdOVSBFbWFjcyAyOS4xIChidWlsZCAxLCBhYXJjaDY0LWFwcGxlLWRhcndp bjIzLjQuMCwgQ2FyYm9uIA0KVmVyc2lvbiAxNzAgQXBwS2l0IDI0ODcuNSkNCm9mIDIwMjQtMDQt MjgNClBhY2thZ2U6IE9yZyBtb2RlIHZlcnNpb24gOS43LjEyICg5LjcuMTItMjhjODNlIEAgDQov VXNlcnMvYW5kcmV3Ly5lbWFjcy5kL2VscGEvMjkuMS9kZXZlbG9wL29yZy05LjcuMTIvKQ0KDQpj dXJyZW50IHN0YXRlOg0KPT09PT09PT09PT09PT0NCihzZXRxDQpvcmctYWdlbmRhLXByZWZpeC1m b3JtYXQgJygoYWdlbmRhIC4gIiAlaSAlLTEyOmMlPy0xMnQlIHMiKSAodG9kbyAuICIgJWkgDQol LTEyOmMgJWwlbCIpICh0YWdzIC4gIiAlaSAlLTEyOmMgJWwlbCIpIChzZWFyY2ggLiAiICVpICUt MTI6YyAlbCVMIikpDQpvcmctbGluay1lbGlzcC1jb25maXJtLWZ1bmN0aW9uICd5ZXMtb3Itbm8t cA0Kb3JnLWRpcmVjdG9yeSAiL1VzZXJzL2FuZHJldy9vcmciDQpvcmctYmlidGV4LWhlYWRsaW5l LWZvcm1hdC1mdW5jdGlvbiAnb3JnLWJpYnRleC1oZWFkbGluZS1mb3JtYXQtZGVmYXVsdA0Kb3Jn LWRvd25sb2FkLWZpbGUtZm9ybWF0LWZ1bmN0aW9uICdvcmctZG93bmxvYWQtZmlsZS1mb3JtYXQt ZGVmYXVsdA0Kb3JnLWxvZy1kb25lICd0aW1lDQpvcmctc3RhcnR1cC1mb2xkZWQgdA0Kb3JnLWJh YmVsLWFmdGVyLWV4ZWN1dGUtaG9vayAnKHNwYWNlbWFjcy9vYi1maXgtaW5saW5lLWltYWdlcykN Cm9yZy1hZ2VuZGEtZmlsZXMgJygifi9vcmcvYWdlbmRhLm9yZyIgIn4vb3JnL2ZpbmFuY2VzLm9y ZyIgDQoifi9vcmcvaGVhbHRoY2FyZS5vcmciICJ+L29yZy9qb3VybmFsLm9yZyIgIn4vb3JnL2xh Yl9ub3RlYm9vay5vcmciIA0KIn4vb3JnL25vdGVzLm9yZyIgIn4vb3JnL3Jlc2VhcmNoLm9yZyIN CiJ+L29yZy90b29saW5nLm9yZyIgIn4vb3JnL3dpa2kub3JnIiAifi9vcmcvYWNhZGVtaWNzLm9y ZyIgDQoifi9vcmcvcmVzZWFyY2gvZ3JhZF9hcHBzLm9yZyIgIn4vb3JnL3Jlc2VhcmNoL21lZXRp bmdzLm9yZyIgDQoifi9vcmcvcmVzZWFyY2gvcGFwZXJzLm9yZyIpDQpvcmctY2FwdHVyZS10ZW1w bGF0ZXMgJygoIm4iICJub3RlcyIpICgibm4iICJnZW5lcmFsIG5vdGUiIGVudHJ5IA0KKGZpbGUr aGVhZGxpbmUgIn4vb3JnL25vdGVzLm9yZyIgImdlbmVyYWwiKSAiKiAlPyVeRyAlKG9yZy1zZXQt cHJvcGVydHkgDQpcImNyZWF0ZWRcIiBcIiVVXCIpIikNCigibnAiICJwcm9qZWN0IG5vdGUiIGVu dHJ5IChmaWxlK2hlYWRsaW5lICJ+L29yZy9ub3Rlcy5vcmciICJwcm9qZWN0IikgDQoiKiAlPyVe e3Byb2plY3R8Z2VuZXJhbH1wICUob3JnLXNldC1wcm9wZXJ0eSBcImNyZWF0ZWRcIiBcIiVVXCIp IikgKCJ0IiANCiJ0YXNrcyIpDQooInR0IiAidW50aW1lZCIgZW50cnkgKGZpbGUraGVhZGxpbmUg In4vb3JnL2FnZW5kYS5vcmciICJ0YXNrcyIpICIqIFRPRE8gDQpbIyVee3ByaW9yaXR5fEJ9XSAl PyAlXntwcm9qZWN0fGdlbmVyYWx9cCAlKG9yZy1zZXQtcHJvcGVydHkgXCJjcmVhdGVkXCIgDQpc IiVVXCIpIikNCigidGQiICJkZWFkbGluZSIgZW50cnkgKGZpbGUraGVhZGxpbmUgIn4vb3JnL2Fn ZW5kYS5vcmciICJ0YXNrcyIpDQoiKiBUT0RPIFsjJV57cHJpb3JpdHl8Qn1dICU/XG5ERUFETElO RTogJV57c3BlY2lmeSBkZWFkbGluZX10IA0KJV57cHJvamVjdHxnZW5lcmFsfXAgJShvcmctc2V0 LXByb3BlcnR5IFwiY3JlYXRlZFwiIFwiJVVcIikiKQ0KKCJ0cyIgInNjaGVkdWxlZCIgZW50cnkg KGZpbGUraGVhZGxpbmUgIn4vb3JnL2FnZW5kYS5vcmciICJ0YXNrcyIpDQoiKiBUT0RPIFsjJV57 cHJpb3JpdHl8Qn1dICU/XG5TQ0hFRFVMRUQ6ICVee3NwZWNpZnkgc2NoZWR1bGVkIHN0YXJ0IA0K ZGF0ZX10ICVee3Byb2plY3R8Z2VuZXJhbH1wICUob3JnLXNldC1wcm9wZXJ0eSBcImNyZWF0ZWRc IiBcIiVVXCIpIikNCigiYyIgImNhbGVuZGFyIikgKCJjYyIgImRhdGUgJiB0aW1lIiBlbnRyeSAo ZmlsZStoZWFkbGluZSANCiJ+L29yZy9hZ2VuZGEub3JnIiAiY2FsZW5kYXIiKSAiKiAlXlQgJT8i KQ0KKCJjZCIgImRhdGUiIGVudHJ5IChmaWxlK2hlYWRsaW5lICJ+L29yZy9hZ2VuZGEub3JnIiAi Y2FsZW5kYXIiKSAiKiAlXnQgDQolPyIpDQooImNiIiAiYmlydGhkYXkiIGl0ZW0gKGZpbGUraGVh ZGxpbmUgIn4vb3JnL2FnZW5kYS5vcmciICJiaXJ0aGRheXMiKQ0KIi0gXFwlXFwlKG9yZy1hbm5p dmVyc2FyeSAlXnt5ZWFyIChpZiBrbm93bil9ICVee21vbnRofSAlXntkYXl9KSANCiVee3BlcnNv biAoaWYgeWVhciBpcyBrbm93biwgeW91IGNhbiBhZGQgYSBcXCVkIHRvIGhhdmUgdGhlaXIgYWdl IA0KbGlzdGVkKX0iKQ0KKCJjciIgInJhbmdlIiBlbnRyeSAoZmlsZStoZWFkbGluZSAifi9vcmcv YWdlbmRhLm9yZyIgImNhbGVuZGFyIikgIiogDQolXnQtLSVedCAlPyIpDQooImNtIiAibWVldGlu ZyIgZW50cnkgKGZpbGUraGVhZGxpbmUgIn4vb3JnL2FnZW5kYS5vcmciICJtZWV0aW5ncyIpICIq IA0KJV5UICU/ICVee21lZXRpbmctdHlwZX1wICUob3JnLXNldC1wcm9wZXJ0eSBcImVudHJ5LXR5 cGVcIiBcIm1lZXRpbmdcIikiKQ0KKCJqIiAiam91cm5hbCIpICgianIiICJyZXNlYXJjaCBqb3Vy bmFsIiBlbnRyeSAoZmlsZStvbHArZGF0ZXRyZWUgDQoifi9vcmcvam91cm5hbC5vcmciICJyZXNl YXJjaCIpICIqICVVIC0gJT8gOmpvdXJuYWw6IiA6anVtcC10by1jYXB0dXJlZCB0KQ0KKCJqYSIg ImFjYWRlbWljcyBqb3VybmFsIiBlbnRyeSAoZmlsZStvbHArZGF0ZXRyZWUgIn4vb3JnL2pvdXJu YWwub3JnIiANCiJhY2FkZW1pY3MiKSAiKiAlVSAtICU/IDpqb3VybmFsOiIgOmp1bXAtdG8tY2Fw dHVyZWQgdCkNCigiamoiICJwZXJzb25hbCBqb3VybmFsIiBlbnRyeSAoZmlsZStvbHArZGF0ZXRy ZWUgIn4vb3JnL2pvdXJuYWwub3JnIiANCiJwZXJzb25hbCIpICIqICVVIC0gJT8gOmpvdXJuYWw6 ICUob3JnLXNldC1wcm9wZXJ0eSBcImVudHJ5LXZpc2liaWxpdHlcIiANClwicHJpdmF0ZVwiKSIN CjpqdW1wLXRvLWNhcHR1cmVkIHQpDQooImpuIiAibGFiIG5vdGVib29rIikNCigiam5uIiAibGFi IG5vdGVib29rIGVudHJ5IiBlbnRyeSAoZmlsZStvbHArZGF0ZXRyZWUgDQoifi9vcmcvbGFiX25v dGVib29rLm9yZyIgImxvZyIpICIqICVVIC0gJT8gOmxhYl9ub3RlYm9vazogJV57cHJvamVjdH1w IA0KJV57c3VicHJvamVjdH1wIiA6anVtcC10by1jYXB0dXJlZA0KdCkNCigiam5pIiAiaW1hZ2lu ZyBzZXNzaW9uIiBlbnRyeSAoZmlsZStvbHArZGF0ZXRyZWUgDQoifi9vcmcvbGFiX25vdGVib29r Lm9yZyIgImxvZyIpIA0KIiVbfi9vcmcvYXJ0aWZhY3RzL2NhcHR1cmVfdGVtcGxhdGVzL2NsYW5k aW5pbl8ycF9pbWFnaW5nX2NoZWNrbGlzdC5vcmddIg0KOmp1bXAtdG8tY2FwdHVyZWQgdCkNCikN Cm9yZy1wZXJzaXN0LWFmdGVyLXJlYWQtaG9vayAnKG9yZy1lbGVtZW50LS1jYWNoZS1wZXJzaXN0 LWFmdGVyLXJlYWQpDQpvcmctcmVmaWxlLXRhcmdldHMgJygob3JnLWFnZW5kYS1maWxlcyA6bWF4 bGV2ZWwgLiA5KSAobmlsIDptYXhsZXZlbCAuIDkpKQ0Kb3JnLWV4cG9ydC1iZWZvcmUtcGFyc2lu Zy1ob29rICcob3JnLWF0dGFjaC1leHBhbmQtbGlua3MpDQpvcmctY3ljbGUtdGFiLWZpcnN0LWhv b2sgJyhvcmctYmFiZWwtaGlkZS1yZXN1bHQtdG9nZ2xlLW1heWJlIA0Kb3JnLWJhYmVsLWhlYWRl ci1hcmctZXhwYW5kKQ0Kb3JnLWRlZmF1bHQtbm90ZXMtZmlsZSAiL1VzZXJzL2FuZHJldy9vcmcv bm90ZXMub3JnIg0Kb3JnLWV4cG9ydC1hc3luYy1pbml0LWZpbGUgDQoiL1VzZXJzL2FuZHJldy8u ZW1hY3MuZC9sYXllcnMvK2VtYWNzL29yZy9sb2NhbC9vcmctYXN5bmMtaW5pdC5lbCINCm9yZy1y ZWZpbGUtdXNlLW91dGxpbmUtcGF0aCAnZmlsZQ0Kb3JnLXB1Ymxpc2gtdGltZXN0YW1wLWRpcmVj dG9yeSAifi8uZW1hY3MuZC8uY2FjaGUvLm9yZy10aW1lc3RhbXBzLyINCm9yZy1hcmNoaXZlLWhv b2sgJyhvcmctYXR0YWNoLWFyY2hpdmUtZGVsZXRlLW1heWJlKQ0Kb3JnLWZpbGUtYXBwcyAnKChh dXRvLW1vZGUgLiBlbWFjcykgKGRpcmVjdG9yeSAuIGVtYWNzKSAoIlxcLm1tXFwnIiAuIA0KZGVm YXVsdCkgKCJcXC54P2h0bWw/XFwnIiAuIGRlZmF1bHQpICgiXFwucGRmXFwnIiAuIGVtYWNzKSkN Cm9yZy1vZHQtZm9ybWF0LWlubGluZXRhc2stZnVuY3Rpb24gDQonb3JnLW9kdC1mb3JtYXQtaW5s aW5ldGFzay1kZWZhdWx0LWZ1bmN0aW9uDQpvcmctZWRpdC1zcmMtY29udGVudC1pbmRlbnRhdGlv biAwDQpvcmctYXNjaWktZm9ybWF0LWRyYXdlci1mdW5jdGlvbiAjWzc3MSAiXDIwNyIgW10gNCAi XG5cbihmbiBOQU1FIA0KQ09OVEVOVFMgV0lEVEgpIl0NCm9yZy1jeWNsZS1ob29rICcob3JnLWN5 Y2xlLWhpZGUtYXJjaGl2ZWQtc3VidHJlZXMgDQpvcmctY3ljbGUtc2hvdy1lbXB0eS1saW5lcyAN Cm9yZy1jeWNsZS1vcHRpbWl6ZS13aW5kb3ctYWZ0ZXItdmlzaWJpbGl0eS1jaGFuZ2UgDQpvcmct Y3ljbGUtZGlzcGxheS1pbmxpbmUtaW1hZ2VzKQ0Kb3JnLXBlcnNpc3QtYmVmb3JlLXJlYWQtaG9v ayAnKG9yZy1lbGVtZW50LS1jYWNoZS1wZXJzaXN0LWJlZm9yZS1yZWFkKQ0Kb3JnLW1vZHVsZXMg JyhvcmctaGFiaXQgb2wtZG9pIG9sLXczbSBvbC1iYmRiIG9sLWJpYnRleCBvbC1kb2N2aWV3IA0K b2wtZ251cyBvbC1pbmZvIG9sLWlyYyBvbC1taGUgb2wtcm1haWwgb2wtZXd3KQ0Kb3JnLXlhbmst aW1hZ2UtZmlsZS1uYW1lLWZ1bmN0aW9uICdvcmcteWFuay1pbWFnZS1hdXRvZ2VuLWZpbGVuYW1l DQpvcmctbGluay1mcm9tLXVzZXItcmVnZXhwIA0KIlxcPGFuZHJld0BBbmRyZXdzLU1hY0Jvb2st UHJvLTRcXC5sb2NhbFxcPlxcfFxcPEFuZHJldyBCZXJnZXJcXD4iDQpvcmctaW1hZ2UtYWN0dWFs LXdpZHRoIG5pbA0Kb3JnLW1vZGUtaG9vayAnKHR1cm4tb24tb3JnLWNkbGF0ZXggI1swICJcMzAw XDMwMVwzMDJcMzAzXDMwNCRcMjA3IiANClthZGQtaG9vayBjaGFuZ2UtbWFqb3ItbW9kZS1ob29r IG9yZy1mb2xkLXNob3ctYWxsIGFwcGVuZCBsb2NhbF0gNV0NCiNbMCAiXDMwMFwzMDFcMzAyXDMw M1wzMDQkXDIwNyIgW2FkZC1ob29rIGNoYW5nZS1tYWpvci1tb2RlLWhvb2sgDQpvcmctYmFiZWwt c2hvdy1yZXN1bHQtYWxsIGFwcGVuZCBsb2NhbF0gNV0gb3JnLWJhYmVsLXJlc3VsdC1oaWRlLXNw ZWMgDQpvcmctYmFiZWwtaGlkZS1hbGwtaGFzaGVzDQojWzAgIlwzMDFcMjExXDIwNyIgW2ltZW51 LWNyZWF0ZS1pbmRleC1mdW5jdGlvbiBvcmctaW1lbnUtZ2V0LXRyZWVdIDJdIA0Kc3BhY2VtYWNz L29yZy1zZXR1cC1ldmlsLXN1cnJvdW5kIHNwYWNlbWFjcy9sb2FkLXlhc25pcHBldCANCnRvYy1v cmctZW5hYmxlIG9yZy1zdXBlcnN0YXItbW9kZQ0Kb3JnLWRvd25sb2FkLWVuYWJsZSBkb3RzcGFj ZW1hY3MvL3ByZXR0aWZ5LXNwYWNlbWFjcy1kb2NzIA0Kc3BhY2VtYWNzLy9ldmlsLW9yZy1tb2Rl IHNwYWNlbWFjcy8vaW5pdC1jb21wYW55LW9yZy1tb2RlIGNvbXBhbnktbW9kZSkNCm9yZy1iYWJl bC1sb2FkLWxhbmd1YWdlcyAnKChSIC4gdCkgKHB5dGhvbiAuIHQpIChzaGVsbCAuIHQpIChqcyAu IHQpIA0KKGVtYWNzLWxpc3AgLiB0KSkNCm9yZy1pZC1sb2NhdGlvbnMtZmlsZSAifi8uZW1hY3Mu ZC8uY2FjaGUvLm9yZy1pZC1sb2NhdGlvbnMiDQpvcmctbGF0ZXgtZm9ybWF0LWRyYXdlci1mdW5j dGlvbiAnKGNsb3N1cmUgDQooZW5ncmF2ZS1mYWNlcy1sYXRleC1tYXRoZXNjYXBlIGVuZ3JhdmUt ZmFjZXMtY3VycmVudC1wcmVzZXQtc3R5bGUgDQplbmdyYXZlLWZhY2VzLWxhdGV4LW91dHB1dC1z dHlsZSB0KSAoXyBjb250ZW50cykgY29udGVudHMpDQpvcmctZG93bmxvYWQtYWJicmV2aWF0ZS1m aWxlbmFtZS1mdW5jdGlvbiAnZmlsZS1yZWxhdGl2ZS1uYW1lDQpvcmctbGF0ZXgtZm9ybWF0LWhl YWRsaW5lLWZ1bmN0aW9uIA0KJ29yZy1sYXRleC1mb3JtYXQtaGVhZGxpbmUtZGVmYXVsdC1mdW5j dGlvbg0Kb3JnLWNvbmZpcm0tc2hlbGwtbGluay1mdW5jdGlvbiAneWVzLW9yLW5vLXANCm9yZy1w cmVzZW50LW1vZGUtaG9vayAnKHNwYWNlbWFjcy8vb3JnLXByZXNlbnQtc3RhcnQpDQpvcmctcHJv amVjdGlsZS1wZXItcHJvamVjdC1maWxlcGF0aCAiVE9ET3Mub3JnIg0Kb3JnLXByZXNlbnQtbW9k ZS1xdWl0LWhvb2sgJyhzcGFjZW1hY3MvL29yZy1wcmVzZW50LWVuZCkNCm9yZy1kb3dubG9hZC1h bm5vdGF0ZS1mdW5jdGlvbiAnb3JnLWRvd25sb2FkLWFubm90YXRlLWRlZmF1bHQNCm9yZy1odG1s LWZvcm1hdC1kcmF3ZXItZnVuY3Rpb24gI1s1MTQgIlwyMDciIFtdIDMgIlxuXG4oZm4gTkFNRSBD T05URU5UUykiXQ0Kb3V0bGluZS1pc2VhcmNoLW9wZW4taW52aXNpYmxlLWZ1bmN0aW9uICdvdXRs aW5lLWlzZWFyY2gtb3Blbi1pbnZpc2libGUNCm9yZy1hZ2VuZGEtc29ydGluZy1zdHJhdGVneSAn KChhZ2VuZGEgaGFiaXQtdXAgdGltZS11cCBwcmlvcml0eS1kb3duIA0KY2F0ZWdvcnkta2VlcCkg KHRvZG8gY2F0ZWdvcnkta2VlcCkgKHRhZ3MgY2F0ZWdvcnkta2VlcCkgKHNlYXJjaCANCmNhdGVn b3J5LWtlZXApKQ0Kb3JnLXN0YXJ0dXAtaW5kZW50ZWQgdA0Kb3JnLXNvcnQtZnVuY3Rpb24gJ3N0 cmluZy1jb2xsYXRlLWxlc3NwDQpvcmctb2R0LWZvcm1hdC1oZWFkbGluZS1mdW5jdGlvbiAnb3Jn LW9kdC1mb3JtYXQtaGVhZGxpbmUtZGVmYXVsdC1mdW5jdGlvbg0Kb3JnLWxpbmstdHJhbnNsYXRp b24tZnVuY3Rpb24gJ3RvYy1vcmctdW5ocmVmaWZ5DQpvcmctYWdlbmRhLWJlZm9yZS13cml0ZS1o b29rICcob3JnLWFnZW5kYS1hZGQtZW50cnktdGV4dCkNCm9yZy1zcmMtbW9kZS1ob29rICcob3Jn LXNyYy1iYWJlbC1jb25maWd1cmUtZWRpdC1idWZmZXIgDQpvcmctc3JjLW1vZGUtY29uZmlndXJl LWVkaXQtYnVmZmVyKQ0Kb3JnLWNvbmZpcm0tZWxpc3AtbGluay1mdW5jdGlvbiAneWVzLW9yLW5v LXANCm9yZy1sb2ctYnVmZmVyLXNldHVwLWhvb2sgJyhzcGFjZW1hY3MvL29yZy1ub3RlLW1vZGUp DQpvcmctdG9kby1rZXl3b3JkcyAnKChzZXF1ZW5jZSAiVE9ETyh0KSIgInwiICJXQUlUSU5HKHcp IiAifCIgIkRPTkUoZCkiKSANCihzZXF1ZW5jZSAifCIgIkNBTkNFTEVEKGMpIikpDQpvcmctLXdh cm5pbmdzICcoIm9yZy1lbGVtZW50LS1jYWNoZTogT3JnIHBhcnNlciBlcnJvciBpbiANCmFjYWRl bWljcy5vcmc6OiM8bWFya2VyIGF0IDc0Njg4IGluIGFjYWRlbWljcy5vcmc+LiBSZXNldHRpbmcu XG4gVGhlIA0KZXJyb3Igd2FzOiAoZXJyb3IgXCJJbnZhbGlkIHNlYXJjaCBib3VuZCAod3Jvbmcg c2lkZSBvZiBwb2ludClcIilcbiANCkJhY2t0cmFjZTpcblwiIGJhY2t0cmFjZS10by1zdHJpbmco bmlsKVxuIChwcm9nbiAoYmFja3RyYWNlLXRvLXN0cmluZyANCihiYWNrdHJhY2UtZ2V0LWZyYW1l cyAnYmFja3RyYWNlKSkpXG4gKGlmIChhbmQgKGZib3VuZHAgDQonYmFja3RyYWNlLWdldC1mcmFt ZXMpIChmYm91bmRwICdiYWNrdHJhY2UtdG8tc3RyaW5nKSkgKHByb2duIA0KKGJhY2t0cmFjZS10 by1zdHJpbmcgKGJhY2t0cmFjZS1nZXQtZnJhbWVzICdiYWNrdHJhY2UpKSkpXG4gKGZvcm1hdCAN ClxcXCJPcmcgcGFyc2VyIGVycm9yIGluICVzOjolUy4gUmVzZXR0aW5nLlxcXFxuIFRoZSBlcnJv ciAuLi5cXFwiIA0KKGJ1ZmZlci1uYW1lIChjdXJyZW50LWJ1ZmZlcikpIGVwb20gZXJyIChpZiAo YW5kIChmYm91bmRwIA0KJ2JhY2t0cmFjZS1nZXQtZnJhbWVzKSAoZmJvdW5kcCAnYmFja3RyYWNl LXRvLXN0cmluZykpIChwcm9nbiANCihiYWNrdHJhY2UtdG8tc3RyaW5nIChiYWNrdHJhY2UtZ2V0 LWZyYW1lcyAnYmFja3RyYWNlKSkpKSlcbiAobGV0KiANCigoZm9ybWF0LXN0cmluZyAoZm9ybWF0 IFxcXCJPcmcgcGFyc2VyIGVycm9yIGluICVzOjolUy4gUmVzZXR0aW5nLlxcXFxuIA0KVGhlIGVy cm9yIC4uLlxcXCIgKGJ1ZmZlci1uYW1lIChjdXJyZW50LWJ1ZmZlcikpIGVwb20gZXJyIChpZiAo YW5kIA0KKGZib3VuZHAgJ2JhY2t0cmFjZS1nZXQtZnJhbWVzKSAoZmJvdW5kcCAnYmFja3RyYWNl LXRvLXN0cmluZykpIChwcm9nbiANCihiYWNrdHJhY2UtdG8tc3RyaW5nIChiYWNrdHJhY2UtZ2V0 LWZyYW1lcyAuLi4pKSkpKSkgKGZvcm1hdC1zdHJpbmcgKGlmIA0KKG9yIChub3Qgb3JnLWVsZW1l bnQtLWNhY2hlLWRpYWdub3N0aWNzLXJpbmcpIChub3QgKGVxICdiYWNrdHJhY2UgDQpvcmctZWxl bWVudC0tY2FjaGUtc2VsZi12ZXJpZnkpKSkgZm9ybWF0LXN0cmluZyAocHJvZzEgKGNvbmNhdCAo Zm9ybWF0IA0KXFxcIldhcm5pbmcoJXMpOiBcXFwiIChidWZmZXItbmFtZSAuLi4pKSBmb3JtYXQt c3RyaW5nIA0KXFxcIlxcXFxuQmFja3RyYWNlOlxcXFxuIFxcXCIgKG1hcGNvbmNhdCAjJ2lkZW50 aXR5IChyaW5nLWVsZW1lbnRzIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLWRpYWdub3N0aWNzLXJpbmcp IFxcXCJcXFxcbiBcXFwiKSkgKHNldHEgDQpvcmctZWxlbWVudC0tY2FjaGUtZGlhZ25vc3RpY3Mt cmluZyBuaWwpKSkpKSAoaWYgKGFuZCAoYm91bmRwIA0KJ29yZy1iYXRjaC10ZXN0KSBvcmctYmF0 Y2gtdGVzdCkgKGVycm9yIFxcXCIlc1xcXCIgKGNvbmNhdCANClxcXCJvcmctZWxlbWVudC0tY2Fj aGU6IFxcXCIgZm9ybWF0LXN0cmluZykpIChzZXRxIG9yZy0td2FybmluZ3MgKGNvbnMgDQooY29u Y2F0IFxcXCJvcmctZWxlbWVudC0tY2FjaGU6IFxcXCIgZm9ybWF0LXN0cmluZykgb3JnLS13YXJu aW5ncykpIA0KKGRpc3BsYXktd2FybmluZyAnKG9yZy1lbGVtZW50IG9yZy1lbGVtZW50LWNhY2hl KSAoY29uY2F0IA0KXFxcIm9yZy1lbGVtZW50LS1jYWNoZTogXFxcIiBmb3JtYXQtc3RyaW5nKSkp KVxuIChjb25kaXRpb24tY2FzZSBlcnIgDQoob3JnLWVsZW1lbnQtLXBhcnNlLXRvIGVwb20pICgo ZGVidWcgZXJyb3IpIChsZXQqICgoZm9ybWF0LXN0cmluZyANCihmb3JtYXQgXFxcIk9yZyBwYXJz ZXIgZXJyb3IgaW4gJXM6OiVTLiBSZXNldHRpbmcuXFxcXG4gVGhlIGVycm9yIA0KLi4uXFxcIiAo YnVmZmVyLW5hbWUgKGN1cnJlbnQtYnVmZmVyKSkgZXBvbSBlcnIgKGlmIChhbmQgLi4uIC4uLikg KHByb2duIA0KLi4uKSkpKSAoZm9ybWF0LXN0cmluZyAoaWYgKG9yIChub3Qgb3JnLWVsZW1lbnQt LWNhY2hlLWRpYWdub3N0aWNzLXJpbmcpIA0KKG5vdCAuLi4pKSBmb3JtYXQtc3RyaW5nIChwcm9n MSAoY29uY2F0IC4uLiBmb3JtYXQtc3RyaW5nIA0KXFxcIlxcXFxuQmFja3RyYWNlOlxcXFxuIFxc XCIgLi4uKSAoc2V0cSANCm9yZy1lbGVtZW50LS1jYWNoZS1kaWFnbm9zdGljcy1yaW5nIG5pbCkp KSkpIChpZiAoYW5kIChib3VuZHAgDQonb3JnLWJhdGNoLXRlc3QpIG9yZy1iYXRjaC10ZXN0KSAo ZXJyb3IgXFxcIiVzXFxcIiAoY29uY2F0IA0KXFxcIm9yZy1lbGVtZW50LS1jYWNoZTogXFxcIiBm b3JtYXQtc3RyaW5nKSkgKHNldHEgb3JnLS13YXJuaW5ncyAoY29ucyANCihjb25jYXQgXFxcIm9y Zy1lbGVtZW50LS1jYWNoZTogXFxcIiBmb3JtYXQtc3RyaW5nKSBvcmctLXdhcm5pbmdzKSkgDQoo ZGlzcGxheS13YXJuaW5nICcob3JnLWVsZW1lbnQgb3JnLWVsZW1lbnQtY2FjaGUpIChjb25jYXQg DQpcXFwib3JnLWVsZW1lbnQtLWNhY2hlOiBcXFwiIGZvcm1hdC1zdHJpbmcpKSkpIChvcmctZWxl bWVudC1jYWNoZS1yZXNldCkgDQoob3JnLWVsZW1lbnQtLXBhcnNlLXRvIGVwb20pKSlcbiAoaWYg Y2FjaGVkLW9ubHkgKGlmIChhbmQgDQoob3JnLWVsZW1lbnQtLWNhY2hlLWFjdGl2ZS1wKSAob3Ig KG5vdCBvcmctZWxlbWVudC0tY2FjaGUtc3luYy1yZXF1ZXN0cykgDQooPCBlcG9tIChhcmVmIChj YXIgb3JnLWVsZW1lbnQtLWNhY2hlLXN5bmMtcmVxdWVzdHMpIDEpKSkpIChwcm9nbiANCihvcmct ZWxlbWVudC0tY2FjaGUtZmluZCBlcG9tKSkpIChjb25kaXRpb24tY2FzZSBlcnIgDQoob3JnLWVs ZW1lbnQtLXBhcnNlLXRvIGVwb20pICgoZGVidWcgZXJyb3IpIChsZXQqICgoZm9ybWF0LXN0cmlu ZyANCihmb3JtYXQgXFxcIk9yZyBwYXJzZXIgZXJyb3IgaW4gJXM6OiVTLiBSZXNldHRpbmcuXFxc XG4gVGhlIGVycm9yIA0KLi4uXFxcIiAoYnVmZmVyLW5hbWUgLi4uKSBlcG9tIGVyciAoaWYgLi4u IC4uLikpKSAoZm9ybWF0LXN0cmluZyAoaWYgKG9yIA0KLi4uIC4uLikgZm9ybWF0LXN0cmluZyAo cHJvZzEgLi4uIC4uLikpKSkgKGlmIChhbmQgKGJvdW5kcCANCidvcmctYmF0Y2gtdGVzdCkgb3Jn LWJhdGNoLXRlc3QpIChlcnJvciBcXFwiJXNcXFwiIChjb25jYXQgDQpcXFwib3JnLWVsZW1lbnQt LWNhY2hlOiBcXFwiIGZvcm1hdC1zdHJpbmcpKSAoc2V0cSBvcmctLXdhcm5pbmdzIChjb25zIA0K KGNvbmNhdCBcXFwib3JnLWVsZW1lbnQtLWNhY2hlOiBcXFwiIGZvcm1hdC1zdHJpbmcpIG9yZy0t d2FybmluZ3MpKSANCihkaXNwbGF5LXdhcm5pbmcgJyhvcmctZWxlbWVudCBvcmctZWxlbWVudC1j YWNoZSkgKGNvbmNhdCANClxcXCJvcmctZWxlbWVudC0tY2FjaGU6IFxcXCIgZm9ybWF0LXN0cmlu ZykpKSkgKG9yZy1lbGVtZW50LWNhY2hlLXJlc2V0KSANCihvcmctZWxlbWVudC0tcGFyc2UtdG8g ZXBvbSkpKSlcbiAoc2V0cSBlbGVtZW50IChpZiBjYWNoZWQtb25seSAoaWYgKGFuZCANCihvcmct ZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChvciAobm90IG9yZy1lbGVtZW50LS1jYWNoZS1zeW5j LXJlcXVlc3RzKSANCig8IGVwb20gKGFyZWYgKGNhciBvcmctZWxlbWVudC0tY2FjaGUtc3luYy1y ZXF1ZXN0cykgMSkpKSkgKHByb2duIA0KKG9yZy1lbGVtZW50LS1jYWNoZS1maW5kIGVwb20pKSkg KGNvbmRpdGlvbi1jYXNlIGVyciANCihvcmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkgKChkZWJ1 ZyBlcnJvcikgKGxldCogKChmb3JtYXQtc3RyaW5nIA0KKGZvcm1hdCBcXFwiT3JnIHBhcnNlciBl cnJvciBpbiAlczo6JVMuIFJlc2V0dGluZy5cXFxcbiBUaGUgZXJyb3IgDQouLi5cXFwiIC4uLiBl cG9tIGVyciAuLi4pKSAoZm9ybWF0LXN0cmluZyAoaWYgLi4uIGZvcm1hdC1zdHJpbmcgLi4uKSkp IA0KKGlmIChhbmQgKGJvdW5kcCAuLi4pIG9yZy1iYXRjaC10ZXN0KSAoZXJyb3IgXFxcIiVzXFxc IiAoY29uY2F0IA0KXFxcIm9yZy1lbGVtZW50LS1jYWNoZTogXFxcIiBmb3JtYXQtc3RyaW5nKSkg KHNldHEgb3JnLS13YXJuaW5ncyAoY29ucyANCi4uLiBvcmctLXdhcm5pbmdzKSkgKGRpc3BsYXkt d2FybmluZyAnLi4uIChjb25jYXQgDQpcXFwib3JnLWVsZW1lbnQtLWNhY2hlOiBcXFwiIGZvcm1h dC1zdHJpbmcpKSkpIChvcmctZWxlbWVudC1jYWNoZS1yZXNldCkgDQoob3JnLWVsZW1lbnQtLXBh cnNlLXRvIGVwb20pKSkpKVxuIChsZXQgKGVsZW1lbnQpIChpZiANCihvcmctZWxlbWVudC0tY2Fj aGUtYWN0aXZlLXApIChwcm9nbiAoaWYgKG5vdCAoc2F2ZS1jdXJyZW50LWJ1ZmZlciANCihzZXQt YnVmZmVyIChvciAuLi4gLi4uKSkgb3JnLWVsZW1lbnQtLWNhY2hlKSkgKG9yZy1lbGVtZW50LWNh Y2hlLXJlc2V0KSANCihpZiBjYWNoZWQtb25seSBuaWwgKG9yZy1lbGVtZW50LS1jYWNoZS1zeW5j IChjdXJyZW50LWJ1ZmZlcikgZXBvbSkpKSkpIA0KKHNldHEgZWxlbWVudCAoaWYgY2FjaGVkLW9u bHkgKGlmIChhbmQgKG9yZy1lbGVtZW50LS1jYWNoZS1hY3RpdmUtcCkgKG9yIA0KKG5vdCBvcmct ZWxlbWVudC0tY2FjaGUtc3luYy1yZXF1ZXN0cykgKDwgZXBvbSAoYXJlZiAuLi4gMSkpKSkgKHBy b2duIA0KKG9yZy1lbGVtZW50LS1jYWNoZS1maW5kIGVwb20pKSkgKGNvbmRpdGlvbi1jYXNlIGVy ciANCihvcmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkgKChkZWJ1ZyBlcnJvcikgKGxldCogKChm b3JtYXQtc3RyaW5nIC4uLikgDQooZm9ybWF0LXN0cmluZyAuLi4pKSAoaWYgKGFuZCAuLi4gb3Jn LWJhdGNoLXRlc3QpIChlcnJvciBcXFwiJXNcXFwiIC4uLikgDQooc2V0cSBvcmctLXdhcm5pbmdz IC4uLikgKGRpc3BsYXktd2FybmluZyAuLi4gLi4uKSkpIA0KKG9yZy1lbGVtZW50LWNhY2hlLXJl c2V0KSAob3JnLWVsZW1lbnQtLXBhcnNlLXRvIGVwb20pKSkpKSAoaWYgKGFuZCANCihvcmctZWxl bWVudC0tY2FjaGUtYWN0aXZlLXApIGVsZW1lbnQgKG9yZy1lbGVtZW50LS1jYWNoZS12ZXJpZnkt ZWxlbWVudCANCmVsZW1lbnQpKSAocHJvZ24gKHNldHEgZWxlbWVudCAob3JnLWVsZW1lbnQtLXBh cnNlLXRvIGVwb20pKSkpIChpZiAoZXEgDQoob3JnLWVsZW1lbnQtdHlwZSBlbGVtZW50IHQpICdv cmctZGF0YSkgbmlsIChpZiAoYW5kIGNhY2hlZC1vbmx5IChub3QgDQooYW5kIGVsZW1lbnQgKG9y ICg9IGVwb20gLi4uKSAoYW5kIC4uLiAuLi4gLi4uKSAoYW5kIC4uLiAuLi4gLi4uKSAoYW5kIA0K Li4uIC4uLiAuLi4pKSkpKSBuaWwgKGlmIChub3QgKGVxIChvcmctZWxlbWVudC10eXBlIGVsZW1l bnQgdCkgDQonc2VjdGlvbikpIGVsZW1lbnQgKG9yZy1lbGVtZW50LWF0LXBvaW50ICgxKyBlcG9t KSBjYWNoZWQtb25seSkpKSkpXG4gDQooc2F2ZS1yZXN0cmljdGlvbiAod2lkZW4pIChnb3RvLWNo YXIgKG9yIC0tbWVwb20gKHBvaW50KSkpIChpZiANCihkZXJpdmVkLW1vZGUtcCAnb3JnLW1vZGUp IG5pbCAoZGlzcGxheS13YXJuaW5nICcob3JnLWVsZW1lbnQgDQpvcmctZWxlbWVudC1wYXJzZXIp IChmb3JtYXQtbWVzc2FnZSBcXFwiYG9yZy1lbGVtZW50LWF0LXBvaW50JyBjYW5ub3QgYmUgDQp1 c2VkIGluIG5vbi1PcmcgYi4uLlxcXCIgKGN1cnJlbnQtYnVmZmVyKSBtYWpvci1tb2RlKSkpIChp ZiAoYW5kIA0KY2FjaGVkLW9ubHkgKG1lbXEgdGhpcy1jb21tYW5kIA0Kb3JnLWVsZW1lbnQtLWNh Y2hlLW5vbi1tb2RpZnlpbmctY29tbWFuZHMpKSAocHJvZ24gKHNldHEgY2FjaGVkLW9ubHkgDQpu aWwpKSkgKGxldCAoZWxlbWVudCkgKGlmIChvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChw cm9nbiAoaWYgKG5vdCANCihzYXZlLWN1cnJlbnQtYnVmZmVyIChzZXQtYnVmZmVyIC4uLikgb3Jn LWVsZW1lbnQtLWNhY2hlKSkgDQoob3JnLWVsZW1lbnQtY2FjaGUtcmVzZXQpIChpZiBjYWNoZWQt b25seSBuaWwgKG9yZy1lbGVtZW50LS1jYWNoZS1zeW5jIA0KKGN1cnJlbnQtYnVmZmVyKSBlcG9t KSkpKSkgKHNldHEgZWxlbWVudCAoaWYgY2FjaGVkLW9ubHkgKGlmIChhbmQgDQoob3JnLWVsZW1l bnQtLWNhY2hlLWFjdGl2ZS1wKSAob3IgKG5vdCBvcmctZWxlbWVudC0tY2FjaGUtc3luYy1yZXF1 ZXN0cykgDQooPCBlcG9tIC4uLikpKSAocHJvZ24gKG9yZy1lbGVtZW50LS1jYWNoZS1maW5kIGVw b20pKSkgKGNvbmRpdGlvbi1jYXNlIA0KZXJyIChvcmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkg KChkZWJ1ZyBlcnJvcikgKGxldCogKC4uLiAuLi4pIChpZiAuLi4gDQouLi4gLi4uIC4uLikpIChv cmctZWxlbWVudC1jYWNoZS1yZXNldCkgKG9yZy1lbGVtZW50LS1wYXJzZS10byBlcG9tKSkpKSkg DQooaWYgKGFuZCAob3JnLWVsZW1lbnQtLWNhY2hlLWFjdGl2ZS1wKSBlbGVtZW50IA0KKG9yZy1l bGVtZW50LS1jYWNoZS12ZXJpZnktZWxlbWVudCBlbGVtZW50KSkgKHByb2duIChzZXRxIGVsZW1l bnQgDQoob3JnLWVsZW1lbnQtLXBhcnNlLXRvIGVwb20pKSkpIChpZiAoZXEgKG9yZy1lbGVtZW50 LXR5cGUgZWxlbWVudCB0KSANCidvcmctZGF0YSkgbmlsIChpZiAoYW5kIGNhY2hlZC1vbmx5IChu b3QgKGFuZCBlbGVtZW50IChvciAuLi4gLi4uIC4uLiANCi4uLikpKSkgbmlsIChpZiAobm90IChl cSAob3JnLWVsZW1lbnQtdHlwZSBlbGVtZW50IHQpICdzZWN0aW9uKSkgZWxlbWVudCANCihvcmct ZWxlbWVudC1hdC1wb2ludCAoMSsgZXBvbSkgY2FjaGVkLW9ubHkpKSkpKSlcbiAoc2F2ZS1leGN1 cnNpb24gDQooc2F2ZS1yZXN0cmljdGlvbiAod2lkZW4pIChnb3RvLWNoYXIgKG9yIC0tbWVwb20g KHBvaW50KSkpIChpZiANCihkZXJpdmVkLW1vZGUtcCAnb3JnLW1vZGUpIG5pbCAoZGlzcGxheS13 YXJuaW5nICcob3JnLWVsZW1lbnQgDQpvcmctZWxlbWVudC1wYXJzZXIpIChmb3JtYXQtbWVzc2Fn ZSBcXFwiYG9yZy1lbGVtZW50LWF0LXBvaW50JyBjYW5ub3QgYmUgDQp1c2VkIGluIG5vbi1Pcmcg Yi4uLlxcXCIgKGN1cnJlbnQtYnVmZmVyKSBtYWpvci1tb2RlKSkpIChpZiAoYW5kIA0KY2FjaGVk LW9ubHkgKG1lbXEgdGhpcy1jb21tYW5kIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW5vbi1tb2RpZnlp bmctY29tbWFuZHMpKSAocHJvZ24gKHNldHEgY2FjaGVkLW9ubHkgDQpuaWwpKSkgKGxldCAoZWxl bWVudCkgKGlmIChvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChwcm9nbiAoaWYgKG5vdCAN CihzYXZlLWN1cnJlbnQtYnVmZmVyIC4uLiBvcmctZWxlbWVudC0tY2FjaGUpKSAob3JnLWVsZW1l bnQtY2FjaGUtcmVzZXQpIA0KKGlmIGNhY2hlZC1vbmx5IG5pbCAob3JnLWVsZW1lbnQtLWNhY2hl LXN5bmMgLi4uIGVwb20pKSkpKSAoc2V0cSBlbGVtZW50IA0KKGlmIGNhY2hlZC1vbmx5IChpZiAo YW5kIChvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChvciAuLi4gLi4uKSkgDQoocHJvZ24g KG9yZy1lbGVtZW50LS1jYWNoZS1maW5kIGVwb20pKSkgKGNvbmRpdGlvbi1jYXNlIGVyciANCihv cmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkgKChkZWJ1ZyBlcnJvcikgKGxldCogLi4uIC4uLikg DQoob3JnLWVsZW1lbnQtY2FjaGUtcmVzZXQpIChvcmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkp KSkpIChpZiAoYW5kIA0KKG9yZy1lbGVtZW50LS1jYWNoZS1hY3RpdmUtcCkgZWxlbWVudCAob3Jn LWVsZW1lbnQtLWNhY2hlLXZlcmlmeS1lbGVtZW50IA0KZWxlbWVudCkpIChwcm9nbiAoc2V0cSBl bGVtZW50IChvcmctZWxlbWVudC0tcGFyc2UtdG8gZXBvbSkpKSkgKGlmIChlcSANCihvcmctZWxl bWVudC10eXBlIGVsZW1lbnQgdCkgJ29yZy1kYXRhKSBuaWwgKGlmIChhbmQgY2FjaGVkLW9ubHkg KG5vdCANCihhbmQgZWxlbWVudCAuLi4pKSkgbmlsIChpZiAobm90IChlcSAuLi4gLi4uKSkgZWxl bWVudCANCihvcmctZWxlbWVudC1hdC1wb2ludCAoMSsgZXBvbSkgY2FjaGVkLW9ubHkpKSkpKSkp XG4gKHNhdmUtZXhjdXJzaW9uIA0KKGNvbmQgKChtYXJrZXJwIC0tbWVwb20pIChzZXQtYnVmZmVy IChtYXJrZXItYnVmZmVyIC0tbWVwb20pKSkgKChudW1iZXJwIA0KLS1tZXBvbSkpICh0IChpZiAo bGV0ICgoaWR4IChvciAxNCAxNCkpKSAobGV0KiAoKHBhcnJheSAuLi4pKSAoaWYgcGFycmF5IA0K KGxldCogLi4uIC4uLikgKGxldCogLi4uIC4uLikpKSkgKHByb2duIChzZXQtYnVmZmVyIChsZXQg KC4uLikgKGxldCogLi4uIA0KLi4uKSkpKSkgKHNldHEgLS1tZXBvbSAobGV0ICgoaWR4IChvciAw IDApKSkgKGxldCogKChwYXJyYXkgLi4uKSkgKGlmIA0KcGFycmF5IChsZXQqIC4uLiAuLi4pIChs ZXQqIC4uLiAuLi4pKSkpKSkpIChzYXZlLWV4Y3Vyc2lvbiANCihzYXZlLXJlc3RyaWN0aW9uICh3 aWRlbikgKGdvdG8tY2hhciAob3IgLS1tZXBvbSAocG9pbnQpKSkgKGlmIA0KKGRlcml2ZWQtbW9k ZS1wICdvcmctbW9kZSkgbmlsIChkaXNwbGF5LXdhcm5pbmcgJyhvcmctZWxlbWVudCANCm9yZy1l bGVtZW50LXBhcnNlcikgKGZvcm1hdC1tZXNzYWdlIFxcXCJgb3JnLWVsZW1lbnQtYXQtcG9pbnQn IGNhbm5vdCBiZSANCnVzZWQgaW4gbm9uLU9yZyBiLi4uXFxcIiAoY3VycmVudC1idWZmZXIpIG1h am9yLW1vZGUpKSkgKGlmIChhbmQgDQpjYWNoZWQtb25seSAobWVtcSB0aGlzLWNvbW1hbmQgDQpv cmctZWxlbWVudC0tY2FjaGUtbm9uLW1vZGlmeWluZy1jb21tYW5kcykpIChwcm9nbiAoc2V0cSBj YWNoZWQtb25seSANCm5pbCkpKSAobGV0IChlbGVtZW50KSAoaWYgKG9yZy1lbGVtZW50LS1jYWNo ZS1hY3RpdmUtcCkgKHByb2duIChpZiAobm90IA0KLi4uKSAob3JnLWVsZW1lbnQtY2FjaGUtcmVz ZXQpIChpZiBjYWNoZWQtb25seSBuaWwgLi4uKSkpKSAoc2V0cSBlbGVtZW50IA0KKGlmIGNhY2hl ZC1vbmx5IChpZiAoYW5kIC4uLiAuLi4pIChwcm9nbiAuLi4pKSAoY29uZGl0aW9uLWNhc2UgZXJy IA0KKG9yZy1lbGVtZW50LS1wYXJzZS10byBlcG9tKSAoLi4uIC4uLiAuLi4gLi4uKSkpKSAoaWYg KGFuZCANCihvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIGVsZW1lbnQgKG9yZy1lbGVtZW50 LS1jYWNoZS12ZXJpZnktZWxlbWVudCANCmVsZW1lbnQpKSAocHJvZ24gKHNldHEgZWxlbWVudCAo b3JnLWVsZW1lbnQtLXBhcnNlLXRvIGVwb20pKSkpIChpZiAoZXEgDQoob3JnLWVsZW1lbnQtdHlw ZSBlbGVtZW50IHQpICdvcmctZGF0YSkgbmlsIChpZiAoYW5kIGNhY2hlZC1vbmx5IChub3QgDQou Li4pKSBuaWwgKGlmIChub3QgLi4uKSBlbGVtZW50IChvcmctZWxlbWVudC1hdC1wb2ludCAuLi4g DQpjYWNoZWQtb25seSkpKSkpKSkpXG4gKGxldCAoKC0tbWVwb20gZXBvbSkpIChzYXZlLWV4Y3Vy c2lvbiAoY29uZCANCigobWFya2VycCAtLW1lcG9tKSAoc2V0LWJ1ZmZlciAobWFya2VyLWJ1ZmZl ciAtLW1lcG9tKSkpICgobnVtYmVycCANCi0tbWVwb20pKSAodCAoaWYgKGxldCAoKGlkeCAuLi4p KSAobGV0KiAoLi4uKSAoaWYgcGFycmF5IC4uLiAuLi4pKSkgDQoocHJvZ24gKHNldC1idWZmZXIg KGxldCAuLi4gLi4uKSkpKSAoc2V0cSAtLW1lcG9tIChsZXQgKChpZHggLi4uKSkgKGxldCogDQoo Li4uKSAoaWYgcGFycmF5IC4uLiAuLi4pKSkpKSkgKHNhdmUtZXhjdXJzaW9uIChzYXZlLXJlc3Ry aWN0aW9uICh3aWRlbikgDQooZ290by1jaGFyIChvciAtLW1lcG9tIChwb2ludCkpKSAoaWYgKGRl cml2ZWQtbW9kZS1wICdvcmctbW9kZSkgbmlsIA0KKGRpc3BsYXktd2FybmluZyAnKG9yZy1lbGVt ZW50IG9yZy1lbGVtZW50LXBhcnNlcikgKGZvcm1hdC1tZXNzYWdlIA0KXFxcImBvcmctZWxlbWVu dC1hdC1wb2ludCcgY2Fubm90IGJlIHVzZWQgaW4gbm9uLU9yZyBiLi4uXFxcIiANCihjdXJyZW50 LWJ1ZmZlcikgbWFqb3ItbW9kZSkpKSAoaWYgKGFuZCBjYWNoZWQtb25seSAobWVtcSB0aGlzLWNv bW1hbmQgDQpvcmctZWxlbWVudC0tY2FjaGUtbm9uLW1vZGlmeWluZy1jb21tYW5kcykpIChwcm9n biAoc2V0cSBjYWNoZWQtb25seSANCm5pbCkpKSAobGV0IChlbGVtZW50KSAoaWYgKG9yZy1lbGVt ZW50LS1jYWNoZS1hY3RpdmUtcCkgKHByb2duIChpZiAuLi4gDQouLi4gLi4uKSkpIChzZXRxIGVs ZW1lbnQgKGlmIGNhY2hlZC1vbmx5IChpZiAuLi4gLi4uKSAoY29uZGl0aW9uLWNhc2UgDQplcnIg Li4uIC4uLikpKSAoaWYgKGFuZCAob3JnLWVsZW1lbnQtLWNhY2hlLWFjdGl2ZS1wKSBlbGVtZW50 IA0KKG9yZy1lbGVtZW50LS1jYWNoZS12ZXJpZnktZWxlbWVudCBlbGVtZW50KSkgKHByb2duIChz ZXRxIGVsZW1lbnQgLi4uKSkpIA0KKGlmIChlcSAob3JnLWVsZW1lbnQtdHlwZSBlbGVtZW50IHQp ICdvcmctZGF0YSkgbmlsIChpZiAoYW5kIGNhY2hlZC1vbmx5IA0KLi4uKSBuaWwgKGlmIC4uLiBl bGVtZW50IC4uLikpKSkpKSkpXG4gKGlmIChvcmctZWxlbWVudC10eXBlIGVwb20gdCkgDQplcG9t IChzZXRxIGVwb20gKG9yIGVwb20gKHBvaW50KSkpIChsZXQgKCgtLW1lcG9tIGVwb20pKSAoc2F2 ZS1leGN1cnNpb24gDQooY29uZCAoKG1hcmtlcnAgLS1tZXBvbSkgKHNldC1idWZmZXIgKG1hcmtl ci1idWZmZXIgLS1tZXBvbSkpKSAoKG51bWJlcnAgDQotLW1lcG9tKSkgKHQgKGlmIChsZXQgKC4u LikgKGxldCogLi4uIC4uLikpIChwcm9nbiAoc2V0LWJ1ZmZlciAuLi4pKSkgDQooc2V0cSAtLW1l cG9tIChsZXQgKC4uLikgKGxldCogLi4uIC4uLikpKSkpIChzYXZlLWV4Y3Vyc2lvbiANCihzYXZl LXJlc3RyaWN0aW9uICh3aWRlbikgKGdvdG8tY2hhciAob3IgLS1tZXBvbSAocG9pbnQpKSkgKGlm IA0KKGRlcml2ZWQtbW9kZS1wICdvcmctbW9kZSkgbmlsIChkaXNwbGF5LXdhcm5pbmcgJy4uLiAo Zm9ybWF0LW1lc3NhZ2UgDQpcXFwiYG9yZy1lbGVtZW50LWF0LXBvaW50JyBjYW5ub3QgYmUgdXNl ZCBpbiBub24tT3JnIGIuLi5cXFwiIC4uLiANCm1ham9yLW1vZGUpKSkgKGlmIChhbmQgY2FjaGVk LW9ubHkgKG1lbXEgdGhpcy1jb21tYW5kIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW5vbi1tb2RpZnlp bmctY29tbWFuZHMpKSAocHJvZ24gKHNldHEgY2FjaGVkLW9ubHkgDQpuaWwpKSkgKGxldCAoZWxl bWVudCkgKGlmIChvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChwcm9nbiAuLi4pKSANCihz ZXRxIGVsZW1lbnQgKGlmIGNhY2hlZC1vbmx5IC4uLiAuLi4pKSAoaWYgKGFuZCAuLi4gZWxlbWVu dCAuLi4pIChwcm9nbiANCi4uLikpIChpZiAoZXEgLi4uIC4uLikgbmlsIChpZiAuLi4gbmlsIC4u LikpKSkpKSkpXG4gDQpvcmctZWxlbWVudC1hdC1wb2ludCgjPG1hcmtlciBhdCA3NDY4OCBpbiBh Y2FkZW1pY3Mub3JnPilcbiANCihzYXZlLXJlc3RyaWN0aW9uIChpZiBuYXJyb3cgbmlsICh3aWRl bikpIChvcmctZWxlbWVudC1hdC1wb2ludCB0by1wb3MpIA0KKGxldCogKChzdGFydCAoYW5kIGZy b20tcG9zIChwcm9nbiAoZ290by1jaGFyIGZyb20tcG9zKSANCihvcmctZWxlbWVudC1iZWdpbiAo cHJvZ24gLi4uIC4uLikpKSkpIChwcmV2IGFmdGVyLWVsZW1lbnQpIChub2RlIA0KKHNhdmUtY3Vy cmVudC1idWZmZXIgKHNldC1idWZmZXIgKG9yIChidWZmZXItYmFzZS1idWZmZXIgbmlsKSAob3Ig bmlsIA0KLi4uKSkpIChpZiAobWVtcSBncmFudWxhcml0eSAnLi4uKSAob3JnLWVsZW1lbnQtLWhl YWRsaW5lLWNhY2hlLXJvb3QpIA0KKG9yZy1lbGVtZW50LS1jYWNoZS1yb290KSkpKSBkYXRhIChz dGFjayAobGlzdCBuaWwpKSAobGVmdHAgdCkgcmVzdWx0IA0KKGxhc3QtbWF0Y2ggdCkgY29udGlu dWUtZmxhZyAobmV4dC1lbGVtZW50LXJlIChsZXQqICgocGNhc2UtMCAjJy4uLikpIA0KKGNvbmQg KChlcSBncmFudWxhcml0eSAuLi4pIChmdW5jYWxsIHBjYXNlLTApKSAoKGVxdWFsIC4uLiANCnJl c3RyaWN0LWVsZW1lbnRzKSAoZnVuY2FsbCBwY2FzZS0wKSkgKChlcSBncmFudWxhcml0eSAuLi4p IChsZXQgbmlsIA0KLi4uKSkgKHQgJ25pbCkpKSkgKG5leHQtcmUgKGlmIChhbmQgbmV4dC1yZSAo c3RyaW5nPSBuZXh0LXJlIChvciAuLi4gDQpuZXh0LWVsZW1lbnQtcmUpKSkgbmlsIG5leHQtcmUp KSAoZmFpbC1yZSAoaWYgKGFuZCBmYWlsLXJlIChzdHJpbmc9IA0KZmFpbC1yZSAob3IgLi4uIG5l eHQtZWxlbWVudC1yZSkpKSBuaWwgZmFpbC1yZSkpIChyZXN0cmljdC1lbGVtZW50cyAob3IgDQpy ZXN0cmljdC1lbGVtZW50cyAoY29uZCAoKGVxIGdyYW51bGFyaXR5IC4uLikgKGxldCBuaWwgLi4u KSkgKChlcSANCmdyYW51bGFyaXR5IC4uLikgKGxldCBuaWwgLi4uKSkgKChlcSBncmFudWxhcml0 eSAuLi4pIChsZXQgbmlsIA0Kb3JnLWVsZW1lbnQtZ3JlYXRlci1lbGVtZW50cykpICh0ICduaWwp KSkpICh0aW1lIChmbG9hdC10aW1lKSkgDQoocHJlZGljYXRlLXRpbWUgMCkgKHByZS1wcm9jZXNz LXRpbWUgMCkgKHJlLXNlYXJjaC10aW1lIDApIA0KKGNvdW50LXByZWRpY2F0ZS1jYWxscy1tYXRj aCAwKSAoY291bnQtcHJlZGljYXRlLWNhbGxzLWZhaWwgMCkgDQpjYWNoZS1zaXplIGJlZm9yZS10 aW1lIG1vZGlmaWVkLXRpYykgKGdvdG8tY2hhciAob3Igc3RhcnQgKHBvaW50LW1pbikpKSANCihs ZXQgKChzYXZlZC1tYXRjaC1kYXRhIChtYXRjaC1kYXRhKSkpICh1bndpbmQtcHJvdGVjdCAocHJv Z24gKGlmIChvciANCihub3QgbmV4dC1lbGVtZW50LXJlKSAoaWYgb3JnLWVsZW1lbnQtLWNhY2hl LW1hcC1zdGF0aXN0aWNzIC4uLiAuLi4pKSANCihpZiAob3IgLi4uIC4uLikgbmlsIChpZiAuLi4g Li4uIC4uLikgKGlmIC4uLiAuLi4pIChpZiAuLi4gLi4uKSkgKHByb2duIA0KKHNldHEgY29udGlu dWUtZmxhZyB0KSAoc2V0cSBub2RlIG5pbCkpKSkgKHNldC1tYXRjaC1kYXRhIA0Kc2F2ZWQtbWF0 Y2gtZGF0YSB0KSkpIChpZiAoYW5kIHN0YXJ0ICg+PSBzdGFydCB0by1wb3MpKSBuaWwgKHdoaWxl IG5vZGUgDQooc2V0cSBkYXRhIChwcm9nbiAocHJvZ24gKGFyZWYgbm9kZSAyKSkpKSAoaWYgKGFu ZCBsZWZ0cCAocHJvZ24gKHByb2duIA0KLi4uKSkgKG9yIChub3QgcHJldikgKG5vdCAuLi4pKSAo b3IgKG5vdCBzdGFydCkgKG5vdCAuLi4pKSkgKHByb2duIChzZXRxIA0Kc3RhY2sgKGNvbnMgbm9k ZSBzdGFjaykpIChzZXRxIG5vZGUgKHByb2duIC4uLikpKSAoaWYgKG9yIChhbmQgc3RhcnQgDQou Li4pIChhbmQgcHJldiAuLi4pKSBuaWwgKGlmIChvciAuLi4gLi4uKSAocHJvZ24gLi4uIC4uLiAu Li4gLi4uIC4uLiANCi4uLikgKGlmIC4uLiAuLi4pIChpZiBub2RlIC4uLikpKSAoaWYgY29udGlu dWUtZmxhZyAoc2V0cSBjb250aW51ZS1mbGFnIA0KbmlsKSAoc2V0cSBub2RlIChpZiAuLi4gLi4u IC4uLikpKSkpKSAoaWYgKGFuZCANCm9yZy1lbGVtZW50LS1jYWNoZS1tYXAtc3RhdGlzdGljcyAo b3IgKG5vdCANCm9yZy1lbGVtZW50LS1jYWNoZS1tYXAtc3RhdGlzdGljcy10aHJlc2hvbGQpICg+ ICgtIChmbG9hdC10aW1lKSB0aW1lKSANCm9yZy1lbGVtZW50LS1jYWNoZS1tYXAtc3RhdGlzdGlj cy10aHJlc2hvbGQpKSkgKHByb2duIChtZXNzYWdlIA0KXFxcIk1hcHBlZCBvdmVyIGVsZW1lbnRz IGluICVTLiAlZC8lZCBwcmVkaWNhdGUgbWF0Y2hlLi4uXFxcIiANCihjdXJyZW50LWJ1ZmZlcikg Y291bnQtcHJlZGljYXRlLWNhbGxzLW1hdGNoICgrIA0KY291bnQtcHJlZGljYXRlLWNhbGxzLW1h dGNoIGNvdW50LXByZWRpY2F0ZS1jYWxscy1mYWlsKSAoLSAoZmxvYXQtdGltZSkgDQp0aW1lKSBw cmUtcHJvY2Vzcy10aW1lIHByZWRpY2F0ZS10aW1lIHJlLXNlYXJjaC10aW1lIGdyYW51bGFyaXR5 IA0KcmVzdHJpY3QtZWxlbWVudHMgbmV4dC1yZSBmYWlsLXJlIGZyb20tcG9zIHRvLXBvcyBsaW1p dC1jb3VudCANCmFmdGVyLWVsZW1lbnQpKSkgKG5yZXZlcnNlIHJlc3VsdCkpKVxuIChzYXZlLWV4 Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiANCihpZiBuYXJyb3cgbmlsICh3aWRlbikpIChvcmct ZWxlbWVudC1hdC1wb2ludCB0by1wb3MpIChsZXQqICgoc3RhcnQgKGFuZCANCmZyb20tcG9zIChw cm9nbiAoZ290by1jaGFyIGZyb20tcG9zKSAob3JnLWVsZW1lbnQtYmVnaW4gLi4uKSkpKSAocHJl diANCmFmdGVyLWVsZW1lbnQpIChub2RlIChzYXZlLWN1cnJlbnQtYnVmZmVyIChzZXQtYnVmZmVy IChvciAuLi4gLi4uKSkgKGlmIA0KKG1lbXEgZ3JhbnVsYXJpdHkgLi4uKSAob3JnLWVsZW1lbnQt LWhlYWRsaW5lLWNhY2hlLXJvb3QpIA0KKG9yZy1lbGVtZW50LS1jYWNoZS1yb290KSkpKSBkYXRh IChzdGFjayAobGlzdCBuaWwpKSAobGVmdHAgdCkgcmVzdWx0IA0KKGxhc3QtbWF0Y2ggdCkgY29u dGludWUtZmxhZyAobmV4dC1lbGVtZW50LXJlIChsZXQqICgocGNhc2UtMCAuLi4pKSANCihjb25k ICguLi4gLi4uKSAoLi4uIC4uLikgKC4uLiAuLi4pICh0IC4uLikpKSkgKG5leHQtcmUgKGlmIChh bmQgbmV4dC1yZSANCihzdHJpbmc9IG5leHQtcmUgLi4uKSkgbmlsIG5leHQtcmUpKSAoZmFpbC1y ZSAoaWYgKGFuZCBmYWlsLXJlIChzdHJpbmc9IA0KZmFpbC1yZSAuLi4pKSBuaWwgZmFpbC1yZSkp IChyZXN0cmljdC1lbGVtZW50cyAob3IgcmVzdHJpY3QtZWxlbWVudHMgDQooY29uZCAoLi4uIC4u LikgKC4uLiAuLi4pICguLi4gLi4uKSAodCAuLi4pKSkpICh0aW1lIChmbG9hdC10aW1lKSkgDQoo cHJlZGljYXRlLXRpbWUgMCkgKHByZS1wcm9jZXNzLXRpbWUgMCkgKHJlLXNlYXJjaC10aW1lIDAp IA0KKGNvdW50LXByZWRpY2F0ZS1jYWxscy1tYXRjaCAwKSAoY291bnQtcHJlZGljYXRlLWNhbGxz LWZhaWwgMCkgDQpjYWNoZS1zaXplIGJlZm9yZS10aW1lIG1vZGlmaWVkLXRpYykgKGdvdG8tY2hh ciAob3Igc3RhcnQgKHBvaW50LW1pbikpKSANCihsZXQgKChzYXZlZC1tYXRjaC1kYXRhIChtYXRj aC1kYXRhKSkpICh1bndpbmQtcHJvdGVjdCAocHJvZ24gKGlmIChvciANCi4uLiAuLi4pIChpZiAu Li4gbmlsIC4uLiAuLi4gLi4uKSAocHJvZ24gLi4uIC4uLikpKSAoc2V0LW1hdGNoLWRhdGEgDQpz YXZlZC1tYXRjaC1kYXRhIHQpKSkgKGlmIChhbmQgc3RhcnQgKD49IHN0YXJ0IHRvLXBvcykpIG5p bCAod2hpbGUgbm9kZSANCihzZXRxIGRhdGEgKHByb2duIChwcm9nbiAuLi4pKSkgKGlmIChhbmQg bGVmdHAgKHByb2duIC4uLikgKG9yIC4uLiAuLi4pIA0KKG9yIC4uLiAuLi4pKSAocHJvZ24gKHNl dHEgc3RhY2sgLi4uKSAoc2V0cSBub2RlIC4uLikpIChpZiAob3IgLi4uIC4uLikgDQpuaWwgKGlm IC4uLiAuLi4gLi4uIC4uLikpIChpZiBjb250aW51ZS1mbGFnIChzZXRxIGNvbnRpbnVlLWZsYWcg bmlsKSANCihzZXRxIG5vZGUgLi4uKSkpKSkgKGlmIChhbmQgb3JnLWVsZW1lbnQtLWNhY2hlLW1h cC1zdGF0aXN0aWNzIChvciAobm90IA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0aXN0aWNz LXRocmVzaG9sZCkgKD4gKC0gLi4uIHRpbWUpIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0 aXN0aWNzLXRocmVzaG9sZCkpKSAocHJvZ24gKG1lc3NhZ2UgDQpcXFwiTWFwcGVkIG92ZXIgZWxl bWVudHMgaW4gJVMuICVkLyVkIHByZWRpY2F0ZSBtYXRjaGUuLi5cXFwiIA0KKGN1cnJlbnQtYnVm ZmVyKSBjb3VudC1wcmVkaWNhdGUtY2FsbHMtbWF0Y2ggKCsgDQpjb3VudC1wcmVkaWNhdGUtY2Fs bHMtbWF0Y2ggY291bnQtcHJlZGljYXRlLWNhbGxzLWZhaWwpICgtIChmbG9hdC10aW1lKSANCnRp bWUpIHByZS1wcm9jZXNzLXRpbWUgcHJlZGljYXRlLXRpbWUgcmUtc2VhcmNoLXRpbWUgZ3JhbnVs YXJpdHkgDQpyZXN0cmljdC1lbGVtZW50cyBuZXh0LXJlIGZhaWwtcmUgZnJvbS1wb3MgdG8tcG9z IGxpbWl0LWNvdW50IA0KYWZ0ZXItZWxlbWVudCkpKSAobnJldmVyc2UgcmVzdWx0KSkpKVxuIChs ZXQgKChnYy1jb25zLXRocmVzaG9sZCANCjEwNzM3NDE4MjQpIHRtcG5leHQtc3RhcnQgdG1wcGFy ZW50IHRtcGVsZW1lbnQpIChzYXZlLWV4Y3Vyc2lvbiANCihzYXZlLXJlc3RyaWN0aW9uIChpZiBu YXJyb3cgbmlsICh3aWRlbikpIChvcmctZWxlbWVudC1hdC1wb2ludCB0by1wb3MpIA0KKGxldCog KChzdGFydCAoYW5kIGZyb20tcG9zIChwcm9nbiAuLi4gLi4uKSkpIChwcmV2IGFmdGVyLWVsZW1l bnQpIChub2RlIA0KKHNhdmUtY3VycmVudC1idWZmZXIgKHNldC1idWZmZXIgLi4uKSAoaWYgLi4u IC4uLiAuLi4pKSkgZGF0YSAoc3RhY2sgDQoobGlzdCBuaWwpKSAobGVmdHAgdCkgcmVzdWx0IChs YXN0LW1hdGNoIHQpIGNvbnRpbnVlLWZsYWcgDQoobmV4dC1lbGVtZW50LXJlIChsZXQqICguLi4p IChjb25kIC4uLiAuLi4gLi4uIC4uLikpKSAobmV4dC1yZSAoaWYgKGFuZCANCm5leHQtcmUgLi4u KSBuaWwgbmV4dC1yZSkpIChmYWlsLXJlIChpZiAoYW5kIGZhaWwtcmUgLi4uKSBuaWwgZmFpbC1y ZSkpIA0KKHJlc3RyaWN0LWVsZW1lbnRzIChvciByZXN0cmljdC1lbGVtZW50cyAoY29uZCAuLi4g Li4uIC4uLiAuLi4pKSkgKHRpbWUgDQooZmxvYXQtdGltZSkpIChwcmVkaWNhdGUtdGltZSAwKSAo cHJlLXByb2Nlc3MtdGltZSAwKSAocmUtc2VhcmNoLXRpbWUgMCkgDQooY291bnQtcHJlZGljYXRl LWNhbGxzLW1hdGNoIDApIChjb3VudC1wcmVkaWNhdGUtY2FsbHMtZmFpbCAwKSANCmNhY2hlLXNp emUgYmVmb3JlLXRpbWUgbW9kaWZpZWQtdGljKSAoZ290by1jaGFyIChvciBzdGFydCAocG9pbnQt bWluKSkpIA0KKGxldCAoKHNhdmVkLW1hdGNoLWRhdGEgKG1hdGNoLWRhdGEpKSkgKHVud2luZC1w cm90ZWN0IChwcm9nbiAoaWYgLi4uIA0KLi4uIC4uLikpIChzZXQtbWF0Y2gtZGF0YSBzYXZlZC1t YXRjaC1kYXRhIHQpKSkgKGlmIChhbmQgc3RhcnQgKD49IHN0YXJ0IA0KdG8tcG9zKSkgbmlsICh3 aGlsZSBub2RlIChzZXRxIGRhdGEgKHByb2duIC4uLikpIChpZiAoYW5kIGxlZnRwIC4uLiAuLi4g DQouLi4pIChwcm9nbiAuLi4gLi4uKSAoaWYgLi4uIG5pbCAuLi4pIChpZiBjb250aW51ZS1mbGFn IC4uLiAuLi4pKSkpIChpZiANCihhbmQgb3JnLWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0aXN0aWNz IChvciAobm90IA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0aXN0aWNzLXRocmVzaG9sZCkg KD4gLi4uIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0aXN0aWNzLXRocmVzaG9sZCkpKSAo cHJvZ24gKG1lc3NhZ2UgDQpcXFwiTWFwcGVkIG92ZXIgZWxlbWVudHMgaW4gJVMuICVkLyVkIHBy ZWRpY2F0ZSBtYXRjaGUuLi5cXFwiIA0KKGN1cnJlbnQtYnVmZmVyKSBjb3VudC1wcmVkaWNhdGUt Y2FsbHMtbWF0Y2ggKCsgDQpjb3VudC1wcmVkaWNhdGUtY2FsbHMtbWF0Y2ggY291bnQtcHJlZGlj YXRlLWNhbGxzLWZhaWwpICgtIC4uLiB0aW1lKSANCnByZS1wcm9jZXNzLXRpbWUgcHJlZGljYXRl LXRpbWUgcmUtc2VhcmNoLXRpbWUgZ3JhbnVsYXJpdHkgDQpyZXN0cmljdC1lbGVtZW50cyBuZXh0 LXJlIGZhaWwtcmUgZnJvbS1wb3MgdG8tcG9zIGxpbWl0LWNvdW50IA0KYWZ0ZXItZWxlbWVudCkp KSAobnJldmVyc2UgcmVzdWx0KSkpKSlcbiAocHJvZ24gKGlmIA0KKG9yZy1lbGVtZW50LS1jYWNo ZS1hY3RpdmUtcCkgbmlsIChlcnJvciBcXFwiQ2FjaGUgbXVzdCBiZSBhY3RpdmVcXFwiKSkgDQoo aWYgKG1lbXEgZ3JhbnVsYXJpdHkgJyhoZWFkbGluZSBoZWFkbGluZStpbmxpbmV0YXNrIGdyZWF0 ZXItZWxlbWVudCANCmVsZW1lbnQpKSBuaWwgKGVycm9yIFxcXCJVbnN1cHBvcnRlZCBncmFudWxh cml0eTogJVNcXFwiIGdyYW51bGFyaXR5KSkgDQooaWYgKG1hcmtlcnAgdG8tcG9zKSBuaWwgKGxl dCAoKG1rIChtYWtlLW1hcmtlcikpKSAoc2V0LW1hcmtlciBtayANCnRvLXBvcykgKHNldHEgdG8t cG9zIG1rKSkpIChsZXQgKChnYy1jb25zLXRocmVzaG9sZCAxMDczNzQxODI0KSANCnRtcG5leHQt c3RhcnQgdG1wcGFyZW50IHRtcGVsZW1lbnQpIChzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmlj dGlvbiANCihpZiBuYXJyb3cgbmlsICh3aWRlbikpIChvcmctZWxlbWVudC1hdC1wb2ludCB0by1w b3MpIChsZXQqICgoc3RhcnQgKGFuZCANCmZyb20tcG9zIC4uLikpIChwcmV2IGFmdGVyLWVsZW1l bnQpIChub2RlIChzYXZlLWN1cnJlbnQtYnVmZmVyIC4uLiAuLi4pKSANCmRhdGEgKHN0YWNrIChs aXN0IG5pbCkpIChsZWZ0cCB0KSByZXN1bHQgKGxhc3QtbWF0Y2ggdCkgY29udGludWUtZmxhZyAN CihuZXh0LWVsZW1lbnQtcmUgKGxldCogLi4uIC4uLikpIChuZXh0LXJlIChpZiAuLi4gbmlsIG5l eHQtcmUpKSAoZmFpbC1yZSANCihpZiAuLi4gbmlsIGZhaWwtcmUpKSAocmVzdHJpY3QtZWxlbWVu dHMgKG9yIHJlc3RyaWN0LWVsZW1lbnRzIC4uLikpIA0KKHRpbWUgKGZsb2F0LXRpbWUpKSAocHJl ZGljYXRlLXRpbWUgMCkgKHByZS1wcm9jZXNzLXRpbWUgMCkgDQoocmUtc2VhcmNoLXRpbWUgMCkg KGNvdW50LXByZWRpY2F0ZS1jYWxscy1tYXRjaCAwKSANCihjb3VudC1wcmVkaWNhdGUtY2FsbHMt ZmFpbCAwKSBjYWNoZS1zaXplIGJlZm9yZS10aW1lIG1vZGlmaWVkLXRpYykgDQooZ290by1jaGFy IChvciBzdGFydCAocG9pbnQtbWluKSkpIChsZXQgKChzYXZlZC1tYXRjaC1kYXRhIC4uLikpIA0K KHVud2luZC1wcm90ZWN0IChwcm9nbiAuLi4pIChzZXQtbWF0Y2gtZGF0YSBzYXZlZC1tYXRjaC1k YXRhIHQpKSkgKGlmIA0KKGFuZCBzdGFydCAoPj0gc3RhcnQgdG8tcG9zKSkgbmlsICh3aGlsZSBu b2RlIChzZXRxIGRhdGEgLi4uKSAoaWYgLi4uIA0KLi4uIC4uLiAuLi4pKSkgKGlmIChhbmQgb3Jn LWVsZW1lbnQtLWNhY2hlLW1hcC1zdGF0aXN0aWNzIChvciAuLi4gLi4uKSkgDQoocHJvZ24gKG1l c3NhZ2UgXFxcIk1hcHBlZCBvdmVyIGVsZW1lbnRzIGluICVTLiAlZC8lZCBwcmVkaWNhdGUgDQpt YXRjaGUuLi5cXFwiIC4uLiBjb3VudC1wcmVkaWNhdGUtY2FsbHMtbWF0Y2ggLi4uIC4uLiBwcmUt cHJvY2Vzcy10aW1lIA0KcHJlZGljYXRlLXRpbWUgcmUtc2VhcmNoLXRpbWUgZ3JhbnVsYXJpdHkg cmVzdHJpY3QtZWxlbWVudHMgbmV4dC1yZSANCmZhaWwtcmUgZnJvbS1wb3MgdG8tcG9zIGxpbWl0 LWNvdW50IGFmdGVyLWVsZW1lbnQpKSkgKG5yZXZlcnNlIA0KcmVzdWx0KSkpKSkpXG4gKGlmIChv cmctZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIChwcm9nbiAoaWYgDQoob3JnLWVsZW1lbnQtLWNh Y2hlLWFjdGl2ZS1wKSBuaWwgKGVycm9yIFxcXCJDYWNoZSBtdXN0IGJlIGFjdGl2ZVxcXCIpKSAN CihpZiAobWVtcSBncmFudWxhcml0eSAnKGhlYWRsaW5lIGhlYWRsaW5lK2lubGluZXRhc2sgZ3Jl YXRlci1lbGVtZW50IA0KZWxlbWVudCkpIG5pbCAoZXJyb3IgXFxcIlVuc3VwcG9ydGVkIGdyYW51 bGFyaXR5OiAlU1xcXCIgZ3JhbnVsYXJpdHkpKSANCihpZiAobWFya2VycCB0by1wb3MpIG5pbCAo bGV0ICgobWsgKG1ha2UtbWFya2VyKSkpIChzZXQtbWFya2VyIG1rIA0KdG8tcG9zKSAoc2V0cSB0 by1wb3MgbWspKSkgKGxldCAoKGdjLWNvbnMtdGhyZXNob2xkIDEwNzM3NDE4MjQpIA0KdG1wbmV4 dC1zdGFydCB0bXBwYXJlbnQgdG1wZWxlbWVudCkgKHNhdmUtZXhjdXJzaW9uIChzYXZlLXJlc3Ry aWN0aW9uIA0KKGlmIG5hcnJvdyBuaWwgKHdpZGVuKSkgKG9yZy1lbGVtZW50LWF0LXBvaW50IHRv LXBvcykgKGxldCogKChzdGFydCAuLi4pIA0KKHByZXYgYWZ0ZXItZWxlbWVudCkgKG5vZGUgLi4u KSBkYXRhIChzdGFjayAuLi4pIChsZWZ0cCB0KSByZXN1bHQgDQoobGFzdC1tYXRjaCB0KSBjb250 aW51ZS1mbGFnIChuZXh0LWVsZW1lbnQtcmUgLi4uKSAobmV4dC1yZSAuLi4pIA0KKGZhaWwtcmUg Li4uKSAocmVzdHJpY3QtZWxlbWVudHMgLi4uKSAodGltZSAuLi4pIChwcmVkaWNhdGUtdGltZSAw KSANCihwcmUtcHJvY2Vzcy10aW1lIDApIChyZS1zZWFyY2gtdGltZSAwKSAoY291bnQtcHJlZGlj YXRlLWNhbGxzLW1hdGNoIDApIA0KKGNvdW50LXByZWRpY2F0ZS1jYWxscy1mYWlsIDApIGNhY2hl LXNpemUgYmVmb3JlLXRpbWUgbW9kaWZpZWQtdGljKSANCihnb3RvLWNoYXIgKG9yIHN0YXJ0IC4u LikpIChsZXQgKC4uLikgKHVud2luZC1wcm90ZWN0IC4uLiAuLi4pKSAoaWYgKGFuZCANCnN0YXJ0 IC4uLikgbmlsICh3aGlsZSBub2RlIC4uLiAuLi4pKSAoaWYgKGFuZCANCm9yZy1lbGVtZW50LS1j YWNoZS1tYXAtc3RhdGlzdGljcyAuLi4pIChwcm9nbiAuLi4pKSAobnJldmVyc2UgDQpyZXN1bHQp KSkpKSkgKGxldCAoKC0tYnVmZmVyIChjdXJyZW50LWJ1ZmZlcikpICgtLW9sZC1zdGF0ZSANCihz YXZlLWN1cnJlbnQtYnVmZmVyIChzZXQtYnVmZmVyIChvciAoYnVmZmVyLWJhc2UtYnVmZmVyIG5p bCkgKG9yIG5pbCANCi4uLikpKSAobWFwY2FyICMnc3ltYm9sLXZhbHVlIG9yZy1lbGVtZW50LS1j YWNoZS12YXJpYWJsZXMpKSkgDQoob3JnLWVsZW1lbnQtdXNlLWNhY2hlIHQpKSAodW53aW5kLXBy b3RlY3QgKHByb2duIA0KKG9yZy1lbGVtZW50LWNhY2hlLXJlc2V0KSAoaWYgKG9yZy1lbGVtZW50 LS1jYWNoZS1hY3RpdmUtcCkgbmlsIChlcnJvciANClxcXCJDYWNoZSBtdXN0IGJlIGFjdGl2ZVxc XCIpKSAoaWYgKG1lbXEgZ3JhbnVsYXJpdHkgJyhoZWFkbGluZSANCmhlYWRsaW5lK2lubGluZXRh c2sgZ3JlYXRlci1lbGVtZW50IGVsZW1lbnQpKSBuaWwgKGVycm9yIFxcXCJVbnN1cHBvcnRlZCAN CmdyYW51bGFyaXR5OiAlU1xcXCIgZ3JhbnVsYXJpdHkpKSAoaWYgKG1hcmtlcnAgdG8tcG9zKSBu aWwgKGxldCAoKG1rIA0KLi4uKSkgKHNldC1tYXJrZXIgbWsgdG8tcG9zKSAoc2V0cSB0by1wb3Mg bWspKSkgKGxldCAoKGdjLWNvbnMtdGhyZXNob2xkIA0KMTA3Mzc0MTgyNCkgdG1wbmV4dC1zdGFy dCB0bXBwYXJlbnQgdG1wZWxlbWVudCkgKHNhdmUtZXhjdXJzaW9uIA0KKHNhdmUtcmVzdHJpY3Rp b24gKGlmIG5hcnJvdyBuaWwgLi4uKSAob3JnLWVsZW1lbnQtYXQtcG9pbnQgdG8tcG9zKSANCihs ZXQqIC4uLiAuLi4gLi4uIC4uLiAuLi4gLi4uKSkpKSkgKGNsLW1hcGMgIycobGFtYmRhICh2YXIg dmFsdWVzKSANCihzYXZlLWN1cnJlbnQtYnVmZmVyIChzZXQtYnVmZmVyIC4uLikgKHNldCB2YXIg dmFsdWVzKSkpIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLXZhcmlhYmxlcyAtLW9sZC1zdGF0ZSkpKSlc biAocHJvZ24gKGxldCAoKC0tY2wta2V5cy0tIA0KLS1jbC1yZXN0LS0pKSAod2hpbGUgLS1jbC1r ZXlzLS0gKGNvbmQgKChtZW1xIChjYXIgLS1jbC1rZXlzLS0pIA0KJyg6Z3JhbnVsYXJpdHkgOnJl c3RyaWN0LWVsZW1lbnRzIDpuZXh0LXJlIDpmYWlsLXJlIDpmcm9tLXBvcyA6dG8tcG9zIA0KOmFm dGVyLWVsZW1lbnQgOmxpbWl0LWNvdW50IDpuYXJyb3cgOmFsbG93LW90aGVyLWtleXMpKSAoaWYg KGNkciANCi0tY2wta2V5cy0tKSBuaWwgKGVycm9yIFxcXCJNaXNzaW5nIGFyZ3VtZW50IGZvciAl c1xcXCIgKGNhciANCi0tY2wta2V5cy0tKSkpIChzZXRxIC0tY2wta2V5cy0tIChjZHIgKGNkciAt LWNsLWtleXMtLSkpKSkgKChjYXIgKGNkciANCihtZW1xIC4uLiAtLWNsLXJlc3QtLSkpKSAoc2V0 cSAtLWNsLWtleXMtLSBuaWwpKSAodCAoZXJyb3IgXFxcIktleXdvcmQgDQphcmd1bWVudCAlcyBu b3Qgb25lIG9mICg6Z3JhbnVsYXJpdHkgOnJlc3QuLi5cXFwiIChjYXIgLS1jbC1rZXlzLS0pKSkp KSkgDQooaWYgKG9yZy1lbGVtZW50LS1jYWNoZS1hY3RpdmUtcCkgKHByb2duIChpZiANCihvcmct ZWxlbWVudC0tY2FjaGUtYWN0aXZlLXApIG5pbCAoZXJyb3IgXFxcIkNhY2hlIG11c3QgYmUgYWN0 aXZlXFxcIikpIA0KKGlmIChtZW1xIGdyYW51bGFyaXR5ICcoaGVhZGxpbmUgaGVhZGxpbmUraW5s aW5ldGFzayBncmVhdGVyLWVsZW1lbnQgDQplbGVtZW50KSkgbmlsIChlcnJvciBcXFwiVW5zdXBw b3J0ZWQgZ3JhbnVsYXJpdHk6ICVTXFxcIiBncmFudWxhcml0eSkpIA0KKGlmIChtYXJrZXJwIHRv LXBvcykgbmlsIChsZXQgKChtayAobWFrZS1tYXJrZXIpKSkgKHNldC1tYXJrZXIgbWsgDQp0by1w b3MpIChzZXRxIHRvLXBvcyBtaykpKSAobGV0ICgoZ2MtY29ucy10aHJlc2hvbGQgMTA3Mzc0MTgy NCkgDQp0bXBuZXh0LXN0YXJ0IHRtcHBhcmVudCB0bXBlbGVtZW50KSAoc2F2ZS1leGN1cnNpb24g KHNhdmUtcmVzdHJpY3Rpb24gDQooaWYgbmFycm93IG5pbCAod2lkZW4pKSAob3JnLWVsZW1lbnQt YXQtcG9pbnQgdG8tcG9zKSAobGV0KiAoLi4uIC4uLiAuLi4gDQpkYXRhIC4uLiAuLi4gcmVzdWx0 IC4uLiBjb250aW51ZS1mbGFnIC4uLiAuLi4gLi4uIC4uLiAuLi4gLi4uIC4uLiAuLi4gDQouLi4g Li4uIGNhY2hlLXNpemUgYmVmb3JlLXRpbWUgbW9kaWZpZWQtdGljKSAoZ290by1jaGFyIC4uLikg KGxldCAuLi4gDQouLi4pIChpZiAuLi4gbmlsIC4uLikgKGlmIC4uLiAuLi4pIChucmV2ZXJzZSBy ZXN1bHQpKSkpKSkgKGxldCANCigoLS1idWZmZXIgKGN1cnJlbnQtYnVmZmVyKSkgKC0tb2xkLXN0 YXRlIChzYXZlLWN1cnJlbnQtYnVmZmVyIA0KKHNldC1idWZmZXIgKG9yIC4uLiAuLi4pKSAobWFw Y2FyICMnc3ltYm9sLXZhbHVlIA0Kb3JnLWVsZW1lbnQtLWNhY2hlLXZhcmlhYmxlcykpKSAob3Jn LWVsZW1lbnQtdXNlLWNhY2hlIHQpKSANCih1bndpbmQtcHJvdGVjdCAocHJvZ24gKG9yZy1lbGVt ZW50LWNhY2hlLXJlc2V0KSAoaWYgDQoob3JnLWVsZW1lbnQtLWNhY2hlLWFjdGl2ZS1wKSBuaWwg KGVycm9yIFxcXCJDYWNoZSBtdXN0IGJlIGFjdGl2ZVxcXCIpKSANCihpZiAobWVtcSBncmFudWxh cml0eSAnLi4uKSBuaWwgKGVycm9yIFxcXCJVbnN1cHBvcnRlZCBncmFudWxhcml0eTogDQolU1xc XCIgZ3JhbnVsYXJpdHkpKSAoaWYgKG1hcmtlcnAgdG8tcG9zKSBuaWwgKGxldCAoLi4uKSAoc2V0 LW1hcmtlciBtayANCnRvLXBvcykgKHNldHEgdG8tcG9zIG1rKSkpIChsZXQgKChnYy1jb25zLXRo cmVzaG9sZCAxMDczNzQxODI0KSANCnRtcG5leHQtc3RhcnQgdG1wcGFyZW50IHRtcGVsZW1lbnQp IChzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiANCi4uLiAuLi4gLi4uKSkpKSAoY2wt bWFwYyAjJyhsYW1iZGEgKHZhciB2YWx1ZXMpIChzYXZlLWN1cnJlbnQtYnVmZmVyIC4uLiANCi4u LikpIG9yZy1lbGVtZW50LS1jYWNoZS12YXJpYWJsZXMgLS1vbGQtc3RhdGUpKSkpKVxuIChsZXQq IA0KKChncmFudWxhcml0eSAoY2FyIChjZHIgKG9yIChwbGlzdC1tZW1iZXIgLS1jbC1yZXN0LS0g JzpncmFudWxhcml0eSkgDQonKG5pbCBoZWFkbGluZStpbmxpbmV0YXNrKSkpKSkgKHJlc3RyaWN0 LWVsZW1lbnRzIChjYXIgKGNkciANCihwbGlzdC1tZW1iZXIgLS1jbC1yZXN0LS0gJzpyZXN0cmlj dC1lbGVtZW50cykpKSkgKG5leHQtcmUgKGNhciAoY2RyIA0KKHBsaXN0LW1lbWJlciAtLWNsLXJl c3QtLSAnOm5leHQtcmUpKSkpIChmYWlsLXJlIChjYXIgKGNkciAocGxpc3QtbWVtYmVyIA0KLS1j bC1yZXN0LS0gJzpmYWlsLXJlKSkpKSAoZnJvbS1wb3MgKGNhciAoY2RyIChwbGlzdC1tZW1iZXIg LS1jbC1yZXN0LS0gDQonOmZyb20tcG9zKSkpKSAodG8tcG9zIChjYXIgKGNkciAob3IgKHBsaXN0 LW1lbWJlciAtLWNsLXJlc3QtLSAnOnRvLXBvcykgDQoobGlzdCBuaWwgKHBvaW50LW1heC1tYXJr ZXIpKSkpKSkgKGFmdGVyLWVsZW1lbnQgKGNhciAoY2RyIChwbGlzdC1tZW1iZXIgDQotLWNsLXJl c3QtLSAnOmFmdGVyLWVsZW1lbnQpKSkpIChsaW1pdC1jb3VudCAoY2FyIChjZHIgKHBsaXN0LW1l bWJlciANCi0tY2wtcmVzdC0tICc6bGltaXQtY291bnQpKSkpIChuYXJyb3cgKGNhciAoY2RyIChw bGlzdC1tZW1iZXIgDQotLWNsLXJlc3QtLSAnOm5hcnJvdykpKSkpIChwcm9nbiAobGV0ICgoLS1j bC1rZXlzLS0gLS1jbC1yZXN0LS0pKSAod2hpbGUgDQotLWNsLWtleXMtLSAoY29uZCAoKG1lbXEg KGNhciAtLWNsLWtleXMtLSkgJy4uLikgKGlmIChjZHIgLS1jbC1rZXlzLS0pIA0KbmlsIChlcnJv ciBcXFwiTWlzc2luZyBhcmd1bWVudCBmb3IgJXNcXFwiIC4uLikpIChzZXRxIC0tY2wta2V5cy0t IChjZHIgDQouLi4pKSkgKChjYXIgKGNkciAuLi4pKSAoc2V0cSAtLWNsLWtleXMtLSBuaWwpKSAo dCAoZXJyb3IgXFxcIktleXdvcmQgDQphcmd1bWVudCAlcyBub3Qgb25lIG9mICg6Z3JhbnVsYXJp dHkgOnJlc3QuLi5cXFwiIChjYXIgLS1jbC1rZXlzLS0pKSkpKSkgDQooaWYgKG9yZy1lbGVtZW50 LS1jYWNoZS1hY3RpdmUtcCkgKHByb2duIChpZiANCihvcmctZWxlbWVudC0tY2FjaGUtYWN0aXZl LXApIG5pbCAoZXJyb3IgXFxcIkNhY2hlIG11c3QgYmUgYWN0aXZlXFxcIikpIA0KKGlmIChtZW1x IGdyYW51bGFyaXR5ICcoaGVhZGxpbmUgaGVhZGxpbmUraW5saW5ldGFzayBncmVhdGVyLWVsZW1l bnQgDQplbGVtZW50KSkgbmlsIChlcnJvciBcXFwiVW5zdXBwb3J0ZWQgZ3JhbnVsYXJpdHk6ICVT XFxcIiBncmFudWxhcml0eSkpIA0KKGlmIChtYXJrZXJwIHRvLXBvcykgbmlsIChsZXQgKChtayAu Li4pKSAoc2V0LW1hcmtlciBtayB0by1wb3MpIChzZXRxIA0KdG8tcG9zIG1rKSkpIChsZXQgKChn Yy1jb25zLXRocmVzaG9sZCAxMDczNzQxODI0KSB0bXBuZXh0LXN0YXJ0IA0KdG1wcGFyZW50IHRt cGVsZW1lbnQpIChzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiAoaWYgbmFycm93IG5p bCANCi4uLikgKG9yZy1lbGVtZW50LWF0LXBvaW50IHRvLXBvcykgKGxldCogLi4uIC4uLiAuLi4g Li4uIC4uLiAuLi4pKSkpKSANCihsZXQgKCgtLWJ1ZmZlciAoY3VycmVudC1idWZmZXIpKSAoLS1v bGQtc3RhdGUgKHNhdmUtY3VycmVudC1idWZmZXIgDQooc2V0LWJ1ZmZlciAuLi4pIChtYXBjYXIg Li4uIG9yZy1lbGVtZW50LS1jYWNoZS12YXJpYWJsZXMpKSkgDQoob3JnLWVsZW1lbnQtdXNlLWNh Y2hlIHQpKSAodW53aW5kLXByb3RlY3QgKHByb2duIA0KKG9yZy1lbGVtZW50LWNhY2hlLXJlc2V0 KSAoaWYgKG9yZy1lbGVtZW50LS1jYWNoZS1hY3RpdmUtcCkgbmlsIChlcnJvciANClxcXCJDYWNo ZSBtdXN0IGJlIGFjdGl2ZVxcXCIpKSAoaWYgKG1lbXEgZ3JhbnVsYXJpdHkgLi4uKSBuaWwgKGVy cm9yIA0KXFxcIlVuc3VwcG9ydGVkIGdyYW51bGFyaXR5OiAlU1xcXCIgZ3JhbnVsYXJpdHkpKSAo aWYgKG1hcmtlcnAgdG8tcG9zKSANCm5pbCAobGV0IC4uLiAuLi4gLi4uKSkgKGxldCAoLi4uIHRt cG5leHQtc3RhcnQgdG1wcGFyZW50IHRtcGVsZW1lbnQpIA0KKHNhdmUtZXhjdXJzaW9uIC4uLikp KSAoY2wtbWFwYyAjJyhsYW1iZGEgLi4uIC4uLikgDQpvcmctZWxlbWVudC0tY2FjaGUtdmFyaWFi bGVzIC0tb2xkLXN0YXRlKSkpKSkpXG4gDQpvcmctZWxlbWVudC1jYWNoZS1tYXAoKGNsb3N1cmUg KChkZWFkbGluZS1pdGVtcykgKGN1cnJlbnQgLiA3MzkxNjYpIA0KKHRvZGF5PykgKHRvZGF5IC4g NzM5MTcwKSAocmVnZXhwIC4gXFxcIlxcXFxcXFxcPERFQURMSU5FOiANCio8XFxcXFxcXFwoW14+ XStcXFxcXFxcXCk+XFxcIikgKHByb3BzIG1vdXNlLWZhY2UgaGlnaGxpZ2h0IA0Kb3JnLW5vdC1k b25lLXJlZ2V4cCBcXFwiXFxcXFxcXFwoVE9ET1xcXFxcXFxcKVxcXCIgb3JnLXRvZG8tcmVnZXhw IA0KXFxcIlxcXFxcXFxcKENBTkNFTEVEXFxcXFxcXFx8RE9ORVxcXFxcXFxcfFRPRE9cXFxcXFxc XHxXQUlUSU5HXFxcXFxcXFwpXFxcIiANCm9yZy1jb21wbGV4LWhlYWRpbmctcmVnZXhwIFxcXCJe XFxcXFxcXFwoXFxcXFxcXFwqK1xcXFxcXFxcKVxcXFxcXFxcKD86IA0KK1xcXFxcXFxcKENBTkNF TEVEXFxcXFxcXFx8RE9ORVxcXFxcXFxcfFRPRE9cXFxcXFxcXHxXQUlUSU5HXFxcXFxcXFwpXFxc XFxcXFwpPy4uLlxcXCIgDQpoZWxwLWVjaG8gXFxcIm1vdXNlLTIgb3IgUkVUIGp1bXAgdG8gb3Jn IGZpbGUgfi9vcmcvYWNhZGVtaWNzLm9yLi4uXFxcIikgDQood2l0aC1ob3VyKSkgKGVsKSAoaWYg KGFuZCAob3JnLWVsZW1lbnQtLXByb3BlcnR5IDpkZWFkbGluZSBlbCBuaWwgbmlsKSANCihtZW1x IChvcmctZWxlbWVudC0tcHJvcGVydHkgOnR5cGUgKG9yZy1lbGVtZW50LS1wcm9wZXJ0eSA6ZGVh ZGxpbmUgZWwgDQpuaWwgbmlsKSBuaWwgbmlsKSAnKGRpYXJ5IGFjdGl2ZSBhY3RpdmUtcmFuZ2Up KSAob3IgKG5vdCB3aXRoLWhvdXIpIA0KKG9yZy1lbGVtZW50LS1wcm9wZXJ0eSA6aG91ci1zdGFy dCAob3JnLWVsZW1lbnQtLXByb3BlcnR5IDpkZWFkbGluZSBlbCANCm5pbCBuaWwpIG5pbCBuaWwp IChvcmctZWxlbWVudC0tcHJvcGVydHkgOmhvdXItZW5kIA0KKG9yZy1lbGVtZW50LS1wcm9wZXJ0 eSA6ZGVhZGxpbmUgZWwgbmlsIG5pbCkgbmlsIG5pbCkpKSAocHJvZ24gDQooZ290by1jaGFyIChv cmctZWxlbWVudC1jb250ZW50cy1iZWdpbiBlbCkpIChjYXRjaCA6c2tpcCANCihvcmctYWdlbmRh LXNraXAgZWwpIChsZXQqICgocyAuLi4pIChwb3MgLi4uKSAodG9kby1zdGF0ZSAuLi4pIChkb25l PyANCi4uLikgKHNleHA/IC4uLikgKGRlYWRsaW5lIC4uLikgKHJlcGVhdCAuLi4pIChkaWZmIC4u LikgDQoobWF4LXdhcm5pbmctZGF5cyAuLi4pICh3YXJuaW5nLWRheXMgLi4uKSkgKGNvbmQgKC4u LiBuaWwpICguLi4gbmlsKSANCiguLi4gLi4uKSAoLi4uIC4uLikgKHQgLi4uKSkgKGlmIChhbmQg ZG9uZT8gLi4uKSAocHJvZ24gLi4uKSkgDQooc2F2ZS1leGN1cnNpb24gKGdvdG8tY2hhciAuLi4p IChsZXQqIC4uLiAuLi4gLi4uKSkpKSkpKSA6bmV4dC1yZSANClxcXCJcXFxcXFxcXDxERUFETElO RTogKjxcXFxcXFxcXChbXj5dK1xcXFxcXFxcKT5cXFwiIDpmYWlsLXJlIA0KXFxcIlxcXFxcXFxc PERFQURMSU5FOiAqPFxcXFxcXFxcKFtePl0rXFxcXFxcXFwpPlxcXCIgOm5hcnJvdyB0KVxuIChs ZXQqIA0KKChwcm9wcyAobGlzdCAnbW91c2UtZmFjZSAnaGlnaGxpZ2h0ICdvcmctbm90LWRvbmUt cmVnZXhwIA0Kb3JnLW5vdC1kb25lLXJlZ2V4cCAnb3JnLXRvZG8tcmVnZXhwIG9yZy10b2RvLXJl Z2V4cCANCidvcmctY29tcGxleC1oZWFkaW5nLXJlZ2V4cCBvcmctY29tcGxleC1oZWFkaW5nLXJl Z2V4cCAnaGVscC1lY2hvIA0KKGZvcm1hdCBcXFwibW91c2UtMiBvciBSRVQganVtcCB0byBvcmcg ZmlsZSAlc1xcXCIgKGFiYnJldmlhdGUtZmlsZS1uYW1lIA0KYnVmZmVyLWZpbGUtbmFtZSkpKSkg KHJlZ2V4cCAoaWYgd2l0aC1ob3VyIG9yZy1kZWFkbGluZS10aW1lLWhvdXItcmVnZXhwIA0Kb3Jn LWRlYWRsaW5lLXRpbWUtcmVnZXhwKSkgKHRvZGF5IChvcmctdG9kYXkpKSAodG9kYXk/IA0KKG9y Zy1hZ2VuZGEtdG9kYXktcCBkYXRlKSkgKGN1cnJlbnQgKGNhbGVuZGFyLWFic29sdXRlLWZyb20t Z3JlZ29yaWFuIA0KZGF0ZSkpIGRlYWRsaW5lLWl0ZW1zKSAob3JnLWVsZW1lbnQtY2FjaGUtbWFw ICMnKGxhbWJkYSAoZWwpIChpZiAoYW5kIA0KKG9yZy1lbGVtZW50LS1wcm9wZXJ0eSA6ZGVhZGxp bmUgZWwgbmlsIG5pbCkgKG1lbXEgDQoob3JnLWVsZW1lbnQtLXByb3BlcnR5IDp0eXBlIC4uLiBu aWwgbmlsKSAnLi4uKSAob3IgKG5vdCB3aXRoLWhvdXIpIA0KKG9yZy1lbGVtZW50LS1wcm9wZXJ0 eSA6aG91ci1zdGFydCAuLi4gbmlsIG5pbCkgKG9yZy1lbGVtZW50LS1wcm9wZXJ0eSANCjpob3Vy LWVuZCAuLi4gbmlsIG5pbCkpKSAocHJvZ24gKGdvdG8tY2hhciAob3JnLWVsZW1lbnQtY29udGVu dHMtYmVnaW4gDQplbCkpIChjYXRjaCA6c2tpcCAob3JnLWFnZW5kYS1za2lwIGVsKSAobGV0KiAu Li4gLi4uIC4uLiAuLi4pKSkpKSANCjpuZXh0LXJlIHJlZ2V4cCA6ZmFpbC1yZSByZWdleHAgOm5h cnJvdyB0KSAobnJldmVyc2UgZGVhZGxpbmUtaXRlbXMpKVxuIA0Kb3JnLWFnZW5kYS1nZXQtZGVh ZGxpbmVzKClcbiAoc2V0cSBkZWFkbGluZXMgDQoob3JnLWFnZW5kYS1nZXQtZGVhZGxpbmVzKSlc biAobGV0IG5pbCAoc2V0cSBkZWFkbGluZXMgDQoob3JnLWFnZW5kYS1nZXQtZGVhZGxpbmVzKSkg KHNldHEgcmVzdWx0cyAoY29ucyBkZWFkbGluZXMgcmVzdWx0cykpKVxuIA0KKGNvbmQgKChlcSBh cmcgOnRvZG8pIChpZiAob3JnLWFnZW5kYS10b2RheS1wIGRhdGUpIChsZXQgbmlsIChzZXRxIA0K cmVzdWx0cyAoY29ucyAob3JnLWFnZW5kYS1nZXQtdG9kb3MpIHJlc3VsdHMpKSkpKSAoKGVxIGFy ZyA6dGltZXN0YW1wKSANCihsZXQgbmlsIChzZXRxIHJlc3VsdHMgKGNvbnMgKG9yZy1hZ2VuZGEt Z2V0LWJsb2NrcykgcmVzdWx0cykpIChzZXRxIA0KcmVzdWx0cyAoY29ucyAob3JnLWFnZW5kYS1n ZXQtdGltZXN0YW1wcyBkZWFkbGluZXMpIHJlc3VsdHMpKSkpICgoZXEgYXJnIA0KOnNleHApIChs ZXQgbmlsIChzZXRxIHJlc3VsdHMgKGNvbnMgKG9yZy1hZ2VuZGEtZ2V0LXNleHBzKSByZXN1bHRz KSkpKSANCigoZXEgYXJnIDpzY2hlZHVsZWQpIChsZXQgbmlsIChzZXRxIHJlc3VsdHMgKGNvbnMg DQoob3JnLWFnZW5kYS1nZXQtc2NoZWR1bGVkIGRlYWRsaW5lcykgcmVzdWx0cykpKSkgKChlcSBh cmcgOnNjaGVkdWxlZCopIA0KKGxldCBuaWwgKHNldHEgcmVzdWx0cyAoY29ucyAob3JnLWFnZW5k YS1nZXQtc2NoZWR1bGVkIGRlYWRsaW5lcyB0KSANCnJlc3VsdHMpKSkpICgoZXEgYXJnIDpjbG9z ZWQpIChsZXQgbmlsIChzZXRxIHJlc3VsdHMgKGNvbnMgDQoob3JnLWFnZW5kYS1nZXQtcHJvZ3Jl c3MpIHJlc3VsdHMpKSkpICgoZXEgYXJnIDpkZWFkbGluZSkgKGxldCBuaWwgKHNldHEgDQpkZWFk bGluZXMgKG9yZy1hZ2VuZGEtZ2V0LWRlYWRsaW5lcykpIChzZXRxIHJlc3VsdHMgKGNvbnMgZGVh ZGxpbmVzIA0KcmVzdWx0cykpKSkgKChlcSBhcmcgOmRlYWRsaW5lKikgKGxldCBuaWwgKHNldHEg ZGVhZGxpbmVzIA0KKG9yZy1hZ2VuZGEtZ2V0LWRlYWRsaW5lcyB0KSkgKHNldHEgcmVzdWx0cyAo Y29ucyBkZWFkbGluZXMgDQpyZXN1bHRzKSkpKSlcbiAobGV0ICgoYXJnIChjYXIgdGFpbCkpKSAo Y29uZCAoKGVxIGFyZyA6dG9kbykgKGlmIA0KKG9yZy1hZ2VuZGEtdG9kYXktcCBkYXRlKSAobGV0 IG5pbCAoc2V0cSByZXN1bHRzIChjb25zIA0KKG9yZy1hZ2VuZGEtZ2V0LXRvZG9zKSByZXN1bHRz KSkpKSkgKChlcSBhcmcgOnRpbWVzdGFtcCkgKGxldCBuaWwgKHNldHEgDQpyZXN1bHRzIChjb25z IChvcmctYWdlbmRhLWdldC1ibG9ja3MpIHJlc3VsdHMpKSAoc2V0cSByZXN1bHRzIChjb25zIA0K KG9yZy1hZ2VuZGEtZ2V0LXRpbWVzdGFtcHMgZGVhZGxpbmVzKSByZXN1bHRzKSkpKSAoKGVxIGFy ZyA6c2V4cCkgKGxldCANCm5pbCAoc2V0cSByZXN1bHRzIChjb25zIChvcmctYWdlbmRhLWdldC1z ZXhwcykgcmVzdWx0cykpKSkgKChlcSBhcmcgDQo6c2NoZWR1bGVkKSAobGV0IG5pbCAoc2V0cSBy ZXN1bHRzIChjb25zIChvcmctYWdlbmRhLWdldC1zY2hlZHVsZWQgDQpkZWFkbGluZXMpIHJlc3Vs dHMpKSkpICgoZXEgYXJnIDpzY2hlZHVsZWQqKSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIA0KKGNv bnMgKG9yZy1hZ2VuZGEtZ2V0LXNjaGVkdWxlZCBkZWFkbGluZXMgdCkgcmVzdWx0cykpKSkgKChl cSBhcmcgDQo6Y2xvc2VkKSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIChjb25zIChvcmctYWdlbmRh LWdldC1wcm9ncmVzcykgDQpyZXN1bHRzKSkpKSAoKGVxIGFyZyA6ZGVhZGxpbmUpIChsZXQgbmls IChzZXRxIGRlYWRsaW5lcyANCihvcmctYWdlbmRhLWdldC1kZWFkbGluZXMpKSAoc2V0cSByZXN1 bHRzIChjb25zIGRlYWRsaW5lcyByZXN1bHRzKSkpKSANCigoZXEgYXJnIDpkZWFkbGluZSopIChs ZXQgbmlsIChzZXRxIGRlYWRsaW5lcyAob3JnLWFnZW5kYS1nZXQtZGVhZGxpbmVzIA0KdCkpIChz ZXRxIHJlc3VsdHMgKGNvbnMgZGVhZGxpbmVzIHJlc3VsdHMpKSkpKSAoc2V0cSB0YWlsIChjZHIg dGFpbCkpKVxuIA0KKHdoaWxlIHRhaWwgKGxldCAoKGFyZyAoY2FyIHRhaWwpKSkgKGNvbmQgKChl cSBhcmcgOnRvZG8pIChpZiANCihvcmctYWdlbmRhLXRvZGF5LXAgZGF0ZSkgKGxldCBuaWwgKHNl dHEgcmVzdWx0cyAoY29ucyAuLi4gcmVzdWx0cykpKSkpIA0KKChlcSBhcmcgOnRpbWVzdGFtcCkg KGxldCBuaWwgKHNldHEgcmVzdWx0cyAoY29ucyANCihvcmctYWdlbmRhLWdldC1ibG9ja3MpIHJl c3VsdHMpKSAoc2V0cSByZXN1bHRzIChjb25zIA0KKG9yZy1hZ2VuZGEtZ2V0LXRpbWVzdGFtcHMg ZGVhZGxpbmVzKSByZXN1bHRzKSkpKSAoKGVxIGFyZyA6c2V4cCkgKGxldCANCm5pbCAoc2V0cSBy ZXN1bHRzIChjb25zIChvcmctYWdlbmRhLWdldC1zZXhwcykgcmVzdWx0cykpKSkgKChlcSBhcmcg DQo6c2NoZWR1bGVkKSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIChjb25zIChvcmctYWdlbmRhLWdl dC1zY2hlZHVsZWQgDQpkZWFkbGluZXMpIHJlc3VsdHMpKSkpICgoZXEgYXJnIDpzY2hlZHVsZWQq KSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIA0KKGNvbnMgKG9yZy1hZ2VuZGEtZ2V0LXNjaGVkdWxl ZCBkZWFkbGluZXMgdCkgcmVzdWx0cykpKSkgKChlcSBhcmcgDQo6Y2xvc2VkKSAobGV0IG5pbCAo c2V0cSByZXN1bHRzIChjb25zIChvcmctYWdlbmRhLWdldC1wcm9ncmVzcykgDQpyZXN1bHRzKSkp KSAoKGVxIGFyZyA6ZGVhZGxpbmUpIChsZXQgbmlsIChzZXRxIGRlYWRsaW5lcyANCihvcmctYWdl bmRhLWdldC1kZWFkbGluZXMpKSAoc2V0cSByZXN1bHRzIChjb25zIGRlYWRsaW5lcyByZXN1bHRz KSkpKSANCigoZXEgYXJnIDpkZWFkbGluZSopIChsZXQgbmlsIChzZXRxIGRlYWRsaW5lcyAob3Jn LWFnZW5kYS1nZXQtZGVhZGxpbmVzIA0KdCkpIChzZXRxIHJlc3VsdHMgKGNvbnMgZGVhZGxpbmVz IHJlc3VsdHMpKSkpKSAoc2V0cSB0YWlsIChjZHIgDQp0YWlsKSkpKVxuIChsZXQgKCh0YWlsIGFy Z3MpKSAod2hpbGUgdGFpbCAobGV0ICgoYXJnIChjYXIgdGFpbCkpKSAoY29uZCANCigoZXEgYXJn IDp0b2RvKSAoaWYgKG9yZy1hZ2VuZGEtdG9kYXktcCBkYXRlKSAobGV0IG5pbCAoc2V0cSByZXN1 bHRzIA0KLi4uKSkpKSAoKGVxIGFyZyA6dGltZXN0YW1wKSAobGV0IG5pbCAoc2V0cSByZXN1bHRz IChjb25zIC4uLiByZXN1bHRzKSkgDQooc2V0cSByZXN1bHRzIChjb25zIC4uLiByZXN1bHRzKSkp KSAoKGVxIGFyZyA6c2V4cCkgKGxldCBuaWwgKHNldHEgDQpyZXN1bHRzIChjb25zIC4uLiByZXN1 bHRzKSkpKSAoKGVxIGFyZyA6c2NoZWR1bGVkKSAobGV0IG5pbCAoc2V0cSANCnJlc3VsdHMgKGNv bnMgLi4uIHJlc3VsdHMpKSkpICgoZXEgYXJnIDpzY2hlZHVsZWQqKSAobGV0IG5pbCAoc2V0cSAN CnJlc3VsdHMgKGNvbnMgLi4uIHJlc3VsdHMpKSkpICgoZXEgYXJnIDpjbG9zZWQpIChsZXQgbmls IChzZXRxIHJlc3VsdHMgDQooY29ucyAuLi4gcmVzdWx0cykpKSkgKChlcSBhcmcgOmRlYWRsaW5l KSAobGV0IG5pbCAoc2V0cSBkZWFkbGluZXMgDQoob3JnLWFnZW5kYS1nZXQtZGVhZGxpbmVzKSkg KHNldHEgcmVzdWx0cyAoY29ucyBkZWFkbGluZXMgcmVzdWx0cykpKSkgDQooKGVxIGFyZyA6ZGVh ZGxpbmUqKSAobGV0IG5pbCAoc2V0cSBkZWFkbGluZXMgKG9yZy1hZ2VuZGEtZ2V0LWRlYWRsaW5l cyANCnQpKSAoc2V0cSByZXN1bHRzIChjb25zIGRlYWRsaW5lcyByZXN1bHRzKSkpKSkgKHNldHEg dGFpbCAoY2RyIHRhaWwpKSkpIA0KKGFwcGx5ICMnbmNvbmMgKG5yZXZlcnNlIHJlc3VsdHMpKSlc biAobGV0KiAoKGRhdGUgZGF0ZSkpIChsZXQgKCh0YWlsIA0KYXJncykpICh3aGlsZSB0YWlsIChs ZXQgKChhcmcgKGNhciB0YWlsKSkpIChjb25kICgoZXEgYXJnIDp0b2RvKSAoaWYgDQoob3JnLWFn ZW5kYS10b2RheS1wIGRhdGUpIChsZXQgbmlsIC4uLikpKSAoKGVxIGFyZyA6dGltZXN0YW1wKSAo bGV0IG5pbCANCihzZXRxIHJlc3VsdHMgLi4uKSAoc2V0cSByZXN1bHRzIC4uLikpKSAoKGVxIGFy ZyA6c2V4cCkgKGxldCBuaWwgKHNldHEgDQpyZXN1bHRzIC4uLikpKSAoKGVxIGFyZyA6c2NoZWR1 bGVkKSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIC4uLikpKSAoKGVxIA0KYXJnIDpzY2hlZHVsZWQq KSAobGV0IG5pbCAoc2V0cSByZXN1bHRzIC4uLikpKSAoKGVxIGFyZyA6Y2xvc2VkKSAobGV0IA0K bmlsIChzZXRxIHJlc3VsdHMgLi4uKSkpICgoZXEgYXJnIDpkZWFkbGluZSkgKGxldCBuaWwgKHNl dHEgZGVhZGxpbmVzIA0KLi4uKSAoc2V0cSByZXN1bHRzIC4uLikpKSAoKGVxIGFyZyA6ZGVhZGxp bmUqKSAobGV0IG5pbCAoc2V0cSBkZWFkbGluZXMgDQouLi4pIChzZXRxIHJlc3VsdHMgLi4uKSkp KSAoc2V0cSB0YWlsIChjZHIgdGFpbCkpKSkgKGFwcGx5ICMnbmNvbmMgDQoobnJldmVyc2UgcmVz dWx0cykpKSlcbiAocHJvZ24gKHdpdGgtbm8td2FybmluZ3MgKGRlZnZhciBkYXRlKSkgKGxldCog DQooKGRhdGUgZGF0ZSkpIChsZXQgKCh0YWlsIGFyZ3MpKSAod2hpbGUgdGFpbCAobGV0ICgoYXJn IChjYXIgdGFpbCkpKSANCihjb25kICgoZXEgYXJnIDp0b2RvKSAoaWYgLi4uIC4uLikpICgoZXEg YXJnIDp0aW1lc3RhbXApIChsZXQgbmlsIC4uLiANCi4uLikpICgoZXEgYXJnIDpzZXhwKSAobGV0 IG5pbCAuLi4pKSAoKGVxIGFyZyA6c2NoZWR1bGVkKSAobGV0IG5pbCAuLi4pKSANCigoZXEgYXJn IDpzY2hlZHVsZWQqKSAobGV0IG5pbCAuLi4pKSAoKGVxIGFyZyA6Y2xvc2VkKSAobGV0IG5pbCAu Li4pKSANCigoZXEgYXJnIDpkZWFkbGluZSkgKGxldCBuaWwgLi4uIC4uLikpICgoZXEgYXJnIDpk ZWFkbGluZSopIChsZXQgbmlsIC4uLiANCi4uLikpKSAoc2V0cSB0YWlsIChjZHIgdGFpbCkpKSkg KGFwcGx5ICMnbmNvbmMgKG5yZXZlcnNlIHJlc3VsdHMpKSkpKVxuIA0KKGxldCAoKGNhc2UtZm9s ZC1zZWFyY2ggbmlsKSByZXN1bHRzIGRlYWRsaW5lcykgKHByb2duICh3aXRoLW5vLXdhcm5pbmdz IA0KKGRlZnZhciBkYXRlKSkgKGxldCogKChkYXRlIGRhdGUpKSAobGV0ICgodGFpbCBhcmdzKSkg KHdoaWxlIHRhaWwgKGxldCANCigoYXJnIC4uLikpIChjb25kICguLi4gLi4uKSAoLi4uIC4uLikg KC4uLiAuLi4pICguLi4gLi4uKSAoLi4uIC4uLikgKC4uLiANCi4uLikgKC4uLiAuLi4pICguLi4g Li4uKSkgKHNldHEgdGFpbCAoY2RyIHRhaWwpKSkpIChhcHBseSAjJ25jb25jIA0KKG5yZXZlcnNl IHJlc3VsdHMpKSkpKSlcbiAoc2F2ZS1yZXN0cmljdGlvbiAoaWYgKGVxIGJ1ZmZlciANCm9yZy1h Z2VuZGEtcmVzdHJpY3QpIChuYXJyb3ctdG8tcmVnaW9uIG9yZy1hZ2VuZGEtcmVzdHJpY3QtYmVn aW4gDQpvcmctYWdlbmRhLXJlc3RyaWN0LWVuZCkgKHdpZGVuKSkgKHNldHEgYXJncyAob3JnLXVu aXF1aWZ5IChvciBhcmdzIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSAoaWYgKGFuZCAobWVt cSA6c2NoZWR1bGVkIGFyZ3MpIChtZW1xIA0KOnNjaGVkdWxlZCogYXJncykpIChwcm9nbiAoc2V0 cSBhcmdzIChkZWxxIDpzY2hlZHVsZWQqIGFyZ3MpKSkpIChjb25kIA0KKChtZW1xIDpkZWFkbGlu ZSBhcmdzKSAoc2V0cSBhcmdzIChjb25zIDpkZWFkbGluZSAoZGVscSA6ZGVhZGxpbmUgKGRlbHEg DQo6ZGVhZGxpbmUqIGFyZ3MpKSkpKSAoKG1lbXEgOmRlYWRsaW5lKiBhcmdzKSAoc2V0cSBhcmdz IChjb25zIDpkZWFkbGluZSogDQooZGVscSA6ZGVhZGxpbmUqIGFyZ3MpKSkpKSAobGV0ICgoY2Fz ZS1mb2xkLXNlYXJjaCBuaWwpIHJlc3VsdHMgDQpkZWFkbGluZXMpIChwcm9nbiAod2l0aC1uby13 YXJuaW5ncyAoZGVmdmFyIGRhdGUpKSAobGV0KiAoKGRhdGUgZGF0ZSkpIA0KKGxldCAoKHRhaWwg YXJncykpICh3aGlsZSB0YWlsIChsZXQgKC4uLikgKGNvbmQgLi4uIC4uLiAuLi4gLi4uIC4uLiAu Li4gDQouLi4gLi4uKSAoc2V0cSB0YWlsIC4uLikpKSAoYXBwbHkgIyduY29uYyAobnJldmVyc2Ug cmVzdWx0cykpKSkpKSlcbiANCihzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0cmljdGlvbiAoaWYg KGVxIGJ1ZmZlciBvcmctYWdlbmRhLXJlc3RyaWN0KSANCihuYXJyb3ctdG8tcmVnaW9uIG9yZy1h Z2VuZGEtcmVzdHJpY3QtYmVnaW4gb3JnLWFnZW5kYS1yZXN0cmljdC1lbmQpIA0KKHdpZGVuKSkg KHNldHEgYXJncyAob3JnLXVuaXF1aWZ5IChvciBhcmdzIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMp KSkgKGlmIA0KKGFuZCAobWVtcSA6c2NoZWR1bGVkIGFyZ3MpIChtZW1xIDpzY2hlZHVsZWQqIGFy Z3MpKSAocHJvZ24gKHNldHEgYXJncyANCihkZWxxIDpzY2hlZHVsZWQqIGFyZ3MpKSkpIChjb25k ICgobWVtcSA6ZGVhZGxpbmUgYXJncykgKHNldHEgYXJncyAoY29ucyANCjpkZWFkbGluZSAoZGVs cSA6ZGVhZGxpbmUgKGRlbHEgOmRlYWRsaW5lKiBhcmdzKSkpKSkgKChtZW1xIDpkZWFkbGluZSog DQphcmdzKSAoc2V0cSBhcmdzIChjb25zIDpkZWFkbGluZSogKGRlbHEgOmRlYWRsaW5lKiBhcmdz KSkpKSkgKGxldCANCigoY2FzZS1mb2xkLXNlYXJjaCBuaWwpIHJlc3VsdHMgZGVhZGxpbmVzKSAo cHJvZ24gKHdpdGgtbm8td2FybmluZ3MgDQooZGVmdmFyIGRhdGUpKSAobGV0KiAoKGRhdGUgZGF0 ZSkpIChsZXQgKCh0YWlsIGFyZ3MpKSAod2hpbGUgdGFpbCAobGV0IA0KLi4uIC4uLiAuLi4pKSAo YXBwbHkgIyduY29uYyAobnJldmVyc2UgcmVzdWx0cykpKSkpKSkpXG4gDQooc2F2ZS1jdXJyZW50 LWJ1ZmZlciAoc2V0LWJ1ZmZlciBidWZmZXIpIChpZiAoZGVyaXZlZC1tb2RlLXAgJ29yZy1tb2Rl KSANCm5pbCAoZXJyb3IgXFxcIkFnZW5kYSBmaWxlICVzIGlzIG5vdCBpbiBPcmcgbW9kZVxcXCIg ZmlsZSkpIChzZXRxIA0Kb3JnLWFnZW5kYS1idWZmZXIgKG9yIG9yZy1hZ2VuZGEtYnVmZmVyIGJ1 ZmZlcikpIChzZXRxIA0Kb3JnLWFnZW5kYS1jdXJyZW50LWRhdGUgZGF0ZSkgKHNhdmUtZXhjdXJz aW9uIChzYXZlLXJlc3RyaWN0aW9uIChpZiAoZXEgDQpidWZmZXIgb3JnLWFnZW5kYS1yZXN0cmlj dCkgKG5hcnJvdy10by1yZWdpb24gb3JnLWFnZW5kYS1yZXN0cmljdC1iZWdpbiANCm9yZy1hZ2Vu ZGEtcmVzdHJpY3QtZW5kKSAod2lkZW4pKSAoc2V0cSBhcmdzIChvcmctdW5pcXVpZnkgKG9yIGFy Z3MgDQpvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpIChpZiAoYW5kIChtZW1xIDpzY2hlZHVsZWQg YXJncykgKG1lbXEgDQo6c2NoZWR1bGVkKiBhcmdzKSkgKHByb2duIChzZXRxIGFyZ3MgKGRlbHEg OnNjaGVkdWxlZCogYXJncykpKSkgKGNvbmQgDQooKG1lbXEgOmRlYWRsaW5lIGFyZ3MpIChzZXRx IGFyZ3MgKGNvbnMgOmRlYWRsaW5lIChkZWxxIDpkZWFkbGluZSANCi4uLikpKSkgKChtZW1xIDpk ZWFkbGluZSogYXJncykgKHNldHEgYXJncyAoY29ucyA6ZGVhZGxpbmUqIChkZWxxIA0KOmRlYWRs aW5lKiBhcmdzKSkpKSkgKGxldCAoKGNhc2UtZm9sZC1zZWFyY2ggbmlsKSByZXN1bHRzIGRlYWRs aW5lcykgDQoocHJvZ24gKHdpdGgtbm8td2FybmluZ3MgKGRlZnZhciBkYXRlKSkgKGxldCogKChk YXRlIGRhdGUpKSAobGV0ICguLi4pIA0KKHdoaWxlIHRhaWwgLi4uKSAoYXBwbHkgLi4uIC4uLikp KSkpKSkpXG4gKGlmIChub3QgYnVmZmVyKSAobGlzdCAoZm9ybWF0IA0KXFxcIk9SRy1BR0VOREEt RVJST1I6IE5vIHN1Y2ggb3JnLWZpbGUgJXNcXFwiIGZpbGUpKSANCihzYXZlLWN1cnJlbnQtYnVm ZmVyIChzZXQtYnVmZmVyIGJ1ZmZlcikgKGlmIChkZXJpdmVkLW1vZGUtcCAnb3JnLW1vZGUpIA0K bmlsIChlcnJvciBcXFwiQWdlbmRhIGZpbGUgJXMgaXMgbm90IGluIE9yZyBtb2RlXFxcIiBmaWxl KSkgKHNldHEgDQpvcmctYWdlbmRhLWJ1ZmZlciAob3Igb3JnLWFnZW5kYS1idWZmZXIgYnVmZmVy KSkgKHNldHEgDQpvcmctYWdlbmRhLWN1cnJlbnQtZGF0ZSBkYXRlKSAoc2F2ZS1leGN1cnNpb24g KHNhdmUtcmVzdHJpY3Rpb24gKGlmIChlcSANCmJ1ZmZlciBvcmctYWdlbmRhLXJlc3RyaWN0KSAo bmFycm93LXRvLXJlZ2lvbiBvcmctYWdlbmRhLXJlc3RyaWN0LWJlZ2luIA0Kb3JnLWFnZW5kYS1y ZXN0cmljdC1lbmQpICh3aWRlbikpIChzZXRxIGFyZ3MgKG9yZy11bmlxdWlmeSAob3IgYXJncyAN Cm9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSkgKGlmIChhbmQgKG1lbXEgOnNjaGVkdWxlZCBhcmdz KSAobWVtcSANCjpzY2hlZHVsZWQqIGFyZ3MpKSAocHJvZ24gKHNldHEgYXJncyAoZGVscSA6c2No ZWR1bGVkKiBhcmdzKSkpKSAoY29uZCANCigobWVtcSA6ZGVhZGxpbmUgYXJncykgKHNldHEgYXJn cyAoY29ucyA6ZGVhZGxpbmUgLi4uKSkpICgobWVtcSANCjpkZWFkbGluZSogYXJncykgKHNldHEg YXJncyAoY29ucyA6ZGVhZGxpbmUqIC4uLikpKSkgKGxldCANCigoY2FzZS1mb2xkLXNlYXJjaCBu aWwpIHJlc3VsdHMgZGVhZGxpbmVzKSAocHJvZ24gKHdpdGgtbm8td2FybmluZ3MgDQooZGVmdmFy IGRhdGUpKSAobGV0KiAoLi4uKSAobGV0IC4uLiAuLi4gLi4uKSkpKSkpKSlcbiAobGV0KiANCigo b3JnLXN0YXJ0dXAtZm9sZGVkIG5pbCkgKG9yZy1zdGFydHVwLWFsaWduLWFsbC10YWJsZXMgbmls KSAoYnVmZmVyIChpZiANCihmaWxlLWV4aXN0cy1wIGZpbGUpIChvcmctZ2V0LWFnZW5kYS1maWxl LWJ1ZmZlciBmaWxlKSAoZXJyb3IgXFxcIk5vIA0Kc3VjaCBmaWxlICVzXFxcIiBmaWxlKSkpKSAo aWYgKG5vdCBidWZmZXIpIChsaXN0IChmb3JtYXQgDQpcXFwiT1JHLUFHRU5EQS1FUlJPUjogTm8g c3VjaCBvcmctZmlsZSAlc1xcXCIgZmlsZSkpIA0KKHNhdmUtY3VycmVudC1idWZmZXIgKHNldC1i dWZmZXIgYnVmZmVyKSAoaWYgKGRlcml2ZWQtbW9kZS1wICdvcmctbW9kZSkgDQpuaWwgKGVycm9y IFxcXCJBZ2VuZGEgZmlsZSAlcyBpcyBub3QgaW4gT3JnIG1vZGVcXFwiIGZpbGUpKSAoc2V0cSAN Cm9yZy1hZ2VuZGEtYnVmZmVyIChvciBvcmctYWdlbmRhLWJ1ZmZlciBidWZmZXIpKSAoc2V0cSAN Cm9yZy1hZ2VuZGEtY3VycmVudC1kYXRlIGRhdGUpIChzYXZlLWV4Y3Vyc2lvbiAoc2F2ZS1yZXN0 cmljdGlvbiAoaWYgKGVxIA0KYnVmZmVyIG9yZy1hZ2VuZGEtcmVzdHJpY3QpIChuYXJyb3ctdG8t cmVnaW9uIG9yZy1hZ2VuZGEtcmVzdHJpY3QtYmVnaW4gDQpvcmctYWdlbmRhLXJlc3RyaWN0LWVu ZCkgKHdpZGVuKSkgKHNldHEgYXJncyAob3JnLXVuaXF1aWZ5IChvciBhcmdzIA0Kb3JnLWFnZW5k YS1lbnRyeS10eXBlcykpKSAoaWYgKGFuZCAobWVtcSA6c2NoZWR1bGVkIGFyZ3MpIChtZW1xIA0K OnNjaGVkdWxlZCogYXJncykpIChwcm9nbiAoc2V0cSBhcmdzIC4uLikpKSAoY29uZCAoKG1lbXEg OmRlYWRsaW5lIGFyZ3MpIA0KKHNldHEgYXJncyAuLi4pKSAoKG1lbXEgOmRlYWRsaW5lKiBhcmdz KSAoc2V0cSBhcmdzIC4uLikpKSAobGV0IA0KKChjYXNlLWZvbGQtc2VhcmNoIG5pbCkgcmVzdWx0 cyBkZWFkbGluZXMpIChwcm9nbiAod2l0aC1uby13YXJuaW5ncyAuLi4pIA0KKGxldCogLi4uIC4u LikpKSkpKSkpXG4gDQpvcmctYWdlbmRhLWdldC1kYXktZW50cmllcyhcXFwiL1VzZXJzL2FuZHJl dy9vcmcvYWNhZGVtaWNzLm9yZ1xcXCIgKDEwIDcgDQoyMDI0KSA6ZGVhZGxpbmUgOnNjaGVkdWxl ZCA6dGltZXN0YW1wIDpzZXhwKVxuIA0KYXBwbHkob3JnLWFnZW5kYS1nZXQtZGF5LWVudHJpZXMg XFxcIi9Vc2Vycy9hbmRyZXcvb3JnL2FjYWRlbWljcy5vcmdcXFwiIA0KKDEwIDcgMjAyNCkgKDpk ZWFkbGluZSA6c2NoZWR1bGVkIDp0aW1lc3RhbXAgOnNleHApKVxuIChzZXRxIHJ0biAoYXBwbHkg DQojJ29yZy1hZ2VuZGEtZ2V0LWRheS1lbnRyaWVzIGZpbGUgZGF0ZSBvcmctYWdlbmRhLWVudHJ5 LXR5cGVzKSlcbiAoY29uZCANCigobWVtcSBvcmctYWdlbmRhLXNob3ctbG9nLXNjb3BlZCAnKG9u bHkgY2xvY2tjaGVjaykpIChzZXRxIHJ0biANCihvcmctYWdlbmRhLWdldC1kYXktZW50cmllcyBm aWxlIGRhdGUgOmNsb3NlZCkpKSANCihvcmctYWdlbmRhLXNob3ctbG9nLXNjb3BlZCAoc2V0cSBy dG4gKGFwcGx5IA0KIydvcmctYWdlbmRhLWdldC1kYXktZW50cmllcyBmaWxlIGRhdGUgKGFwcGVu ZCAnKDpjbG9zZWQpIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKHQgKHNldHEgcnRuIChh cHBseSANCiMnb3JnLWFnZW5kYS1nZXQtZGF5LWVudHJpZXMgZmlsZSBkYXRlIG9yZy1hZ2VuZGEt ZW50cnktdHlwZXMpKSkpXG4gKGxldCANCigob3JnLWFnZW5kYS1lbnRyeS10eXBlcyBvcmctYWdl bmRhLWVudHJ5LXR5cGVzKSkgKGlmIChtZW1iZXIgOmRlYWRsaW5lKiANCm9yZy1hZ2VuZGEtZW50 cnktdHlwZXMpIChwcm9nbiAoc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzIChkZWxxIA0KOmRl YWRsaW5lIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSkpIChpZiAobWVtYmVyIDpzY2hlZHVsZWQq IA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9yZy1hZ2VuZGEtZW50cnkt dHlwZXMgKGRlbHEgDQo6c2NoZWR1bGVkIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSkpIChpZiB3 aXRoLWhvdXIgKHByb2duIChpZiAobWVtYmVyIA0KOmRlYWRsaW5lIG9yZy1hZ2VuZGEtZW50cnkt dHlwZXMpIChwcm9nbiAoc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzIA0KKGRlbHEgOmRlYWRs aW5lIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSAoc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVz IA0KKGNvbnMgOmRlYWRsaW5lKiBvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSAoaWYgKG1lbWJl ciA6c2NoZWR1bGVkIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9yZy1h Z2VuZGEtZW50cnktdHlwZXMgKGRlbHEgDQo6c2NoZWR1bGVkIG9yZy1hZ2VuZGEtZW50cnktdHlw ZXMpKSAoc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzIChjb25zIA0KOnNjaGVkdWxlZCogb3Jn LWFnZW5kYS1lbnRyeS10eXBlcykpKSkpKSAoaWYgDQpvcmctYWdlbmRhLWluY2x1ZGUtZGVhZGxp bmVzIG5pbCAoc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzIChkZWxxIA0KOmRlYWRsaW5lKiAo ZGVscSA6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKGNvbmQgKChtZW1xIA0K b3JnLWFnZW5kYS1zaG93LWxvZy1zY29wZWQgJyhvbmx5IGNsb2NrY2hlY2spKSAoc2V0cSBydG4g DQoob3JnLWFnZW5kYS1nZXQtZGF5LWVudHJpZXMgZmlsZSBkYXRlIDpjbG9zZWQpKSkgDQoob3Jn LWFnZW5kYS1zaG93LWxvZy1zY29wZWQgKHNldHEgcnRuIChhcHBseSANCiMnb3JnLWFnZW5kYS1n ZXQtZGF5LWVudHJpZXMgZmlsZSBkYXRlIChhcHBlbmQgJyg6Y2xvc2VkKSANCm9yZy1hZ2VuZGEt ZW50cnktdHlwZXMpKSkpICh0IChzZXRxIHJ0biAoYXBwbHkgDQojJ29yZy1hZ2VuZGEtZ2V0LWRh eS1lbnRyaWVzIGZpbGUgZGF0ZSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSlcbiANCihjYXRj aCAnbmV4dGZpbGUgKG9yZy1jaGVjay1hZ2VuZGEtZmlsZSBmaWxlKSAobGV0IA0KKChvcmctYWdl bmRhLWVudHJ5LXR5cGVzIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSAoaWYgKG1lbWJlciA6ZGVh ZGxpbmUqIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9yZy1hZ2VuZGEt ZW50cnktdHlwZXMgKGRlbHEgDQo6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkg KGlmIChtZW1iZXIgOnNjaGVkdWxlZCogDQpvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSAocHJvZ24g KHNldHEgb3JnLWFnZW5kYS1lbnRyeS10eXBlcyAoZGVscSANCjpzY2hlZHVsZWQgb3JnLWFnZW5k YS1lbnRyeS10eXBlcykpKSkgKGlmIHdpdGgtaG91ciAocHJvZ24gKGlmIChtZW1iZXIgDQo6ZGVh ZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9yZy1hZ2VuZGEtZW50 cnktdHlwZXMgDQooZGVscSA6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpIChzZXRx IG9yZy1hZ2VuZGEtZW50cnktdHlwZXMgDQooY29ucyA6ZGVhZGxpbmUqIG9yZy1hZ2VuZGEtZW50 cnktdHlwZXMpKSkpIChpZiAobWVtYmVyIDpzY2hlZHVsZWQgDQpvcmctYWdlbmRhLWVudHJ5LXR5 cGVzKSAocHJvZ24gKHNldHEgb3JnLWFnZW5kYS1lbnRyeS10eXBlcyAoZGVscSANCjpzY2hlZHVs ZWQgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpIChzZXRxIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMg KGNvbnMgDQo6c2NoZWR1bGVkKiBvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSkpIChpZiANCm9y Zy1hZ2VuZGEtaW5jbHVkZS1kZWFkbGluZXMgbmlsIChzZXRxIG9yZy1hZ2VuZGEtZW50cnktdHlw ZXMgKGRlbHEgDQo6ZGVhZGxpbmUqIChkZWxxIDpkZWFkbGluZSBvcmctYWdlbmRhLWVudHJ5LXR5 cGVzKSkpKSAoY29uZCAoKG1lbXEgDQpvcmctYWdlbmRhLXNob3ctbG9nLXNjb3BlZCAnKG9ubHkg Y2xvY2tjaGVjaykpIChzZXRxIHJ0biANCihvcmctYWdlbmRhLWdldC1kYXktZW50cmllcyBmaWxl IGRhdGUgOmNsb3NlZCkpKSANCihvcmctYWdlbmRhLXNob3ctbG9nLXNjb3BlZCAoc2V0cSBydG4g KGFwcGx5IA0KIydvcmctYWdlbmRhLWdldC1kYXktZW50cmllcyBmaWxlIGRhdGUgKGFwcGVuZCAn Li4uIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKHQgKHNldHEgcnRuIChhcHBseSANCiMn b3JnLWFnZW5kYS1nZXQtZGF5LWVudHJpZXMgZmlsZSBkYXRlIG9yZy1hZ2VuZGEtZW50cnktdHlw ZXMpKSkpKSAoc2V0cSANCnJ0bmFsbCAoYXBwZW5kIHJ0bmFsbCBydG4pKSlcbiAod2hpbGUgKHNl dHEgZmlsZSAoY2FyLXNhZmUgKHByb2cxIGZpbGVzIA0KKHNldHEgZmlsZXMgKGNkciBmaWxlcykp KSkpIChjYXRjaCAnbmV4dGZpbGUgKG9yZy1jaGVjay1hZ2VuZGEtZmlsZSANCmZpbGUpIChsZXQg KChvcmctYWdlbmRhLWVudHJ5LXR5cGVzIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSAoaWYgKG1l bWJlciANCjpkZWFkbGluZSogb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9y Zy1hZ2VuZGEtZW50cnktdHlwZXMgDQooZGVscSA6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10 eXBlcykpKSkgKGlmIChtZW1iZXIgOnNjaGVkdWxlZCogDQpvcmctYWdlbmRhLWVudHJ5LXR5cGVz KSAocHJvZ24gKHNldHEgb3JnLWFnZW5kYS1lbnRyeS10eXBlcyAoZGVscSANCjpzY2hlZHVsZWQg b3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKGlmIHdpdGgtaG91ciAocHJvZ24gKGlmIChtZW1i ZXIgDQo6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIChzZXRxIG9yZy1h Z2VuZGEtZW50cnktdHlwZXMgDQouLi4pIChzZXRxIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMgLi4u KSkpIChpZiAobWVtYmVyIDpzY2hlZHVsZWQgDQpvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSAocHJv Z24gKHNldHEgb3JnLWFnZW5kYS1lbnRyeS10eXBlcyAuLi4pIChzZXRxIA0Kb3JnLWFnZW5kYS1l bnRyeS10eXBlcyAuLi4pKSkpKSAoaWYgb3JnLWFnZW5kYS1pbmNsdWRlLWRlYWRsaW5lcyBuaWwg DQooc2V0cSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzIChkZWxxIDpkZWFkbGluZSogKGRlbHEgOmRl YWRsaW5lIA0Kb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKGNvbmQgKChtZW1xIG9yZy1hZ2Vu ZGEtc2hvdy1sb2ctc2NvcGVkIA0KJyhvbmx5IGNsb2NrY2hlY2spKSAoc2V0cSBydG4gKG9yZy1h Z2VuZGEtZ2V0LWRheS1lbnRyaWVzIGZpbGUgZGF0ZSANCjpjbG9zZWQpKSkgKG9yZy1hZ2VuZGEt c2hvdy1sb2ctc2NvcGVkIChzZXRxIHJ0biAoYXBwbHkgDQojJ29yZy1hZ2VuZGEtZ2V0LWRheS1l bnRyaWVzIGZpbGUgZGF0ZSAoYXBwZW5kIC4uLiANCm9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSkp ICh0IChzZXRxIHJ0biAoYXBwbHkgDQojJ29yZy1hZ2VuZGEtZ2V0LWRheS1lbnRyaWVzIGZpbGUg ZGF0ZSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSkgKHNldHEgDQpydG5hbGwgKGFwcGVuZCBy dG5hbGwgcnRuKSkpKVxuICh3aGlsZSAoc2V0cSBkIChjYXItc2FmZSAocHJvZzEgDQpkYXktbnVt YmVycyAoc2V0cSBkYXktbnVtYmVycyAoY2RyIGRheS1udW1iZXJzKSkpKSkgKHByb2duIChzZXRx IGRhdGUgDQooY2FsZW5kYXItZ3JlZ29yaWFuLWZyb20tYWJzb2x1dGUgZCkpIChzZXRxIHMgKHBv aW50KSkpIChpZiAob3IgKHNldHEgDQp0b2RheXAgKD0gZCB0b2RheSkpIChhbmQgKG5vdCBzdGFy dC1wb3MpICg9IGQgc2QpKSkgKHNldHEgc3RhcnQtcG9zIA0KKHBvaW50KSkgKGlmIChhbmQgc3Rh cnQtcG9zIChub3QgZW5kLXBvcykpIChwcm9nbiAoc2V0cSBlbmQtcG9zIA0KKHBvaW50KSkpKSkg KHByb2duIChzZXRxIGZpbGVzIHRoZWZpbGVzKSAoc2V0cSBydG5hbGwgbmlsKSkgKHdoaWxlIChz ZXRxIA0KZmlsZSAoY2FyLXNhZmUgKHByb2cxIGZpbGVzIChzZXRxIGZpbGVzIChjZHIgZmlsZXMp KSkpKSAoY2F0Y2ggJ25leHRmaWxlIA0KKG9yZy1jaGVjay1hZ2VuZGEtZmlsZSBmaWxlKSAobGV0 ICgob3JnLWFnZW5kYS1lbnRyeS10eXBlcyANCm9yZy1hZ2VuZGEtZW50cnktdHlwZXMpKSAoaWYg KG1lbWJlciA6ZGVhZGxpbmUqIG9yZy1hZ2VuZGEtZW50cnktdHlwZXMpIA0KKHByb2duIChzZXRx IG9yZy1hZ2VuZGEtZW50cnktdHlwZXMgKGRlbHEgOmRlYWRsaW5lIA0Kb3JnLWFnZW5kYS1lbnRy eS10eXBlcykpKSkgKGlmIChtZW1iZXIgOnNjaGVkdWxlZCogDQpvcmctYWdlbmRhLWVudHJ5LXR5 cGVzKSAocHJvZ24gKHNldHEgb3JnLWFnZW5kYS1lbnRyeS10eXBlcyAoZGVscSANCjpzY2hlZHVs ZWQgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykpKSkgKGlmIHdpdGgtaG91ciAocHJvZ24gKGlmICht ZW1iZXIgDQo6ZGVhZGxpbmUgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2duIC4uLiAuLi4p KSAoaWYgKG1lbWJlciANCjpzY2hlZHVsZWQgb3JnLWFnZW5kYS1lbnRyeS10eXBlcykgKHByb2du IC4uLiAuLi4pKSkpIChpZiANCm9yZy1hZ2VuZGEtaW5jbHVkZS1kZWFkbGluZXMgbmlsIChzZXRx IG9yZy1hZ2VuZGEtZW50cnktdHlwZXMgKGRlbHEgDQo6ZGVhZGxpbmUqIChkZWxxIDpkZWFkbGlu ZSBvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSAoY29uZCAoKG1lbXEgDQpvcmctYWdlbmRhLXNo b3ctbG9nLXNjb3BlZCAnLi4uKSAoc2V0cSBydG4gKG9yZy1hZ2VuZGEtZ2V0LWRheS1lbnRyaWVz IA0KZmlsZSBkYXRlIDpjbG9zZWQpKSkgKG9yZy1hZ2VuZGEtc2hvdy1sb2ctc2NvcGVkIChzZXRx IHJ0biAoYXBwbHkgLi4uIA0KZmlsZSBkYXRlIC4uLikpKSAodCAoc2V0cSBydG4gKGFwcGx5IC4u LiBmaWxlIGRhdGUgDQpvcmctYWdlbmRhLWVudHJ5LXR5cGVzKSkpKSkgKHNldHEgcnRuYWxsIChh cHBlbmQgcnRuYWxsIHJ0bikpKSkgKGlmIA0Kb3JnLWFnZW5kYS1pbmNsdWRlLWRpYXJ5IChwcm9n biAobGV0IA0KKChvcmctYWdlbmRhLXNlYXJjaC1oZWFkbGluZS1mb3ItdGltZSB0KSkgKHJlcXVp cmUgJ2RpYXJ5LWxpYikgKHNldHEgcnRuIA0KKG9yZy1nZXQtZW50cmllcy1mcm9tLWRpYXJ5IGRh dGUpKSAoc2V0cSBydG5hbGwgKGFwcGVuZCBydG5hbGwgcnRuKSkpKSkgDQooaWYgKG9yIHJ0bmFs bCBvcmctYWdlbmRhLXNob3ctYWxsLWRhdGVzKSAocHJvZ24gKHNldHEgZGF5LWNudCAoMSsgDQpk YXktY250KSkgKGluc2VydCAoaWYgKHN0cmluZ3Agb3JnLWFnZW5kYS1mb3JtYXQtZGF0ZSkgDQoo Zm9ybWF0LXRpbWUtc3RyaW5nIG9yZy1hZ2VuZGEtZm9ybWF0LWRhdGUgKG9yZy10aW1lLWZyb20t YWJzb2x1dGUgDQpkYXRlKSkgKGZ1bmNhbGwgb3JnLWFnZW5kYS1mb3JtYXQtZGF0ZSBkYXRlKSkg XFxcIlxcXFxuXFxcIikgDQoocHV0LXRleHQtcHJvcGVydHkgcyAoMS0gKHBvaW50KSkgJ2ZhY2Ug KG9yZy1hZ2VuZGEtZ2V0LWRheS1mYWNlIGRhdGUpKSANCihwdXQtdGV4dC1wcm9wZXJ0eSBzICgx LSAocG9pbnQpKSAnb3JnLWRhdGUtbGluZSB0KSAocHV0LXRleHQtcHJvcGVydHkgcyANCigxLSAo cG9pbnQpKSAnb3JnLWFnZW5kYS1kYXRlLWhlYWRlciB0KSAocHV0LXRleHQtcHJvcGVydHkgcyAo MS0gDQoocG9pbnQpKSAnb3JnLWRheS1jbnQgZGF5LWNudCkgKGlmIHRvZGF5cCAocHJvZ24gKHB1 dC10ZXh0LXByb3BlcnR5IHMgDQooMS0gKHBvaW50KSkgJ29yZy10b2RheSB0KSkpIChzZXRxIHJ0 bmFsbCANCihvcmctYWdlbmRhLWFkZC10aW1lLWdyaWQtbWF5YmUgcnRuYWxsIG5kYXlzIHRvZGF5 cCkpIChpZiBydG5hbGwgKHByb2duIA0KKGluc2VydCAob3JnLWFnZW5kYS1maW5hbGl6ZS1lbnRy aWVzIHJ0bmFsbCAnYWdlbmRhKSBcXFwiXFxcXG5cXFwiKSkpIA0KKHB1dC10ZXh0LXByb3BlcnR5 IHMgKDEtIChwb2ludCkpICdkYXkgZCkgKHB1dC10ZXh0LXByb3BlcnR5IHMgKDEtIA0KKHBvaW50 KSkgJ29yZy1kYXktY250IGRheS1jbnQpKSkpXG4gKGxldCogKChzcGFuIA0KKG9yZy1hZ2VuZGEt bmRheXMtdG8tc3BhbiAob3Igc3BhbiBvcmctYWdlbmRhLXNwYW4pKSkgKHRvZGF5IA0KKG9yZy10 b2RheSkpIChzZCAob3Igc3RhcnQtZGF5IHRvZGF5KSkgKG5kYXlzIChvcmctYWdlbmRhLXNwYW4t dG8tbmRheXMgDQpzcGFuIHNkKSkgKG9yZy1hZ2VuZGEtc3RhcnQtb24td2Vla2RheSAoYW5kIChv ciAoZXEgbmRheXMgNykgKGVxIG5kYXlzIA0KMTQpKSBvcmctYWdlbmRhLXN0YXJ0LW9uLXdlZWtk YXkpKSAodGhlZmlsZXMgKG9yZy1hZ2VuZGEtZmlsZXMgbmlsIA0KJ2lmbW9kZSkpIChmaWxlcyB0 aGVmaWxlcykgKHN0YXJ0IChpZiAob3IgKG51bGwgDQpvcmctYWdlbmRhLXN0YXJ0LW9uLXdlZWtk YXkpICg8IG5kYXlzIDcpKSBzZCAobGV0KiAoLi4uIC4uLiAuLi4pICgtIHNkIA0KLi4uKSkpKSAo ZGF5LW51bWJlcnMgKGxpc3Qgc3RhcnQpKSAoZGF5LWNudCAwKSAoaW5oaWJpdC1yZWRpc3BsYXkg KG5vdCANCmRlYnVnLW9uLWVycm9yKSkgKG9yZy1hZ2VuZGEtc2hvdy1sb2ctc2NvcGVkIG9yZy1h Z2VuZGEtc2hvdy1sb2cpIHMgcnRuIA0KcnRuYWxsIGZpbGUgZGF0ZSBkIHN0YXJ0LXBvcyBlbmQt cG9zIHRvZGF5cCBjbG9ja3RhYmxlLXN0YXJ0IA0KY2xvY2t0YWJsZS1lbmQpIChzZXRxIG9yZy1h Z2VuZGEtcmVkby1jb21tYW5kIChsaXN0ICdvcmctYWdlbmRhLWxpc3QgDQoobGlzdCAncXVvdGUg YXJnKSBzdGFydC1kYXkgKGxpc3QgJ3F1b3RlIHNwYW4pIHdpdGgtaG91cikpIChsZXQgDQooKHVw cGVyLWJvdW5kICgxLSBuZGF5cykpIChjb3VudGVyIDApKSAod2hpbGUgKDwgY291bnRlciB1cHBl ci1ib3VuZCkgDQoobGV0ICgoXyBjb3VudGVyKSkgKHNldHEgZGF5LW51bWJlcnMgKGNvbnMgLi4u IGRheS1udW1iZXJzKSkpIChzZXRxIA0KY291bnRlciAoMSsgY291bnRlcikpKSkgKHNldHEgZGF5 LW51bWJlcnMgKG5yZXZlcnNlIGRheS1udW1iZXJzKSkgKHByb2duIA0KKHNldHEgY2xvY2t0YWJs ZS1zdGFydCAoY2FyIGRheS1udW1iZXJzKSkgKHNldHEgY2xvY2t0YWJsZS1lbmQgKDErIChvciAN CihvcmctbGFzdCBkYXktbnVtYmVycykgMCkpKSkgKHNldCAobWFrZS1sb2NhbC12YXJpYWJsZSAN Cidvcmctc3RhcnRpbmctZGF5KSAoY2FyIGRheS1udW1iZXJzKSkgKHNldCAobWFrZS1sb2NhbC12 YXJpYWJsZSANCidvcmctYXJnLWxvYykgYXJnKSAoc2V0IChtYWtlLWxvY2FsLXZhcmlhYmxlICdv cmctYWdlbmRhLWN1cnJlbnQtc3BhbikgDQoob3JnLWFnZW5kYS1uZGF5cy10by1zcGFuIHNwYW4p KSAoaWYgb3JnLWFnZW5kYS1jb21wYWN0LWJsb2NrcyBuaWwgKGxldCogDQooKGQxIChjYXIgZGF5 LW51bWJlcnMpKSAoZDIgKG9yZy1sYXN0IGRheS1udW1iZXJzKSkgKHcxIA0KKG9yZy1kYXlzLXRv LWlzby13ZWVrIGQxKSkgKHcyIChvcmctZGF5cy10by1pc28td2VlayBkMikpKSAoc2V0cSBzIA0K KHBvaW50KSkgKGNvbmQgKChub3Qgb3JnLWFnZW5kYS1vdmVycmlkaW5nLWhlYWRlcikgKGluc2Vy dCAuLi4pKSAoKGVxdWFsIA0Kb3JnLWFnZW5kYS1vdmVycmlkaW5nLWhlYWRlciBcXFwiXFxcIikg bmlsKSAoKHN0cmluZ3AgDQpvcmctYWdlbmRhLW92ZXJyaWRpbmctaGVhZGVyKSAoaW5zZXJ0IC4u LiBcXFwiXFxcXG5cXFwiKSkgKChmdW5jdGlvbnAgDQpvcmctYWdlbmRhLW92ZXJyaWRpbmctaGVh ZGVyKSAoaW5zZXJ0IC4uLikpICh0ICh1c2VyLWVycm9yIFxcXCJJbnZhbGlkIA0KdmFsdWUgZm9y IGBvcmctYWdlbmRhLW92ZXJyaWRpLi4uXFxcIiBvcmctYWdlbmRhLW92ZXJyaWRpbmctaGVhZGVy KSkpKSANCihpZiAoPiAocG9pbnQpIHMpIChwcm9nbiAoYWRkLXRleHQtcHJvcGVydGllcyBzICgx LSAuLi4pIChsaXN0IC4uLiAuLi4gDQouLi4gdCkpIChvcmctYWdlbmRhLW1hcmstaGVhZGVyLWxp bmUgcykpKSkgKHdoaWxlIChzZXRxIGQgKGNhci1zYWZlIA0KKHByb2cxIGRheS1udW1iZXJzIChz ZXRxIGRheS1udW1iZXJzIC4uLikpKSkgKHByb2duIChzZXRxIGRhdGUgDQooY2FsZW5kYXItZ3Jl Z29yaWFuLWZyb20tYWJzb2x1dGUgZCkpIChzZXRxIHMgKHBvaW50KSkpIChpZiAob3IgKHNldHEg DQp0b2RheXAgKD0gZCB0b2RheSkpIChhbmQgKG5vdCBzdGFydC1wb3MpICg9IGQgc2QpKSkgKHNl dHEgc3RhcnQtcG9zIA0KKHBvaW50KSkgKGlmIChhbmQgc3RhcnQtcG9zIChub3QgZW5kLXBvcykp IChwcm9nbiAoc2V0cSBlbmQtcG9zIC4uLikpKSkgDQoocHJvZ24gKHNldHEgZmlsZXMgdGhlZmls ZXMpIChzZXRxIHJ0bmFsbCBuaWwpKSAod2hpbGUgKHNldHEgZmlsZSANCihjYXItc2FmZSAocHJv ZzEgZmlsZXMgLi4uKSkpIChjYXRjaCAnbmV4dGZpbGUgKG9yZy1jaGVjay1hZ2VuZGEtZmlsZSAN CmZpbGUpIChsZXQgKC4uLikgKGlmIC4uLiAuLi4pIChpZiAuLi4gLi4uKSAoaWYgd2l0aC1ob3Vy IC4uLikgKGlmIA0Kb3JnLWFnZW5kYS1pbmNsdWRlLWRlYWRsaW5lcyBuaWwgLi4uKSAoY29uZCAu Li4gLi4uIC4uLikpIChzZXRxIHJ0bmFsbCANCihhcHBlbmQgcnRuYWxsIHJ0bikpKSkgKGlmIG9y Zy1hZ2VuZGEtaW5jbHVkZS1kaWFyeSAocHJvZ24gKGxldCAoLi4uKSANCihyZXF1aXJlIC4uLikg KHNldHEgcnRuIC4uLikgKHNldHEgcnRuYWxsIC4uLikpKSkgKGlmIChvciBydG5hbGwgDQpvcmct YWdlbmRhLXNob3ctYWxsLWRhdGVzKSAocHJvZ24gKHNldHEgZGF5LWNudCAoMSsgZGF5LWNudCkp IChpbnNlcnQgDQooaWYgLi4uIC4uLiAuLi4pIFxcXCJcXFxcblxcXCIpIChwdXQtdGV4dC1wcm9w ZXJ0eSBzICgxLSAuLi4pICdmYWNlIA0KKG9yZy1hZ2VuZGEtZ2V0LWRheS1mYWNlIGRhdGUpKSAo cHV0LXRleHQtcHJvcGVydHkgcyAoMS0gLi4uKSANCidvcmctZGF0ZS1saW5lIHQpIChwdXQtdGV4 dC1wcm9wZXJ0eSBzICgxLSAuLi4pICdvcmctYWdlbmRhLWRhdGUtaGVhZGVyIA0KdCkgKHB1dC10 ZXh0LXByb3BlcnR5IHMgKDEtIC4uLikgJ29yZy1kYXktY250IGRheS1jbnQpIChpZiB0b2RheXAg KHByb2duIA0KLi4uKSkgKHNldHEgcnRuYWxsIChvcmctYWdlbmRhLWFkZC10aW1lLWdyaWQtbWF5 YmUgcnRuYWxsIG5kYXlzIHRvZGF5cCkpIA0KKGlmIHJ0bmFsbCAocHJvZ24gLi4uKSkgKHB1dC10 ZXh0LXByb3BlcnR5IHMgKDEtIC4uLikgJ2RheSBkKSANCihwdXQtdGV4dC1wcm9wZXJ0eSBzICgx LSAuLi4pICdvcmctZGF5LWNudCBkYXktY250KSkpKSAoaWYgKGFuZCANCm9yZy1hZ2VuZGEtY2xv Y2tyZXBvcnQtbW9kZSBjbG9ja3RhYmxlLXN0YXJ0KSAocHJvZ24gKGxldCANCigob3JnLWFnZW5k YS1maWxlcyAuLi4pIChwIC4uLikgdGJsKSAoc2V0cSBwIChvcmctcGxpc3QtZGVsZXRlIHAgDQo6 YmxvY2spKSAoc2V0cSBwIChwbGlzdC1wdXQgcCA6dHN0YXJ0IGNsb2NrdGFibGUtc3RhcnQpKSAo c2V0cSBwIA0KKHBsaXN0LXB1dCBwIDp0ZW5kIGNsb2NrdGFibGUtZW5kKSkgKHNldHEgcCAocGxp c3QtcHV0IHAgOnNjb3BlIC4uLikpIA0KKHNldHEgdGJsIChhcHBseSAuLi4gcCkpIChpZiBvcmct YWdlbmRhLWNsb2NrLXJlcG9ydC1oZWFkZXIgKHByb2duIC4uLiANCi4uLikpIChpbnNlcnQgdGJs KSkpKSAoZ290by1jaGFyIChwb2ludC1taW4pKSAob3Igb3JnLWFnZW5kYS1tdWx0aSANCihvcmct YWdlbmRhLWZpdC13aW5kb3ctdG8tYnVmZmVyKSkgKGlmIChvciAobm90IChnZXQtYnVmZmVyLXdp bmRvdyANCm9yZy1hZ2VuZGEtYnVmZmVyLW5hbWUpKSAoYW5kIChwb3MtdmlzaWJsZS1pbi13aW5k b3ctcCAocG9pbnQtbWluKSkgDQoocG9zLXZpc2libGUtaW4td2luZG93LXAgKHBvaW50LW1heCkp KSkgbmlsIChnb3RvLWNoYXIgKDEtIChwb2ludC1tYXgpKSkgDQoocmVjZW50ZXIgLTEpIChpZiAo bm90IChwb3MtdmlzaWJsZS1pbi13aW5kb3ctcCAob3Igc3RhcnQtcG9zIDEpKSkgDQoocHJvZ24g KGdvdG8tY2hhciAob3Igc3RhcnQtcG9zIDEpKSAocmVjZW50ZXIgMSkpKSkgKGdvdG8tY2hhciAo b3IgDQpzdGFydC1wb3MgMSkpIChhZGQtdGV4dC1wcm9wZXJ0aWVzIChwb2ludC1taW4pIChwb2lu dC1tYXgpIChsaXN0IA0KJ29yZy1hZ2VuZGEtdHlwZSAnYWdlbmRhICdvcmctbGFzdC1hcmdzIChs aXN0IGFyZyBzdGFydC1kYXkgc3BhbikgDQonb3JnLXJlZG8tY21kIG9yZy1hZ2VuZGEtcmVkby1j b21tYW5kICdvcmctc2VyaWVzLWNtZCBvcmctY21kKSkgKGlmIChlcSANCm9yZy1hZ2VuZGEtc2hv dy1sb2ctc2NvcGVkICdjbG9ja2NoZWNrKSAocHJvZ24gDQoob3JnLWFnZW5kYS1zaG93LWNsb2Nr aW5nLWlzc3VlcykpKSAob3JnLWFnZW5kYS1maW5hbGl6ZSkgKHNldHEgDQpidWZmZXItcmVhZC1v bmx5IHQpIChtZXNzYWdlIFxcXCJcXFwiKSlcbiAoY2F0Y2ggJ2V4aXQgKHNldHEgDQpvcmctYWdl bmRhLWJ1ZmZlci1uYW1lIChvcmctYWdlbmRhLS1nZXQtYnVmZmVyLW5hbWUgKGFuZCANCm9yZy1h Z2VuZGEtc3RpY2t5IChjb25kICgoYW5kIG9yZy1rZXlzIC4uLikgKGZvcm1hdCBcXFwiKk9yZyAN CkFnZW5kYSglczolcykqXFxcIiBvcmcta2V5cyBvcmctbWF0Y2gpKSAob3JnLWtleXMgKGZvcm1h dCBcXFwiKk9yZyANCkFnZW5kYSglcykqXFxcIiBvcmcta2V5cykpICh0IFxcXCIqT3JnIEFnZW5k YShhKSpcXFwiKSkpKSkgDQoob3JnLWFnZW5kYS1wcmVwYXJlIFxcXCJEYXkvV2Vla1xcXCIpIChz ZXRxIHN0YXJ0LWRheSAob3Igc3RhcnQtZGF5IA0Kb3JnLWFnZW5kYS1zdGFydC1kYXkpKSAoaWYg KHN0cmluZ3Agc3RhcnQtZGF5KSAocHJvZ24gKHNldHEgc3RhcnQtZGF5IA0KKHRpbWUtdG8tZGF5 cyAob3JnLXJlYWQtZGF0ZSBuaWwgdCBzdGFydC1kYXkpKSkpKSANCihvcmctY29tcGlsZS1wcmVm aXgtZm9ybWF0ICdhZ2VuZGEpIChvcmctc2V0LXNvcnRpbmctc3RyYXRlZ3kgJ2FnZW5kYSkgDQoo bGV0KiAoKHNwYW4gKG9yZy1hZ2VuZGEtbmRheXMtdG8tc3BhbiAob3Igc3BhbiBvcmctYWdlbmRh LXNwYW4pKSkgDQoodG9kYXkgKG9yZy10b2RheSkpIChzZCAob3Igc3RhcnQtZGF5IHRvZGF5KSkg KG5kYXlzIA0KKG9yZy1hZ2VuZGEtc3Bhbi10by1uZGF5cyBzcGFuIHNkKSkgKG9yZy1hZ2VuZGEt c3RhcnQtb24td2Vla2RheSAoYW5kIA0KKG9yIChlcSBuZGF5cyA3KSAoZXEgbmRheXMgMTQpKSBv cmctYWdlbmRhLXN0YXJ0LW9uLXdlZWtkYXkpKSAodGhlZmlsZXMgDQoob3JnLWFnZW5kYS1maWxl cyBuaWwgJ2lmbW9kZSkpIChmaWxlcyB0aGVmaWxlcykgKHN0YXJ0IChpZiAob3IgKG51bGwgDQpv cmctYWdlbmRhLXN0YXJ0LW9uLXdlZWtkYXkpICg8IG5kYXlzIDcpKSBzZCAobGV0KiAoLi4uIC4u LiAuLi4pICgtIHNkIA0KLi4uKSkpKSAoZGF5LW51bWJlcnMgKGxpc3Qgc3RhcnQpKSAoZGF5LWNu dCAwKSAoaW5oaWJpdC1yZWRpc3BsYXkgKG5vdCANCmRlYnVnLW9uLWVycm9yKSkgKG9yZy1hZ2Vu ZGEtc2hvdy1sb2ctc2NvcGVkIG9yZy1hZ2VuZGEtc2hvdy1sb2cpIHMgcnRuIA0KcnRuYWxsIGZp bGUgZGF0ZSBkIHN0YXJ0LXBvcyBlbmQtcG9zIHRvZGF5cCBjbG9ja3RhYmxlLXN0YXJ0IA0KY2xv Y2t0YWJsZS1lbmQpIChzZXRxIG9yZy1hZ2VuZGEtcmVkby1jb21tYW5kIChsaXN0ICdvcmctYWdl bmRhLWxpc3QgDQoobGlzdCAncXVvdGUgYXJnKSBzdGFydC1kYXkgKGxpc3QgJ3F1b3RlIHNwYW4p IHdpdGgtaG91cikpIChsZXQgDQooKHVwcGVyLWJvdW5kICgxLSBuZGF5cykpIChjb3VudGVyIDAp KSAod2hpbGUgKDwgY291bnRlciB1cHBlci1ib3VuZCkgDQoobGV0ICgoXyBjb3VudGVyKSkgKHNl dHEgZGF5LW51bWJlcnMgKGNvbnMgLi4uIGRheS1udW1iZXJzKSkpIChzZXRxIA0KY291bnRlciAo MSsgY291bnRlcikpKSkgKHNldHEgZGF5LW51bWJlcnMgKG5yZXZlcnNlIGRheS1udW1iZXJzKSkg KHByb2duIA0KKHNldHEgY2xvY2t0YWJsZS1zdGFydCAoY2FyIGRheS1udW1iZXJzKSkgKHNldHEg Y2xvY2t0YWJsZS1lbmQgKDErIChvciANCihvcmctbGFzdCBkYXktbnVtYmVycykgMCkpKSkgKHNl dCAobWFrZS1sb2NhbC12YXJpYWJsZSANCidvcmctc3RhcnRpbmctZGF5KSAoY2FyIGRheS1udW1i ZXJzKSkgKHNldCAobWFrZS1sb2NhbC12YXJpYWJsZSANCidvcmctYXJnLWxvYykgYXJnKSAoc2V0 IChtYWtlLWxvY2FsLXZhcmlhYmxlICdvcmctYWdlbmRhLWN1cnJlbnQtc3BhbikgDQoob3JnLWFn ZW5kYS1uZGF5cy10by1zcGFuIHNwYW4pKSAoaWYgb3JnLWFnZW5kYS1jb21wYWN0LWJsb2NrcyBu aWwgKGxldCogDQooKGQxIChjYXIgZGF5LW51bWJlcnMpKSAoZDIgKG9yZy1sYXN0IGRheS1udW1i ZXJzKSkgKHcxIA0KKG9yZy1kYXlzLXRvLWlzby13ZWVrIGQxKSkgKHcyIChvcmctZGF5cy10by1p c28td2VlayBkMikpKSAoc2V0cSBzIA0KKHBvaW50KSkgKGNvbmQgKChub3Qgb3JnLWFnZW5kYS1v dmVycmlkaW5nLWhlYWRlcikgKGluc2VydCAuLi4pKSAoKGVxdWFsIA0Kb3JnLWFnZW5kYS1vdmVy cmlkaW5nLWhlYWRlciBcXFwiXFxcIikgbmlsKSAoKHN0cmluZ3AgDQpvcmctYWdlbmRhLW92ZXJy aWRpbmctaGVhZGVyKSAoaW5zZXJ0IC4uLiBcXFwiXFxcXG5cXFwiKSkgKChmdW5jdGlvbnAgDQpv cmctYWdlbmRhLW92ZXJyaWRpbmctaGVhZGVyKSAoaW5zZXJ0IC4uLikpICh0ICh1c2VyLWVycm9y IFxcXCJJbnZhbGlkIA0KdmFsdWUgZm9yIGBvcmctYWdlbmRhLW92ZXJyaWRpbmctaGVhLi4uXFxc IiANCm9yZy1hZ2VuZGEtb3ZlcnJpZGluZy1oZWFkZXIpKSkpIChpZiAoPiAocG9pbnQpIHMpIChw cm9nbiANCihhZGQtdGV4dC1wcm9wZXJ0aWVzIHMgKDEtIC4uLikgKGxpc3QgLi4uIC4uLiAuLi4g dCkpIA0KKG9yZy1hZ2VuZGEtbWFyay1oZWFkZXItbGluZSBzKSkpKSAod2hpbGUgKHNldHEgZCAo Y2FyLXNhZmUgKHByb2cxIA0KZGF5LW51bWJlcnMgKHNldHEgZGF5LW51bWJlcnMgLi4uKSkpKSAo cHJvZ24gKHNldHEgZGF0ZSANCihjYWxlbmRhci1ncmVnb3JpYW4tZnJvbS1hYnNvbHV0ZSBkKSkg KHNldHEgcyAocG9pbnQpKSkgKGlmIChvciAoc2V0cSANCnRvZGF5cCAoPSBkIHRvZGF5KSkgKGFu ZCAobm90IHN0YXJ0LXBvcykgKD0gZCBzZCkpKSAoc2V0cSBzdGFydC1wb3MgDQoocG9pbnQpKSAo aWYgKGFuZCBzdGFydC1wb3MgKG5vdCBlbmQtcG9zKSkgKHByb2duIChzZXRxIGVuZC1wb3MgLi4u KSkpKSANCihwcm9nbiAoc2V0cSBmaWxlcyB0aGVmaWxlcykgKHNldHEgcnRuYWxsIG5pbCkpICh3 aGlsZSAoc2V0cSBmaWxlIA0KKGNhci1zYWZlIChwcm9nMSBmaWxlcyAuLi4pKSkgKGNhdGNoICdu ZXh0ZmlsZSAob3JnLWNoZWNrLWFnZW5kYS1maWxlIA0KZmlsZSkgKGxldCAoLi4uKSAoaWYgLi4u IC4uLikgKGlmIC4uLiAuLi4pIChpZiB3aXRoLWhvdXIgLi4uKSAoaWYgDQpvcmctYWdlbmRhLWlu Y2x1ZGUtZGVhZGxpbmVzIG5pbCAuLi4pIChjb25kIC4uLiAuLi4gLi4uKSkgKHNldHEgcnRuYWxs IA0KKGFwcGVuZCBydG5hbGwgcnRuKSkpKSAoaWYgb3JnLWFnZW5kYS1pbmNsdWRlLWRpYXJ5IChw cm9nbiAobGV0ICguLi4pIA0KKHJlcXVpcmUgLi4uKSAoc2V0cSBydG4gLi4uKSAoc2V0cSBydG5h bGwgLi4uKSkpKSAoaWYgKG9yIHJ0bmFsbCANCm9yZy1hZ2VuZGEtc2hvdy1hbGwtZGF0ZXMpIChw cm9nbiAoc2V0cSBkYXktY250ICgxKyBkYXktY250KSkgKGluc2VydCANCihpZiAuLi4gLi4uIC4u LikgXFxcIlxcXFxuXFxcIikgKHB1dC10ZXh0LXByb3BlcnR5IHMgKDEtIC4uLikgJ2ZhY2UgDQoo b3JnLWFnZW5kYS1nZXQtZGF5LWZhY2UgZGF0ZSkpIChwdXQtdGV4dC1wcm9wZXJ0eSBzICgxLSAu Li4pIA0KJ29yZy1kYXRlLWxpbmUgdCkgKHB1dC10ZXh0LXByb3BlcnR5IHMgKDEtIC4uLikgJ29y Zy1hZ2VuZGEtZGF0ZS1oZWFkZXIgDQp0KSAocHV0LXRleHQtcHJvcGVydHkgcyAoMS0gLi4uKSAn b3JnLWRheS1jbnQgZGF5LWNudCkgKGlmIHRvZGF5cCAocHJvZ24gDQouLi4pKSAoc2V0cSBydG5h bGwgKG9yZy1hZ2VuZGEtYWRkLXRpbWUtZ3JpZC1tYXliZSBydG5hbGwgbmRheXMgdG9kYXlwKSkg DQooaWYgcnRuYWxsIChwcm9nbiAuLi4pKSAocHV0LXRleHQtcHJvcGVydHkgcyAoMS0gLi4uKSAn ZGF5IGQpIA0KKHB1dC10ZXh0LXByb3BlcnR5IHMgKDEtIC4uLikgJ29yZy1kYXktY250IGRheS1j bnQpKSkpIChpZiAoYW5kIA0Kb3JnLWFnZW5kYS1jbG9ja3JlcG9ydC1tb2RlIGNsb2NrdGFibGUt c3RhcnQpIChwcm9nbiAobGV0IA0KKChvcmctYWdlbmRhLWZpbGVzIC4uLikgKHAgLi4uKSB0Ymwp IChzZXRxIHAgKG9yZy1wbGlzdC1kZWxldGUgcCANCjpibG9jaykpIChzZXRxIHAgKHBsaXN0LXB1 dCBwIDp0c3RhcnQgY2xvY2t0YWJsZS1zdGFydCkpIChzZXRxIHAgDQoocGxpc3QtcHV0IHAgOnRl bmQgY2xvY2t0YWJsZS1lbmQpKSAoc2V0cSBwIChwbGlzdC1wdXQgcCA6c2NvcGUgLi4uKSkgDQoo c2V0cSB0YmwgKGFwcGx5IC4uLiBwKSkgKGlmIG9yZy1hZ2VuZGEtY2xvY2stcmVwb3J0LWhlYWRl ciAocHJvZ24gLi4uIA0KLi4uKSkgKGluc2VydCB0YmwpKSkpIChnb3RvLWNoYXIgKHBvaW50LW1p bikpIChvciBvcmctYWdlbmRhLW11bHRpIA0KKG9yZy1hZ2VuZGEtZml0LXdpbmRvdy10by1idWZm ZXIpKSAoaWYgKG9yIChub3QgKGdldC1idWZmZXItd2luZG93IA0Kb3JnLWFnZW5kYS1idWZmZXIt bmFtZSkpIChhbmQgKHBvcy12aXNpYmxlLWluLXdpbmRvdy1wIChwb2ludC1taW4pKSANCihwb3Mt dmlzaWJsZS1pbi13aW5kb3ctcCAocG9pbnQtbWF4KSkpKSBuaWwgKGdvdG8tY2hhciAoMS0gKHBv aW50LW1heCkpKSANCihyZWNlbnRlciAtMSkgKGlmIChub3QgKHBvcy12aXNpYmxlLWluLXdpbmRv dy1wIChvciBzdGFydC1wb3MgMSkpKSANCihwcm9nbiAoZ290by1jaGFyIChvciBzdGFydC1wb3Mg MSkpIChyZWNlbnRlciAxKSkpKSAoZ290by1jaGFyIChvciANCnN0YXJ0LXBvcyAxKSkgKGFkZC10 ZXh0LXByb3BlcnRpZXMgKHBvaW50LW1pbikgKHBvaW50LW1heCkgKGxpc3QgDQonb3JnLWFnZW5k YS10eXBlICdhZ2VuZGEgJ29yZy1sYXN0LWFyZ3MgKGxpc3QgYXJnIHN0YXJ0LWRheSBzcGFuKSAN CidvcmctcmVkby1jbWQgb3JnLWFnZW5kYS1yZWRvLWNvbW1hbmQgJ29yZy1zZXJpZXMtY21kIG9y Zy1jbWQpKSAoaWYgKGVxIA0Kb3JnLWFnZW5kYS1zaG93LWxvZy1zY29wZWQgJ2Nsb2NrY2hlY2sp IChwcm9nbiANCihvcmctYWdlbmRhLXNob3ctY2xvY2tpbmctaXNzdWVzKSkpIChvcmctYWdlbmRh LWZpbmFsaXplKSAoc2V0cSANCmJ1ZmZlci1yZWFkLW9ubHkgdCkgKG1lc3NhZ2UgXFxcIlxcXCIp KSlcbiBvcmctYWdlbmRhLWxpc3QobmlsKVxuIA0KZnVuY2FsbC1pbnRlcmFjdGl2ZWx5KG9yZy1h Z2VuZGEtbGlzdCBuaWwpXG4gDQpjYWxsLWludGVyYWN0aXZlbHkob3JnLWFnZW5kYS1saXN0KVxu IChjb25kICgoc2V0cSBlbnRyeSAoYXNzb2Mgb3JnLWtleXMgDQpvcmctYWdlbmRhLWN1c3RvbS1j b21tYW5kcykpIChpZiAob3IgKHN5bWJvbHAgKG50aCAyIGVudHJ5KSkgKGZ1bmN0aW9ucCANCihu dGggMiBlbnRyeSkpKSAocHJvZ24gKHByb2duIChzZXRxIHR5cGUgKG50aCAyIGVudHJ5KSkgKHNl dHEgb3JnLW1hdGNoIA0KKGV2YWwgKG50aCAzIGVudHJ5KSB0KSkgKHNldHEgbHByb3BzIChudGgg NCBlbnRyeSkpKSAoaWYgDQpvcmctYWdlbmRhLXN0aWNreSAocHJvZ24gKHNldHEgb3JnLWFnZW5k YS1idWZmZXItbmFtZSAob3IgLi4uIC4uLikpKSkgDQoocHJvZ24gKGxldCogKChzeW1zIC4uLikg KHZhbHMgLi4uKSAoYm9keSAuLi4pIChiaW5kcyBuaWwpKSAod2hpbGUgc3ltcyANCihzZXRxIGJp bmRzIC4uLikpIChldmFsIChsaXN0IC4uLiAuLi4gLi4uKSkpKSAobGV0ICgoaW5oaWJpdC1yZWFk LW9ubHkgDQp0KSkgKGFkZC10ZXh0LXByb3BlcnRpZXMgKHBvaW50LW1pbikgKHBvaW50LW1heCkg KGxpc3QgJ29yZy1scHJvcHMgDQpscHJvcHMpKSkpIChvcmctYWdlbmRhLXJ1bi1zZXJpZXMgKG50 aCAxIGVudHJ5KSAoY2RyIChjZHIgZW50cnkpKSkpKSANCigoZXF1YWwgb3JnLWtleXMgXFxcIkNc XFwiKSAoc2V0cSBvcmctYWdlbmRhLWN1c3RvbS1jb21tYW5kcyANCm9yZy1hZ2VuZGEtY3VzdG9t LWNvbW1hbmRzLW9yaWcpIChjdXN0b21pemUtdmFyaWFibGUgDQonb3JnLWFnZW5kYS1jdXN0b20t Y29tbWFuZHMpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCJhXFxcIikgDQooY2FsbC1pbnRlcmFjdGl2 ZWx5ICdvcmctYWdlbmRhLWxpc3QpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCJzXFxcIikgDQooY2Fs bC1pbnRlcmFjdGl2ZWx5ICdvcmctc2VhcmNoLXZpZXcpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCJT XFxcIikgDQoob3JnLWNhbGwtd2l0aC1hcmcgJ29yZy1zZWFyY2gtdmlldyAob3IgYXJnICcoNCkp KSkgKChlcXVhbCBvcmcta2V5cyANClxcXCJ0XFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSAnb3Jn LXRvZG8tbGlzdCkpICgoZXF1YWwgb3JnLWtleXMgDQpcXFwiVFxcXCIpIChvcmctY2FsbC13aXRo LWFyZyAnb3JnLXRvZG8tbGlzdCAob3IgYXJnICcoNCkpKSkgKChlcXVhbCANCm9yZy1rZXlzIFxc XCJtXFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSAnb3JnLXRhZ3MtdmlldykpICgoZXF1YWwgDQpv cmcta2V5cyBcXFwiTVxcXCIpIChvcmctY2FsbC13aXRoLWFyZyAnb3JnLXRhZ3MtdmlldyAob3Ig YXJnICcoNCkpKSkgDQooKGVxdWFsIG9yZy1rZXlzIFxcXCJlXFxcIikgKGNhbGwtaW50ZXJhY3Rp dmVseSANCidvcmctc3RvcmUtYWdlbmRhLXZpZXdzKSkgKChlcXVhbCBvcmcta2V5cyBcXFwiP1xc XCIpIChvcmctdGFncy12aWV3IG5pbCANClxcXCIrRkxBR0dFRFxcXCIpIChhZGQtaG9vayAncG9z dC1jb21tYW5kLWhvb2sgIycobGFtYmRhIG5pbCAoaWYgDQooY3VycmVudC1tZXNzYWdlKSBuaWwg KGxldCogKC4uLiAuLi4pIChpZiBub3RlIC4uLikpKSkgdCB0KSkgKChlcXVhbCANCm9yZy1rZXlz IFxcXCIjXFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSANCidvcmctYWdlbmRhLWxpc3Qtc3R1Y2st cHJvamVjdHMpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCIvXFxcIikgDQooY2FsbC1pbnRlcmFjdGl2 ZWx5ICdvcmctb2NjdXItaW4tYWdlbmRhLWZpbGVzKSkgKChlcXVhbCBvcmcta2V5cyANClxcXCIh XFxcIikgKGN1c3RvbWl6ZS12YXJpYWJsZSAnb3JnLXN0dWNrLXByb2plY3RzKSkgKHQgKHVzZXIt ZXJyb3IgDQpcXFwiSW52YWxpZCBhZ2VuZGEga2V5XFxcIikpKVxuIChsZXQqICgob3JnLWtleXMg a2V5cykgDQoocHJlZml4LWRlc2NyaXB0aW9ucyBuaWwpIChvcmctYWdlbmRhLWJ1ZmZlci1uYW1l IA0Kb3JnLWFnZW5kYS1idWZmZXItbmFtZSkgKG9yZy1hZ2VuZGEtd2luZG93LXNldHVwIChpZiAo ZXF1YWwgDQooYnVmZmVyLW5hbWUpIG9yZy1hZ2VuZGEtYnVmZmVyLW5hbWUpICdjdXJyZW50LXdp bmRvdyANCm9yZy1hZ2VuZGEtd2luZG93LXNldHVwKSkgKG9yZy1hZ2VuZGEtY3VzdG9tLWNvbW1h bmRzLW9yaWcgDQpvcmctYWdlbmRhLWN1c3RvbS1jb21tYW5kcykgKG9yZy1hZ2VuZGEtY3VzdG9t LWNvbW1hbmRzIChkZWxxIG5pbCANCihtYXBjYXIgIycobGFtYmRhICh4KSAoY29uZCAuLi4gLi4u IC4uLiAuLi4pKSANCm9yZy1hZ2VuZGEtY3VzdG9tLWNvbW1hbmRzKSkpIChvcmctYWdlbmRhLWN1 c3RvbS1jb21tYW5kcyANCihvcmctY29udGV4dHVhbGl6ZS1rZXlzIG9yZy1hZ2VuZGEtY3VzdG9t LWNvbW1hbmRzIA0Kb3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMtY29udGV4dHMpKSAoYmZuIChi dWZmZXItZmlsZS1uYW1lIA0KKGJ1ZmZlci1iYXNlLWJ1ZmZlcikpKSBlbnRyeSB0eXBlIG9yZy1t YXRjaCBscHJvcHMgYW5zKSAoaWYgDQpvcmctYWdlbmRhLW92ZXJyaWRpbmctcmVzdHJpY3Rpb24g bmlsIChpZiANCm9yZy1hZ2VuZGEta2VlcC1yZXN0cmljdGVkLWZpbGUtbGlzdCBuaWwgKHB1dCAn b3JnLWFnZW5kYS1maWxlcyANCidvcmctcmVzdHJpY3QgbmlsKSkgKHNldHEgb3JnLWFnZW5kYS1y ZXN0cmljdCBuaWwpIChtb3ZlLW1hcmtlciANCm9yZy1hZ2VuZGEtcmVzdHJpY3QtYmVnaW4gbmls KSAobW92ZS1tYXJrZXIgb3JnLWFnZW5kYS1yZXN0cmljdC1lbmQgDQpuaWwpKSAoaWYgb3JnLWtl eXMgbmlsIChwcm9nbiAoc2V0cSBhbnMgDQoob3JnLWFnZW5kYS1nZXQtcmVzdHJpY3Rpb24tYW5k LWNvbW1hbmQgcHJlZml4LWRlc2NyaXB0aW9ucykpIChzZXRxIA0Kb3JnLWtleXMgKGNhciBhbnMp KSAoc2V0cSByZXN0cmljdGlvbiAoY2RyIGFucykpKSkgKGlmIG9yZy1hZ2VuZGEtc3RpY2t5IA0K KHByb2duIChzZXRxIG9yZy1hZ2VuZGEtYnVmZmVyLW5hbWUgKGZvcm1hdCBcXFwiKk9yZyBBZ2Vu ZGEoJXMpKlxcXCIgDQpvcmcta2V5cykpKSkgKGlmIChhbmQgKG5vdCBvcmctYWdlbmRhLW92ZXJy aWRpbmctcmVzdHJpY3Rpb24pIA0KcmVzdHJpY3Rpb24pIChwcm9nbiAocHV0ICdvcmctYWdlbmRh LWZpbGVzICdvcmctcmVzdHJpY3QgKGxpc3QgYmZuKSkgDQooY29uZCAoKGVxIHJlc3RyaWN0aW9u ICdyZWdpb24pIChzZXRxIG9yZy1hZ2VuZGEtcmVzdHJpY3QgDQooY3VycmVudC1idWZmZXIpKSAo bW92ZS1tYXJrZXIgb3JnLWFnZW5kYS1yZXN0cmljdC1iZWdpbiANCihyZWdpb24tYmVnaW5uaW5n KSkgKG1vdmUtbWFya2VyIG9yZy1hZ2VuZGEtcmVzdHJpY3QtZW5kIChyZWdpb24tZW5kKSkpIA0K KChlcSByZXN0cmljdGlvbiAnc3VidHJlZSkgKHNhdmUtZXhjdXJzaW9uIChzZXRxIG9yZy1hZ2Vu ZGEtcmVzdHJpY3QgDQooY3VycmVudC1idWZmZXIpKSAob3JnLWJhY2stdG8taGVhZGluZyB0KSAo bW92ZS1tYXJrZXIgDQpvcmctYWdlbmRhLXJlc3RyaWN0LWJlZ2luIChwb2ludCkpIChtb3ZlLW1h cmtlciBvcmctYWdlbmRhLXJlc3RyaWN0LWVuZCANCihwcm9nbiAuLi4pKSkpICgoZXEgcmVzdHJp Y3Rpb24gJ2J1ZmZlcikgKGlmIChub3QgKGJ1ZmZlci1uYXJyb3dlZC1wKSkgDQooc2V0cSBvcmct YWdlbmRhLXJlc3RyaWN0IHQpIChzZXRxIG9yZy1hZ2VuZGEtcmVzdHJpY3QgKGN1cnJlbnQtYnVm ZmVyKSkgDQoobW92ZS1tYXJrZXIgb3JnLWFnZW5kYS1yZXN0cmljdC1iZWdpbiAocG9pbnQtbWlu KSkgKG1vdmUtbWFya2VyIA0Kb3JnLWFnZW5kYS1yZXN0cmljdC1lbmQgKHBvaW50LW1heCkpKSkp KSkgKGNvbmQgKChzZXRxIGVudHJ5IChhc3NvYyANCm9yZy1rZXlzIG9yZy1hZ2VuZGEtY3VzdG9t LWNvbW1hbmRzKSkgKGlmIChvciAoc3ltYm9scCAobnRoIDIgZW50cnkpKSANCihmdW5jdGlvbnAg KG50aCAyIGVudHJ5KSkpIChwcm9nbiAocHJvZ24gKHNldHEgdHlwZSAobnRoIDIgZW50cnkpKSAo c2V0cSANCm9yZy1tYXRjaCAoZXZhbCAuLi4gdCkpIChzZXRxIGxwcm9wcyAobnRoIDQgZW50cnkp KSkgKGlmIA0Kb3JnLWFnZW5kYS1zdGlja3kgKHByb2duIChzZXRxIG9yZy1hZ2VuZGEtYnVmZmVy LW5hbWUgLi4uKSkpIChwcm9nbiANCihsZXQqICguLi4gLi4uIC4uLiAuLi4pICh3aGlsZSBzeW1z IC4uLikgKGV2YWwgLi4uKSkpIChsZXQgDQooKGluaGliaXQtcmVhZC1vbmx5IHQpKSAoYWRkLXRl eHQtcHJvcGVydGllcyAocG9pbnQtbWluKSAocG9pbnQtbWF4KSANCihsaXN0IC4uLiBscHJvcHMp KSkpIChvcmctYWdlbmRhLXJ1bi1zZXJpZXMgKG50aCAxIGVudHJ5KSAoY2RyIChjZHIgDQplbnRy eSkpKSkpICgoZXF1YWwgb3JnLWtleXMgXFxcIkNcXFwiKSAoc2V0cSBvcmctYWdlbmRhLWN1c3Rv bS1jb21tYW5kcyANCm9yZy1hZ2VuZGEtY3VzdG9tLWNvbW1hbmRzLW9yaWcpIChjdXN0b21pemUt dmFyaWFibGUgDQonb3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMpKSAoKGVxdWFsIG9yZy1rZXlz IFxcXCJhXFxcIikgDQooY2FsbC1pbnRlcmFjdGl2ZWx5ICdvcmctYWdlbmRhLWxpc3QpKSAoKGVx dWFsIG9yZy1rZXlzIFxcXCJzXFxcIikgDQooY2FsbC1pbnRlcmFjdGl2ZWx5ICdvcmctc2VhcmNo LXZpZXcpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCJTXFxcIikgDQoob3JnLWNhbGwtd2l0aC1hcmcg J29yZy1zZWFyY2gtdmlldyAob3IgYXJnICcoNCkpKSkgKChlcXVhbCBvcmcta2V5cyANClxcXCJ0 XFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSAnb3JnLXRvZG8tbGlzdCkpICgoZXF1YWwgb3JnLWtl eXMgDQpcXFwiVFxcXCIpIChvcmctY2FsbC13aXRoLWFyZyAnb3JnLXRvZG8tbGlzdCAob3IgYXJn ICcoNCkpKSkgKChlcXVhbCANCm9yZy1rZXlzIFxcXCJtXFxcIikgKGNhbGwtaW50ZXJhY3RpdmVs eSAnb3JnLXRhZ3MtdmlldykpICgoZXF1YWwgDQpvcmcta2V5cyBcXFwiTVxcXCIpIChvcmctY2Fs bC13aXRoLWFyZyAnb3JnLXRhZ3MtdmlldyAob3IgYXJnICcoNCkpKSkgDQooKGVxdWFsIG9yZy1r ZXlzIFxcXCJlXFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSANCidvcmctc3RvcmUtYWdlbmRhLXZp ZXdzKSkgKChlcXVhbCBvcmcta2V5cyBcXFwiP1xcXCIpIChvcmctdGFncy12aWV3IG5pbCANClxc XCIrRkxBR0dFRFxcXCIpIChhZGQtaG9vayAncG9zdC1jb21tYW5kLWhvb2sgIycobGFtYmRhIG5p bCAoaWYgDQooY3VycmVudC1tZXNzYWdlKSBuaWwgKGxldCogLi4uIC4uLikpKSB0IHQpKSAoKGVx dWFsIG9yZy1rZXlzIFxcXCIjXFxcIikgDQooY2FsbC1pbnRlcmFjdGl2ZWx5ICdvcmctYWdlbmRh LWxpc3Qtc3R1Y2stcHJvamVjdHMpKSAoKGVxdWFsIG9yZy1rZXlzIA0KXFxcIi9cXFwiKSAoY2Fs bC1pbnRlcmFjdGl2ZWx5ICdvcmctb2NjdXItaW4tYWdlbmRhLWZpbGVzKSkgKChlcXVhbCANCm9y Zy1rZXlzIFxcXCIhXFxcIikgKGN1c3RvbWl6ZS12YXJpYWJsZSAnb3JnLXN0dWNrLXByb2plY3Rz KSkgKHQgDQoodXNlci1lcnJvciBcXFwiSW52YWxpZCBhZ2VuZGEga2V5XFxcIikpKSlcbiAoY2F0 Y2ggJ2V4aXQgKGxldCogDQooKG9yZy1rZXlzIGtleXMpIChwcmVmaXgtZGVzY3JpcHRpb25zIG5p bCkgKG9yZy1hZ2VuZGEtYnVmZmVyLW5hbWUgDQpvcmctYWdlbmRhLWJ1ZmZlci1uYW1lKSAob3Jn LWFnZW5kYS13aW5kb3ctc2V0dXAgKGlmIChlcXVhbCANCihidWZmZXItbmFtZSkgb3JnLWFnZW5k YS1idWZmZXItbmFtZSkgJ2N1cnJlbnQtd2luZG93IA0Kb3JnLWFnZW5kYS13aW5kb3ctc2V0dXAp KSAob3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMtb3JpZyANCm9yZy1hZ2VuZGEtY3VzdG9tLWNv bW1hbmRzKSAob3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMgKGRlbHEgbmlsIA0KKG1hcGNhciAj JyhsYW1iZGEgLi4uIC4uLikgb3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMpKSkgDQoob3JnLWFn ZW5kYS1jdXN0b20tY29tbWFuZHMgKG9yZy1jb250ZXh0dWFsaXplLWtleXMgDQpvcmctYWdlbmRh LWN1c3RvbS1jb21tYW5kcyBvcmctYWdlbmRhLWN1c3RvbS1jb21tYW5kcy1jb250ZXh0cykpIChi Zm4gDQooYnVmZmVyLWZpbGUtbmFtZSAoYnVmZmVyLWJhc2UtYnVmZmVyKSkpIGVudHJ5IHR5cGUg b3JnLW1hdGNoIGxwcm9wcyANCmFucykgKGlmIG9yZy1hZ2VuZGEtb3ZlcnJpZGluZy1yZXN0cmlj dGlvbiBuaWwgKGlmIA0Kb3JnLWFnZW5kYS1rZWVwLXJlc3RyaWN0ZWQtZmlsZS1saXN0IG5pbCAo cHV0ICdvcmctYWdlbmRhLWZpbGVzIA0KJ29yZy1yZXN0cmljdCBuaWwpKSAoc2V0cSBvcmctYWdl bmRhLXJlc3RyaWN0IG5pbCkgKG1vdmUtbWFya2VyIA0Kb3JnLWFnZW5kYS1yZXN0cmljdC1iZWdp biBuaWwpIChtb3ZlLW1hcmtlciBvcmctYWdlbmRhLXJlc3RyaWN0LWVuZCANCm5pbCkpIChpZiBv cmcta2V5cyBuaWwgKHByb2duIChzZXRxIGFucyANCihvcmctYWdlbmRhLWdldC1yZXN0cmljdGlv bi1hbmQtY29tbWFuZCBwcmVmaXgtZGVzY3JpcHRpb25zKSkgKHNldHEgDQpvcmcta2V5cyAoY2Fy IGFucykpIChzZXRxIHJlc3RyaWN0aW9uIChjZHIgYW5zKSkpKSAoaWYgb3JnLWFnZW5kYS1zdGlj a3kgDQoocHJvZ24gKHNldHEgb3JnLWFnZW5kYS1idWZmZXItbmFtZSAoZm9ybWF0IFxcXCIqT3Jn IEFnZW5kYSglcykqXFxcIiANCm9yZy1rZXlzKSkpKSAoaWYgKGFuZCAobm90IG9yZy1hZ2VuZGEt b3ZlcnJpZGluZy1yZXN0cmljdGlvbikgDQpyZXN0cmljdGlvbikgKHByb2duIChwdXQgJ29yZy1h Z2VuZGEtZmlsZXMgJ29yZy1yZXN0cmljdCAobGlzdCBiZm4pKSANCihjb25kICgoZXEgcmVzdHJp Y3Rpb24gJ3JlZ2lvbikgKHNldHEgb3JnLWFnZW5kYS1yZXN0cmljdCANCihjdXJyZW50LWJ1ZmZl cikpIChtb3ZlLW1hcmtlciBvcmctYWdlbmRhLXJlc3RyaWN0LWJlZ2luIA0KKHJlZ2lvbi1iZWdp bm5pbmcpKSAobW92ZS1tYXJrZXIgb3JnLWFnZW5kYS1yZXN0cmljdC1lbmQgKHJlZ2lvbi1lbmQp KSkgDQooKGVxIHJlc3RyaWN0aW9uICdzdWJ0cmVlKSAoc2F2ZS1leGN1cnNpb24gKHNldHEgb3Jn LWFnZW5kYS1yZXN0cmljdCANCi4uLikgKG9yZy1iYWNrLXRvLWhlYWRpbmcgdCkgKG1vdmUtbWFy a2VyIG9yZy1hZ2VuZGEtcmVzdHJpY3QtYmVnaW4gLi4uKSANCihtb3ZlLW1hcmtlciBvcmctYWdl bmRhLXJlc3RyaWN0LWVuZCAuLi4pKSkgKChlcSByZXN0cmljdGlvbiAnYnVmZmVyKSANCihpZiAo bm90IC4uLikgKHNldHEgb3JnLWFnZW5kYS1yZXN0cmljdCB0KSAoc2V0cSBvcmctYWdlbmRhLXJl c3RyaWN0IA0KLi4uKSAobW92ZS1tYXJrZXIgb3JnLWFnZW5kYS1yZXN0cmljdC1iZWdpbiAuLi4p IChtb3ZlLW1hcmtlciANCm9yZy1hZ2VuZGEtcmVzdHJpY3QtZW5kIC4uLikpKSkpKSAoY29uZCAo KHNldHEgZW50cnkgKGFzc29jIG9yZy1rZXlzIA0Kb3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMp KSAoaWYgKG9yIChzeW1ib2xwIChudGggMiBlbnRyeSkpIChmdW5jdGlvbnAgDQoobnRoIDIgZW50 cnkpKSkgKHByb2duIChwcm9nbiAoc2V0cSB0eXBlIC4uLikgKHNldHEgb3JnLW1hdGNoIC4uLikg KHNldHEgDQpscHJvcHMgLi4uKSkgKGlmIG9yZy1hZ2VuZGEtc3RpY2t5IChwcm9nbiAuLi4pKSAo cHJvZ24gKGxldCogLi4uIC4uLiANCi4uLikpIChsZXQgKC4uLikgKGFkZC10ZXh0LXByb3BlcnRp ZXMgLi4uIC4uLiAuLi4pKSkgDQoob3JnLWFnZW5kYS1ydW4tc2VyaWVzIChudGggMSBlbnRyeSkg KGNkciAoY2RyIGVudHJ5KSkpKSkgKChlcXVhbCANCm9yZy1rZXlzIFxcXCJDXFxcIikgKHNldHEg b3JnLWFnZW5kYS1jdXN0b20tY29tbWFuZHMgDQpvcmctYWdlbmRhLWN1c3RvbS1jb21tYW5kcy1v cmlnKSAoY3VzdG9taXplLXZhcmlhYmxlIA0KJ29yZy1hZ2VuZGEtY3VzdG9tLWNvbW1hbmRzKSkg KChlcXVhbCBvcmcta2V5cyBcXFwiYVxcXCIpIA0KKGNhbGwtaW50ZXJhY3RpdmVseSAnb3JnLWFn ZW5kYS1saXN0KSkgKChlcXVhbCBvcmcta2V5cyBcXFwic1xcXCIpIA0KKGNhbGwtaW50ZXJhY3Rp dmVseSAnb3JnLXNlYXJjaC12aWV3KSkgKChlcXVhbCBvcmcta2V5cyBcXFwiU1xcXCIpIA0KKG9y Zy1jYWxsLXdpdGgtYXJnICdvcmctc2VhcmNoLXZpZXcgKG9yIGFyZyAnKDQpKSkpICgoZXF1YWwg b3JnLWtleXMgDQpcXFwidFxcXCIpIChjYWxsLWludGVyYWN0aXZlbHkgJ29yZy10b2RvLWxpc3Qp KSAoKGVxdWFsIG9yZy1rZXlzIA0KXFxcIlRcXFwiKSAob3JnLWNhbGwtd2l0aC1hcmcgJ29yZy10 b2RvLWxpc3QgKG9yIGFyZyAnKDQpKSkpICgoZXF1YWwgDQpvcmcta2V5cyBcXFwibVxcXCIpIChj YWxsLWludGVyYWN0aXZlbHkgJ29yZy10YWdzLXZpZXcpKSAoKGVxdWFsIA0Kb3JnLWtleXMgXFxc Ik1cXFwiKSAob3JnLWNhbGwtd2l0aC1hcmcgJ29yZy10YWdzLXZpZXcgKG9yIGFyZyAnKDQpKSkp IA0KKChlcXVhbCBvcmcta2V5cyBcXFwiZVxcXCIpIChjYWxsLWludGVyYWN0aXZlbHkgDQonb3Jn LXN0b3JlLWFnZW5kYS12aWV3cykpICgoZXF1YWwgb3JnLWtleXMgXFxcIj9cXFwiKSAob3JnLXRh Z3MtdmlldyBuaWwgDQpcXFwiK0ZMQUdHRURcXFwiKSAoYWRkLWhvb2sgJ3Bvc3QtY29tbWFuZC1o b29rICMnKGxhbWJkYSBuaWwgKGlmIC4uLiBuaWwgDQouLi4pKSB0IHQpKSAoKGVxdWFsIG9yZy1r ZXlzIFxcXCIjXFxcIikgKGNhbGwtaW50ZXJhY3RpdmVseSANCidvcmctYWdlbmRhLWxpc3Qtc3R1 Y2stcHJvamVjdHMpKSAoKGVxdWFsIG9yZy1rZXlzIFxcXCIvXFxcIikgDQooY2FsbC1pbnRlcmFj dGl2ZWx5ICdvcmctb2NjdXItaW4tYWdlbmRhLWZpbGVzKSkgKChlcXVhbCBvcmcta2V5cyANClxc XCIhXFxcIikgKGN1c3RvbWl6ZS12YXJpYWJsZSAnb3JnLXN0dWNrLXByb2plY3RzKSkgKHQgKHVz ZXItZXJyb3IgDQpcXFwiSW52YWxpZCBhZ2VuZGEga2V5XFxcIikpKSkpXG4gb3JnLWFnZW5kYShu aWwpXG4gDQpmdW5jYWxsLWludGVyYWN0aXZlbHkob3JnLWFnZW5kYSBuaWwpXG4gY29tbWFuZC1l eGVjdXRlKG9yZy1hZ2VuZGEpXG4gDQpjb21wbGV0aW5nLXJlYWQtbXVsdGlwbGUoXFxcIlRhZ3M6 IFxcXCIgKChcXFwic3ltdG9tX2xvZ1xcXCIpIA0KKFxcXCJydW5uaW5nX2pvdXJuYWxcXFwiKSAo XFxcInRvb2xpbmdcXFwiKSAoXFxcIm1hc2FsYVxcXCIpIA0KKFxcXCJ3ZWlnaHRcXFwiKSAoXFxc ImhlYWx0aGNhcmVcXFwiKSAoXFxcIm96ZW1waWNfdGFwZXJcXFwiKSANCihcXFwiYnBfcmVhZGlu Z1xcXCIpIChcXFwidHJhdmVsX2xvZ1xcXCIpIA0KKFxcXCJncmFkX3NjaG9vbF9kZWNpc2lvbnNc XFwiKSAoXFxcImNyeXB0b1xcXCIpIChcXFwic3ltdHBcXFwiKSANCihcXFwiZHJlYW1cXFwiKSAo XFxcIm1lY2ZzXFxcIikgKFxcXCJzYXNoYVxcXCIpIChcXFwiaGFiaXRzXFxcIikgDQooXFxcImFu bmllXFxcIikgKFxcXCJkYXRpbmdcXFwiKSAoXFxcInRoZXJhcFxcXCIpIChcXFwidGhlcmFweVxc XCIpIA0KKFxcXCJzeW1wdG9tX2xvZ1xcXCIpIChcXFwiZXJnb25vbWljc1xcXCIpIChcXFwiam91 cm5hbFxcXCIpIA0KKFxcXCJjb3ZpZFxcXCIpIChcXFwiaXRoYWthXFxcIikpIG5pbCBuaWwgXFxc Ijpqb3VybmFsOlxcXCIgDQpvcmctdGFncy1oaXN0b3J5KVxuIG9yZy1zZXQtdGFncy1jb21tYW5k KG5pbClcbiANCmZ1bmNhbGwtaW50ZXJhY3RpdmVseShvcmctc2V0LXRhZ3MtY29tbWFuZCBuaWwp XG4gDQpjb21tYW5kLWV4ZWN1dGUob3JnLXNldC10YWdzLWNvbW1hbmQpXG5cIlxuIFBsZWFzZSBy ZXBvcnQgdGhpcyB0byBPcmcgDQptb2RlIG1haWxpbmcgbGlzdCAoTS14IG9yZy1zdWJtaXQtYnVn LXJlcG9ydCkuIikNCm9yZy1zcGVlZC1jb21tYW5kLWhvb2sgJyhvcmctc3BlZWQtY29tbWFuZC1h Y3RpdmF0ZSANCm9yZy1iYWJlbC1zcGVlZC1jb21tYW5kLWFjdGl2YXRlKQ0Kb3JnLWh0bWwtZm9y bWF0LWlubGluZXRhc2stZnVuY3Rpb24gDQonb3JnLWh0bWwtZm9ybWF0LWlubGluZXRhc2stZGVm YXVsdC1mdW5jdGlvbg0Kb3JnLWNsb2NrLXBlcnNpc3QtZmlsZSAifi8uZW1hY3MuZC8uY2FjaGUv b3JnLWNsb2NrLXNhdmUuZWwiDQpvcmctYXNjaWktZm9ybWF0LWlubGluZXRhc2stZnVuY3Rpb24g J29yZy1hc2NpaS1mb3JtYXQtaW5saW5ldGFzay1kZWZhdWx0DQpvcmctcmVmaWxlLXVzZS1jYWNo ZSB0DQpvcmctbGF0ZXgtcHJlZmVyLXVzZXItbGFiZWxzIHQNCm9yZy1vZHQtZm9ybWF0LWRyYXdl ci1mdW5jdGlvbiAjWzUxNCAiXDIwNyIgW10gMyAiXG5cbihmbiBOQU1FIENPTlRFTlRTKSJdDQpv cmctZm9sZC1jb3JlLWlzZWFyY2gtb3Blbi1mdW5jdGlvbiAnb3JnLWZvbGQtY29yZS0taXNlYXJj aC1yZXZlYWwNCm9yZy1wcmV2aWV3LWxhdGV4LWRlZmF1bHQtcHJvY2VzcyAnZHZpc3ZnbQ0Kb3Jn LWxhdGV4LWZvcm1hdC1pbmxpbmV0YXNrLWZ1bmN0aW9uIA0KJ29yZy1sYXRleC1mb3JtYXQtaW5s aW5ldGFzay1kZWZhdWx0LWZ1bmN0aW9uDQpvcmctcGVyc2lzdC1iZWZvcmUtd3JpdGUtaG9vayAn KG9yZy1lbGVtZW50LS1jYWNoZS1wZXJzaXN0LWJlZm9yZS13cml0ZSkNCm9yZy10YWItZmlyc3Qt aG9vayAnKG9yZy1iYWJlbC1oaWRlLXJlc3VsdC10b2dnbGUtbWF5YmUgDQpvcmctYmFiZWwtaGVh ZGVyLWFyZy1leHBhbmQpDQpvcmctbGluay1zaGVsbC1jb25maXJtLWZ1bmN0aW9uICd5ZXMtb3It bm8tcA0Kb3JnLWJhYmVsLXByZS10YW5nbGUtaG9vayAnKHNhdmUtYnVmZmVyKQ0Kb3JnLWFnZW5k YS1sb29wLW92ZXItaGVhZGxpbmVzLWluLWFjdGl2ZS1yZWdpb24gbmlsDQpvcmctY2FwdHVyZS1t b2RlLWhvb2sgJyhzcGFjZW1hY3MvL29yZy1jYXB0dXJlLXN0YXJ0KQ0Kb3JnLW9jY3VyLWhvb2sg JyhvcmctZmlyc3QtaGVhZGxpbmUtcmVjZW50ZXIpDQpvcmctbWV0YWRvd24taG9vayAnKG9yZy1i YWJlbC1wb3AtdG8tc2Vzc2lvbi1tYXliZSkNCm9yZy1saW5rLXBhcmFtZXRlcnMgJygoIm9yZ2l0 LXJldiIgOnN0b3JlIG9yZ2l0LXJldi1zdG9yZSA6Zm9sbG93IA0Kb3JnaXQtcmV2LW9wZW4gOmV4 cG9ydCBvcmdpdC1yZXYtZXhwb3J0IDpjb21wbGV0ZSBvcmdpdC1yZXYtY29tcGxldGUtbGluaykN Cigib3JnaXQtbG9nIiA6c3RvcmUgb3JnaXQtbG9nLXN0b3JlIDpmb2xsb3cgb3JnaXQtbG9nLW9w ZW4gOmV4cG9ydCANCm9yZ2l0LWxvZy1leHBvcnQgOmNvbXBsZXRlIG9yZ2l0LWxvZy1jb21wbGV0 ZS1saW5rKQ0KKCJvcmdpdCIgOnN0b3JlIG9yZ2l0LXN0YXR1cy1zdG9yZSA6Zm9sbG93IG9yZ2l0 LXN0YXR1cy1vcGVuIDpleHBvcnQgDQpvcmdpdC1zdGF0dXMtZXhwb3J0IDpjb21wbGV0ZSBvcmdp dC1zdGF0dXMtY29tcGxldGUtbGluaykNCigiYXR0YWNobWVudCIgOmZvbGxvdyBvcmctYXR0YWNo LWZvbGxvdyA6Y29tcGxldGUgDQpvcmctYXR0YWNoLWNvbXBsZXRlLWxpbmspICgiZXd3IiA6Zm9s bG93IG9yZy1ld3ctb3BlbiA6c3RvcmUgDQpvcmctZXd3LXN0b3JlLWxpbmspDQooInJtYWlsIiA6 Zm9sbG93IG9yZy1ybWFpbC1vcGVuIDpzdG9yZSBvcmctcm1haWwtc3RvcmUtbGluaykgKCJtaGUi IA0KOmZvbGxvdyBvcmctbWhlLW9wZW4gOnN0b3JlIG9yZy1taGUtc3RvcmUtbGluaykNCigiaXJj IiA6Zm9sbG93IG9yZy1pcmMtdmlzaXQgOnN0b3JlIG9yZy1pcmMtc3RvcmUtbGluayA6ZXhwb3J0 IA0Kb3JnLWlyYy1leHBvcnQpDQooImluZm8iIDpmb2xsb3cgb3JnLWluZm8tb3BlbiA6ZXhwb3J0 IG9yZy1pbmZvLWV4cG9ydCA6c3RvcmUgDQpvcmctaW5mby1zdG9yZS1saW5rIDppbnNlcnQtZGVz Y3JpcHRpb24gb3JnLWluZm8tZGVzY3JpcHRpb24tYXMtY29tbWFuZCkNCigiZ251cyIgOmZvbGxv dyBvcmctZ251cy1vcGVuIDpzdG9yZSBvcmctZ251cy1zdG9yZS1saW5rKSAoImRvY3ZpZXciIA0K OmZvbGxvdyBvcmctZG9jdmlldy1vcGVuIDpleHBvcnQgb3JnLWRvY3ZpZXctZXhwb3J0IDpzdG9y ZSANCm9yZy1kb2N2aWV3LXN0b3JlLWxpbmspDQooImJpYnRleCIgOmZvbGxvdyBvcmctYmlidGV4 LW9wZW4gOnN0b3JlIG9yZy1iaWJ0ZXgtc3RvcmUtbGluaykNCigiYmJkYiIgOmZvbGxvdyBvcmct YmJkYi1vcGVuIDpleHBvcnQgb3JnLWJiZGItZXhwb3J0IDpjb21wbGV0ZSANCm9yZy1iYmRiLWNv bXBsZXRlLWxpbmsgOnN0b3JlIG9yZy1iYmRiLXN0b3JlLWxpbmspICgidzNtIiA6c3RvcmUgDQpv cmctdzNtLXN0b3JlLWxpbmspDQooImRvaSIgOmZvbGxvdyBvcmctbGluay1kb2ktb3BlbiA6ZXhw b3J0IG9yZy1saW5rLWRvaS1leHBvcnQpICgiaWQiIA0KOmZvbGxvdyBvcmctaWQtb3BlbiA6c3Rv cmUgb3JnLWlkLXN0b3JlLWxpbmstbWF5YmUpDQooInRyZWVtYWNzIiA6c3RvcmUgdHJlZW1hY3Mt c3RvcmUtb3JnLWxpbmspDQooIm9yZ2l0LXRvcGljIiA6c3RvcmUgb3JnaXQtdG9waWMtc3RvcmUg OmZvbGxvdyBvcmdpdC10b3BpYy1vcGVuIDpleHBvcnQgDQpvcmdpdC10b3BpYy1leHBvcnQgOmNv bXBsZXRlIG9yZ2l0LXRvcGljLWNvbXBsZXRlLWxpbmsgOmluc2VydC1kZXNjcmlwdGlvbg0Kb3Jn aXQtdG9waWMtZGVzY3JpYmUtbGluaykNCigiZmlsZStzeXMiKSAoImZpbGUrZW1hY3MiKSAoInNo ZWxsIiA6Zm9sbG93IG9yZy1saW5rLS1vcGVuLXNoZWxsKSANCigibmV3cyIgOmZvbGxvdyAjWzUx NCAiXDMwMVwzMDBcMzAyUVwiXDIwNyIgWyJuZXdzIiBicm93c2UtdXJsICI6Il0gNiANCiJcblxu KGZuIFVSTCBBUkcpIl0pDQooIm1haWx0byIgOmZvbGxvdyAjWzUxNCAiXDMwMVwzMDBcMzAyUVwi XDIwNyIgWyJtYWlsdG8iIGJyb3dzZS11cmwgIjoiXSANCjYgIlxuXG4oZm4gVVJMIEFSRykiXSkN CigiaHR0cHMiIDpmb2xsb3cgI1s1MTQgIlwzMDFcMzAwXDMwMlFcIlwyMDciIFsiaHR0cHMiIGJy b3dzZS11cmwgIjoiXSA2IA0KIlxuXG4oZm4gVVJMIEFSRykiXSkNCigiaHR0cCIgOmZvbGxvdyAj WzUxNCAiXDMwMVwzMDBcMzAyUVwiXDIwNyIgWyJodHRwIiBicm93c2UtdXJsICI6Il0gNiANCiJc blxuKGZuIFVSTCBBUkcpIl0pDQooImZ0cCIgOmZvbGxvdyAjWzUxNCAiXDMwMVwzMDBcMzAyUVwi XDIwNyIgWyJmdHAiIGJyb3dzZS11cmwgIjoiXSA2IA0KIlxuXG4oZm4gVVJMIEFSRykiXSkgKCJo ZWxwIiA6Zm9sbG93IG9yZy1saW5rLS1vcGVuLWhlbHAgOnN0b3JlIA0Kb3JnLWxpbmstLXN0b3Jl LWhlbHApDQooImZpbGUiIDpjb21wbGV0ZSBvcmctbGluay1jb21wbGV0ZS1maWxlKSAoImVsaXNw IiA6Zm9sbG93IA0Kb3JnLWxpbmstLW9wZW4tZWxpc3ApKQ0Kb3JnLWh0bWwtZm9ybWF0LWhlYWRs aW5lLWZ1bmN0aW9uIA0KJ29yZy1odG1sLWZvcm1hdC1oZWFkbGluZS1kZWZhdWx0LWZ1bmN0aW9u DQpvcmctbWV0YXVwLWhvb2sgJyhvcmctYmFiZWwtbG9hZC1pbi1zZXNzaW9uLW1heWJlKQ0Kb3Jn LWFnZW5kYS1yZXN0b3JlLXdpbmRvd3MtYWZ0ZXItcXVpdCB0DQpvcmctYWdlbmRhLWluY2x1ZGUt ZGlhcnkgdA0Kb3JnLXN0YXJ0dXAtd2l0aC1pbmxpbmUtaW1hZ2VzIHQNCm9yZy1pbWVudS1kZXB0 aCA4DQpvcmctZG93bmxvYWQtbGluay1mb3JtYXQtZnVuY3Rpb24gDQonb3JnLWRvd25sb2FkLWxp bmstZm9ybWF0LWZ1bmN0aW9uLWRlZmF1bHQNCm9yZy1vdXRsaW5lLXBhdGgtY29tcGxldGUtaW4t c3RlcHMgbmlsDQpvcmctc3JjLWxhbmctbW9kZXMgJygoImJlYW1lciIgLiBMYVRlWCkgKCJsYXRl eCIgLiBMYVRlWCkgKCJDIiAuIGMpIA0KKCJDKysiIC4gYysrKSAoImFzeW1wdG90ZSIgLiBhc3kp ICgiYmVhbWVyIiAuIGxhdGV4KSAoImNhbGMiIC4gDQpmdW5kYW1lbnRhbCkgKCJjcHAiIC4gYysr KSAoImRpdGFhIiAuIGFydGlzdCkNCigiZGVza3RvcCIgLiBjb25mLWRlc2t0b3ApICgiZG90IiAu IGZ1bmRhbWVudGFsKSAoImVsaXNwIiAuIGVtYWNzLWxpc3ApIA0KKCJvY2FtbCIgLiB0dWFyZWcp ICgic2NyZWVuIiAuIHNoZWxsLXNjcmlwdCkgKCJzcWxpdGUiIC4gc3FsKSAoInRvbWwiIC4gDQpj b25mLXRvbWwpDQooInNoZWxsIiAuIHNoKSAoImFzaCIgLiBzaCkgKCJzaCIgLiBzaCkgKCJiYXNo IiAuIHNoKSAoImpzaCIgLiBzaCkgDQooImJhc2gyIiAuIHNoKSAoImRhc2giIC4gc2gpICgiZHRr c2giIC4gc2gpICgia3NoIiAuIHNoKSAoImVzIiAuIHNoKSANCigicmMiIC4gc2gpICgiaXRjc2gi IC4gc2gpDQooInRjc2giIC4gc2gpICgiamNzaCIgLiBzaCkgKCJjc2giIC4gc2gpICgia3NoODgi IC4gc2gpICgib2FzaCIgLiBzaCkgDQooInBka3NoIiAuIHNoKSAoIm1rc2giIC4gc2gpICgicG9z aXgiIC4gc2gpICgid2tzaCIgLiBzaCkgKCJ3c2giIC4gc2gpIA0KKCJ6c2giIC4gc2gpDQooInJw bSIgLiBzaCkpDQpvcmctZXhwb3J0LXByZXNlcnZlLWJyZWFrcyB0DQopDQoNCg==