From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id 6GT9I/JJ6ma/oQAAqHPOHw:P1 (envelope-from ) for ; Wed, 18 Sep 2024 03:33:06 +0000 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id 6GT9I/JJ6ma/oQAAqHPOHw (envelope-from ) for ; Wed, 18 Sep 2024 05:33:06 +0200 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=dC6C9Afx; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20230601 header.b=KP630UEl; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1726630386; 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:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post:dkim-signature; bh=+IZEA1sQRuLiB1nJhp/UoJtntB1BX3TO3pQX4xnLiuI=; b=MruVcX1UXaFdp2Zlbj5ucMVMFbtvqjq3kbR/pxSvhDaNOsGxYyneyUerHMinw3iQAZMNua WPU9E5gG3B76FHvQDnyDE9pmX95B43m9TFYwx+NRsVTgnMLDpTWPmKQxfR3+i62Tt82nCJ 2Kfj2HuDaJOwTx4Bn0zL7QASwQiqnen76CqVNBcwdtIjGrCe25hAIXtgDf5SwXTx0htluc D4YRl/nMbQO1tUA1OJue+yF2g8/YTCrQbL9Q4/yZR0U1YHQB1/IdJr86U6AE/oSi3xfUHe mTnM44tjl1WQ61U5H81bxfNV4LGtJ0ZV5DsP9VLiMC2yp1hG3BrPHr1reoKAPw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=dC6C9Afx; dkim=fail ("body hash did not verify") header.d=gmail.com header.s=20230601 header.b=KP630UEl; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1726630386; a=rsa-sha256; cv=none; b=klhsXHIjWTftp06HRILstlNV5bvr4E5xE5i6Jh55AC2EhAjitA9/K3kZ57uT2gmDm/fEyu 4xYB+2+mDAchwjqZDjIpRtqJDvYJf4r46MuYz2+3nY79nhnRW7DIOuJP97MLNwjbCqdzuL PfVQKtZHhWw8HUUyaGBNJsow08jZ7YmArUPHtKfjE6XrRBfTHE/JlwJyNrJy6tSy4XMtLi l5+EbMwcmWcViFVhPr3f2rSaCZ0R4ZNv+/NMgc+0Tzj2xN3JwgHopTt7qr5o0JecqSSXQL gzhz3qgi93/pMY/0nOcxF8rIcBAKSV+mHDqpX7npIQWdpJAusCQngdhCaTyI4Q== 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 1C47FBAF5 for ; Wed, 18 Sep 2024 05:33:05 +0200 (CEST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sqlQv-0005kU-Ba; Tue, 17 Sep 2024 23:32:50 -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 1sqlQt-0005jw-Ex for guix-patches@gnu.org; Tue, 17 Sep 2024 23:32:47 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sqlQt-0001xZ-5t for guix-patches@gnu.org; Tue, 17 Sep 2024 23:32:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=Date:From:MIME-Version:To:Subject; bh=+IZEA1sQRuLiB1nJhp/UoJtntB1BX3TO3pQX4xnLiuI=; b=dC6C9Afx4El+achr1KDc985ZFobPxuz5EnmLrC7bEQWBh2ZvGMD9pJA8KjdHYOWIyg7U92XnRBIA2/Vj0PNJgo8ASE732w4bpwdMlKBurM2oTuETfaOCj1aJSnrNhcwBNQy1uiM5g9XtsjQmbKe4YtKefdUD6Ow9P16hc36gZW6iOg8LU1lvQFs+lksdk8O3+91P8ActT0zUaFD5t/rS2X4rov7pocUxLnifEMuxK/ZIvNhVRvDegF/Jc58FAAH+pWIH/AXF7DB+dIwn+Wq9uFVlLjpDYFmLZ24wKxGkIUP09Qq1tdGJX50cN7oXKTmZ4rxq23OXb5tHwI/TJz6IhA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1sqlR8-0003Bt-1c for guix-patches@gnu.org; Tue, 17 Sep 2024 23:33:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#73328] Adding Hyprland Resent-From: The Man Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 18 Sep 2024 03:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 73328 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 73328@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.172663034012151 (code B ref -1); Wed, 18 Sep 2024 03:33:01 +0000 Received: (at submit) by debbugs.gnu.org; 18 Sep 2024 03:32:20 +0000 Received: from localhost ([127.0.0.1]:56845 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqlQS-00039t-1F for submit@debbugs.gnu.org; Tue, 17 Sep 2024 23:32:20 -0400 Received: from lists.gnu.org ([209.51.188.17]:34080) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sqlQQ-00039h-2u for submit@debbugs.gnu.org; Tue, 17 Sep 2024 23:32:19 -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 1sqlQ9-0005TM-Gx for guix-patches@gnu.org; Tue, 17 Sep 2024 23:32:01 -0400 Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1sqlQ6-0001wB-Oy for guix-patches@gnu.org; Tue, 17 Sep 2024 23:32:00 -0400 Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-277f35c01f5so2978762fac.0 for ; Tue, 17 Sep 2024 20:31:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1726630315; x=1727235115; darn=gnu.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=3wER3ZhSJB4fVhpNg4rTlyK1ZmRsbsIlUdZ2mGB9NnM=; b=KP630UElOCa2odNTmEH1ndLEsV/2CGee/z0hGBddXGx/Rq3S1ysY71+tsDwC9l7VO5 IjW/9I9NloQ8GZPki0xamG77xPosAazDys3bUSNo9/dcYyd+uCqhw4FBba5cegbhOgSe kMgi5ulJPFAQYh2c94N+YLe9dLQdLvtlo+fmwLLiZmoBieOwzBN6VpAHb3AnH7dvO9Tt CUKH2riNyO7VpXjREuSAiKTs7fdt6soj1MxD9TA73DIp1pbXt1RVzw19v20j595o+DQ4 2zuRxIKf7p4w5U7MvCXmdqzHQJqJORVPEY7oWDXTpQfhcfSq0hsLibrFNh8S4NIoco8+ s+5A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726630315; x=1727235115; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=3wER3ZhSJB4fVhpNg4rTlyK1ZmRsbsIlUdZ2mGB9NnM=; b=MLd5xYJ0fFAu1J1qJPy0M1m6D/UyQQ0p6xJ+DqcatDwk7k+w7lxl5xnJ4HHX0sNsnX gAjnHQbyioXo/NgvmG6KtbbAV3cnh3p7GuewdedBB2Ai/w/ZY/iHNAa5YR9hIz/8llsc MEOl1phmDh2C5gU39moLS+SOMiifjn6jOE/zMFCmFTivrjVEpFbrlCilRSUS3nXFxSm+ VFciyjU2HXwlVTT9yF8xubj1JwUg7c0hKVc+ZFbhiIcBO/BNGDeuJEA4FYwaqly5mMG1 zbqUOirll5JbL+hYkDo1PL0weDZiCf+kMQHqPtPCosZJOAaQTxAD+ZJ1tdlo+AZBtef6 ORmw== X-Gm-Message-State: AOJu0YyBXv3DthoMxCRamajHRiItDTa4QjYou2Nu8ss3q1/HM4opu6XV 1F7kP2pcEJbwni447rDhxr3PdA3w9RSl8j4WN7RK+zgQk8cH97Tw+OG/nifZSuQfKAOu+/Yy4d9 9WRZe71iRqZMENtXGFCPxFHcjopsVxMsZ X-Google-Smtp-Source: AGHT+IFfo5z0KBHBBihr7QC6VAGNwLPk5Wgt1vQZdH05hhKzOJ7k8btIR99t9ic2+V8hvhUuL9vMYlNDWwaULHQMQGI= X-Received: by 2002:a05:6870:910f:b0:277:eb68:2878 with SMTP id 586e51a60fabf-27c3f6a6e6emr15515556fac.44.1726630315299; Tue, 17 Sep 2024 20:31:55 -0700 (PDT) MIME-Version: 1.0 From: The Man Date: Tue, 17 Sep 2024 22:31:19 -0500 Message-ID: Content-Type: multipart/mixed; boundary="0000000000009a345e06225c7235" Received-SPF: pass client-ip=2001:4860:4864:20::30; envelope-from=squishypinkelephant@gmail.com; helo=mail-oa1-x30.google.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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Spam-Score: -3.91 X-Spam-Score: -3.91 X-Migadu-Queue-Id: 1C47FBAF5 X-Migadu-Scanner: mx10.migadu.com X-TUID: M5hpe+ERS1bu --0000000000009a345e06225c7235 Content-Type: multipart/alternative; boundary="0000000000009a345c06225c7233" --0000000000009a345c06225c7233 Content-Type: text/plain; charset="UTF-8" While the conditions are not quite ideal, guix is almost in a form to accept Hyprland the following remains: mesa-updates commits: 318a1b8596b4862e7449f9e809fc29b203256db6 (gnu: wayland-protocols: Update to 1.37.) fdc34f63b54de7d356cc5adcbed7a0c7a532c789 (gnu: libinput: Update to 1.26.2.) in the master guix branch: https://issues.guix.gnu.org/73311 (libliftoff) others: pipewire updated (only issue with a single header, not a real blocker but would be ideal) Otherwise, see attached with the hypr* desktop and utilities building, running, and working on my desktop. The only caveat existing is that adding the following: ("GBM_BACKENDS_PATH" . ,(file-append mesa "/lib:$GBM_BACKENDS_PATH")) to a home-environment-variables-service-type in your home configuration is apparently a requirement for running or hyprland will complain about egl/gbm. otherwise I've tested the functionality of the desktop and nothing appears to be broken. linked, a screenshot of hyprland running in guix: https://files.catbox.moe/2troyt.webp attached are the package and service files. feel free to put this off until later, this is only to show that it can be done. --0000000000009a345c06225c7233 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
While the conditions are not quite ideal, guix is almost i= n a form to accept Hyprland
the following remains:=C2=A0
mesa-update= s commits:
318a1b8596b4862e7449f9e809fc29b203256db6 (gnu: wayland= -protocols: Update to 1.37.)
fdc34f63b54de7d356cc5adcbed7a0c7a532= c789 (gnu: libinput: Update to 1.26.2.)
in the master guix branch= :
others:
pipewire updated (only issue with a single header, not a real bloc= ker but would be ideal)

Otherwise, see attached wi= th the hypr* desktop and utilities building, running, and working
on my desktop.

The only caveat existing is that a= dding the following:
("GBM_BACKENDS_PATH" . ,(file-append mesa= "/lib:$GBM_BACKENDS_PATH"))
to a=C2=A0home-environment-variab= les-service-type in your home configuration is apparently a
requi= rement for running or hyprland=C2=A0will complain about egl/gbm.
otherwi= se I've tested the functionality of the desktop and nothing appears to = be broken.
linked, a screenshot of hyprland running in guix: https://files.catbox.moe/2troy= t.webp

attached are the package and service fi= les.=C2=A0
feel free to put this off until later, this is only to= show that it can be done.=C2=A0
--0000000000009a345c06225c7233-- --0000000000009a345e06225c7235 Content-Type: application/octet-stream; name="hyprland.scm" Content-Disposition: attachment; filename="hyprland.scm" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m17600re0 KGRlZmluZS1tb2R1bGUgKGh5cHJsYW5kIHBhY2thZ2VzIGh5cHJsYW5kKQogICM6dXNlLW1vZHVs ZSAoKGd1aXggbGljZW5zZXMpICM6cHJlZml4IGxpY2Vuc2U6KQogICM6dXNlLW1vZHVsZSAoZ3Vp eCBidWlsZC1zeXN0ZW0gY21ha2UpCiAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBj b3B5KQogICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gZ251KQogICM6dXNlLW1vZHVs ZSAoZ3VpeCBidWlsZC1zeXN0ZW0gbWVzb24pCiAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5 c3RlbSB0cml2aWFsKQogICM6dXNlLW1vZHVsZSAoZ3VpeCBkb3dubG9hZCkKICAjOnVzZS1tb2R1 bGUgKGd1aXggYnVpbGQtc3lzdGVtKQogICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZCB1dGlscykK ICAjOnVzZS1tb2R1bGUgKGd1aXggZ2V4cCkKICAjOnVzZS1tb2R1bGUgKGd1aXggZ2l0LWRvd25s b2FkKQogICM6dXNlLW1vZHVsZSAoZ3VpeCBwYWNrYWdlcykKICAjOnVzZS1tb2R1bGUgKGd1aXgg dXRpbHMpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMpCiAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgYWRtaW4pCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgYXV0b3Rvb2xzKQog ICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJhc2UpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFj a2FnZXMgYmFzaCkKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBidWlsZC10b29scykKICAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjbWFrZSkKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNr YWdlcyBjaGVjaykKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjb21wcmVzc2lvbikKICAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjcHApCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2Fn ZXMgZGVidWcpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZmlsZSkKICAjOnVzZS1tb2R1 bGUgKGdudSBwYWNrYWdlcyBmcmVlZGVza3RvcCkKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdl cyBmb250dXRpbHMpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ2NjKQogICM6dXNlLW1v ZHVsZSAoZ251IHBhY2thZ2VzIGdsKQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGdsaWIp CiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZ25vbWUpCiAgIzp1c2UtbW9kdWxlIChnbnUg cGFja2FnZXMgZ3RrKQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGd1aWxlKQogICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIGltYWdlKQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2Vz IGtkZS1wbGFzbWEpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgbGliZmZpKQogICM6dXNl LW1vZHVsZSAoZ251IHBhY2thZ2VzIGxsdm0pCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMg b25jLXJwYykKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBvcGVuY2wpCiAgIzp1c2UtbW9k dWxlIChnbnUgcGFja2FnZXMgbGludXgpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgbWFu KQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIG5pbmphKQogICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIHBjaXV0aWxzKQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHBrZy1jb25m aWcpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgcHl0aG9uKQogICM6dXNlLW1vZHVsZSAo Z251IHBhY2thZ2VzIHF0KQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIHdlYikKICAjOnVz ZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB3bSkKICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB2 ZXJzaW9uLWNvbnRyb2wpCiAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgeGRpc29yZykKICAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyB4b3JnKQogICM6dXNlLW1vZHVsZSAoZ251IHBhY2th Z2VzIHhtbCkpCgo7OyBUT0RPOiBSRU1PVkUgKi1mb3ItaHlwcmxhbmQgcGFja2FnZXMgYXMgdGhl eSBiZWNvbWUgdXBzdHJlYW0KKGRlZmluZSB3YXlsYW5kLXByb3RvY29scy1mb3ItaHlwcmxhbmQK ICAoaGlkZGVuLXBhY2thZ2UgKHBhY2thZ2UKICAgIChpbmhlcml0IHdheWxhbmQtcHJvdG9jb2xz KQogICAgKG5hbWUgIndheWxhbmQtcHJvdG9jb2xzIikKICAgICh2ZXJzaW9uICIxLjM3IikKICAg IChzb3VyY2UgKG9yaWdpbgogICAgICAgICAgICAgIChtZXRob2QgZ2l0LWZldGNoKQogICAgICAg ICAgICAgICh1cmkgKGdpdC1yZWZlcmVuY2UKICAgICAgICAgICAgICAgICAgICAodXJsICJodHRw czovL2dpdGxhYi5mcmVlZGVza3RvcC5vcmcvd2F5bGFuZC93YXlsYW5kLXByb3RvY29scy5naXQi KQogICAgICAgICAgICAgICAgICAgIChjb21taXQgdmVyc2lvbikpKQogICAgICAgICAgICAgIChm aWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKICAgICAgICAgICAgICAoc2hh MjU2CiAgICAgICAgICAgICAgKGJhc2UzMgogICAgICAgICAgICAgICAgIjE3ajl2MmkzdjE2cXlj OHBwNnpxOWhqczZucnpnaWFsYzVzYXNucGhnOXZhMnZhc3liNWciKSkpKSkpKQoKKGRlZmluZSBs aWJpbnB1dC1mb3ItaHlwcmxhbmQKICAoaGlkZGVuLXBhY2thZ2UgKHBhY2thZ2UKICAgIChpbmhl cml0IGxpYmlucHV0KQogICAgKG5hbWUgImxpYmlucHV0LWZvci1hcXVhbWFpbmUiKQogICAgKHZl cnNpb24gIjEuMjYuMiIpCiAgICAoc291cmNlIChvcmlnaW4KICAgICAgICAgICAgICAobWV0aG9k IGdpdC1mZXRjaCkKICAgICAgICAgICAgICAodXJpIChnaXQtcmVmZXJlbmNlCiAgICAgICAgICAg ICAgICAgICAgKHVybCAiaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL2xpYmlucHV0L2xp YmlucHV0LmdpdCIpCiAgICAgICAgICAgICAgICAgICAgKGNvbW1pdCB2ZXJzaW9uKSkpCiAgICAg ICAgICAgICAgKGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQogICAgICAg ICAgICAgIChzaGEyNTYKICAgICAgICAgICAgICAoYmFzZTMyCiAgICAgICAgICAgICAgICAiMXp3 d3E3YTBhNnl6bmM2anhocDZnYjUweXc1dnBma3ZnYnJhYnJwYzVwd2xkcGNrZmJyZyIpKSkpCiAg ICAoYXJndW1lbnRzCiAgICAgIChzdWJzdGl0dXRlLWtleXdvcmQtYXJndW1lbnRzIChwYWNrYWdl LWFyZ3VtZW50cyBsaWJpbnB1dCkKICAgICAgICAoKCM6cGhhc2VzIHBoYXNlcyAnJygpKQogICAg ICAgICAgI34obW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCiAgICAgICAgICAgICAgKGRl bGV0ZSAnY2hlY2spKSkpKSkpKSA7O2Jyb2tlbiB0ZXN0cy4gcHJvYmFibHkgZmluZQoKKGRlZmlu ZSBsaWJsaWZ0b2ZmLWZvci1oeXBybGFuZAogIChoaWRkZW4tcGFja2FnZSAocGFja2FnZQogICAg KG5hbWUgImxpYmxpZnRvZmYiKQogICAgKHZlcnNpb24gIjAuNS4wIikKICAgIChzb3VyY2UgKG9y aWdpbgogICAgICAgICAgICAgIChtZXRob2QgZ2l0LWZldGNoKQogICAgICAgICAgICAgICh1cmkg KGdpdC1yZWZlcmVuY2UKICAgICAgICAgICAgICAgICAgICAodXJsICJodHRwczovL2dpdGxhYi5m cmVlZGVza3RvcC5vcmcvZW1lcnNpb24vbGlibGlmdG9mZiIpCiAgICAgICAgICAgICAgICAgICAg KGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkKICAgICAgICAgICAgICAoZmls ZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCiAgICAgICAgICAgICAgKHNoYTI1 NgogICAgICAgICAgICAgIChiYXNlMzIKICAgICAgICAgICAgICAgICIxNjNnOG5kc2JtYTdhY3ky azltcm52bHBiN3lpNDQzMWhna3gxZ3lna2FmZ3dwcTFpaTF4IikpKSkKICAgIChidWlsZC1zeXN0 ZW0gbWVzb24tYnVpbGQtc3lzdGVtKQogICAgKG5hdGl2ZS1pbnB1dHMgKGxpc3QgcGtnLWNvbmZp ZykpCiAgICAoaW5wdXRzIChsaXN0IGxpYmRybSkpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2dp dGxhYi5mcmVlZGVza3RvcC5vcmcvZW1lcnNpb24vbGlibGlmdG9mZiIpCiAgICAoc3lub3BzaXMg IkxpZ2h0d2VpZ2h0IEtNUyBwbGFuZSBsaWJyYXJ5IikKICAgIChkZXNjcmlwdGlvbgogICAgIkxp YmxpZnRvZmYgZWFzZXMgdGhlIHVzZSBvZiBLTVMgcGxhbmVzIGZyb20gdXNlcnNwYWNlIHdpdGhv dXQgc3RhbmRpbmcgaW4geW91cgp3YXkuICBVc2VycyBjcmVhdGUgXCJ2aXJ0dWFsIHBsYW5lc1wi IGNhbGxlZCBsYXllcnMsIHNldCBLTVMgcHJvcGVydGllcyBvbiB0aGVtLAphbmQgbGlibGlmdG9m ZiB3aWxsIHBpY2sgaGFyZHdhcmUgcGxhbmVzIGZvciB0aGVzZSBsYXllcnMgaWYgcG9zc2libGUu IikKICAgIChsaWNlbnNlIGxpY2Vuc2U6ZXhwYXQpKSkpCgo7OyBUT0RPOiByZW1vdmUgb25jZSBw aXBld2lyZSBpcyB1cGRhdGVkIHVwc3RyZWFtCjs7IHRoaXMgaXMgaGVyZSB0byBmaXggYSBTSU5H TEUgSEVBREVSIEZJTEUKKGRlZmluZSBwaXBlaHlwcgogIChoaWRkZW4tcGFja2FnZSAocGFja2Fn ZQogICAgKGluaGVyaXQgcGlwZXdpcmUpCiAgICAobmFtZSAicGlwZWh5cHIiKQogICAgKGFyZ3Vt ZW50cwogICAgICAoc3Vic3RpdHV0ZS1rZXl3b3JkLWFyZ3VtZW50cyAocGFja2FnZS1hcmd1bWVu dHMgcGlwZXdpcmUpCiAgICAgICAgKCgjOnBoYXNlcyBwaGFzZXMgJycoKSkKICAgICAgICAgICN+ KG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwogICAgICAgICAgICAoYWRkLWFmdGVyICd1 bnBhY2sgJ2ZpeC1zcGEKICAgICAgICAgICAgICAobGFtYmRhIF8KICAgICAgICAgICAgICAgIChz dWJzdGl0dXRlKiAic3BhL2luY2x1ZGUvc3BhL3BvZC9keW5hbWljLmgiCiAgICAgICAgICAgICAg ICAgICgoIlNQQV9WRVJTSU9OX1BPRF9CVUlMREVSX0NBTExCQUNLUyIpCiAgICAgICAgICAgICAg ICAgICAgIi52ZXJzaW9uID0gU1BBX1ZFUlNJT05fUE9EX0JVSUxERVJfQ0FMTEJBQ0tTIikpKSkp KSkpKSkpCgooZGVmaW5lLXB1YmxpYyBoeXBydXRpbHMKICAocGFja2FnZQogICAgKG5hbWUgImh5 cHJ1dGlscyIpCiAgICAodmVyc2lvbiAiMC4yLjEiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAg ICAgICAgICAgKG1ldGhvZCBnaXQtZmV0Y2gpCiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVy ZW5jZQogICAgICAgICAgICAgICAgICAgICh1cmwgKHN0cmluZy1hcHBlbmQgImh0dHBzOi8vZ2l0 aHViLmNvbS9oeXByd20vIiBuYW1lKSkKICAgICAgICAgICAgICAgICAgICAoY29tbWl0IChzdHJp bmctYXBwZW5kICJ2IiB2ZXJzaW9uKSkpKQogICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1m aWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKICAgICAgICAgICAgICAoc2hhMjU2CiAgICAgICAgICAg ICAgKGJhc2UzMgogICAgICAgICAgICAgICAgIjBueHg1eWI1azk3MjZ4OTVuOGdpMjd4eXh5endi MG1hMG5qM2N6cGI1MXNkYTFrMGh6MGciKSkpKQogICAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWls ZC1zeXN0ZW0pCiAgICAobmF0aXZlLWlucHV0cyAobGlzdCBnY2MtMTQgcGtnLWNvbmZpZykpCiAg ICAoaW5wdXRzCiAgICAgIChsaXN0IHBpeG1hbikpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2h5 cHJsYW5kLm9yZy8iKQogICAgKHN5bm9wc2lzICJTbWFsbCBDKysgbGlicmFyeSBmb3IgdXRpbGl0 aWVzIHVzZWQgYWNyb3NzIHRoZSBIeXByKiBlY29zeXN0ZW0iKQogICAgKGRlc2NyaXB0aW9uCiAg ICAiU21hbGwgQysrIGxpYnJhcnkgZm9yIHV0aWxpdGllcyB1c2VkIGFjcm9zcyB0aGUgSHlwciog ZWNvc3lzdGVtLiIpCiAgICAobGljZW5zZSBsaWNlbnNlOmJzZC0zKSkpCgooZGVmaW5lLXB1Ymxp YyBoeXBybGFuZC1wcm90b2NvbHMKICAocGFja2FnZQogICAgKG5hbWUgImh5cHJsYW5kLXByb3Rv Y29scyIpCiAgICAodmVyc2lvbiAiMC4zLjAiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAgICAg ICAgICAgKG1ldGhvZCBnaXQtZmV0Y2gpCiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVyZW5j ZQogICAgICAgICAgICAgICAgICAgICh1cmwgKHN0cmluZy1hcHBlbmQgImh0dHBzOi8vZ2l0aHVi LmNvbS9oeXByd20vIiBuYW1lKSkKICAgICAgICAgICAgICAgICAgICAoY29tbWl0IChzdHJpbmct YXBwZW5kICJ2IiB2ZXJzaW9uKSkpKQogICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1maWxl LW5hbWUgbmFtZSB2ZXJzaW9uKSkKICAgICAgICAgICAgICAoc2hhMjU2CiAgICAgICAgICAgICAg KGJhc2UzMgogICAgICAgICAgICAgICAgIjAxajVoYzhxbmp6cWlpd3J5ZmF3eDF3enJoa24wbTc5 NGtucGh5YzB2c3h3a2NtamFqOHgiKSkpKQogICAgKGJ1aWxkLXN5c3RlbSBtZXNvbi1idWlsZC1z eXN0ZW0pCiAgICAoaG9tZS1wYWdlICJodHRwczovL2h5cHJsYW5kLm9yZyIpCiAgICAoc3lub3Bz aXMgIldheWxhbmQgcHJvdG9jb2wgZXh0ZW5zaW9ucyBmb3IgSHlwcmxhbmQiKQogICAgKGRlc2Ny aXB0aW9uCiAgICAiVGhpcyBwYWNrYWdlIHByb3ZpZGVzIFdheWxhbmQgcHJvdG9jb2wgZXh0ZW5z aW9ucyBmb3IgSHlwcmxhbmQgYW5kIGl0CmV4aXN0cyBpbiBhbiBlZmZvcnQgdG8gYnJpZGdlIHRo ZSBnYXAgYmV0d2VlbiBIeXBybGFuZCBhbmQgS0RFL0dub21lJ3MKZnVuY3Rpb25hbGl0eS4gIFNp bmNlIEBjb2Rle3dsci1wcm90b2NvbHN9IGlzIGNsb3NlZCBmb3IgbmV3IHN1Ym1pc3Npb25zLCBh bmQKQGNvZGV7d2F5bGFuZC1wcm90b2NvbHN9IGlzIHZlcnkgc2xvdyB3aXRoIGNoYW5nZXMsIHRo aXMgcGFja2FnZSB3aWxsIGhvbGQKcHJvdG9jb2xzIHVzZWQgYnkgSHlwcmxhbmQgdG8gYnJpZGdl IHRoZSBhZm9yZW1lbnRpb25lZCBnYXAuIikKICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkK CihkZWZpbmUtcHVibGljIGFxdWFtYXJpbmUKICAocGFja2FnZQogICAgKG5hbWUgImFxdWFtYXJp bmUiKQogICAgKHZlcnNpb24gIjAuNC4xIikKICAgIChzb3VyY2UgKG9yaWdpbgogICAgICAgICAg ICAgIChtZXRob2QgZ2l0LWZldGNoKQogICAgICAgICAgICAgICh1cmkgKGdpdC1yZWZlcmVuY2UK ICAgICAgICAgICAgICAgICAgICAodXJsIChzdHJpbmctYXBwZW5kICJodHRwczovL2dpdGh1Yi5j b20vaHlwcndtLyIgbmFtZSkpCiAgICAgICAgICAgICAgICAgICAgKGNvbW1pdCAoc3RyaW5nLWFw cGVuZCAidiIgdmVyc2lvbikpKSkKICAgICAgICAgICAgICAoZmlsZS1uYW1lIChnaXQtZmlsZS1u YW1lIG5hbWUgdmVyc2lvbikpCiAgICAgICAgICAgICAgKHNoYTI1NgogICAgICAgICAgICAgIChi YXNlMzIKICAgICAgICAgICAgICAgICIxOXlyd2FpeWg0emE4ZDN4aXhqa3FkaWYxbDRyNzFxN3J6 cWEwNWJ5NXpjM3phM3Z6bHp3IikpKSkKICAgIChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lz dGVtKQogICAgKGFyZ3VtZW50cwogICAgICBgKCM6dGVzdHM/ICNmIDs7IG5vIHRlc3QKICAgICAg ICAjOnBoYXNlcwogICAgICAgIChtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMKICAgICAg ICAgIChhZGQtYWZ0ZXIgJ3VucGFjayAnZml4Y21ha2UKICAgICAgICAgICAgKGxhbWJkYSogKCM6 a2V5IGlucHV0cyBuYXRpdmUtaW5wdXRzICM6YWxsb3ctb3RoZXIta2V5cykKICAgICAgICAgICAg ICAoc3Vic3RpdHV0ZSogIkNNYWtlTGlzdHMudHh0IgogICAgICAgICAgICAgICAgKCgiXCJHTEVT MlwiIikgIkdMRVMyIEVHTCIpCiAgICAgICAgICAgICAgICAoKCJPcGVuR0w6Ok9wZW5HTCIpICJP cGVuR0w6OkdMIikpKSkpCiAgICAgICAgICAjOmNtYWtlICxjbWFrZS0zLjMwKSkKICAgIChuYXRp dmUtaW5wdXRzIChsaXN0IGdjYy0xNCBwa2ctY29uZmlnKSkKICAgIChpbnB1dHMKICAgICAgKGxp c3QgaHlwcndheWxhbmQtc2Nhbm5lcgogICAgICAgIGh5cHJ1dGlscwogICAgICAgIHBjaXV0aWxz CiAgICAgICAgbWVzYQogICAgICAgIHdheWxhbmQKICAgICAgICB3YXlsYW5kLXByb3RvY29scy1m b3ItaHlwcmxhbmQKICAgICAgICBsaWJpbnB1dC1mb3ItaHlwcmxhbmQKICAgICAgICBsaWJzZWF0 CiAgICAgICAgbGliZGlzcGxheS1pbmZvCiAgICAgICAgbGliZHJtCiAgICAgICAgbGliZmZpCiAg ICAgICAgcGl4bWFuCiAgICAgICAgZXVkZXYKICAgICAgICB4b3JnLXNlcnZlci14d2F5bGFuZAog ICAgICAgIGh3ZGF0YSkpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2h5cHJsYW5kLm9yZy8iKQog ICAgKHN5bm9wc2lzICJWZXJ5IGxpZ2h0IGxpbnV4IHJlbmRlcmluZyBiYWNrZW5kIGxpYnJhcnki KQogICAgKGRlc2NyaXB0aW9uCiAgICAiQXF1YW1hcmluZSBpcyBhIHZlcnkgbGlnaHQgbGludXgg cmVuZGVyaW5nIGJhY2tlbmQgbGlicmFyeS4gIEl0IHByb3ZpZGVzCmJhc2ljIGFic3RyYWN0aW9u cyBmb3IgYW4gYXBwbGljYXRpb24gdG8gcmVuZGVyIG9uIGEgV2F5bGFuZCBzZXNzaW9uIChpbiBh IHdpbmRvdykKb3IgYSBuYXRpdmUgRFJNIHNlc3Npb24uICBJdCBpcyBhZ25vc3RpYyBvZiB0aGUg cmVuZGVyaW5nIEFQSSAoVnVsa2FuL09wZW5HTCkKYW5kIGRlc2lnbmVkIHRvIGJlIGxpZ2h0d2Vp Z2h0LCBwZXJmb3JtYW50LCBhbmQgbWluaW1hbC4iKQogICAgKGxpY2Vuc2UgbGljZW5zZTpic2Qt MykpKQoKKGRlZmluZS1wdWJsaWMgaHlwcndheWxhbmQtc2Nhbm5lcgogIChwYWNrYWdlCiAgICAo bmFtZSAiaHlwcndheWxhbmQtc2Nhbm5lciIpCiAgICAodmVyc2lvbiAiMC40LjAiKQogICAgKHNv dXJjZSAob3JpZ2luCiAgICAgICAgICAgICAgKG1ldGhvZCBnaXQtZmV0Y2gpCiAgICAgICAgICAg ICAgKHVyaSAoZ2l0LXJlZmVyZW5jZQogICAgICAgICAgICAgICAgICAgICh1cmwgKHN0cmluZy1h cHBlbmQgImh0dHBzOi8vZ2l0aHViLmNvbS9oeXByd20vIiBuYW1lKSkKICAgICAgICAgICAgICAg ICAgICAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2ZXJzaW9uKSkpKQogICAgICAgICAgICAg IChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKICAgICAgICAgICAgICAo c2hhMjU2CiAgICAgICAgICAgICAgKGJhc2UzMgogICAgICAgICAgICAgICAgIjF4YzJ4Y3hwcTYx bGc5NjRpaGswd2JmenFxdmlidzIwaXowOWcwcDMzeW01MWd3bHB4cjQiKSkpKQogICAgKGJ1aWxk LXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCiAgICAoYXJndW1lbnRzCiAgICAgIGAoIzp0ZXN0 cz8gI2YpKSAgICAgIDtObyB0ZXN0cy4KICAgIChuYXRpdmUtaW5wdXRzIChsaXN0IGdjYy0xNCBw a2ctY29uZmlnKSkKICAgIChpbnB1dHMKICAgICAgKGxpc3QgcHVnaXhtbCkpCiAgICAoaG9tZS1w YWdlICJodHRwczovL2dpdGh1Yi5jb20vaHlwcndtL2h5cHJ3YXlsYW5kLXNjYW5uZXIiKQogICAg KHN5bm9wc2lzICJIeXBybGFuZCBpbXBsZW1lbnRhdGlvbiBvZiB3YXlsYW5kLXNjYW5uZXIsIGlu IGFuZCBmb3IgQysrIikKICAgIChkZXNjcmlwdGlvbgogICAgIlRoaXMgcGFja2FnZSBwcm92aWRl cyBhIEh5cHJsYW5kIGltcGxlbWVudGF0aW9uIG9mIHdheWxhbmQtc2Nhbm5lciwgaW4gYW5kCmZv ciBDKysuIikKICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKCihkZWZpbmUtcHVibGljIGh5 cHJsYW5nCiAgKHBhY2thZ2UKICAgIChuYW1lICJoeXBybGFuZyIpCiAgICAodmVyc2lvbiAiMC41 LjIiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAgICAgICAgICAgKG1ldGhvZCBnaXQtZmV0Y2gp CiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVyZW5jZQogICAgICAgICAgICAgICAgICAgICh1 cmwgKHN0cmluZy1hcHBlbmQgImh0dHBzOi8vZ2l0aHViLmNvbS9oeXByd20vIiBuYW1lKSkKICAg ICAgICAgICAgICAgICAgICAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2ZXJzaW9uKSkpKQog ICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9uKSkKICAg ICAgICAgICAgICAoc2hhMjU2CiAgICAgICAgICAgICAgKGJhc2UzMgogICAgICAgICAgICAgICAg IjE3aTAzNzJ5djBmY3dueWtpMzZjcno3YWZ3OGM1ZjNqOTg1bTA4M3A3cmpiaDRmbjNicjYiKSkp KQogICAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCiAgICAobmF0aXZlLWlucHV0 cyAobGlzdCBnY2MtMTQgcGtnLWNvbmZpZykpCiAgICAoaW5wdXRzCiAgICAgIChsaXN0IGh5cHJ1 dGlscykpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2h5cHJsYW5kLm9yZy8iKQogICAgKHN5bm9w c2lzICJUaGUgaHlwciBjb25maWd1cmF0aW9uIGxhbmd1YWdlIikKICAgIChkZXNjcmlwdGlvbgog ICAgIlRoZSBoeXByIGNvbmZpZ3VyYXRpb24gbGFuZ3VhZ2UgaXMgYW4gZXh0cmVtZWx5IGVmZmlj aWVudCwgeWV0IGVhc3kgdG8gd29yawp3aXRoLCBjb25maWd1cmF0aW9uIGxhbmd1YWdlIGZvciBs aW51eCBhcHBsaWNhdGlvbnMuIikKICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKCihkZWZp bmUtcHVibGljIGh5cHJjdXJzb3IKICAocGFja2FnZQogICAgKG5hbWUgImh5cHJjdXJzb3IiKQog ICAgKHZlcnNpb24gIjAuMS45IikKICAgIChzb3VyY2UgKG9yaWdpbgogICAgICAgICAgICAgICht ZXRob2QgZ2l0LWZldGNoKQogICAgICAgICAgICAgICh1cmkgKGdpdC1yZWZlcmVuY2UKICAgICAg ICAgICAgICAgICAgICAodXJsIChzdHJpbmctYXBwZW5kICJodHRwczovL2dpdGh1Yi5jb20vaHlw cndtLyIgbmFtZSkpCiAgICAgICAgICAgICAgICAgICAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAi diIgdmVyc2lvbikpKSkKICAgICAgICAgICAgICAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5h bWUgdmVyc2lvbikpCiAgICAgICAgICAgICAgKHNoYTI1NgogICAgICAgICAgICAgIChiYXNlMzIK ICAgICAgICAgICAgICAgICIwejNhcjU4MG42MzAxNDVucTgwcXcwcDh2MGthaTZrbnZoaTZucjl6 MHkxanJiMDdiMHFsIikpKSkKICAgIChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQog ICAgKGFyZ3VtZW50cwogICAgICBgKCM6dGVzdHM/ICNmKSkgOzsgYnJva2VuIHRlc3QKICAgIChu YXRpdmUtaW5wdXRzIChsaXN0IGdjYy0xNCBwa2ctY29uZmlnKSkKICAgIChpbnB1dHMKICAgICAg KGxpc3QgaHlwcmxhbmcKICAgICAgICBsaWJ6aXAKICAgICAgICBjYWlybwogICAgICAgIGxpYnJz dmcKICAgICAgICB0b21scGx1c3BsdXMpKQogICAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9oeXBybGFu ZC5vcmcvIikKICAgIChzeW5vcHNpcyAiVGhlIGh5cHIgY29uZmlndXJhdGlvbiBsYW5ndWFnZSIp CiAgICAoZGVzY3JpcHRpb24KICAgICJUaGUgaHlwciBjb25maWd1cmF0aW9uIGxhbmd1YWdlIGlz IGFuIGV4dHJlbWVseSBlZmZpY2llbnQsIHlldCBlYXN5IHRvIHdvcmsKd2l0aCwgY29uZmlndXJh dGlvbiBsYW5ndWFnZSBmb3IgbGludXggYXBwbGljYXRpb25zLiIpCiAgICAobGljZW5zZSBsaWNl bnNlOmJzZC0zKSkpCgooZGVmaW5lLXB1YmxpYyB4ZGctZGVza3RvcC1wb3J0YWwtaHlwcmxhbmQK ICAocGFja2FnZQogICAgKG5hbWUgInhkZy1kZXNrdG9wLXBvcnRhbC1oeXBybGFuZCIpCiAgICAo dmVyc2lvbiAiMS4zLjMiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAgICAgICAgICAgKG1ldGhv ZCBnaXQtZmV0Y2gpCiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVyZW5jZQogICAgICAgICAg ICAgICAgICAgICh1cmwgKHN0cmluZy1hcHBlbmQgImh0dHBzOi8vZ2l0aHViLmNvbS9oeXByd20v IiBuYW1lKSkKICAgICAgICAgICAgICAgICAgICAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2 ZXJzaW9uKSkpKQogICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2 ZXJzaW9uKSkKICAgICAgICAgICAgICAoc2hhMjU2CiAgICAgICAgICAgICAgKGJhc2UzMgogICAg ICAgICAgICAgICAgIjE0bjRhOGI5MWlsaTBrcDJranFsdzNoNTdic3hrcmp3ZzViaGx3MmgzcTkz emF4djJiM2siKSkpKQogICAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCiAgICAo YXJndW1lbnRzCiAgICAgIGAoIzpjb25maWd1cmUtZmxhZ3MKICAgICAgICAnKCItRFNZU1RFTURf U0VSVklDRVM9ZmFsc2UiKQogICAgICAgICM6cGhhc2VzCiAgICAgICAgICAobW9kaWZ5LXBoYXNl cyAlc3RhbmRhcmQtcGhhc2VzCiAgICAgICAgICAgIChhZGQtYWZ0ZXIgJ2luc3RhbGwgJ3dyYXAt c3R1ZmYKICAgICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgaW5wdXRzIG91dHB1dHMgIzphbGxv dy1vdGhlci1rZXlzKQogICAgICAgICAgICAgICAgKHdyYXAtcHJvZ3JhbSAoc3RyaW5nLWFwcGVu ZAogICAgICAgICAgICAgICAgICAoYXNzb2MtcmVmIG91dHB1dHMgIm91dCIpICIvYmluL2h5cHJs YW5kLXNoYXJlLXBpY2tlciIpCiAgICAgICAgICAgICAgICAgICAgYCgiUEFUSCIgIjoiIHByZWZp eAogICAgICAgICAgICAgICAgICAgICgsKHN0cmluZy1hcHBlbmQgKGFzc29jLXJlZiBpbnB1dHMg InNsdXJwIikgIi9iaW4iKSkpKQogICAgICAgICAgICAgICAgKHdyYXAtcHJvZ3JhbSAoc3RyaW5n LWFwcGVuZAogICAgICAgICAgICAgICAgICAoYXNzb2MtcmVmIG91dHB1dHMgIm91dCIpICIvbGli ZXhlYy94ZGctZGVza3RvcC1wb3J0YWwtaHlwcmxhbmQiKQogICAgICAgICAgICAgICAgICAgIGAo IlBBVEgiICI6IiBwcmVmaXgKICAgICAgICAgICAgICAgICAgICAoLChzdHJpbmctYXBwZW5kIChh c3NvYy1yZWYgaW5wdXRzICJoeXBycGlja2VyIikgIi9iaW4iKQogICAgICAgICAgICAgICAgICAg ICwoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVmIGlucHV0cyAiaHlwcmxhbmQiKSAiL2JpbiIpKSkp KSkpCiAgICAgICAgIzp0ZXN0cz8gI2YpKSA7OyBubyB0ZXN0CiAgICAobmF0aXZlLWlucHV0cyAo bGlzdCBnY2MtMTQgcGtnLWNvbmZpZykpCiAgICAoaW5wdXRzCiAgICAgIChsaXN0IGJhc2gtbWlu aW1hbCA7OyBmb3Igd3JhcAogICAgICAgIGh5cHJsYW5kLXByb3RvY29scwogICAgICAgIGh5cHJ3 YXlsYW5kLXNjYW5uZXIKICAgICAgICBoeXBybGFuZwogICAgICAgIGh5cHJwaWNrZXIKICAgICAg ICBoeXBybGFuZAogICAgICAgIGxpYmRybQogICAgICAgIG1lc2EKICAgICAgICBxdGJhc2UKICAg ICAgICBxdHdheWxhbmQKICAgICAgICBzZGJ1cy1jKysKICAgICAgICBzbHVycAogICAgICAgIHBp cGVoeXByCiAgICAgICAgd2F5bGFuZAogICAgICAgIHdheWxhbmQtcHJvdG9jb2xzLWZvci1oeXBy bGFuZCkpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2h5cHJsYW5kLm9yZyIpCiAgICAoc3lub3Bz aXMgIlhERyBEZXNrdG9wIFBvcnRhbCBiYWNrZW5kIGZvciBIeXBybGFuZCIpCiAgICAoZGVzY3Jp cHRpb24KICAgICJBbiBYREcgRGVza3RvcCBQb3J0YWwgYmFja2VuZCBmb3IgSHlwcmxhbmQuIikK ICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKCihkZWZpbmUtcHVibGljIGh5cHJsYW5kCiAg KHBhY2thZ2UKICAgIChuYW1lICJoeXBybGFuZCIpCiAgICAodmVyc2lvbiAiMC40My4wIikKICAg IChzb3VyY2UgKG9yaWdpbgogICAgICAgICAgICAgIChtZXRob2QgZ2l0LWZldGNoKQogICAgICAg ICAgICAgICh1cmkgKGdpdC1yZWZlcmVuY2UKICAgICAgICAgICAgICAgICh1cmwgKHN0cmluZy1h cHBlbmQgImh0dHBzOi8vZ2l0aHViLmNvbS9oeXByd20vIiBuYW1lKSkKICAgICAgICAgICAgICAg IChjb21taXQgKHN0cmluZy1hcHBlbmQgInYiIHZlcnNpb24pKQogICAgICAgICAgICAgICAgKHJl Y3Vyc2l2ZT8gI3QpKSkKICAgICAgICAgICAgICAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5h bWUgdmVyc2lvbikpCiAgICAgICAgICAgICAgKHNoYTI1NgogICAgICAgICAgICAgIChiYXNlMzIK ICAgICAgICAgICAgICAgICIxOGJkaDNwMzdmYjhwejR5eXdmdjFicjhuNXdxc2o4cGEzNTA3eDhn aDNiOHhncDNzMGd2IikpKSkKICAgIChidWlsZC1zeXN0ZW0gY21ha2UtYnVpbGQtc3lzdGVtKQog ICAgKGFyZ3VtZW50cwogICAgICBgKCM6Y29uZmlndXJlLWZsYWdzICcoIi1ETk9fU1lTVEVNRD10 cnVlIiAiLURMRUdBQ1lfUkVOREVSRVI9ZmFsc2UiKQogICAgICAgICM6cGhhc2VzCiAgICAgICAg ICAobW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCiAgICAgICAgICAgIChhZGQtYWZ0ZXIg J3VucGFjayAnZml4aGFyZGNvZGVkdXNyCiAgICAgICAgICAgICAgKGxhbWJkYSogKCM6a2V5IG91 dHB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQogICAgICAgICAgICAgICAgKHN1YnN0aXR1dGUqICJz cmMvcmVuZGVyL09wZW5HTC5jcHAiCiAgICAgICAgICAgICAgICAgICgoIi91c3IiKQogICAgICAg ICAgICAgICAgICAgIChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikpKSkpCiAgICAgICAgICAgIChh ZGQtYWZ0ZXIgJ2luc3RhbGwgJ3dyYXAtaHlwcmxhbmQKICAgICAgICAgICAgICAobGFtYmRhKiAo IzprZXkgaW5wdXRzIG91dHB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQogICAgICAgICAgICAgICAg KHdyYXAtcHJvZ3JhbSAoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVmIG91dHB1dHMgIm91dCIpICIv YmluL0h5cHJsYW5kIikKICAgICAgICAgICAgICAgICAgYCgiUEFUSCIgIjoiIHByZWZpeAogICAg ICAgICAgICAgICAgICAoLChzdHJpbmctYXBwZW5kIChhc3NvYy1yZWYgaW5wdXRzICJjb3JldXRp bHMiKSAiL2JpbiIpCiAgICAgICAgICAgICAgICAgICwoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVm IGlucHV0cyAieG9yZy1zZXJ2ZXIteHdheWxhbmQiKSAiL2JpbiIpCiAgICAgICAgICAgICAgICAg ICwoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVmIGlucHV0cyAicGNpdXRpbHMiKSAiL2JpbiIpCiAg ICAgICAgICAgICAgICAgICwoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVmIGlucHV0cyAicGtnY29u ZiIpICIvYmluIikpKSkpKSkKICAgICAgICAjOmNtYWtlICxjbWFrZS0zLjMwCiAgICAgICAgIzp0 ZXN0cz8gI2YpKSA7OyBubyB0ZXN0cwogICAgKG5hdGl2ZS1pbnB1dHMgKGxpc3QgZ2NjLTE0IG5p bmphIHBrZy1jb25maWcganEgaHlwcndheWxhbmQtc2Nhbm5lciBweXRob24pKQogICAgKGlucHV0 cwogICAgICAobGlzdCBhcXVhbWFyaW5lCiAgICAgICAgYmFzaC1taW5pbWFsIDs7IGZvciB3cmFw CiAgICAgICAgcGtnY29uZgogICAgICAgIGNhaXJvCiAgICAgICAgZ2l0CiAgICAgICAgaHlwcmN1 cnNvcgogICAgICAgIGh5cHJsYW5nCiAgICAgICAgaHlwcnV0aWxzCiAgICAgICAgbGliZHJtCiAg ICAgICAgbGliaW5wdXQtZm9yLWh5cHJsYW5kCiAgICAgICAgbGlieGtiY29tbW9uCiAgICAgICAg bWVzYQogICAgICAgIHBhbmdvCiAgICAgICAgcGNpdXRpbHMKICAgICAgICB0b21scGx1c3BsdXMK ICAgICAgICB3YXlsYW5kCiAgICAgICAgd2F5bGFuZC1wcm90b2NvbHMtZm9yLWh5cHJsYW5kCiAg ICAgICAgbGlieGN1cnNvcgogICAgICAgIGxpYnNlYXQKICAgICAgICBsaWJkaXNwbGF5LWluZm8K ICAgICAgICBod2RhdGEKICAgICAgICBsaWJsaWZ0b2ZmLWZvci1oeXBybGFuZAogICAgICAgIHhv cmctc2VydmVyLXh3YXlsYW5kCiAgICAgICAgeGNiLXV0aWwKICAgICAgICA7OyB4d2F5bGFuZCBz dXBwb3J0CiAgICAgICAgbGlieGNiCiAgICAgICAgbGlieGRtY3AKICAgICAgICB4Y2ItdXRpbC1l cnJvcnMKICAgICAgICB4Y2ItdXRpbC1yZW5kZXJ1dGlsCiAgICAgICAgeGNiLXV0aWwtd20KICAg ICAgICB4Y2ItdXRpbC1jdXJzb3IKICAgICAgICB4Y2ItdXRpbC1pbWFnZQogICAgICAgIHhjYi11 dGlsLWtleXN5bXMKICAgICAgICB4Y2ItcHJvdG8pKQogICAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9o eXBybGFuZC5vcmciKQogICAgKHN5bm9wc2lzICJEeW5hbWljIHRpbGluZyBXYXlsYW5kIGNvbXBv c2l0b3IgYmFzZWQgb24gd2xyb290cyIpCiAgICAoZGVzY3JpcHRpb24KICAgICJIeXBybGFuZCBp cyBhIGR5bmFtaWMgdGlsaW5nIFdheWxhbmQgY29tcG9zaXRvciBiYXNlZCBvbiBAY29kZXt3bHJv b3RzfQp0aGF0IGRvZXNuJ3Qgc2FjcmlmaWNlIG9uIGl0cyBsb29rcy4gIEl0IHN1cHBvcnRzIG11 bHRpcGxlIGxheW91dHMsIGZhbmN5CmVmZmVjdHMsIGhhcyBhIHZlcnkgZmxleGlibGUgSVBDIG1v ZGVsIGFsbG93aW5nIGZvciBhIGxvdCBvZiBjdXN0b21pemF0aW9uLCBhbmQKbW9yZS4iKQogICAg KGxpY2Vuc2UgbGljZW5zZTpic2QtMykpKQoKKGRlZmluZS1wdWJsaWMgaHlwcmxvY2sKICAocGFj a2FnZQogICAgKG5hbWUgImh5cHJsb2NrIikKICAgICh2ZXJzaW9uICIwLjQuMSIpCiAgICAoc291 cmNlIChvcmlnaW4KICAgICAgICAgICAgICAobWV0aG9kIGdpdC1mZXRjaCkKICAgICAgICAgICAg ICAodXJpIChnaXQtcmVmZXJlbmNlCiAgICAgICAgICAgICAgICAgICAgKHVybCAoc3RyaW5nLWFw cGVuZCAiaHR0cHM6Ly9naXRodWIuY29tL2h5cHJ3bS8iIG5hbWUpKQogICAgICAgICAgICAgICAg ICAgIChjb21taXQgKHN0cmluZy1hcHBlbmQgInYiIHZlcnNpb24pKSkpCiAgICAgICAgICAgICAg KGZpbGUtbmFtZSAoZ2l0LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQogICAgICAgICAgICAgIChz aGEyNTYKICAgICAgICAgICAgICAoYmFzZTMyCiAgICAgICAgICAgICAgICAiMXp6djd3N2huOGs3 MXc3NWE5bXo1NDhjYmw0Zjh6Y3NkOGk5MmFiZ25yeDV4OWkzNXE2MyIpKSkpCiAgICAoYnVpbGQt c3lzdGVtIGNtYWtlLWJ1aWxkLXN5c3RlbSkKICAgIChhcmd1bWVudHMKICAgICAgYCgjOmNtYWtl ICxjbWFrZS0zLjMwCiAgICAgICAgIzpwaGFzZXMKICAgICAgICAobW9kaWZ5LXBoYXNlcyAlc3Rh bmRhcmQtcGhhc2VzCiAgICAgICAgICAoYWRkLWFmdGVyICd1bnBhY2sgJ2ZpeGNtYWtlCiAgICAg ICAgICAgIChsYW1iZGEqICgjOmtleSBpbnB1dHMgbmF0aXZlLWlucHV0cyAjOmFsbG93LW90aGVy LWtleXMpCiAgICAgICAgICAgICAgKHN1YnN0aXR1dGUqICJDTWFrZUxpc3RzLnR4dCIKICAgICAg ICAgICAgICAoKCIgIG9wZW5nbCIpICIiKSA7OyBsaXN0ZWQgdW5kZXIgcGtnY29uZmlnLCB3aGlj aCB3b24ndCBmaW5kIGl0CiAgICAgICAgICAgICAgKCgiT3BlbkdMIFJFUVVJUkVEIikgIk9wZW5H TCBSRVFVSVJFRCBDT01QT05FTlRTIEdMRVMyIEVHTCIpKSkpKQogICAgICAjOnRlc3RzPyAjZikp IDs7IG5vIHRlc3QKICAgIChuYXRpdmUtaW5wdXRzIChsaXN0IGdjYy0xNCBwa2ctY29uZmlnKSkK ICAgIChpbnB1dHMKICAgICAgICAobGlzdCBsaWJ4a2Jjb21tb24KICAgICAgICBtZXNhCiAgICAg ICAgbGlid2VicAogICAgICAgIChzcGVjaWZpY2F0aW9uLT5wYWNrYWdlICJsaWJqcGVnLXR1cmJv IikKICAgICAgICBsaW51eC1wYW0KICAgICAgICB3YXlsYW5kCiAgICAgICAgd2F5bGFuZC1wcm90 b2NvbHMtZm9yLWh5cHJsYW5kCiAgICAgICAgY2Fpcm8KICAgICAgICBsaWJkcm0KICAgICAgICBo eXBybGFuZwogICAgICAgIGh5cHJ1dGlscwogICAgICAgIHBhbmdvCiAgICAgICAgZmlsZSkpCiAg ICAoaG9tZS1wYWdlICJodHRwczovL2h5cHJsYW5kLm9yZy8iKQogICAgKHN5bm9wc2lzICJIeXBy bGFuZCdzIHNjcmVlbiBsb2NraW5nIHV0aWxpdHkiKQogICAgKGRlc2NyaXB0aW9uCiAgICAiSHlw cmxhbmQncyBzaW1wbGUsIHlldCBtdWx0aS10aHJlYWRlZCBhbmQgR1BVLWFjY2VsZXJhdGVkIHNj cmVlbiBsb2NraW5nIHV0aWxpdHkuIikKICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKCihk ZWZpbmUtcHVibGljIGh5cHJpZGxlCiAgKHBhY2thZ2UKICAgIChuYW1lICJoeXByaWRsZSIpCiAg ICAodmVyc2lvbiAiMC4xLjIiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAgICAgICAgICAgKG1l dGhvZCBnaXQtZmV0Y2gpCiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVyZW5jZQogICAgICAg ICAgICAgICAgICAgICh1cmwgKHN0cmluZy1hcHBlbmQgImh0dHBzOi8vZ2l0aHViLmNvbS9oeXBy d20vIiBuYW1lKSkKICAgICAgICAgICAgICAgICAgICAoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2 IiB2ZXJzaW9uKSkpKQogICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFt ZSB2ZXJzaW9uKSkKICAgICAgICAgICAgICAoc2hhMjU2CiAgICAgICAgICAgICAgKGJhc2UzMgog ICAgICAgICAgICAgICAgIjEwbDB5eHkxYXZyeWpqNTRnaW13MmJsaGw3MzQ4ZHlweWhoNDNiNzNh OG5jamljcGpuemMiKSkpKQogICAgKGJ1aWxkLXN5c3RlbSBjbWFrZS1idWlsZC1zeXN0ZW0pCiAg ICAoYXJndW1lbnRzCiAgICAgIGAoIzp0ZXN0cz8gI2YpKSA7OyBubyB0ZXN0CiAgICAobmF0aXZl LWlucHV0cyAobGlzdCBnY2MtMTQgcGtnLWNvbmZpZykpCiAgICAoaW5wdXRzCiAgICAgICAgKGxp c3Qgd2F5bGFuZAogICAgICAgIHdheWxhbmQtcHJvdG9jb2xzLWZvci1oeXBybGFuZAogICAgICAg IHNkYnVzLWMrKwogICAgICAgIGh5cHJsYW5nKSkKICAgIChob21lLXBhZ2UgImh0dHBzOi8vaHlw cmxhbmQub3JnLyIpCiAgICAoc3lub3BzaXMgIkh5cHJsYW5kJ3MgaWRsZSBkYWVtb24iKQogICAg KGRlc2NyaXB0aW9uCiAgICAiSHlwcmxhbmQncyBpZGxlIGRhZW1vbi4iKQogICAgKGxpY2Vuc2Ug bGljZW5zZTpic2QtMykpKQoKKGRlZmluZS1wdWJsaWMgaHlwcnBhcGVyCiAgKHBhY2thZ2UKICAg IChuYW1lICJoeXBycGFwZXIiKQogICAgKHZlcnNpb24gIjAuNy4xIikKICAgIChzb3VyY2UgKG9y aWdpbgogICAgICAgICAgICAgIChtZXRob2QgZ2l0LWZldGNoKQogICAgICAgICAgICAgICh1cmkg KGdpdC1yZWZlcmVuY2UKICAgICAgICAgICAgICAgICAgICAodXJsIChzdHJpbmctYXBwZW5kICJo dHRwczovL2dpdGh1Yi5jb20vaHlwcndtLyIgbmFtZSkpCiAgICAgICAgICAgICAgICAgICAgKGNv bW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkKICAgICAgICAgICAgICAoZmlsZS1u YW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCiAgICAgICAgICAgICAgKHNoYTI1Ngog ICAgICAgICAgICAgIChiYXNlMzIKICAgICAgICAgICAgICAgICIxMHliMjg1M2ZkMGxqeGlqd2tx bTE0NmJuaXJ6cGdoZmM1a3cwODB3czI0aGptZmJwMGh3IikpKSkKICAgIChidWlsZC1zeXN0ZW0g Y21ha2UtYnVpbGQtc3lzdGVtKQogICAgKGFyZ3VtZW50cwogICAgICBgKCM6cGhhc2VzCiAgICAg ICAgKG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwogICAgICAgICAgKGFkZC1hZnRlciAn dW5wYWNrICdmaXhjbWFrZQogICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgaW5wdXRzIG5hdGl2 ZS1pbnB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQogICAgICAgICAgICAgIChzdWJzdGl0dXRlKiAi Q01ha2VMaXN0cy50eHQiCiAgICAgICAgICAgICAgKCgiUGtnQ29uZmlnIFJFUVVJUkVEIikKICAg ICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICJQa2dDb25maWcgUkVRVUlSRUQpXG4iCiAgICAg ICAgICAgICAgICAiZmluZF9wYWNrYWdlKE9wZW5HTCBSRVFVSVJFRCBDT01QT05FTlRTIFwiR0xF UzJcIiIpKQogICAgICAgICAgICAgICgoIiAgT3BlbkdMIikgIk9wZW5HTDo6R0wiKQogICAgICAg ICAgICAgICgoIiAgR0xFU3YyIikgIk9wZW5HTDo6R0xFUzIiKSkpKSkKICAgICAgICAjOnRlc3Rz PyAjZgogICAgICAgICM6Y21ha2UgLGNtYWtlLTMuMzApKSA7OyBubyB0ZXN0CiAgICAobmF0aXZl LWlucHV0cyAobGlzdCBnY2MtMTQgcGtnLWNvbmZpZykpCiAgICAoaW5wdXRzCiAgICAgICAgKGxp c3QgbGlid2VicAogICAgICAgIG1lc2EKICAgICAgICAoc3BlY2lmaWNhdGlvbi0+cGFja2FnZSAi bGlianBlZy10dXJibyIpCiAgICAgICAgd2F5bGFuZAogICAgICAgIHdheWxhbmQtcHJvdG9jb2xz LWZvci1oeXBybGFuZAogICAgICAgIGNhaXJvCiAgICAgICAgaHlwcmxhbmcKICAgICAgICBoeXBy dXRpbHMKICAgICAgICBwYW5nbwogICAgICAgIGZpbGUKICAgICAgICBoeXByd2F5bGFuZC1zY2Fu bmVyKSkKICAgIChob21lLXBhZ2UgImh0dHBzOi8vaHlwcmxhbmQub3JnLyIpCiAgICAoc3lub3Bz aXMgIldhbGxwYXBlciB1dGlsaXR5IGZvciBIeXBybGFuZCIpCiAgICAoZGVzY3JpcHRpb24KICAg ICJIeXBycGFwZXIgaXMgYSBibGF6aW5nIGZhc3Qgd2FsbHBhcGVyIHV0aWxpdHkgZm9yIEh5cHJs YW5kIHdpdGggdGhlIGFiaWxpdHkKdG8gZHluYW1pY2FsbHkgY2hhbmdlIHdhbGxwYXBlcnMgdGhy b3VnaCBzb2NrZXRzLiAgSXQgd2lsbCB3b3JrIG9uIGFsbCB3bHJvb3RzLWJhc2VkCmNvbXBvc2l0 b3JzLCB0aG91Z2guIikKICAgIChsaWNlbnNlIGxpY2Vuc2U6YnNkLTMpKSkKCihkZWZpbmUtcHVi bGljIGh5cHJwaWNrZXIKICAocGFja2FnZQogICAgKG5hbWUgImh5cHJwaWNrZXIiKQogICAgKHZl cnNpb24gIjAuMy4wIikKICAgIChzb3VyY2UgKG9yaWdpbgogICAgICAgICAgICAgIChtZXRob2Qg Z2l0LWZldGNoKQogICAgICAgICAgICAgICh1cmkgKGdpdC1yZWZlcmVuY2UKICAgICAgICAgICAg ICAgICAgICAodXJsIChzdHJpbmctYXBwZW5kICJodHRwczovL2dpdGh1Yi5jb20vaHlwcndtLyIg bmFtZSkpCiAgICAgICAgICAgICAgICAgICAgOzsoY29tbWl0IChzdHJpbmctYXBwZW5kICJ2IiB2 ZXJzaW9uKSkpKQogICAgICAgICAgICAgICAgICAgIChjb21taXQgIjM4ZmU2NjhlNTgwMTRjNzVj ZjI4ZjdjYjVmYzEzNmFhNzEwZTcwMzkiKSkpCiAgICAgICAgICAgICAgICAgICAgOzsgVE9ETzog cmVwbGFjZSBvbmNlIG5ldyB0YWcgaXMgc2V0CiAgICAgICAgICAgICAgKGZpbGUtbmFtZSAoZ2l0 LWZpbGUtbmFtZSBuYW1lIHZlcnNpb24pKQogICAgICAgICAgICAgIChzaGEyNTYKICAgICAgICAg ICAgICAoYmFzZTMyCiAgICAgICAgICAgICAgICAiMWttNWN4bXp2Z3p5a2tyY25xem1jZDEyNjho Y3l3bXNsczF3NTMxaGpuNHY1c2k3NzFwayIpKSkpCiAgICAoYnVpbGQtc3lzdGVtIGNtYWtlLWJ1 aWxkLXN5c3RlbSkKICAgIChhcmd1bWVudHMKICAgICAgYCgjOnRlc3RzPyAjZgogICAgICAgICM6 Y29uZmlndXJlLWZsYWdzIChsaXN0IChzdHJpbmctYXBwZW5kICItRENNQUtFX0lOU1RBTExfTUFO RElSPSIKICAgICAgICAgIChhc3NvYy1yZWYgJW91dHB1dHMgIm91dCIpICIvc2hhcmUvbWFuIikp CiAgICAgICAgIzpjbWFrZSAsY21ha2UtMy4zMCkpCiAgICAobmF0aXZlLWlucHV0cyAobGlzdCBn Y2MtMTQgcGtnLWNvbmZpZykpCiAgICAoaW5wdXRzCiAgICAgIChsaXN0IGxpYnhrYmNvbW1vbgog ICAgICAgIG1lc2EKICAgICAgICBoeXBydXRpbHMKICAgICAgICAoc3BlY2lmaWNhdGlvbi0+cGFj a2FnZSAibGlianBlZy10dXJibyIpCiAgICAgICAgd2F5bGFuZAogICAgICAgIHdheWxhbmQtcHJv dG9jb2xzLWZvci1oeXBybGFuZAogICAgICAgIGNhaXJvCiAgICAgICAgcGFuZ28KICAgICAgICBo eXByd2F5bGFuZC1zY2FubmVyKSkKICAgIChob21lLXBhZ2UgImh0dHBzOi8vaHlwcmxhbmQub3Jn LyIpCiAgICAoc3lub3BzaXMgIldscm9vdHMtY29tcGF0aWJsZSBXYXlsYW5kIGNvbG9yIHBpY2tl ciB0aGF0IGRvZXMgbm90IHN1Y2siKQogICAgKGRlc2NyaXB0aW9uCiAgICAiQSB3bHJvb3RzLWNv bXBhdGlibGUgV2F5bGFuZCBjb2xvciBwaWNrZXIgdGhhdCBkb2VzIG5vdCBzdWNrLiIpCiAgICAo bGljZW5zZSBsaWNlbnNlOmJzZC0zKSkpCgooZGVmaW5lLXB1YmxpYyBoeXBybGFuZC1tZXRhCiAg KHBhY2thZ2UKICAgIChuYW1lICJoeXBybGFuZC1tZXRhIikKICAgICh2ZXJzaW9uIChwYWNrYWdl LXZlcnNpb24gaHlwcmxhbmQpKQogICAgKHNvdXJjZSAjZikKICAgIChidWlsZC1zeXN0ZW0gdHJp dmlhbC1idWlsZC1zeXN0ZW0pCiAgICAoYXJndW1lbnRzCiAgICAgIChsaXN0ICM6YnVpbGRlcgog ICAgICAgICAgICAgI34oYmVnaW4KICAgICAgICAgICAgICAgIChta2RpciAjJG91dHB1dCkpKSkK ICAgIChwcm9wYWdhdGVkLWlucHV0cwogICAgICAobGlzdCBhcXVhbWFyaW5lCiAgICAgICAgaHlw cmN1cnNvcgogICAgICAgIGh5cHJpZGxlCiAgICAgICAgaHlwcmxhbmQKICAgICAgICBoeXBybG9j awogICAgICAgIGh5cHJwYXBlcgogICAgICAgIGh5cHJwaWNrZXIKICAgICAgICBxdHdheWxhbmQK ICAgICAgICB4ZGctZGVza3RvcC1wb3J0YWwtaHlwcmxhbmQpKQogICAgKGhvbWUtcGFnZSAiaHR0 cHM6Ly9oeXBybGFuZC5vcmciKQogICAgKHN5bm9wc2lzICJUaGUgY29tcGxldGUgSHlwcmxhbmQg ZXhwZXJpZW5jZSIpCiAgICAoZGVzY3JpcHRpb24KICAgICJIeXBybGFuZCBpcyBhIGR5bmFtaWMg dGlsaW5nIFdheWxhbmQgY29tcG9zaXRvciBiYXNlZCBvbiBAY29kZXt3bHJvb3RzfQp0aGF0IGRv ZXNuJ3Qgc2FjcmlmaWNlIG9uIGl0cyBsb29rcy4gIEl0IHN1cHBvcnRzIG11bHRpcGxlIGxheW91 dHMsIGZhbmN5CmVmZmVjdHMsIGhhcyBhIHZlcnkgZmxleGlibGUgSVBDIG1vZGVsIGFsbG93aW5n IGZvciBhIGxvdCBvZiBjdXN0b21pemF0aW9uLCBhbmQKbW9yZS4iKQogICAgKGxpY2Vuc2UgbGlj ZW5zZTpic2QtMykpKQo= --0000000000009a345e06225c7235 Content-Type: application/octet-stream; name="hyprland.scm" Content-Disposition: attachment; filename="hyprland.scm" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m17600rn1 KGRlZmluZS1tb2R1bGUgKGh5cHJsYW5kIHNlcnZpY2VzIGh5cHJsYW5kKQogICM6dXNlLW1vZHVs ZSAoaHlwcmxhbmQgcGFja2FnZXMgaHlwcmxhbmQpCiAgIzp1c2UtbW9kdWxlIChnbnUgc2Vydmlj ZXMpCiAgIzp1c2UtbW9kdWxlIChnbnUgc2VydmljZXMgc2hlcGhlcmQpCiAgIzp1c2UtbW9kdWxl IChnbnUgc2VydmljZXMgYmFzZSkKICAjOnVzZS1tb2R1bGUgKGdudSBzZXJ2aWNlcyBjb25maWd1 cmF0aW9uKQogICM6dXNlLW1vZHVsZSAoZ251IHNlcnZpY2VzIGRidXMpCiAgIzp1c2UtbW9kdWxl IChnbnUgc3lzdGVtIHBhbSkKICAjOnVzZS1tb2R1bGUgKGd1aXggcmVjb3JkcykKICAjOnVzZS1t b2R1bGUgKGd1aXggcGFja2FnZXMpCiAgIzp1c2UtbW9kdWxlIChndWl4IHN0b3JlKQogICM6dXNl LW1vZHVsZSAoZ3VpeCB1aSkKICAjOnVzZS1tb2R1bGUgKGd1aXggdXRpbHMpCiAgIzp1c2UtbW9k dWxlIChndWl4IGdleHApCiAgIzp1c2UtbW9kdWxlIChndWl4IG1vZHVsZXMpCiAgIzp1c2UtbW9k dWxlIChzcmZpIHNyZmktMSkKICAjOnVzZS1tb2R1bGUgKHNyZmkgc3JmaS0yNikKICAjOnVzZS1t b2R1bGUgKGljZS05IGZvcm1hdCkKICAjOnVzZS1tb2R1bGUgKGljZS05IG1hdGNoKQogICM6ZXhw b3J0ICggaHlwcmxhbmQtZGVza3RvcC1jb25maWd1cmF0aW9uCiAgICAgICAgICAgICBoeXBybGFu ZC1kZXNrdG9wLWNvbmZpZ3VyYXRpb24/CiAgICAgICAgICAgICBoeXBybGFuZC1kZXNrdG9wLXNl cnZpY2UtdHlwZSkpCgo7OzsKOzs7IEhlbHBlcnMuCjs7OwoKKGRlZmluZSAoYm9vbCB2YWx1ZSkK ICAoaWYgdmFsdWUgInRydWVcbiIgImZhbHNlXG4iKSkKCihkZWZpbmUgKHBhY2thZ2UtZGlyZWN0 LWlucHV0LXNlbGVjdG9yIHRyZWUpCiAgIlJldHVybiBhIHByb2NlZHVyZSB0aGF0IHNlbGVjdHMg VFJFRSBmcm9tIHRoZSBpbnB1dHMgb2YgUEFDS0FHRS4gIElmIFRSRUUKaXMgYSBsaXN0LCBpdCBy ZWN1cnNpdmVseSBzZWFyY2hlcyBpdCB1bnRpbCBpdCBsb2NhdGVzIHRoZSBsYXN0IGl0ZW0gb2Yg VFJFRS4iCiAgKGxhbWJkYSAocGFja2FnZSkKICAgIChsZXQgbG9vcCAoKHRyZWUgKGlmIChwYWly PyB0cmVlKQogICAgICAgICAgICAgICAgICAgICAgICAgdHJlZQogICAgICAgICAgICAgICAgICAg ICAgICAgKGxpc3QgdHJlZSkpKQogICAgICAgICAgICAgICAocGFja2FnZSBwYWNrYWdlKSkKICAg ICAgKGlmIChudWxsPyB0cmVlKQogICAgICAgICAgcGFja2FnZQogICAgICAgICAgKGxvb3AgKGNk ciB0cmVlKQogICAgICAgICAgICAgICAgKGNhciAoYXNzb2MtcmVmIChwYWNrYWdlLWRpcmVjdC1p bnB1dHMgcGFja2FnZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2FyIHRyZWUp KSkpKSkpKQoKCihkZWZpbmUtcmVjb3JkLXR5cGUqIDxoeXBybGFuZC1kZXNrdG9wLWNvbmZpZ3Vy YXRpb24+IGh5cHJsYW5kLWRlc2t0b3AtY29uZmlndXJhdGlvbgogIG1ha2UtaHlwcmxhbmQtZGVz a3RvcC1jb25maWd1cmF0aW9uCiAgaHlwcmxhbmQtZGVza3RvcC1jb25maWd1cmF0aW9uPwogICho eXBybGFuZC1wYWNrYWdlIGh5cHJsYW5kLXBhY2thZ2UgKGRlZmF1bHQgaHlwcmxhbmQtbWV0YSkp KQoKKGRlZmluZSAoaHlwcmxhbmQtcGFtLXNlcnZpY2VzIGNvbmZpZykKICAobGlzdCAodW5peC1w YW0tc2VydmljZSAiaHlwcmxvY2siKSkpCgooZGVmaW5lIChoeXBybGFuZC1kYnVzLXNlcnZpY2Ug Y29uZmlnKQogIChsZXQgKChoeXBybGFuZC1oeXBybGFuZCAoaHlwcmxhbmQtcGFja2FnZSBjb25m aWcpKSkKICAgIChtYXAgKGxhbWJkYSAobmFtZSkKICAgICAgICAgICAoKHBhY2thZ2UtZGlyZWN0 LWlucHV0LXNlbGVjdG9yIG5hbWUpIGh5cHJsYW5kLWh5cHJsYW5kKSkKICAgICAgICAgJygiaHlw cmxhbmQiKSkpKQoKKGRlZmluZSBoeXBybGFuZC1kZXNrdG9wLXNlcnZpY2UtdHlwZQogIChzZXJ2 aWNlLXR5cGUKICAgKG5hbWUgJ2h5cHJsYW5kLWRlc2t0b3ApCiAgIChkZXNjcmlwdGlvbiAiUnVu IGh5cHJsYW5kLiIpCiAgIChkZWZhdWx0LXZhbHVlIChoeXBybGFuZC1kZXNrdG9wLWNvbmZpZ3Vy YXRpb24pKQogICAoZXh0ZW5zaW9ucwogICAgKGxpc3QgKHNlcnZpY2UtZXh0ZW5zaW9uIGRidXMt cm9vdC1zZXJ2aWNlLXR5cGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoeXBybGFuZC1k YnVzLXNlcnZpY2UpCiAgICAgICAgICAoc2VydmljZS1leHRlbnNpb24gcGFtLXJvb3Qtc2Vydmlj ZS10eXBlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaHlwcmxhbmQtcGFtLXNlcnZpY2Vz KQogICAgICAgICAgKHNlcnZpY2UtZXh0ZW5zaW9uIHByb2ZpbGUtc2VydmljZS10eXBlCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKGNvbXBvc2UgbGlzdAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGh5cHJsYW5kLXBhY2thZ2UpKSkpKSkK --0000000000009a345e06225c7235--