From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6928365750760505344 X-Received: by 2002:a2e:8743:: with SMTP id q3mr2466053ljj.12.1613155651198; Fri, 12 Feb 2021 10:47:31 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6512:6d4:: with SMTP id u20ls1252161lff.1.gmail; Fri, 12 Feb 2021 10:47:30 -0800 (PST) X-Google-Smtp-Source: ABdhPJzo2R0L5v8fdJKvrDdgfRZZdFw2lbnNhMOYqDXb1roEocCjf01eQNgQo9LrkP+Wfwp3tZW5 X-Received: by 2002:a19:d611:: with SMTP id n17mr2374483lfg.494.1613155650139; Fri, 12 Feb 2021 10:47:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1613155650; cv=none; d=google.com; s=arc-20160816; b=nS6APtxtrObSQ9CK/F33m72qA02d7VTNqHRSwGPyso0se+MI49+1S/xFPBqz5KgZFV g8ao1U+EGFKe0t+eeJtXkDLZunkd0rrGsKZj6XNSV7Yq8Tl5R0g1FdafgxrPZg27OHRX Sc9uXoWKsHuzpoj8szJ8+ecaIrvyvRezpBrRNdUrehYy5R+16E2/NfupO7nRtSwdkfqc iWoHj4SQLWnINCEFz4xJwo3HzaNwrlAthGzmgF5P8A049W1JkboRbwVQpnE2cqQ8y2je nexA8y9OJpL4wI6WeQYBHy1ecoD5K8kXYFLXbLimNlEa3EAYHlAqlTaEWM17aQGnrgMx PJzg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:references:in-reply-to:message-id:subject:cc:to:from :date; bh=ChOGLicNtysZqeQPEkrD5Ol5pUkRgzqdxH0FShKTUVc=; b=plDU3fi4c2EKvmg5fFZUv2Vtflu0qLY8CBRtuZdrlkJItxG/AJITG70GUvcqbxm+vm 2LCpKNsJFgBiqiJS0nvRe475aKCKYUNjwZ8mZ3kuTOOW4DxayFy5SVPHR2TBrjRTgxA9 judt+3wATIxTc8nERzrI6vgwufVTbBTe/n4GQgAJD9YTB7ZShip5XZO2fDb4hUg1+Gt4 D3MF1u/3iDGDC6faJoWdS2/EyYSH8qWdXAfvhk/1wNLAybt6fK+ZIMKn6KUdBCmZS447 oKuRhyeUc60CzWImJ2pgbLhgLk8u5jPSlRR2KHm8y0ABpXTcEM7XJgbOhpv+ammQ1UuH mCAg== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from gecko.sbs.de (gecko.sbs.de. [194.138.37.40]) by gmr-mx.google.com with ESMTPS id 191si441127lfa.4.2021.02.12.10.47.29 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Feb 2021 10:47:30 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) client-ip=194.138.37.40; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail1.sbs.de (mail1.sbs.de [192.129.41.35]) by gecko.sbs.de (8.15.2/8.15.2) with ESMTPS id 11CIlTke009777 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 12 Feb 2021 19:47:29 +0100 Received: from md1za8fc.ad001.siemens.net ([167.87.17.8]) by mail1.sbs.de (8.15.2/8.15.2) with ESMTP id 11CIlSvN015535; Fri, 12 Feb 2021 19:47:29 +0100 Date: Fri, 12 Feb 2021 19:47:27 +0100 From: Henning Schild To: Jan Kiszka Cc: Subject: Re: [PATCH 1/2] meta-isar: add example recipe for deploying prebuilt debs Message-ID: <20210212194727.743b4732@md1za8fc.ad001.siemens.net> In-Reply-To: References: <20210212131733.9926-1-henning.schild@siemens.com> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/signed; boundary="Sig_/utrH6LIIQA41T3JBL9S0A8R"; protocol="application/pkcs7-signature"; micalg=SHA256 X-TUID: 8EhNt1NFr6MX --Sig_/utrH6LIIQA41T3JBL9S0A8R Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Am Fri, 12 Feb 2021 17:42:07 +0100 schrieb Jan Kiszka : > On 12.02.21 14:17, Henning Schild wrote: > > From: Henning Schild > >=20 > > Signed-off-by: Henning Schild > > --- > > meta-isar/conf/local.conf.sample | 2 +- > > .../example-prebuilt-dummy_0.1.bb | 15 ++++++++++++ > > .../example-prebuilt/example-prebuilt_0.1.bb | 23 > > +++++++++++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) > > create mode 100644 > > meta-isar/recipes-app/example-prebuilt-dummy/example-prebuilt-dummy_0.1= .bb > > create mode 100644 > > meta-isar/recipes-app/example-prebuilt/example-prebuilt_0.1.bb > >=20 > > diff --git a/meta-isar/conf/local.conf.sample > > b/meta-isar/conf/local.conf.sample index 107496c163..cc0b5c66bb > > 100644 --- a/meta-isar/conf/local.conf.sample > > +++ b/meta-isar/conf/local.conf.sample > > @@ -172,7 +172,7 @@ CONF_VERSION =3D "1" > > =20 > > # > > # The default list of extra packages to be installed. > > -IMAGE_INSTALL =3D "hello-isar example-raw > > example-module-${KERNEL_NAME} enable-fsck isar-exclude-docs > > samefile hello isar-disable-apt-cache cowsay" +IMAGE_INSTALL =3D > > "hello-isar example-raw example-module-${KERNEL_NAME} enable-fsck > > isar-exclude-docs samefile hello isar-disable-apt-cache cowsay > > example-prebuilt" # # Enable cross-compilation support diff --git > > a/meta-isar/recipes-app/example-prebuilt-dummy/example-prebuilt-dummy_0= .1.bb > > b/meta-isar/recipes-app/example-prebuilt-dummy/example-prebuilt-dummy_0= .1.bb > > new file mode 100644 index 0000000000..92273dc886 --- /dev/null > > +++ > > b/meta-isar/recipes-app/example-prebuilt-dummy/example-prebuilt-dummy_0= .1.bb > > @@ -0,0 +1,15 @@ +# Sample recipe to create a dummy package used > > for example-prebuilt +# > > +# This software is a part of ISAR. > > + > > +DESCRIPTION =3D "Sample application for ISAR" > > +MAINTAINER =3D "Your name here " > > + > > +SRC_URI =3D "" > > + > > +inherit dpkg-raw > > + > > +# we provide a deb under another name > > +do_prepare_build_append() { > > + sed -i 's/example-prebuilt-dummy/example-prebuilt/g' > > ${S}/debian/* +} > > diff --git > > a/meta-isar/recipes-app/example-prebuilt/example-prebuilt_0.1.bb > > b/meta-isar/recipes-app/example-prebuilt/example-prebuilt_0.1.bb > > new file mode 100644 index 0000000000..4f224a48ec --- /dev/null > > +++ b/meta-isar/recipes-app/example-prebuilt/example-prebuilt_0.1.bb > > @@ -0,0 +1,23 @@ > > +# Sample recipe to include a prebuilt deb archive into an isar > > build +# > > +# This software is a part of ISAR. > > + > > +## hacks for the sake of the example > > +DEPENDS +=3D "${PN}-dummy" > > +do_fetch[depends] +=3D "${PN}-dummy:do_deploy_deb" > > +do_fetch[file-checksums] =3D "" > > +FILESPATH_prepend :=3D > > "${REPO_ISAR_DIR}/${DISTRO}/pool/main/e/${PN}/:" =20 >=20 > I think my approach is clearer /wrt not having the need for this here > - and the companion package. Agreed, this includes some "magic" that might be hard to maintain. And that requires the comments of what it "real" and what is "hack" Was just looking for a way to come up with a deb that will always be there, without providing a bad example of how such a deb could become available. > > + > > +## start of real example, the below is relevant > > + > > +# note the unpack=3Dfalse > > +SRC_URI =3D "file://${PN}_${PV}_${DISTRO_ARCH}.deb;unpack=3Dfalse" > > + > > +inherit dpkg-base > > + > > +# in case you have multiple debs or PN does not match > > +#PROVIDES=3D"foobar blabla" > > + > > +do_dpkg_build() { > > + bbnote "Not building a package" > > +} > > =20 >=20 > Otherwise, we are on the same page I think. Yours is more verbose in > several places. Let us discuss how to improve your approach and NOT MERGE THIS, yes RFC ... REJECT ... Henning > Jan >=20 --Sig_/utrH6LIIQA41T3JBL9S0A8R Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=smime.p7s MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0B BwEAAKCCG9UwggaPMIIEd6ADAgECAhQMIWOkSST/t/zbZ1rNyu5yCMypWjANBgkq hkiG9w0BAQsFADBIMQswCQYDVQQGEwJCTTEZMBcGA1UEChMQUXVvVmFkaXMgTGlt aXRlZDEeMBwGA1UEAxMVUXVvVmFkaXMgUm9vdCBDQSAzIEczMB4XDTE2MDYwNjE0 NDM1OVoXDTMxMDYwNjE0NDM1OVowVDELMAkGA1UEBhMCQk0xGTAXBgNVBAoMEFF1 b1ZhZGlzIExpbWl0ZWQxKjAoBgNVBAMMIVF1b1ZhZGlzIEVudGVycHJpc2UgVHJ1 c3QgQ0EgMyBHMzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKDQr9a8 kNTqqWTbSb/ABorCqUtKPZOVCnndOfZYMlpGnzwNziaqyM8wjLkcOxT7xVfOpLqY IMZJs3jPKhNH6mPc8NYTwGTkIAcn65v+3TR5i0Z6ltS9CTYyHQYKGU7BgQcUUqEh Fs2aAu9gaQcO2Rq6pc6AG11dKYGAULWziUdTdcMesfNN2rOKMGAiJZWuGk8kuoZv RaIUr87uox1x1SZSNinHvf8CBgV35d8s08jFW80xP/3AkdLSDR+rQpd4TUDeiSKE yxzdKLqfqDc1TotD52Hjav1bv2qPWdz6gv/pl7Yb9FbNcrvBRMUzQWz0BE6V2ch5 Cd6hG/LoS+sCfF74izNdmun0T4NUAvjyTp0L4OjOaKsq558QyXQEsQoCbTLkl5Bc OL5qJOJmp1WE7kcFBEF7GnVHt1fbCYfRKxwykc0KGsb31+7hzwRSHhvhY1kc+S4p X6vEKG1RVQZrPlI0ho1crBv0OsuponO8oz5My8CoPWb7ZNgbeJcAPLuxg7LH275a U8AGgrINSLZHu9TOEQKsQ+Zi3jTJYaxaL9Q7vhSinOvyCaifMyswSYNSJZ1LALfq 9pUnEnPm8czWqjZCQPn7Xk4pOD3/aFh84uX/dX0bT7XkOCTeAhsVOK68kmZOW0lU H4hMUxTAZsBo1nR0uDERMFLFYoj5xcX9+OErAgMBAAGjggFjMIIBXzAPBgNVHRMB Af8EBTADAQH/MEkGA1UdIARCMEAwPgYEVR0gADA2MDQGCCsGAQUFBwIBFihodHRw Oi8vd3d3LnF1b3ZhZGlzZ2xvYmFsLmNvbS9yZXBvc2l0b3J5MHQGCCsGAQUFBwEB BGgwZjAqBggrBgEFBQcwAYYeaHR0cDovL29jc3AucXVvdmFkaXNnbG9iYWwuY29t MDgGCCsGAQUFBzAChixodHRwOi8vdHJ1c3QucXVvdmFkaXNnbG9iYWwuY29tL3F2 cmNhM2czLmNydDAOBgNVHQ8BAf8EBAMCAQYwHwYDVR0jBBgwFoAUxhfQvKjqAkPy GwaZXSuQILnXnOQwOwYDVR0fBDQwMjAwoC6gLIYqaHR0cDovL2NybC5xdW92YWRp c2dsb2JhbC5jb20vcXZyY2EzZzMuY3JsMB0GA1UdDgQWBBTwFmAimDWJL4b8zdmH HA1jVW06RzANBgkqhkiG9w0BAQsFAAOCAgEAJ3C6bK6r2BE5pdemBIiZIvbJ3B5B QnGq9wofNSaVvKGAD5pOnu40wdxzXvatWWyy6rY72lC3wSrYgTbXNhwaK+FESOzd mhIsezTiBI/yY0HvuLsQyGYeAJiN5vuA199dz1EKyR00INsEWXmG7JsaGacnu3l7 VXM9n6w2NaCY1dxen3Pw1QkGg9mSbd/wLue0mQ33gQdJJyr+Fs5Jwyf2VoMm2i5L tb4DMP3WvdHipTSDo9g86dNBorBlFHtLgLUeBUyb8Ik9nVqIud/pPF18u6ivTeRi m1lKPjztcKwbawXFgcbiSDcn4qvDt64sVpmKmjOC1AZX0zYNd5j2YHP8m355ida/ zIMMacXFlmZ7QCoThQXJn73n8N4yf40VLGj9iiJHl5MPMao1COyhxSZx220rW6bI 94viPGJmM+NWwOV7eH8O7PPfubtWfYtMkYLglkeUcSSRnmvw7S8NpaxSATAvxS3D rvBY2RFKQs7yA1nGhT4KTn0l8hBiOBcuE3QK+5seyWo6xHwfYN9cYKG4j3wwWCwu SXyzgnKuKmHcJ5E57JoyWiws6QNI/ilj/TaLcCS2l32GYOEgnFM12GHEEsaltl4i H0+sXj1Pido/SdJhpMwCGFK9HLiqnOzD12zkZOu4Rl+nPWGpqhL3oXvGTIe6vgER WyQsJwMVYpBHCkkwgg2+MIILpqADAgECAhRWZvDMrJJk+lDZm+NfAOYzTdcWtTAN BgkqhkiG9w0BAQsFADBUMQswCQYDVQQGEwJCTTEZMBcGA1UECgwQUXVvVmFkaXMg TGltaXRlZDEqMCgGA1UEAwwhUXVvVmFkaXMgRW50ZXJwcmlzZSBUcnVzdCBDQSAz IEczMB4XDTIwMDYyOTE0MzYyNFoXDTI2MDYyOTE0MzYyNFowgZ8xCzAJBgNVBAYT AkRFMQ8wDQYDVQQIDAZCYXllcm4xETAPBgNVBAcMCE11ZW5jaGVuMRAwDgYDVQQK DAdTaWVtZW5zMREwDwYDVQQFEwhaWlpaWlpCMjEdMBsGA1UECwwUU2llbWVucyBU cnVzdCBDZW50ZXIxKDAmBgNVBAMMH1NpZW1lbnMgSXNzdWluZyBDQSBFRSBBdXRo IDIwMjAwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKA7rBD0wDgBDk 8CO0JEnd28M8CkoDG7s18VD2qGLBFggKcxnuHs4fWWc9NMPfpW5Ikp7hJFrsF/hT +dCy5ID9TVJLIoG8LbGd3Tg3gfx9RlYPuXFeKGlgd0YbeXj2BQkTsLJKeJVEugxp bpynPrdjQZB3rAdBFnomiXmUiZ9IALdmoxchFT9sKcERwmkf0o8JkD3wlNY6sLrl NPs0tOhC0XUvKwYjdD17LUuiG6Mvt4z6T5Sp67QLpoztjU7HwwQ7d6tfPmTuPKCm RDT3WuBRnxdJsRj/tF69DiCNeFtWwjFMBRD/+FFpbxb7Y6Y1KqK4VleG8SRnuxP6 GdZ5pkZ9/NrJfjd79jJf8sm+fZu0QoQ0QptkAtp76834tITeqDzmtlR2bMqnqTGB yibwXo9r5P7cGqWUbGON72z87QOdVxR3K3ZyW7Kh/UWKl1buDNu+ZdEjettldb87 I/pIDClyMR38U+4wJfb/ByxS03PnvQa3tvVtfsKcNHfag2xhkGDvlDd9U7rDMaSI U9RebS5HmcEy11JRcAPd3Bk6QK7Z+10tN6gidxNiHlHMGcnUDsB/RTUwSIVL2tFl 2nn3tmKH7nn4wvl6MRY7ys7NTXiPE2qyNgdWpfYq7rtm8z+9pkvo1nb5OirpEFxA La5X2jC3Pk5rHkBpjsaQ9vRzynaYZwIDAQABo4IIOjCCCDYwEgYDVR0TAQH/BAgw BgEB/wIBADAfBgNVHSMEGDAWgBTwFmAimDWJL4b8zdmHHA1jVW06RzCBgQYIKwYB BQUHAQEEdTBzMDoGCCsGAQUFBzAChi5odHRwOi8vdHJ1c3QucXVvdmFkaXNnbG9i YWwuY29tL3F2ZW50Y2EzZzMuY3J0MDUGCCsGAQUFBzABhilodHRwOi8vcXZlbnRj YTNnMy5vY3NwLnF1b3ZhZGlzZ2xvYmFsLmNvbTCCBHgGA1UdHgSCBG8wggRroIIE ZzAYgRYuYWR2YW5jZWQtYWlyZm9pbHMuY29tMBaBFC5haXJwb3J0bXVuaWNobHMu Y29tMBiBFi5lZHVjYXRpb24tc2llbWVucy5jb20wCYEHLmV0bS5hdDAOgQwuZXZv c29mdC5jb20wHIEaLmZhc3QtdHJhY2tkaWFnbm9zdGljcy5jb20wDoEMLmZsZW5k ZXIuY29tMBSBEi5mbGVuZGVyLWdyYWZmLmNvbTAOgQwuaHNwa29lbG4uZGUwEoEQ Lmh1YmFjb250cm9sLmNvbTAUgRIua2Fjby1uZXdlbmVyZ3kuZGUwDoEMLmxtc2lu dGwuY29tMAqBCC5vZXouY29tMA+BDS5vbW5ldHJpYy5jb20wCoEILnNiay5vcmcw DoEMLnNpZW1lbnMuY29tMA2BCy5zaWVtZW5zLmV1MBWBEy5zaWVtZW5zLWVuZXJn eS5jb20wEoEQLnNpZW1lbnNnb3Z0LmNvbTAZgRcuc2llbWVucy1oZWFsdGhjYXJl LmNvbTAbgRkuc2llbWVucy1oZWFsdGhpbmVlcnMuY29tMBiBFi5zaWVtZW5zLWxv Z2lzdGljcy5jb20wF4EVLnNpZW1lbnMtc3RpZnR1bmcub3JnMA2BCy5zeWthdGVj LmRlMBOBES50cmVuY2gtZ3JvdXAuY29tMBCBDi52ZXJ0ZWlsZXIuY29tMBCBDi52 bXpiZXJsaW4uY29tMA+BDS53ZWlzc2dtYmguZGUwFIESLndpbmVyZ3ktZ3JvdXAu Y29tMBeBFWFkdmFuY2VkLWFpcmZvaWxzLmNvbTAVgRNhaXJwb3J0bXVuaWNobHMu Y29tMBeBFWVkdWNhdGlvbi1zaWVtZW5zLmNvbTAIgQZldG0uYXQwDYELZXZvc29m dC5jb20wG4EZZmFzdC10cmFja2RpYWdub3N0aWNzLmNvbTANgQtmbGVuZGVyLmNv bTATgRFmbGVuZGVyLWdyYWZmLmNvbTANgQtoc3Brb2Vsbi5kZTARgQ9odWJhY29u dHJvbC5jb20wE4ERa2Fjby1uZXdlbmVyZ3kuZGUwDYELbG1zaW50bC5jb20wCYEH b2V6LmNvbTAOgQxvbW5ldHJpYy5jb20wCYEHc2JrLm9yZzANgQtzaWVtZW5zLmNv bTAMgQpzaWVtZW5zLmV1MBSBEnNpZW1lbnMtZW5lcmd5LmNvbTARgQ9zaWVtZW5z Z292dC5jb20wGIEWc2llbWVucy1oZWFsdGhjYXJlLmNvbTAagRhzaWVtZW5zLWhl YWx0aGluZWVycy5jb20wF4EVc2llbWVucy1sb2dpc3RpY3MuY29tMBaBFHNpZW1l bnMtc3RpZnR1bmcub3JnMAyBCnN5a2F0ZWMuZGUwEoEQdHJlbmNoLWdyb3VwLmNv bTAPgQ12ZXJ0ZWlsZXIuY29tMA+BDXZtemJlcmxpbi5jb20wDoEMd2Vpc3NnbWJo LmRlMBOBEXdpbmVyZ3ktZ3JvdXAuY29tMIICZAYDVR0gBIICWzCCAlcwRgYMKwYB BAG+WAADjggAMDYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cucXVvdmFkaXNnbG9i YWwuY29tL3JlcG9zaXRvcnkwNQYIKwYBBAGhaQcwKTAnBggrBgEFBQcCARYbaHR0 cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kvMDoGDSsGAQQBoWkHAgIDAgEwKTAnBggr BgEFBQcCARYbaHR0cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kvMDoGDSsGAQQBoWkH AgIDAQEwKTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kv MDoGDSsGAQQBoWkHAgIEAQEwKTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5zaWVt ZW5zLmNvbS9wa2kvMDoGDSsGAQQBoWkHAgIDAgIwKTAnBggrBgEFBQcCARYbaHR0 cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kvMDoGDSsGAQQBoWkHAgIDAQIwKTAnBggr BgEFBQcCARYbaHR0cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kvMDoGDSsGAQQBoWkH AgIEAQIwKTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5zaWVtZW5zLmNvbS9wa2kv MDcGCisGAQQBoWkHAgUwKTAnBggrBgEFBQcCARYbaHR0cDovL3d3dy5zaWVtZW5z LmNvbS9wa2kvMDUGCCsGAQQBoWljMCkwJwYIKwYBBQUHAgEWG2h0dHA6Ly93d3cu c2llbWVucy5jb20vcGtpLzApBgNVHSUEIjAgBggrBgEFBQcDAgYIKwYBBQUHAwQG CisGAQQBgjcUAgIwPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL2NybC5xdW92YWRp c2dsb2JhbC5jb20vcXZlbnRjYTNnMy5jcmwwHQYDVR0OBBYEFNbv+6fnKrHAXUxo hcItj1ZmfoLuMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAAY3A /NWZXtvb9ppNZIVwfHwhpmaFOulcpe+ntuO5GDqdEejp8bIEfuN4uJEGEYfg1Bml D3oZebPL9fLIwxurhZvSuQG6+7Kptqe0Oynyj/FmB49k2CZyiimZPJO44jN1u6l7 BpB4jxah+AfK4ZUU8ADDHIIOZsfcrSDz5dQhIQ2xZ4FsTIiPxRy8NZqRuoTlcYGn 8OgFikzJp4p4e6MkFoplijk56HrNIeKTwXz1Zd3BLe14bLwYliHl+rLvjVP1OUfe FENzFR6S6eUYl/6wbPitl6i9E5KTAiy8QWXWoGLXeTz1CDpBFVDCdnS5yUwHkQko RjiyW2E58QGbJWBxelOZXhePDNjDHXelXAkFPRL95Cx8UWrxsRSmShOyO+0ennq1 LnNudVGzmzVpDGRZhny6gdXJELHqmsvD5eNbwdNhgSrEHD3ZnXjyIQABCx8biyYT lY+LaUBHjQR8ptpYn+GndwJYCuL71oGyjH99bTAF+qrWG2SX6oCl/qny2v13mWWq GrcRuGyKZbUX4wLpkLL9bp6Xz+NTNNU3mdEq/tbmeQa1CGOAonzZn2O0+6voUWlY G2CdnEtpUoCihoQeEEcvyHJEK9xBNY3B2tvrGGmYEFVFHFPhFvDJeexv4zjZXZqf AQCG1dHvwaJ8gMm1YyPP/9AOoDRvEjW8Kd8xLjswggd8MIIFZKADAgECAhBouqBu wXPQxkYiaD4RUJU1MA0GCSqGSIb3DQEBCwUAMIGfMQswCQYDVQQGEwJERTEPMA0G A1UECAwGQmF5ZXJuMREwDwYDVQQHDAhNdWVuY2hlbjEQMA4GA1UECgwHU2llbWVu czERMA8GA1UEBRMIWlpaWlpaQjIxHTAbBgNVBAsMFFNpZW1lbnMgVHJ1c3QgQ2Vu dGVyMSgwJgYDVQQDDB9TaWVtZW5zIElzc3VpbmcgQ0EgRUUgQXV0aCAyMDIwMB4X DTIwMTIwMzEzMDMxNVoXDTIzMTIwMzEzMDMxNVowYTERMA8GA1UEBRMIWjAwM0JQ TVIxEDAOBgNVBCoTB0hlbm5pbmcxDzANBgNVBAQTBlNjaGlsZDEQMA4GA1UEChMH U2llbWVuczEXMBUGA1UEAxMOU2NoaWxkIEhlbm5pbmcwggEiMA0GCSqGSIb3DQEB AQUAA4IBDwAwggEKAoIBAQCwcCQL8TxiS0jEt6tU9OLV+IU9bix4uV5HQmgWIlLX mwkU5nfOpuFdQ6dwC7QPmKdYLzotcSE6sSama+G1xaqri7l5ZyFeEpbu9kFMwlQt lCaIdLLw70FoBu7PGFxrQj6LMnUE7Xz6E2cLum5iUX4+kB9AAcBMoQB7UQoS2QZb wO3GnPitvvVoASnyPvmheD0ksyjUNCXG4wWR+aMwPfEjof5zJDfvxbr8SjPIYta6 vwXfmF2qefoVutma9n48/DQ4qOolsq7nuV1qc01wmpMnoTJPb/igPx2O79acwXw/ +R3aJiBR3Vav74p+3GmnF97tpPCyOdqYO81IYgNhgp6ZAgMBAAGjggLvMIIC6zAp BgNVHSUEIjAgBggrBgEFBQcDAgYIKwYBBQUHAwQGCisGAQQBgjcUAgIwHwYDVR0j BBgwFoAU1u/7p+cqscBdTGiFwi2PVmZ+gu4wgfcGCCsGAQUFBwEBBIHqMIHnMDIG CCsGAQUFBzAChiZodHRwOi8vYWguc2llbWVucy5jb20vcGtpP1paWlpaWkIyLmNy dDBBBggrBgEFBQcwAoY1bGRhcDovL2FsLnNpZW1lbnMubmV0L0NOPVpaWlpaWkIy LEw9UEtJP2NBQ2VydGlmaWNhdGUwSQYIKwYBBQUHMAKGPWxkYXA6Ly9hbC5zaWVt ZW5zLmNvbS9DTj1aWlpaWlpCMixvPVRydXN0Y2VudGVyP2NBQ2VydGlmaWNhdGUw IwYIKwYBBQUHMAGGF2h0dHA6Ly9vY3NwLnNpZW1lbnMuY29tMEYGA1UdIAQ/MD0w OwYNKwYBBAGhaQcCAgMBATAqMCgGCCsGAQUFBwIBFhxodHRwczovL3d3dy5zaWVt ZW5zLmNvbS9wa2kvMIHKBgNVHR8EgcIwgb8wgbyggbmggbaGJmh0dHA6Ly9jaC5z aWVtZW5zLmNvbS9wa2k/WlpaWlpaQjIuY3JshkFsZGFwOi8vY2wuc2llbWVucy5u ZXQvQ049WlpaWlpaQjIsTD1QS0k/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdIZJ bGRhcDovL2NsLnNpZW1lbnMuY29tL0NOPVpaWlpaWkIyLG89VHJ1c3RjZW50ZXI/ Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDAdBgNVHQ4EFgQUGhWTfvRx7KywXS2u ZYX5tdnNgFQwDgYDVR0PAQH/BAQDAgeAMFEGA1UdEQRKMEigKgYKKwYBBAGCNxQC A6AcDBpoZW5uaW5nLnNjaGlsZEBzaWVtZW5zLmNvbYEaaGVubmluZy5zY2hpbGRA c2llbWVucy5jb20wDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAgEAmBDJ gjJ9ugeCfpPdE2q68ZqCZocUkm3wkFwvl2Z94B6kiV6akpxwDNjgV30VhNbIZHvg I9gCFBuwQM8biji1mOzTmY8rOC8dbfiN51CgoegiaETiMP8v6V3WRkB3xJ1NzoS4 UynN3ZVD6xmgP8GCgdzAkQo/aseMEJQrWO47rzaLkmzkpgygg3C5zTguS3eS9it0 aW6e1GHbTDzyGPRXKQT5EJYwCs8yrWIW2F6k7/pZE1q/uJHfq3d01Cd19rcNRCN3 WgGi6asTY3+ZJIDOApUbEqcHdzsDsbkRTD2/LO9xEWztqIefOBLxROyIfRZnaT2Q S3/O+tTEjV4lvsy60HcqILZRpB6x5FMyBk84fiqWbumN4h8xZqSAgsAfJkcDa+Qv K65oFBIZ58azzdPfwIUfoRI6YnkbRpXvu3juHHyjaHvs/l8M3kvC6xzfZZj2rys+ YhLctsYlEAvZB9ItEnoHsRxVVgBp67DPMXuOylj1jz+8MgZ7UuoyRTFuQX6BT+Of 0QyxtQVFda7oF49P1AwrBfchtEQuXdvhsNJWWat9Xh4308NGeB/xVqWSscljivBq DBaNQYSwCqeKZgf7XxSUcp2zlQWybdtbwdWbQ5blonirTcJg3jemRyHBg3gARyn0 9/5Zk+2CxI54bWbq2zNZAbEivYyDwUnvRiyO3dgxggJ2MIICcgIBATCBtDCBnzEL MAkGA1UEBhMCREUxDzANBgNVBAgMBkJheWVybjERMA8GA1UEBwwITXVlbmNoZW4x EDAOBgNVBAoMB1NpZW1lbnMxETAPBgNVBAUTCFpaWlpaWkIyMR0wGwYDVQQLDBRT aWVtZW5zIFRydXN0IENlbnRlcjEoMCYGA1UEAwwfU2llbWVucyBJc3N1aW5nIENB IEVFIEF1dGggMjAyMAIQaLqgbsFz0MZGImg+EVCVNTANBglghkgBZQMEAgEFAKCB kzAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yMTAy MTIxODQ3MjdaMCgGCSqGSIb3DQEJDzEbMBkwCwYJYIZIAWUDBAECMAoGCCqGSIb3 DQMHMC8GCSqGSIb3DQEJBDEiBCAqn3c8ypAIrQLEgh6RZLlQsZxAsTavV9cHZk4N udXu2jANBgkqhkiG9w0BAQEFAASCAQA60R4W3dfQHsHD/Ji6a2DIdsmj7PkWlBKz 4A6g4VwIxx4al7pri4sBJmHx5EgwU6qw/3k+WwzjSWjPwxT+8sbsxwMJLG1kJu/N xYV+FAhSOHcrxAcuNboIQMD888gdRU4Vdcu2A+Qc57xVMmxYt+kxKhZdO/+cBOPJ cJzbCGPyOPSyb+hRN05JZsizuPjJwLvgpsb+RIbzBC3Mg98kNz5W+2RQvDFfCQKD 6odX5uaE0fq91ErCxvHZBrGMNxWDzbFZU7G/2flrIBn5LT2BzIocrB4RanH32tMk r//AkEvLbxKq6u4uKWnb8OyBg8tQFdWqQCr+w161s4m93YfgIWRaAAAAAAAA --Sig_/utrH6LIIQA41T3JBL9S0A8R--