From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Tue, 23 Jan 2024 10:26:58 +0100 Received: from metis.whiteo.stw.pengutronix.de ([2a0a:edc0:2:b01:1d::104]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1rSD3Z-00D1fR-0T for lore@lore.pengutronix.de; Tue, 23 Jan 2024 10:26:58 +0100 Received: from localhost ([127.0.0.1] helo=metis.whiteo.stw.pengutronix.de) by metis.whiteo.stw.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1rSD3Z-0001qg-UO; Tue, 23 Jan 2024 10:26:57 +0100 Received: from enterprise02.smtp.diehl.com ([193.201.238.220]) by metis.whiteo.stw.pengutronix.de with esmtps (TLS1.2:DHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rSD3C-0001oK-ER for ptxdist@pengutronix.de; Tue, 23 Jan 2024 10:26:35 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=diehl.com; i=@diehl.com; q=dns/txt; s=default; t=1706001994; x=1737537994; h=from:to:subject:message-id:mime-version:date; bh=J6nKARcYKRD5O+jCRzX2UiQQTA4+rpYqjaHp5cqOzac=; b=RpDjFMM+vOCXe8yc29s5qgOtkddIQ2oW+WBnzEW808J+0yBTg4MXnyyL o9rQ+q9GXGt2Txo1hQkrzIHEUCLIgxGoTb3iou3shzfTgpk28MJZeww8e R6/bbh7IOLiZcpLm+krlcH1ARqigvpdHn7zKHnBdrWpTS4S/UBlymwcWb N6KIUGutM+rByTH1Lq6NJrx3Samze7d5mGbKx+KbOOWmtf33b7EPWfhuh DQxzE+tbtqlGv2rwnfsiTWRLz/h0MyIlsMiuQu3e6FPkWtJMNxYfSWDqp 2LYjdZdWrQPSlfTAVoT+tJZbaNkhq+qTABZ6uwh6pDwLFh4u0lRCGvHBE Q==; X-CSE-ConnectionGUID: XrMJ0kKBTamcY/vNra0NEg== X-CSE-MsgGUID: JJT7s2NcTViQQ+VuNFjuaw== X-ThreatScanner-Verdict: Negative IronPort-Data: A9a23:GVraLaDGvsgyaRVW/0njw5YqxClBgxIJ4kV8jC+edVH5lGZ7hGRDl z1BRiGbeqTZIWXoOIAhNtzysAhTiSLnvpU+EV85s2kyVBqmwuKcXIzIcE2vNn7Lc8OYEBJp4 Z9AYICQdJFrF3WCrEn2a+Sx8yF2haiBG+WtWbaaanF/HQVqFiot2ENuyrVj3dcx6TTV721hn PuryyGIEAT0g24c3hsow6KftAs9+7PxtSID+FA/aPBP+lTZkj4eFpZYOaL0L0z+BIJOGrbSe wq4913Kw4+j10xrUruYurbnblVYBfnRMBmVzHZXVqimxBNFo2s5yKJ8KPlZaXBRzT6Tm4gsi 5QV3aBcMjzFTZAg4sxGFUEwLgl+IbFeqviAPmeg98CSwk3CNXDrxrJ2D0BxZeUkFp1M7RJzG YYwc3ZVBi2+ut9a4I5Xa8Ex3s0pdpm2Md1Psyg6lGmHUf95HcCYTvmV74MAh2dhjJwXTafVa vRCZGs0ZnwsQfHt1nQ/Vchixrf43hETVxUC9Tp5cIJuuzC7IDRZieWraJyNPIXSGa25p27Az kre5WP1HxoGA9KWzDuB4xqEi/TG9c/BcNt6+IaQqLgy3TV/+kRJUEdKDQLh+qHi4qKDc4k3x 3I8q3NGQZcapBTDounVB3WQvHOCtxgAbNtce8VSBNalk/e8D66xXwDofxYZADAUnJZeqQ8Cj zdlq+jU6QlH69V5f54/GoC89lteMQBNRYMLiLRtoQEtu7EPq6lr5v7Do0oK/AdYQbQZFBmpq w1mohTSiJ0jl+spj6aY12zOhjmd4YbvVAdtwCjYCzfNAgNRPOZJZqSk7ErQ4ukYdsCSSUOZ+ nQFlsiaqusJCPlhlgTUGKNdRvfwt7Dca2e0bV1HRvHN8xyh9niiZsZX+y1zPkNgNMosdT7kY EuVsgRUjHNWFCTwPfctONrgYygs5YrCKYv+DNbfUuRPW6EyShKh0iNzbFHFiggBl2Bpy8nTI 6yzadq8AXcBFYx/wTy5WvsH1rkq1mYyyAvuqYvTwxG12rWBPCTTRbYIMF/IZecj9MtovTnoz jqWDOPSoz03bQE0SnC/HVI7RbzSEUUGOA== IronPort-HdrOrdr: A9a23:djq3AanWnyXVOzGhBdga1uOUezjpDfIl3DAbv31ZSRFFG/Fw9v re+MjzsCWetN9/Yh8dcLy7WZVoTEm3yXcX2/h1AV7BZniEhILAFugLgeTfKlXbakrDH4VmpM VdmsZFaOEYC2IWsfrH X-Talos-CUID: =?us-ascii?q?9a23=3AaJAlomock0OVzu55WFpZNlPmUfA/V1+Fz1T6H0a?= =?us-ascii?q?9AlcuVpuPQAe21awxxg=3D=3D?= X-Talos-MUID: =?us-ascii?q?9a23=3AfbqqEQ037vGSCKYnI19VDSdAgjUjwYaSV1tXt54?= =?us-ascii?q?6hci9DG9OJhGzjim+Xdpy?= X-IronPort-AV: E=Sophos;i="6.05,214,1701126000"; d="p7s'?scan'208";a="72802309" From: Denis OSTERLAND-HEIM To: "ptxdist@pengutronix.de" Message-ID: <00e621dd5a014d4593b54067ced14257@diehl.com> MIME-Version: 1.0 Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha-256"; boundary="----351A89ACFDBE9D8248C2769719CF5CDC" Date: Tue, 23 Jan 2024 10:26:33 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on metis.whiteo.stw.pengutronix.de X-Spam-Level: X-Spam-Status: No, score=-103.2 required=4.0 tests=AWL,BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, USER_IN_WELCOMELIST,USER_IN_WHITELIST autolearn=ham autolearn_force=no version=3.4.2 Subject: Re: [ptxdist] [EXT] [PATCH] host-dtc: Move devicetree compiler from platform to hosttools_noprompt. X-BeenThere: ptxdist@pengutronix.de X-Mailman-Version: 2.1.29 Precedence: list List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Sender: "ptxdist" X-SA-Exim-Connect-IP: 127.0.0.1 X-SA-Exim-Mail-From: ptxdist-bounces@pengutronix.de X-SA-Exim-Scanned: No (on metis.whiteo.stw.pengutronix.de); SAEximRunCond expanded to false This is an S/MIME signed message ------351A89ACFDBE9D8248C2769719CF5CDC Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit LGTM Acked-by: Denis Osterland-Heim -----Original Message----- From: ptxdist On Behalf Of Christian Melki Sent: Monday, January 22, 2024 7:34 PM To: ptxdist@pengutronix.de Subject: [EXT] [ptxdist] [PATCH] host-dtc: Move devicetree compiler from platform to hosttools_noprompt. [EXTERNAL EMAIL] The dtc has traditionally been a part of the platform side. It was selected with a specific version to compile various kernel dts:es. Nowdays, target programs has started to require the libfdt in runtime. Ie, programs like QEMU. Beside the runtime, QEMU also have a host-variant which need host tools. This work preps for the QEMU upgrade by using the previous work of target DTC to provide HOST_DTC as a normal ptxconf hosttool. The end result is that HOST_DTC is reachable for HOST_QEMU. This also removes the specific version for the platform side. Signed-off-by: Christian Melki --- platforms/Kconfig | 1 - platforms/host-dtc.in | 23 ----------------------- rules/host-dtc.in | 6 ++++++ rules/host-dtc.make | 25 +++++++------------------ 4 files changed, 13 insertions(+), 42 deletions(-) delete mode 100644 platforms/host-dtc.in create mode 100644 rules/host-dtc.in diff --git a/platforms/Kconfig b/platforms/Kconfig index d9adc4931..93a36bcfe 100644 --- a/platforms/Kconfig +++ b/platforms/Kconfig @@ -14,7 +14,6 @@ menu "architecture " source "generated/architecture_options.in" endmenu source "generated/base_kernel.in" -source "generated/devicetree.in" source "platforms/console.in" menu "extra kernel " diff --git a/platforms/host-dtc.in b/platforms/host-dtc.in deleted file mode 100644 index 00a2c7ffb..000000000 --- a/platforms/host-dtc.in +++ /dev/null @@ -1,23 +0,0 @@ -## SECTION=devicetree - -menuconfig HOST_DTC - tristate "dtc " - select HOST_FLEX - help - Select this if the HOST_DTC tool is required without - building a device tree. (It is also used for building - U-boot FIT images) - -if HOST_DTC - -config HOST_DTC_VERSION - string "Device tree compiler version" - default "1.6.1" - help - Specify the DTC version number to be used - -config HOST_DTC_MD5 - string "dtc source md5sum" - default "380e536cdad51ec0e90c9a8c28df5aac" - -endif diff --git a/rules/host-dtc.in b/rules/host-dtc.in new file mode 100644 index 000000000..10c70643b --- /dev/null +++ b/rules/host-dtc.in @@ -0,0 +1,6 @@ +## SECTION=hosttools_noprompt + +config HOST_DTC + tristate + select HOST_FLEX + default y if ALLYES diff --git a/rules/host-dtc.make b/rules/host-dtc.make index e1625ef91..130dc79a9 100644 --- a/rules/host-dtc.make +++ b/rules/host-dtc.make @@ -2,6 +2,7 @@ # # Copyright (C) 2007 by Sascha Hauer # (C) 2010 by Michael Olbrich +# (C) 2024 by Christian Melki # # For further information about the PTXdist project and license conditions # see the README file. @@ -12,35 +13,23 @@ # HOST_PACKAGES-$(PTXCONF_HOST_DTC) += host-dtc -# -# Paths and names -# -HOST_DTC_VERSION := $(call ptx/config-version, PTXCONF_HOST_DTC) -HOST_DTC_MD5 := $(call ptx/config-md5, PTXCONF_HOST_DTC) -HOST_DTC := dtc-v$(HOST_DTC_VERSION) -HOST_DTC_SUFFIX := tar.gz -HOST_DTC_URL := https://git.kernel.org/pub/scm/utils/dtc/dtc.git/snapshot/$(HOST_DTC).$(HOST _DTC_SUFFIX) -HOST_DTC_SOURCE := $(SRCDIR)/$(HOST_DTC).$(HOST_DTC_SUFFIX) -HOST_DTC_DIR := $(HOST_BUILDDIR)/$(HOST_DTC) -HOST_DTC_LICENSE := GPL-2.0-only - # ---------------------------------------------------------------------------- # Prepare # ---------------------------------------------------------------------------- -HOST_DTC_CONF_TOOL := NO +HOST_DTC_CONF_TOOL := NO -HOST_DTC_MAKE_ENV := $(HOST_ENV) +HOST_DTC_MAKE_ENV := \ + $(HOST_ENV) -HOST_DTC_MAKE_OPT := \ +HOST_DTC_MAKE_OPT := \ PREFIX=/usr \ NO_PYTHON=1 \ NO_VALGRIND=1 \ NO_YAML=1 -HOST_DTC_INSTALL_OPT := \ +HOST_DTC_INSTALL_OPT := \ $(HOST_DTC_MAKE_OPT) \ - install-bin \ - install-lib + install # vim: syntax=make -- 2.34.1 ------351A89ACFDBE9D8248C2769719CF5CDC Content-Type: application/x-pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" MIIPQAYJKoZIhvcNAQcCoIIPMTCCDy0CAQExDzANBglghkgBZQMEAgEFADALBgkq hkiG9w0BBwGgggxWMIIGUTCCBDmgAwIBAgICMAAwDQYJKoZIhvcNAQELBQAwgaMx ITAfBgNVBAMMGERpZWhsIEdyb3VwIE1haWwgUm9vdCBDQTELMAkGA1UEBhMCREUx EjAQBgNVBAcMCU51ZXJuYmVyZzEUMBIGA1UECgwLRGllaGwgR3JvdXAxFDASBgNV BAsMC0RpZWhsIEdyb3VwMQ8wDQYDVQQIDAZCYXllcm4xIDAeBgkqhkiG9w0BCQEW EXg1MDktY2FAZGllaGwuY29tMB4XDTE4MDUyOTEyMzIzNVoXDTI4MDUyNjEyMzIz NVowgZQxCzAJBgNVBAYTAkRFMQ8wDQYDVQQIDAZCYXllcm4xFDASBgNVBAoMC0Rp ZWhsIEdyb3VwMRswGQYDVQQLDBJEaWVobCBNZXRlcmluZyBUS0gxHzAdBgNVBAMM FkRpZWhsIE1ldGVyaW5nIE1haWwgQ0ExIDAeBgkqhkiG9w0BCQEWEXg1MDktY2FA ZGllaGwuY29tMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtISPrKPL Zjjh//2n9b+GXgrhijJV2knQVC0+/FS3zGl4p2fboB+Vr4YHz1uilEvhsS1oG4FV f1u0dqdmLVxDHBPMO2K1NKKOJN/6LDDfyiZGNqDOJke6FzrmDyPXXTDtgzWZfdnD esx63XSxprre30oJ3BxDFS+/8UpuI628SPc1N4125rHeUXG4scKFSjqRPcIOAQ2X veGXU2dYHzq7B02NA8tssmtJNwXjyvMjOw6HGZ8SB87TrFQm6drEtM7QhI/mfpGe nTZ4nc84n0yKuMveav8IOspYbkOXzi4JapiOUpmccNLZdIiMg5WJQ0Xt9NSp5yD5 CYKideGrWgX2wNEBpalgjZoPPQDImcWEJx88/yYZ4FwtRD3VueFqpBr4z/bxwVDr N2a/sEqnocY9Tm2EQyHFHDCJ9JyYEXB8W0LTFcUAx+uHijwPk/oIB5EeH8UygXlX qUqII+BUZ+q5m5sIc4eXQ10UpUEjG/ptIyO1Ee/E0kPOWzHp07pPgXCZohZb3y41 Ha2pO6rXOsOmPBK2r2++fLWz3NFyfEJCmn6FcBNi003HUEVCup1D9/9yaPHPSieN 27sjQcQ96GbOitC99p3xMnSlg4N11lGeuTXCZjIGXdZL5/dThQaxneVA+hr2X+i1 KmqnesMaSBEuBEBDmbDbakEgJFVWtVeXuk8CAwEAAaOBmzCBmDASBgNVHRMBAf8E CDAGAQH/AgEAMAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUn8t6NGPzWsF+oZYXxmfn p4Ok7rIwHwYDVR0jBBgwFoAUZrrYQMMD50v/OCDMgDN7y/GT2P8wNQYDVR0fBC4w LDAqoCigJoYkaHR0cDovL2tleXMuZGllaGwuY29tL2NybC90ay1oX24uY3JsMA0G CSqGSIb3DQEBCwUAA4ICAQAl6hO6b6+GseZi3EAU+zPVhxNZP5Y+YsBnjf13jCGw nUVvPz6giwXiCd9KIC4eCqqrJLTHwZe8c/9hSk5CCd6A5XAd3YudrPDvmIwms5Ex OREMQkygZO6/qxfXO6IhfUO4HvYQtQexzHOLuxG/KdycVwWapA4acFzBurxFQ3aG jvPRgvWxe2Mt3K9wLrEhvGrDmS8yg4bYNyBZGgax6LRhfW4/ShInVUa0koG2Sj+H hKpppvqDK4FNgR2dKeCPoo28P9a+K9N3wkLKx4zxaxHegij0DsJOBAVbhk+vDWDO gedjtT09c9bsykaXFzykyQeQz7cwrTQ1gDacdcDgywMDQzZKim9O3JpyzvXnD7mb CvclM3xp9w6jIJbeaQE7HDlA9YIL/bSRIQq8mJcXArUevLK2MX/Mb+5m3UMU+zXc ZqmaneeZeR4bOWrmmhK6bMuce6H+i2YB1vG3BAcSfKQUzZ1m6aKSW1FvjI3SZXQD FzRzBwC5ql7i2ugtfOLNYjOO/fvAxNppIZb3IyWN1KBAI7YgS4nx0us/NIlWpTMW 91WeUtNBCp2sgi3VTi/TUel3RZ9x3tggMUhrksGkFXz2NUL85AdPV6BqJXXXHggd 121rnduE9ocMt0MFLuDPkMaHqKNzBAcKTcmFM8KYMJ5Z7NBqGtTAgHNVmEnU8gu3 czCCBf0wggPloAMCAQICAgtcMA0GCSqGSIb3DQEBCwUAMIGUMQswCQYDVQQGEwJE RTEPMA0GA1UECAwGQmF5ZXJuMRQwEgYDVQQKDAtEaWVobCBHcm91cDEbMBkGA1UE CwwSRGllaGwgTWV0ZXJpbmcgVEtIMR8wHQYDVQQDDBZEaWVobCBNZXRlcmluZyBN YWlsIENBMSAwHgYJKoZIhvcNAQkBFhF4NTA5LWNhQGRpZWhsLmNvbTAeFw0yNDAx MDIwOTE5MzlaFw0yNjAxMDIwOTE5MzlaMIG8MSIwIAYDVQQDDBlkZW5pcy5vc3Rl cmxhbmRAZGllaGwuY29tMSgwJgYJKoZIhvcNAQkBFhlkZW5pcy5vc3RlcmxhbmRA ZGllaGwuY29tMQswCQYDVQQGEwJERTEPMA0GA1UECAwGQmF5ZXJuMRwwGgYDVQQK DBNEaWVobCBNZXRlcmluZyBUSy1IMRwwGgYDVQQLDBNEaWVobCBNZXRlcmluZyBU Sy1IMRIwEAYDVQQHDAlOdWVybmJlcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDC4CfZJns8lrNXSkis30SmXgEPwIED4unjF8EoHzBRk5cQphMwuxVY uFrZmkB8+FJ7kNnazQ5ddAH+7uh/w7vxEbch92iEpJxYRT6z9U7Mgw0sqGjzWQjd sVzCSrWJrOdrHXc65BnAPOpjNDNe1dR8J9Z4a7OZU5NnQqJMT314j2gfGawGDakJ Vph7S6v4AVmty1Fi4iRbaIamu8KJFrHQb5E1UVD5drrxW6TS0z/3YkrMQ6qA1fBB Y271mRVq/1ByvJMgPJu7LtIyuGwGJw44RxF0JPLlqRWpsIa+z2cI48dkvwb8k0T1 rNSIj9urOmUEJGF5O8LioUy0vwmxeWF7AgMBAAGjggEtMIIBKTAfBgNVHSMEGDAW gBSfy3o0Y/NawX6hlhfGZ+eng6TusjAJBgNVHRIEAjAAMCQGA1UdEQQdMBuBGWRl bmlzLm9zdGVybGFuZEBkaWVobC5jb20wNQYDVR0fBC4wLDAqoCigJoYkaHR0cDov L2tleXMuZGllaGwuY29tL2NybC90ay1oX24uY3JsMDUGCCsGAQUFBwEBBCkwJzAl BggrBgEFBQcwAoYZaHR0cDovL3d3dy5kaWVobC5jb20vcGtpLzAJBgNVHRMEAjAA MB0GA1UdDgQWBBQK9y4jVYoCDsL7lhhJKjEP5wv1nTALBgNVHQ8EBAMCBaAwHQYD VR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMEMBEGCWCGSAGG+EIBAQQEAwIFoDAN BgkqhkiG9w0BAQsFAAOCAgEAB27J8TZvm6g0rtQpv4kqYwzkXOkCt27WHHWzl/JZ knFwWH4mvlRSrQtKkx8cPb5xqqx7k4qXC7TAef4W5YmnpWDtw7YHQAygAsCV1+i8 uBhdnBVRYkLi0Brsqb/KaDVCFDAYn82kr8OlDaVl5GazIF5rTTUFVT7QEUewf5e7 Ej4tkepIMP8DW0mM9VRdiSd+DFQQQsQR91nJZS+Gd0jT2tW6SVtZEGnsdgKi9VOw +/u7TPynQA3m70zel9t0RySfc5bfZGqEBK/nqU2g5n/qaHKT9cMM8vTAJOmzMv4W p7j6RF851h+6c4kH0UsUR9LdbXsKS0KsKTmjPbmbuMAWSEafskq5lJdhIybBnGcp FwOkXw6yLHhvmBQ27hVolbrAgLprlLBm8qLq0G3dPHlLwgnNlD6RAcjaVLOcqH3Q HWHbKlVg310S75cll1rM+GAudWdsHWxOUbK7R0lwJf/E+FAXciAsExWzCQarpSFI AYJjvnsYTiSWas6b5L/rKtyeWIz5wJ3ovxFaMglCtGNGh3sqKwVgb0PeGJ/hfXkV Z3i06A/GFOMDvvZ4kI2OL2wwUftkvi8ID5g2nbX/WQh9y6zhlXtiOlA1IplU+PU3 OHrFL4SBW0X7j1l+9Jl9kGy/ukAr+9nWZ55nUoV/L9C1GLrAO5KF/fDpO2b7lidQ mWUxggKuMIICqgIBATCBmzCBlDELMAkGA1UEBhMCREUxDzANBgNVBAgMBkJheWVy bjEUMBIGA1UECgwLRGllaGwgR3JvdXAxGzAZBgNVBAsMEkRpZWhsIE1ldGVyaW5n IFRLSDEfMB0GA1UEAwwWRGllaGwgTWV0ZXJpbmcgTWFpbCBDQTEgMB4GCSqGSIb3 DQEJARYReDUwOS1jYUBkaWVobC5jb20CAgtcMA0GCWCGSAFlAwQCAQUAoIHkMBgG CSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTI0MDEyMzA5 MjYzM1owLwYJKoZIhvcNAQkEMSIEIPWlHyC9Icu6pMGWu3guvJ6tgrDOFY5wCuMs 9/n8HyCJMHkGCSqGSIb3DQEJDzFsMGowCwYJYIZIAWUDBAEqMAsGCWCGSAFlAwQB FjALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYIKoZIhvcNAwICAgCAMA0GCCqG SIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMA0GCSqGSIb3DQEBAQUA BIIBAE85rGYbVemBUW5oxL0Cer7kYuIYac2aN/KBmiIAfn2iXHYZqcB0UToruwI0 zDMKT3sZXHQXBffIz3N7VxLcN6+KFhO2fpycTm/Kuh4OA2Yvb+vq60RaK7cm/OGI haeTNk9lUBGzCFH2p2B9lBLBbh1jXT1WMXEuza6bi+XB8ZzF1G9VQ5wlUosl7D66 npHPL01y5XxrLvu92fSr1NfZ5F2wo9wwx8ByjVIiQzXeFuxg8TFI0gSN+XkubjCj LINZAxtyrQpMyCrkve2pOw8Q83OKy9wgBcVqwVJt/u8oCHNiA+iKnApSsyCl3BAz 2S3i2uDDLNyf/iQTeVhQsLJMoKQ= ------351A89ACFDBE9D8248C2769719CF5CDC--