From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id E0DAA41E04 for ; Tue, 7 Mar 2023 17:07:49 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D9ED5410EF; Tue, 7 Mar 2023 17:07:49 +0100 (CET) Received: from NAM12-MW2-obe.outbound.protection.outlook.com (mail-mw2nam12on2082.outbound.protection.outlook.com [40.107.244.82]) by mails.dpdk.org (Postfix) with ESMTP id BCE23410DF for ; Tue, 7 Mar 2023 17:07:47 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=HXHiJsN2rCmdUKyRIamnX/DNQFGICkXmjxa6Lsffnd08fYl1vkErdVbxyJ2Al2PsOiN5gaN5ituJKerOT9hVEBSvJcxb0AuYNYHzbGANTFr2nOjf1FUmUg2mFwnL9xCpjW1OXZCudyZUdZaRrF2JJWTrfJcJiSEYwzjJX5MvEwtyz7i/tUbOH/2N4zHNjzTcHDwxIfNku+U4Kixw/iCrJxBGtrEi2TYIZjn3S13R2LyVPnqkyuU1cKjGupsvT7MESWIYrdNuSDBNGPclMgnqJJf+JkwL+VwVjoBRkvPAm55zvxzmUjUvRymX3fX8gNwZtWKeyY+rReSSg0eGJ4t/TA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=VJ/AXOKoToDc8CWydxVQ4UjAvNc/Tdfi5gLOIDLXRDY=; b=kS9W8PdZ5NcYLYVUHHweeAXOcp4AcRKEwTpL6RqNyeianTw2XxujBEh/1v2o14vCEJa8Zgq2Qn5R2rz/3xoPRIIWLT0RrX1wHiMcaIszfInSnLlL+X2aEQ5G3qb4EBSgrfAEzQ06nk08W0jD1dlnsRLDmM/lmd2Rb9Kp7Umpz5wyUKTm0io43TW/aGDT59Q1xsyj/6FW1sttoHNk5sBQATo/Ay52a20vQYWT2LvvcArKAv4vINNq4g9sGSXIXYx8jWc//dJdy/7qRx4RrFwYuF/t9NFNcTCXq5XPNIA8/yfRBsCDni46OVDOHHxPF3nRbiSyJ3QmORwEKPe4/R3phA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=VJ/AXOKoToDc8CWydxVQ4UjAvNc/Tdfi5gLOIDLXRDY=; b=nz3ObIaA8MXC1tKkOqStDVmAr3gQb5/9qQesP1QBe2f1bPFQY2MJb70+UHdLa/bxcMmKzYniBt2f8qYiMt4Hry0dfdwP69UROPMKp88JKPkyJnfy1uUgKJ3ySlq1bz3uFbXBQDZFDMxBtI7H26uh9VyRWUoau5pCSrsgxGBse5f+ZqoghKybF1V8rgmYNRvXvnvKH5yBMwEtnhe+NQYHAYi7zhxz9Ubg4n385wQ0s9ODJFL6TuHVi8hleHk8zbq2usbBdC4a7g3c1vjn6JdMyqepL4cdQr2+Mp7Hus7HkfB0SeRjip9YwFJfSUh5yBjo6Bs4GsaDMrCCgCF9Agj7GQ== Received: from DM6PR12MB3753.namprd12.prod.outlook.com (2603:10b6:5:1c7::18) by SN7PR12MB7420.namprd12.prod.outlook.com (2603:10b6:806:2a7::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.28; Tue, 7 Mar 2023 16:07:42 +0000 Received: from DM6PR12MB3753.namprd12.prod.outlook.com ([fe80::2a72:9d50:8f0d:a925]) by DM6PR12MB3753.namprd12.prod.outlook.com ([fe80::2a72:9d50:8f0d:a925%5]) with mapi id 15.20.6156.029; Tue, 7 Mar 2023 16:07:42 +0000 Content-Type: multipart/mixed; boundary="_000_DM6PR12MB3753701CC9692D1FB31D2FE7DFB79DM6PR12MB3753namp_" From: Slava Ovsiienko To: Honnappa Nagarahalli , "dev@dpdk.org" , Ruifeng Wang , Matan Azrad , Shahaf Shuler CC: nd , Matan Azrad , "stable@dpdk.org" , nd Subject: RE: [PATCH v2] net/mlx5: use just sufficient barrier for Arm platforms Thread-Topic: [PATCH v2] net/mlx5: use just sufficient barrier for Arm platforms Thread-Index: AQHYvKszimfJB26pA0CYyNNBmH2tOq3y/CQAgADz1wCAS76WAICw8Nwg Date: Tue, 7 Mar 2023 16:07:42 +0000 Message-ID: References: <20210606164948.35997-1-honnappa.nagarahalli@arm.com> <20220830200038.1694160-1-honnappa.nagarahalli@arm.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR12MB3753:EE_|SN7PR12MB7420:EE_ x-ms-office365-filtering-correlation-id: 4b28bedb-8fd3-4b11-8b33-08db1f26150d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: TzNj8SRUfoGjR4LgmXXd0gvYqReSIVWMdVEZBEtdPgjBqYayfJgqfF5kpWi4djFpsjcxXVkSk2whb6yBHNn0hYIOJEN+z7voceWt8EXbzlwTIfj2twVu1UjE9KHa8CKbyb1TV+GR6VIEk0S6lVi0JF1qWJn+KAPlpQywlsWkeqtQMtBlPjit44/xxbzNEbprYUXQ6n0flHoFSEOWnOiyk85dXAkVisXoxU94DxmQxo9cJSS7Na1ekiu+j7nmQbPPMACYLfrAVM6omnX8glJdqqApEIF5WE3S53KbTBe7Y3RhpExMKjVmWRRCApO4T/1pt8j3jEUdkyNOLZp2nkfHbeyZuIW+DooTTzZUVQ1RsjAHYwgzbUgLQmAYLWbQYG1AFeX330+VenAU3CRrZbtJmqd0+BeEpr88WwsdGlVNXrSYoo1+kWJY+QPZzYNNDOYkzYwXab6KPhaMrKEj2QCaOqJuCta1eC4HfrSzaVDEtaiZezper2se1y03sFvnVEiKBvjfWWbHFgLeL3ys/JV09C6Q1Hcmr+oCilgplwVdfboUtH5nFNUGVnFBcbWpTe1UHM/6ROWJ01tEP8TsTJxB8QTQK8Ky8lNpRzGD18ttTVsBHlkfMJwKb5w5uXEFV6F8x2+09nvCFiBPuguxmxeIokEIjh4hA6UCz7Sy27xVCXxByQzUhoMuqROPOaNFeEgYXW61dmqRZbF9Z7CTXIAYpkFcMdI/D8e5Asg+EbmEVboNEv82bf0+RlvFn/317rItqeI6r4fWYnmLfvwSOSR6oxjpdSB7rYq3Wj6p6V10+0A= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM6PR12MB3753.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230025)(4636009)(366004)(346002)(376002)(396003)(39860400002)(136003)(451199018)(38070700005)(86362001)(122000001)(38100700002)(33656002)(4326008)(7696005)(2906002)(6506007)(5660300002)(76116006)(8936002)(66446008)(64756008)(66946007)(66476007)(8676002)(66556008)(41300700001)(52536014)(9686003)(26005)(53546011)(186003)(83380400001)(316002)(478600001)(54906003)(55016003)(966005)(6636002)(71200400001)(110136005); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?koi8-r?Q?DUDe1cfeGmVxXx5IRYyEtC0CS++dW1MUKhkBpsBZVPeQRG5lkIjQm90gc80Q55?= =?koi8-r?Q?/AHlIkmCg+FTLP03CfHrm9IRvSmvKvZiTgV0PytIB2w3PldkQ2Z87YZWFxys89?= =?koi8-r?Q?aQTfWjKlliaVR0yMVSaz9b985eWqbVVtPsZSG6bpzY8Tq7HQddfGnXFtPI5JwK?= =?koi8-r?Q?j8bcKkBqaVezjppVIV+ynyz+0ZtfWJXgbyBLqJNeisGgAylB9Kj2V9hIaB+Xtr?= =?koi8-r?Q?GASJZ7pA1ILxQYIa4C7nakSbJJICmxXj0CXygX7XVthuifEo+ceYfia/81Et8x?= =?koi8-r?Q?WZbEtTvEm9dBoNkxbBq8uYYJBSJCSoKv39I+fSFPn5dSD++RFaE9WbWYW1vk6E?= =?koi8-r?Q?k8+d9y3K07SFyVkKWsP2tP539sPqujonuMapSMtWquV2nJWqcqZ6KnJQ4zr7bN?= =?koi8-r?Q?yv0FIGT2KKND9xcb+vv4DCNl/wP5fqxs/7uNYIlIRjBalF+gHdJY2QvZ1y/Fgo?= =?koi8-r?Q?vKvpTwjSpoCvfFm/BGctsO0+ea+Dgq4IL+WV67srhTuI6yBSwz0byGkUGXJzwo?= =?koi8-r?Q?wNPqWFW19AXsCdrFCjcdZVAM6JGpsNd58dljHz7SgHBr8YsaU9CjCDX7N8KpdO?= =?koi8-r?Q?QkCc6LITcx7BHP+vU3RihZX9e37rRba7Xqba/TVZZJclxrkhJPB7lf2wwA+LMk?= =?koi8-r?Q?wbhK99OSWJCEUFqr1N5FKG5IvIMHEC8jrn9qGcz0tWPoVwycfw8xuAOlTBi7y8?= =?koi8-r?Q?o5F3WbUat1leX2fKUHnWFENLUY8/Cx8ZirV8C0f3iW0XnZjSfgEkZJnR11XLUm?= =?koi8-r?Q?eFVGu8h5vVTXQcf1QXKPXu/AUV3l7CDP3bzAzhDTDr7TMeANgNRl3+ENQ0QzFF?= =?koi8-r?Q?v9GgFxW/mHD39S3/uyymbb7W6Ob4e8UdkX7RvfmjHzGAzT/EX+zpd0XTs7dZ7R?= =?koi8-r?Q?WwrYPd/iJkl4u/dwdbHZkoDfOuHdHA5eYju+mK6WOHHomxAsfHjROqK/m1g6y+?= =?koi8-r?Q?wc1hgOtEsHvr9WxyH9PC3kANHnj5JQSZAJkbeA18pGZTmiSDiH/tiqYHPgv0qa?= =?koi8-r?Q?Mb6JZDHEGfQmKcykRFvugXUfh1ncyZgC676QdkhSPqw2jNOcFwukxJWG1rpp2D?= =?koi8-r?Q?OQE4zbWXv8M2Vk4qeHUT3bM1BwhlgGmxgQDW4vrng0L0kE/IgNKdFQ9FJjCkgf?= =?koi8-r?Q?shxkvfBtSsTF5g9o4PD111CIsFP0/w3ASiW514cqqrfrOQafpqIuREuPJpmFLT?= =?koi8-r?Q?d9oXKlZx0X/hTugqpkA6KILHdD/XcnII1hp6Nb9qxTkvr842ICEOA0M50yD7Ec?= =?koi8-r?Q?OnVIlbD5CgnW1i94XNh1GTPFrwpiWTIuznq5wKvL1tBaR+ePk5eqx0w/WWtdYp?= =?koi8-r?Q?M8VS35vjRzfdzfoy2cp7GqvvyTKwBy8zE5TpOk5+/YjFv8ime7x8rEIBWIXJR/?= =?koi8-r?Q?4zCwfKrZn7LKEyq6E5it/k9CsHHYX4FBYBLyd6IcWtJYv00XLIe8Ja94H/BH7f?= =?koi8-r?Q?zt/J+hsq+9cFYCu4KQNktIS6jDOb2LCvkqamzDuJ7Yxcb/Ha0NvkGXsXLfNlVo?= =?koi8-r?Q?ph7DdfXlyWFIzdPaQ2ZQW6fHU2Y+AWFx7vHu9roTw72HZrXCvM?= MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR12MB3753.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4b28bedb-8fd3-4b11-8b33-08db1f26150d X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Mar 2023 16:07:42.5172 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: pfGotRLi3eeq1iRoOGHyF67h9jEjijfrnpmiB/TxDjrCqGDIbChVGi5AACvUTH7i7wUeYc+rwEycqfAuU4DUug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7420 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org --_000_DM6PR12MB3753701CC9692D1FB31D2FE7DFB79DM6PR12MB3753namp_ Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: quoted-printable Hi, Honnappa I'm sorry for delay - I had to play with patch, to compile this one with as= sembly listings and check what code is actually generated on x86/ARM. On x86 there is no difference at all (with and w/o patch), so no objection = from my side. On ARM we have: w/o patch: dmb oshld with patch: dmb ishld What is the purpose of the barrier - to not allow the CQE read access reord= ering. On x86, "compiler barrier" is quite enough (due to strong load/store orderi= ng). On ARM load/store might be reordered, AFAIU. CQE resides in the host memory and can be directly written by the NIC via P= CIe. (In my understanding it can cause core cache(s) invalidations).=20 I have a question - should we consider this as outer sharable domain? Is it safe to have a barrier for inner domain only in our case? We have updated the cqe_check() routine, sorry for this. Could you, please, update the patch and send v3? With best regards, Slava > -----Original Message----- > From: Honnappa Nagarahalli > Sent: =D7=D4=CF=D2=CE=C9=CB, 15 =CE=CF=D1=C2=D2=D1 2022 =C7. 03:46 > To: Slava Ovsiienko ; dev@dpdk.org; Ruifeng Wang > ; Matan Azrad ; Shahaf Shuler > > Cc: nd ; Matan Azrad ; stable@dpdk.org; > nd > Subject: RE: [PATCH v2] net/mlx5: use just sufficient barrier for Arm pla= tforms >=20 > >=20 > > > > > > > > Hi, Honnappa > > Hi Slava, thanks for the feedback. > > > > > > > > We discussed the barrier here: > > > http://patches.dpdk.org/project/dpdk/patch/20210606164948.35997-1- > > > honnappa.nagarahalli@arm.com/ > > Yes, I have changed the patch according to the discussion. i.e. > > barrier is needed, but different (inner sharable domain) barrier is req= uired. > > > > > > > > (BTW, it is good practice to keep the reference to previous patch > > > versions below Commit Message of the next ones). > > > > > > This barrier is not about compiler ordering, it is about external HW > > > agent memory action completions. > > > So, I'm not sure the rte_atomic_thread_fence() is safe for x86 - > > > patch impacts > > > x86 as well. > > The earlier barrier 'rte_io_rmb()', resolves to a compiler barrier on x= 86 [1]. > > The rte_atomic_thread_fence(__ATOMIC_ACQUIRE) on x86 also acts as a > > compiler barrier. So, there is no change for x86. > > > > > > [1] > > https://github.com/DPDK/dpdk/blob/main/lib/eal/x86/include/rte_atomic. > > h# > > L80 > Hi Slava, any more comments on this? >=20 > > > > > > > > With best regards, > > > Slava > > > > > > > -----Original Message----- > > > > From: Honnappa Nagarahalli > > > > Sent: Tuesday, August 30, 2022 23:01 > > > > To: dev@dpdk.org; honnappa.nagarahalli@arm.com; > > > ruifeng.wang@arm.com; > > > > Matan Azrad ; Shahaf Shuler > > ; > > > > Slava Ovsiienko > > > > Cc: nd@arm.com; Matan Azrad ; stable@dpdk.org > > > > Subject: [PATCH v2] net/mlx5: use just sufficient barrier for Arm > > > > platforms > > > > > > > > cqe->op_own indicates if the CQE is owned by the NIC. The rest of > > > > the fields in CQE should be read only after op_own is read. On Arm > > > > platforms using "dmb ishld" is sufficient to enforce this. > > > > > > > > Fixes: 88c0733535d6 ("net/mlx5: extend Rx completion with error > > > > handling") > > > > Cc: matan@mellanox.com > > > > Cc: stable@dpdk.org > > > > > > > > Signed-off-by: Honnappa Nagarahalli > > > > Reviewed-by: Ruifeng Wang > > > > --- > > > > drivers/common/mlx5/mlx5_common.h | 6 +++++- > > > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > > > > > diff --git a/drivers/common/mlx5/mlx5_common.h > > > > b/drivers/common/mlx5/mlx5_common.h > > > > index 5028a05b49..ac2e85b15f 100644 > > > > --- a/drivers/common/mlx5/mlx5_common.h > > > > +++ b/drivers/common/mlx5/mlx5_common.h > > > > @@ -195,7 +195,11 @@ check_cqe(volatile struct mlx5_cqe *cqe, > > > > const uint16_t cqes_n, > > > > > > > > if (unlikely((op_owner !=3D (!!(idx))) || (op_code =3D=3D > > > > MLX5_CQE_INVALID))) > > > > return MLX5_CQE_STATUS_HW_OWN; > > > > - rte_io_rmb(); > > > > + /* Prevent speculative reading of other fields in CQE until > > > > + * CQE is valid. > > > > + */ > > > > + rte_atomic_thread_fence(__ATOMIC_ACQUIRE); > > > > + > > > > if (unlikely(op_code =3D=3D MLX5_CQE_RESP_ERR || > > > > op_code =3D=3D MLX5_CQE_REQ_ERR)) > > > > return MLX5_CQE_STATUS_ERR; > > > > -- > > > > 2.17.1 --_000_DM6PR12MB3753701CC9692D1FB31D2FE7DFB79DM6PR12MB3753namp_ Content-Disposition: attachment; filename="winmail.dat" Content-Transfer-Encoding: base64 Content-Type: application/ms-tnef; name="winmail.dat" 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 Ky6iKz/+MQwBVNGdNT6wbgDhsGEg49VAUEIoKylt0XQRuBT8KC0bzSotooLhEdIRVwD/lvAsXy1t Ki3TkDWPNp8qPA8Hka9QMPBvwDhhMDUSYphQLi6eUDJlOJ88YG3w87CX4JfwNDQqL/9SQDVvOZ83 ji6hOH9AD0EfBEBAUjAxOTUsN/sukEXCMTAARYFcM1wgBuD+KHMgBIEwMlHgKNCW0Bzw8y2TBuAg KgbR3kzLklMgP6MAdRBr0Jgwu1Bb4nNfNm5JTStOXIBhCCIodc1Y0Gmp4FjgKCgHJFghJCE9oxAh IaMgZHh+KU/gLlAuYE6innBTUCBkPT3wfkxYLbAMsV+ASU5WQUxJRE/h70yPgGFNg6pwdFlQt7BR 90RTVAAgVVNftaBf+E9XTvBuZvBUc8Kp8G7CK02DLyogUKtRouL8c3CWwA0gR6GdAQ2SnrL/rtGy kJPhDA1OEEexWL9Nkv9I8AiWZEBhsKXKXlubullo/8cfyC/JNVivUy9Nn1BoUeiBg/BTUF9FUlJQ Ed9mf1Q2bANon2mjUWoSUw8fVB9VLmohVo/ivjIuMc43c4B1xXXFfX12EHTwAB8AQgABAAAAIAAA AFMAbABhAHYAYQAgAE8AdgBzAGkAaQBlAG4AawBvAAAAHwBlAAEAAAAuAAAAdgBpAGEAYwBoAGUA cwBsAGEAdgBvAEAAbgB2AGkAZABpAGEALgBjAG8AbQAAAAAAHwBkAAEAAAAKAAAAUwBNAFQAUAAA AAAAAgFBAAEAAABwAAAAAAAAAIErH6S+oxAZnW4A3QEPVAIAAACAUwBsAGEAdgBhACAATwB2AHMA aQBpAGUAbgBrAG8AAABTAE0AVABQAAAAdgBpAGEAYwBoAGUAcwBsAGEAdgBvAEAAbgB2AGkAZABp AGEALgBjAG8AbQAAAB8AAl0BAAAALgAAAHYAaQBhAGMAaABlAHMAbABhAHYAbwBAAG4AdgBpAGQA aQBhAC4AYwBvAG0AAAAAAB8A5V8BAAAANgAAAHMAaQBwADoAdgBpAGEAYwBoAGUAcwBsAGEAdgBv AEAAbgB2AGkAZABpAGEALgBjAG8AbQAAAAAAHwAaDAEAAAAgAAAAUwBsAGEAdgBhACAATwB2AHMA aQBpAGUAbgBrAG8AAAAfAB8MAQAAAC4AAAB2AGkAYQBjAGgAZQBzAGwAYQB2AG8AQABuAHYAaQBk AGkAYQAuAGMAbwBtAAAAAAAfAB4MAQAAAAoAAABTAE0AVABQAAAAAAACARkMAQAAAHAAAAAAAAAA gSsfpL6jEBmdbgDdAQ9UAgAAAIBTAGwAYQB2AGEAIABPAHYAcwBpAGkAZQBuAGsAbwAAAFMATQBU AFAAAAB2AGkAYQBjAGgAZQBzAGwAYQB2AG8AQABuAHYAaQBkAGkAYQAuAGMAbwBtAAAAHwABXQEA AAAuAAAAdgBpAGEAYwBoAGUAcwBsAGEAdgBvAEAAbgB2AGkAZABpAGEALgBjAG8AbQAAAAAACwBA OgEAAAAfABoAAQAAABIAAABJAFAATQAuAE4AbwB0AGUAAAAAAAMA8T8JBAAACwBAOgEAAAADAP0/ 5AQAAAIBCzABAAAAEAAAAGN7hehFa+FIuw2cgaXQR90DABcAAQAAAEAAOQAA20LyDlHZAUAACDC2 n4ryDlHZAR8ANwABAAAAjgAAAFIARQA6ACAAWwBQAEEAVABDAEgAIAB2ADIAXQAgAG4AZQB0AC8A bQBsAHgANQA6ACAAdQBzAGUAIABqAHUAcwB0ACAAcwB1AGYAZgBpAGMAaQBlAG4AdAAgAGIAYQBy AHIAaQBlAHIAIABmAG8AcgAgAEEAcgBtACAAcABsAGEAdABmAG8AcgBtAHMAAAAAAB8APQABAAAA CgAAAFIARQA6ACAAAAAAAAMA3j+CUQAACwACAAEAAAALACMAAAAAAAMAJgAAAAAACwApAAAAAAAL ACsAAAAAAAMALgAAAAAAAwA2AAAAAAAfAHAAAQAAAIYAAABbAFAAQQBUAEMASAAgAHYAMgBdACAA bgBlAHQALwBtAGwAeAA1ADoAIAB1AHMAZQAgAGoAdQBzAHQAIABzAHUAZgBmAGkAYwBpAGUAbgB0 ACAAYgBhAHIAcgBpAGUAcgAgAGYAbwByACAAQQByAG0AIABwAGwAYQB0AGYAbwByAG0AcwAAAAAA AgFxAAEAAAAqAAAAAQHYvKszimfJB26pA0CYyNNBmH2tOq3y/CQAgADz1wCAS76WAICw8NwgAAAL AAYMAAAAAB8ANRABAAAAogAAADwARABNADYAUABSADEAMgBNAEIAMwA3ADUAMwA3ADAAMQBDAEMA OQA2ADkAMgBEADEARgBCADMAMQBEADIARgBFADcARABGAEIANwA5AEAARABNADYAUABSADEAMgBN AEIAMwA3ADUAMwAuAG4AYQBtAHAAcgBkADEAMgAuAHAAcgBvAGQALgBvAHUAdABsAG8AbwBrAC4A YwBvAG0APgAAAAAAHwA5EAEAAADCAgAAPAAyADAAMgAxADAANgAwADYAMQA2ADQAOQA0ADgALgAz ADUAOQA5ADcALQAxAC0AaABvAG4AbgBhAHAAcABhAC4AbgBhAGcAYQByAGEAaABhAGwAbABpAEAA YQByAG0ALgBjAG8AbQA+ACAAPAAyADAAMgAyADAAOAAzADAAMgAwADAAMAAzADgALgAxADYAOQA0 ADEANgAwAC0AMQAtAGgAbwBuAG4AYQBwAHAAYQAuAG4AYQBnAGEAcgBhAGgAYQBsAGwAaQBAAGEA cgBtAC4AYwBvAG0APgAgADwARABNADYAUABSADEAMgBNAEIAMwA3ADUAMwAxADUAMQA5ADQAOQA0 ADAAMwBCADAAOQA0AEMAMQA1ADAANgBCADMARABGADUANQA5AEAARABNADYAUABSADEAMgBNAEIA MwA3ADUAMwAuAG4AYQBtAHAAcgBkADEAMgAuAHAAcgBvAGQALgBvAHUAdABsAG8AbwBrAC4AYwBv AG0APgAgADwARABCAEEAUABSADAAOABNAEIANQA4ADEANAAwADMANwBCAEUANQBEADIAMwA4ADMA OAAwADcAMgBDADQAOAAwADkAOQA4ADUANQA5AEAARABCAEEAUABSADAAOABNAEIANQA4ADEANAAu AGUAdQByAHAAcgBkADAAOAAuAHAAcgBvAGQALgBvAHUAdABsAG8AbwBrAC4AYwBvAG0APgAgADwA RABCAEEAUABSADAAOABNAEIANQA4ADEANABCADIAOABDADYAQgBBAEQAQQAxADAARgA0ADUANQBF ADAAMQBEADgAOQA4ADAANAA5AEAARABCAEEAUABSADAAOABNAEIANQA4ADEANAAuAGUAdQByAHAA cgBkADAAOAAuAHAAcgBvAGQALgBvAHUAdABsAG8AbwBrAC4AYwBvAG0APgAAAAAAHwBCEAEAAACi AAAAPABEAEIAQQBQAFIAMAA4AE0AQgA1ADgAMQA0AEIAMgA4AEMANgBCAEEARABBADEAMABGADQA NQA1AEUAMAAxAEQAOAA5ADgAMAA0ADkAQABEAEIAQQBQAFIAMAA4AE0AQgA1ADgAMQA0AC4AZQB1 AHIAcAByAGQAMAA4AC4AcAByAG8AZAAuAG8AdQB0AGwAbwBvAGsALgBjAG8AbQA+AAAAAAADAIAQ /////wMAExIAAAAAQAAHMCtoUfIOUdkBAgEQMAEAAABGAAAAAAAAAP4NUb54wE9MtU+oIP8R+VgH ADXE/xtzkjFOtMEeElAVtYwAAAAAAQsAAG58TMEHNZZJlKxCUO/+JBYAAgl43awAAAAAAgETMAEA AAAQAAAAimfJB26pA0CYyNNBmH2tOgIBFDABAAAADAAAAPsBAADprz9GSAAAAAMAWzMBAAAAAwBa NgAAAAADAGg2DQAAAAsA+jYBAAAAHwDZPwEAAAD8AQAASABpACwAIABIAG8AbgBuAGEAcABwAGEA DQAKAA0ACgBJACcAbQAgAHMAbwByAHIAeQAgAGYAbwByACAAZABlAGwAYQB5ACAALQAgAEkAIABo AGEAZAAgAHQAbwAgAHAAbABhAHkAIAB3AGkAdABoACAAcABhAHQAYwBoACwAIAB0AG8AIABjAG8A bQBwAGkAbABlACAAdABoAGkAcwAgAG8AbgBlACAAdwBpAHQAaAAgAGEAcwBzAGUAbQBiAGwAeQAg AGwAaQBzAHQAaQBuAGcAcwANAAoAYQBuAGQAIABjAGgAZQBjAGsAIAB3AGgAYQB0ACAAYwBvAGQA ZQAgAGkAcwAgAGEAYwB0AHUAYQBsAGwAeQAgAGcAZQBuAGUAcgBhAHQAZQBkACAAbwBuACAAeAA4 ADYALwBBAFIATQAuAA0ACgANAAoATwBuACAAeAA4ADYAIAB0AGgAZQByAGUAIABpAHMAIABuAG8A IABkAGkAZgBmAGUAcgBlAG4AYwBlACAAYQB0ACAAYQBsAGwAIAAoAHcAaQB0AGgAIABhAG4AZAAg AHcALwBvACAAcABhAHQAYwBoACkALAAgAHMAbwAgAG4AbwAgAG8AYgBqAGUAYwB0AGkAbwBuACAA ZgByAG8AbQAgAG0AeQAgAHMAaQBkAGUALgAAAB8A+D8BAAAAIAAAAFMAbABhAHYAYQAgAE8AdgBz AGkAaQBlAG4AawBvAAAAHwD6PwEAAAAgAAAAUwBsAGEAdgBhACAATwB2AHMAaQBpAGUAbgBrAG8A AAAfACJAAQAAAAYAAABFAFgAAAAAAB8AI0ABAAAAAgEAAC8ATwA9AEUAWABDAEgAQQBOAEcARQBM AEEAQgBTAC8ATwBVAD0ARQBYAEMASABBAE4ARwBFACAAQQBEAE0ASQBOAEkAUwBUAFIAQQBUAEkA VgBFACAARwBSAE8AVQBQACAAKABGAFkARABJAEIATwBIAEYAMgAzAFMAUABEAEwAVAApAC8AQwBO AD0AUgBFAEMASQBQAEkARQBOAFQAUwAvAEMATgA9AEUAMgBGAEUANABBAEIAMABDADcARAAwADQA RgBFADcAQgAxADgARAAzADMARQA3ADYAOQBBADkARAA0ADcAMgAtAFMATABBAFYAQQAgAEIATwBH AEQAQQAAAAAAHwAkQAEAAAAGAAAARQBYAAAAAAAfACVAAQAAAAIBAAAvAE8APQBFAFgAQwBIAEEA TgBHAEUATABBAEIAUwAvAE8AVQA9AEUAWABDAEgAQQBOAEcARQAgAEEARABNAEkATgBJAFMAVABS AEEAVABJAFYARQAgAEcAUgBPAFUAUAAgACgARgBZAEQASQBCAE8ASABGADIAMwBTAFAARABMAFQA KQAvAEMATgA9AFIARQBDAEkAUABJAEUATgBUAFMALwBDAE4APQBFADIARgBFADQAQQBCADAAQwA3 AEQAMAA0AEYARQA3AEIAMQA4AEQAMwAzAEUANwA2ADkAQQA5AEQANAA3ADIALQBTAEwAQQBWAEEA IABCAE8ARwBEAEEAAAAAAB8AMEABAAAAIAAAAFMAbABhAHYAYQAgAE8AdgBzAGkAaQBlAG4AawBv AAAAHwAxQAEAAAAgAAAAUwBsAGEAdgBhACAATwB2AHMAaQBpAGUAbgBrAG8AAAAfADhAAQAAACAA AABTAGwAYQB2AGEAIABPAHYAcwBpAGkAZQBuAGsAbwAAAB8AOUABAAAAIAAAAFMAbABhAHYAYQAg AE8AdgBzAGkAaQBlAG4AawBvAAAAAwBZQAAAAAADAFpAAAAAAAMAN1ABAAAAAwAJWQEAAAAfAApd AQAAAC4AAAB2AGkAYQBjAGgAZQBzAGwAYQB2AG8AQABuAHYAaQBkAGkAYQAuAGMAbwBtAAAAAAAf AAtdAQAAAC4AAAB2AGkAYQBjAGgAZQBzAGwAYQB2AG8AQABuAHYAaQBkAGkAYQAuAGMAbwBtAAAA AAACARVdAQAAABIAAAACFT0IQ3NywUC32znv2czBegEAAAIBFl0BAAAAEgAAAAIVPQhDc3LBQLfb Oe/ZzMF6AQAACwAAgAggBgAAAAAAwAAAAAAAAEYAAAAAFIUAAAAAAAADAACAUONjC8yc0BG82wCA X8zOBAEAAAAkAAAASQBuAGQAZQB4AGkAbgBnAEUAcgByAG8AcgBDAG8AZABlAAAAGwAAAB8AAIBQ 42MLzJzQEbzbAIBfzM4EAQAAACoAAABJAG4AZABlAHgAaQBuAGcARQByAHIAbwByAE0AZQBzAHMA YQBnAGUAAAAAAAEAAABwAAAASQBuAGQAZQB4AGkAbgBnACAAUABlAG4AZABpAG4AZwAgAHcAaABp AGwAZQAgAEIAaQBnAEYAdQBuAG4AZQBsAFAATwBJAEkAcwBVAHAAVABvAEQAYQB0AGUAIABpAHMA IABmAGEAbABzAGUALgAAAAMAAIAIIAYAAAAAAMAAAAAAAABGAQAAADIAAABFAHgAYwBoAGEAbgBn AGUAQQBwAHAAbABpAGMAYQB0AGkAbwBuAEYAbABhAGcAcwAAAAAAIAAAAB8AAIATj/JB9IMUQaWE 7ttaawv/AQAAABYAAABDAGwAaQBlAG4AdABJAG4AZgBvAAAAAAABAAAAKgAAAEMAbABpAGUAbgB0 AD0ATQBTAEUAeABjAGgAYQBuAGcAZQBSAFAAQwAAAAAACwAAgAggBgAAAAAAwAAAAAAAAEYAAAAA BoUAAAAAAAALAACACCAGAAAAAADAAAAAAAAARgAAAAADhQAAAAAAAAMAAIAIIAYAAAAAAMAAAAAA AABGAAAAAAGFAAAAAAAAAgEAgBOP8kH0gxRBpYTu21prC/8BAAAALgAAAEgAZQBhAGQAZQByAEIA bwBkAHkARgByAGEAZwBtAGUAbgB0AEwAaQBzAHQAAAAAAAEAAABKAAAAAQAKAAAABAAAAAIAAAAU AAAAAAAAAAAAAAC7AwAAAAAAABQAAAAAAAAA1QQAAFIKAAAAAAAAFAAAAAAAAAAgCwAA/////wAA AAAAAAsAAIATj/JB9IMUQaWE7ttaawv/AQAAABwAAABIAGEAcwBRAHUAbwB0AGUAZABUAGUAeAB0 AAAAAQAAAAsAAIATj/JB9IMUQaWE7ttaawv/AQAAACgAAABJAHMAUQB1AG8AdABlAGQAVABlAHgA dABDAGgAYQBuAGcAZQBkAAAAAQAAAAIBAIATj/JB9IMUQaWE7ttaawv/AQAAAEAAAABDAG8AbgB2 AGUAcgBzAGEAdABpAG8AbgBUAHIAZQBlAFAAYQByAGUAbgB0AFIAZQBjAG8AcgBkAEsAZQB5AAAA AQAAAC4AAAAAAAAA/g1RvnjAT0y1T6gg/xH5WAEAbnxMwQc1lkmUrEJQ7/4kFgACYgN9MgAAAAAf AACAH6TrM6h6LkK+e3nhqY5UswEAAAA4AAAAQwBvAG4AdgBlAHIAcwBhAHQAaQBvAG4ASQBuAGQA ZQB4AFQAcgBhAGMAawBpAG4AZwBFAHgAAAABAAAAMAIAAEkASQA9AFsAQwBJAEQAPQAwADcAYwA5 ADYANwA4AGEALQBhADkANgBlAC0ANAAwADAAMwAtADkAOABjADgALQBkADMANAAxADkAOAA3AGQA YQBkADMAYQA7AEkARABYAEgARQBBAEQAPQAwADEARAA4AEIAQwBBAEIAMwAzADsASQBEAFgAQwBP AFUATgBUAD0ANQBdADsAUwBCAE0ASQBEAD0AMgA7AFMAMQA9ADwARABCAEEAUABSADAAOABNAEIA NQA4ADEANABCADIAOABDADYAQgBBAEQAQQAxADAARgA0ADUANQBFADAAMQBEADgAOQA4ADAANAA5 AEAARABCAEEAUABSADAAOABNAEIANQA4ADEANAAuAGUAdQByAHAAcgBkADAAOAAuAHAAcgBvAGQA LgBvAHUAdABsAG8AbwBrAC4AYwBvAG0APgA7AFIAVABQAD0ARABpAHIAZQBjAHQAQwBoAGkAbABk ADsAVABEAE4APQBNAGkAcwBtAGEAdABjAGgAOwBUAFAAPQBTAGEAbQBlADsAVABGAFIAPQBOAG8A dABGAG8AcgBrAGkAbgBnADsAVgBlAHIAcwBpAG8AbgA9AFYAZQByAHMAaQBvAG4AIAAxADUALgAy ADAAIAAoAEIAdQBpAGwAZAAgADYAMQA1ADYALgAwACkALAAgAFMAdABhAGcAZQA9AEgAMQA7AFUA UAA9AEQAMAA7AEQAUAA9ADEAMAAxAAAACwAAgFDjYwvMnNARvNsAgF/MzgQBAAAAJgAAAEkAcwBQ AGUAcgBtAGEAbgBlAG4AdABGAGEAaQBsAHUAcgBlAAAAAAAAAAAAAwAAgAggBgAAAAAAwAAAAAAA AEYAAAAAEIUAAAAAAAADAACACCAGAAAAAADAAAAAAAAARgAAAAAYhQAAAAAAAAsAAIAIIAYAAAAA AMAAAAAAAABGAAAAAA6FAAAAAAAACwAAgAggBgAAAAAAwAAAAAAAAEYAAAAAgoUAAAAAAAACAQCA CCAGAAAAAADAAAAAAAAARgEAAAA2AAAASQBuAFQAcgBhAG4AcwBpAHQATQBlAHMAcwBhAGcAZQBD AG8AcgByAGUAbABhAHQAbwByAAAAAAABAAAAEAAAAH9HrWA9NrVIll5srMcxaQkfAACACCAGAAAA AADAAAAAAAAARgAAAADYhQAAAQAAABIAAABJAFAATQAuAE4AbwB0AGUAAAAAAEAAAIAIIAYAAAAA AMAAAAAAAABGAAAAAL+FAACAdaHQDFHZAR8AAIApAwIAAAAAAMAAAAAAAABGAQAAAB4AAABJAG4A cwBwAGUAYwB0AG8AcgBBAGkAcABJAGQAAAAAAAEAAABKAAAAZQA3AGYAZQBjAGEAZgA4AC0ANQBh AGYANAAtADQANwBjAGIALQA4ADMAMAAxAC0AOQA4AGQAMQBjADkAOABkADkAYQAxADUAAAAAAAMA DTT9PwAAHwAAgIYDAgAAAAAAwAAAAAAAAEYBAAAALgAAAGEAdQB0AGgAZQBuAHQAaQBjAGEAdABp AG8AbgAtAHIAZQBzAHUAbAB0AHMAAAAAAAEAAAC4AAAAZABrAGkAbQA9AG4AbwBuAGUAIAAoAG0A ZQBzAHMAYQBnAGUAIABuAG8AdAAgAHMAaQBnAG4AZQBkACkAIABoAGUAYQBkAGUAcgAuAGQAPQBu AG8AbgBlADsAZABtAGEAcgBjAD0AbgBvAG4AZQAgAGEAYwB0AGkAbwBuAD0AbgBvAG4AZQAgAGgA ZQBhAGQAZQByAC4AZgByAG8AbQA9AG4AdgBpAGQAaQBhAC4AYwBvAG0AOwAAAB8AAICGAwIAAAAA AMAAAAAAAABGAQAAAB4AAABhAGMAYwBlAHAAdABsAGEAbgBnAHUAYQBnAGUAAAAAAAEAAAAMAAAA ZQBuAC0AVQBTAAAAHwAAgIYDAgAAAAAAwAAAAAAAAEYBAAAAIAAAAHgALQBtAHMALQBoAGEAcwAt AGEAdAB0AGEAYwBoAAAAAQAAAAIAAAAAAAAASAAAgAggBgAAAAAAwAAAAAAAAEYBAAAAIgAAAE4A ZQB0AHcAbwByAGsATQBlAHMAcwBhAGcAZQBJAGQAAAAAANu+KEvTjxFLizMI2x8mFQ0fAACAhgMC AAAAAADAAAAAAAAARgEAAAAuAAAAeAAtAG0AcwAtAHAAdQBiAGwAaQBjAHQAcgBhAGYAZgBpAGMA dAB5AHAAZQAAAAAAAQAAAAwAAABFAG0AYQBpAGwAAAAfAACAhgMCAAAAAADAAAAAAAAARgEAAAA2 AAAAeAAtAG0AcwAtAHQAcgBhAGYAZgBpAGMAdAB5AHAAZQBkAGkAYQBnAG4AbwBzAHQAaQBjAAAA AAABAAAASAAAAEQATQA2AFAAUgAxADIATQBCADMANwA1ADMAOgBFAEUAXwB8AFMATgA3AFAAUgAx ADIATQBCADcANAAyADAAOgBFAEUAXwAAAB8AAICGAwIAAAAAAMAAAAAAAABGAQAAAFAAAAB4AC0A bQBzAC0AbwBmAGYAaQBjAGUAMwA2ADUALQBmAGkAbAB0AGUAcgBpAG4AZwAtAGMAbwByAHIAZQBs AGEAdABpAG8AbgAtAGkAZAAAAAEAAABKAAAANABiADIAOABiAGUAZABiAC0AOABmAGQAMwAtADQA YgAxADEALQA4AGIAMwAzAC0AMAA4AGQAYgAxAGYAMgA2ADEANQAwAGQAAAAAAB8AAICGAwIAAAAA AMAAAAAAAABGAQAAADgAAAB4AC0AbQBzAC0AZQB4AGMAaABhAG4AZwBlAC0AcwBlAG4AZABlAHIA YQBkAGMAaABlAGMAawAAAAEAAAAEAAAAMQAAAB8AAICGAwIAAAAAAMAAAAAAAABGAQAAADoAAAB4 AC0AbQBzAC0AZQB4AGMAaABhAG4AZwBlAC0AYQBuAHQAaQBzAHAAYQBtAC0AcgBlAGwAYQB5AAAA AAABAAAABAAAADAAAAAfAACAhgMCAAAAAADAAAAAAAAARgEAAAAqAAAAeAAtAG0AaQBjAHIAbwBz AG8AZgB0AC0AYQBuAHQAaQBzAHAAYQBtAAAAAAABAAAADgAAAEIAQwBMADoAMAA7AAAAAAAfAACA hgMCAAAAAADAAAAAAAAARgEAAABEAAAAeAAtAG0AaQBjAHIAbwBzAG8AZgB0AC0AYQBuAHQAaQBz AHAAYQBtAC0AbQBlAHMAcwBhAGcAZQAtAGkAbgBmAG8AAAABAAAAWgYAAFQAegBOAGoAOABTAFIA VQBmAG8ARwBqAFIANABMAGcAbQBYAFgAZAAwAGcAdgBZAHEAUgBlAFMASQBWAFcATQBkAFYARQBa AEIARQB0AGQAUABnAGoAQgBxAFkAYQB5AGYASgBnAHEAZgBGADUAawBwAFcAaQA0AGQAagBGAHAA cwBqAGMAeABYAFYAawBTAGsAMgB3AGgAYgA2AHkAQgBIAE4AbgAwAGgAWQBJAE8ASgBFAE4AKwB6 ADcAdgBvAGMAZQBXAHQAOABFAFgAYgB6AGwAdwBUAEkAZgBqADIAdAB3AFYAdQAxAFUAagBFADkA SwBIAGEAOABDAEsAYgB5AGIAMQBUAFYAKwBHAFIANgBWAEkARQBrADAAUwA2AGwAVgBpADAASgBG ADEAcQBXAEoAbgArAEsAQQBQAGwAcABRAHkAdwBsAHMAVwBrAGUAcQB0AFEATQB0AEIAbABQAGoA aQB0ADQANAAvAHgAeABiAHoATgBFAGIAcAByAFkAVQBYAFEANgBuADAAZgBsAEgAbwBGAFMARQBP AFcAbgBPAGkAeQBrADgANQBkAFgAQQBrAFYAaQBzAFgAbwB4AFUAOQA0AEQAeABtAFEAeABvADkA YwBKAFMAUwA3AE4AYQAxAGUAawBpAHUAKwBqADcAbgBtAFEAYgBQAFAATQBBAEMAWQBMAGYAcgBB AFYATQA2AG8AbQBuAFgAOABnAGwASgBkAHEAcQBBAHAARQBJAEYANQBXAEUAMwBTADUAMwBLAGIA VABCAGUANwBZADMAUgBoAHAARQB4AE0ASwBqAFYAbQBXAFIAUgBDAEEAcABPADQAVAAvADEAcAB0 ADgAagAzAGoARQBVAGQAawB5AE4ATwBMAFoAcAAyAG4AawBmAEgAYgBlAHkAWgB1AEkAVwArAEQA bwBvAFQAVAB6AFoAVQBWAFEAMQBSAHMAagBBAEgAWQB3AGcAegBiAFUAZwBMAFEAbQBBAFkATABX AGIAUQBZAEcAMQBBAEYAZQBYADMAMwAwACsAVgBlAG4AQQBVADMAQwBSAHIAWgBiAHQASgBtAHEA ZAAwACsAQgBlAEUAcAByADgAOABXAHcAcwBkAEcAbABWAE4AWAByAFMAWQBvAG8AMQArAGsAVwBK AFkAKwBRAFAAWgB6AFkATgBOAEQATwBZAGsAegBZAHcAWABhAGIANgBLAFAAaABhAE0AcgBLAEUA agAyAFEAQwBhAE8AcQBKAHUAQwB0AGEAMQBlAEMANABIAGYAcgBTAHoAYQBWAEQARQB0AGEAaQBa AGUAegBwAGUAcgAyAHMAZQAxAHkAMAAzAHMARgB2AG4AVgBFAGkASwBCAHYAagBmAFcAVwBiAEgA RgBnAEwAZQBMADMAeQBzAC8ASgBWADAAOQBDADYAUQAxAEgAYwBtAHIAKwBvAEMAaQBsAGcAcABs AHcAVgBkAGYAYgBvAFUAdABIADUAbgBGAE4AVQBHAFYAbgBGAEIAYwBiAFcAcABUAGUAMQBVAEgA TQAvADYAUgBPAFcASgAwADEAdABFAFAAOABUAHMAVABKAHgAQgA4AFEAVABRAEsAOABLAHkAOABs AE4AcABSAHoARwBEADEAOAB0AHQAVABWAHMAQgBIAGwAawBmAE0ASgB3AEsAYgA1AHcANQB1AFgA RQBGAFYANgBGADgAeAAyACsAMAA5AG4AdgBDAEYAaQBCAFAAdQBnAHUAeABtAHgAZQBJAG8AawBF AEkAagBoADQAaABBADYAVQBDAHoANwBTAHkAMgA3AHgAVgBDAFgAeABCAHkAUQB6AFUAaABvAE0A dQBxAFIATwBQAE8AYQBOAEYAZQBFAGcAWQBYAFcANgAxAGQAbQBxAFIAWgBiAEYAOQBaADcAQwBU AFgASQBBAFkAcABrAEYAYwBNAGQASQAvAEQAOABlADUAQQBzAGcAKwBFAGIAbQBFAFYAYgBvAE4A RQB2ADgAMgBiAGYAMAArAFIAbAB2AEYAbgAvADMAMQA3AHIASQB0AHEAZQBJADYAcgA0AGYAVwBZ AG4AbQBMAGYAdgB3AFMATwBTAFIANgBvAHgAagBwAGQAUwBCADcAcgBZAHEAMwBXAGoANgBwADYA VgAxADAAKwAwAEEAPQAAAAAAHwAAgIYDAgAAAAAAwAAAAAAAAEYBAAAAOAAAAHgALQBmAG8AcgBl AGYAcgBvAG4AdAAtAGEAbgB0AGkAcwBwAGEAbQAtAHIAZQBwAG8AcgB0AAAAAQAAAFoEAABDAEkA UAA6ADIANQA1AC4AMgA1ADUALgAyADUANQAuADIANQA1ADsAQwBUAFIAWQA6ADsATABBAE4ARwA6 AGUAbgA7AFMAQwBMADoAMQA7AFMAUgBWADoAOwBJAFAAVgA6AE4ATABJADsAUwBGAFYAOgBOAFMA UABNADsASAA6AEQATQA2AFAAUgAxADIATQBCADMANwA1ADMALgBuAGEAbQBwAHIAZAAxADIALgBw AHIAbwBkAC4AbwB1AHQAbABvAG8AawAuAGMAbwBtADsAUABUAFIAOgA7AEMAQQBUADoATgBPAE4A RQA7AFMARgBTADoAKAAxADMAMgAzADAAMAAyADUAKQAoADQANgAzADYAMAAwADkAKQAoADMANgA2 ADAAMAA0ACkAKAAzADQANgAwADAAMgApACgAMwA3ADYAMAAwADIAKQAoADMAOQA2ADAAMAAzACkA KAAzADkAOAA2ADAANAAwADAAMAAwADIAKQAoADEAMwA2ADAAMAAzACkAKAA0ADUAMQAxADkAOQAw ADEAOAApACgAMwA4ADAANwAwADcAMAAwADAAMAA1ACkAKAA4ADYAMwA2ADIAMAAwADEAKQAoADEA MgAyADAAMAAwADAAMAAxACkAKAAzADgAMQAwADAANwAwADAAMAAwADIAKQAoADMAMwA2ADUANgAw ADAAMgApACgANAAzADIANgAwADAAOAApACgANwA2ADkANgAwADAANQApACgAMgA5ADAANgAwADAA MgApACgANgA1ADAANgAwADAANwApACgANQA2ADYAMAAzADAAMAAwADAAMgApACgANwA2ADEAMQA2 ADAAMAA2ACkAKAA4ADkAMwA2ADAAMAAyACkAKAA2ADYANAA0ADYAMAAwADgAKQAoADYANAA3ADUA NgAwADAAOAApACgANgA2ADkANAA2ADAAMAA3ACkAKAA2ADYANAA3ADYAMAAwADcAKQAoADgANgA3 ADYAMAAwADIAKQAoADYANgA1ADUANgAwADAAOAApACgANAAxADMAMAAwADcAMAAwADAAMAAxACkA KAA1ADIANQAzADYAMAAxADQAKQAoADkANgA4ADYAMAAwADMAKQAoADIANgAwADAANQApACgANQAz ADUANAA2ADAAMQAxACkAKAAxADgANgAwADAAMwApACgAOAAzADMAOAAwADQAMAAwADAAMAAxACkA KAAzADEANgAwADAAMgApACgANAA3ADgANgAwADAAMAAwADEAKQAoADUANAA5ADAANgAwADAAMwAp ACgANQA1ADAAMQA2ADAAMAAzACkAKAA5ADYANgAwADAANQApACgANgA2ADMANgAwADAAMgApACgA NwAxADIAMAAwADQAMAAwADAAMAAxACkAKAAxADEAMAAxADMANgAwADAANQApADsARABJAFIAOgBP AFUAVAA7AFMARgBQADoAMQAxADAAMQA7AAAAAAAfAACAhgMCAAAAAADAAAAAAAAARgEAAABcAAAA eAAtAG0AcwAtAGUAeABjAGgAYQBuAGcAZQAtAGEAbgB0AGkAcwBwAGEAbQAtAG0AZQBzAHMAYQBn AGUAZABhAHQAYQAtAGMAaAB1AG4AawBjAG8AdQBuAHQAAAABAAAABAAAADEAAAAfAACAhgMCAAAA AADAAAAAAAAARgEAAABKAAAAeAAtAG0AcwAtAGUAeABjAGgAYQBuAGcAZQAtAGEAbgB0AGkAcwBw AGEAbQAtAG0AZQBzAHMAYQBnAGUAZABhAHQAYQAtADAAAAAAAAEAAACCDAAARABVAEQAZQAxAGMA ZgBlAEcAbQBWAHgAWAB4ADUASQBSAFkAeQBFAHQAQwAwAEMAUwArACsAZABXADEATQBVAEsAaABr AEIAcABzAEIAWgBWAFAAZQBRAFIARwA1AGwAawBJAGoAUQBtADkAMABnAGMAOAAwAFEANQA1AC8A QQBIAGwASQBrAG0AQwBnACsARgBUAEwAUAAwADMAQwBmAEgAcgBtADkASQBSAHYAUwBtAHYASwB2 AFoAaQBUAGcAVgAwAFAAeQB0AEkAQgAyAHcAMwBQAGwAZABrAFEAMgBaADgANwBZAFoAVwBGAHgA eQBzADgAOQBhAFEAVABmAFcAagBLAGwAbABpAGEAVgBSADAAeQBNAFYAUwBhAHoAOQBiADkAOAA1 AGUAVwBxAGIAVgBWAHQAUABzAFoAUwBHADYAYgBwAHoAWQA4AFQAcQA3AEgAUQBkAGQAZgBHAG4A WABGAHQAUABJADUASgB3AEsAagA4AGIAYwBLAGsAQgBxAGEAVgBlAHoAagBwAHAAVgBJAFYAKwB5 AG4AeQB6ACsAMABaAHQAZgBXAEoAWABnAGIAeQBCAEwAcQBKAE4AZQBpAHMARwBnAEEAeQBsAEIA OQBLAGoAMgBWADkAaABJAGEAQgArAFgAdAByAEcAQQBTAEoAWgA3AHAAQQAxAEkATAB4AFEAWQBJ AGEANABDADcAbgBhAGsAUwBiAEoASgBJAEMAbQB4AFgAagAwAEMAWAB5AGcAWAA3AFgAVgB0AGgA dQBpAGYARQBvACsAYwBlAFkAZgBpAGEALwA4ADEARQB0ADgAeABXAFoAYgBFAHQAVAB2AEUAbQA5 AGQAQgBvAE4AawB4AGIAQgBxADgAdQBZAFkASgBCAFMASgBDAFMAbwBLAHYAMwA5AEkAKwBmAFMA RgBQAG4ANQBkAFMARAArACsAUgBGAGEARQA5AFcAYgBXAFkAVwAxAHYAawA2AEUAawA4ACsAZAA5 AHkAMwBLADAANwBTAEYAeQBWAGsASwBXAHMAUAAyAHQAUAA1ADMAOQBzAFAAcQB1AGoAbwBuAHUA TQBhAHAAUwBNAHQAVwBxAHUAVgAyAG4ASgBXAHEAYwBxAFoANgBLAG4ASgBRADQAegByADcAYgBO AHkAdgAwAEYASQBHAFQAMgBLAEsATgBEADkAeABjAGIAKwB2AHYANABEAEMATgBsAC8AdwBQADUA ZgBxAHgAcwAvADcAdQBOAFkASQBsAEkAUgBqAEIAYQBsAEYAKwBnAEgAZABKAFkAMgBRAHYAWgAx AHkALwBGAGcAbwB2AEsAdgBwAFQAdwBqAFMAcABvAEMAdgBmAEYAbQAvAEIARwBjAHQAcwBPADAA KwBlAGEAKwBEAGcAcQA0AEkATAArAFcAVgA2ADcAcwByAGgAVAB1AEkANgB5AEIAUwB3AHoAMABi AHkARwBrAFUARwBYAEoAegB3AG8AdwBOAFAAcQBXAEYAVwAxADkAQQBYAHMAQwBkAHIARgBDAGoA YwBkAFoAVgBBAE0ANgBKAEcAcABzAE4AZAA1ADgAZABsAGoASAB6ADcAUwBnAEgAQgByADgAWQBz AGEAVQA5AEMAagBDAEQAWAA3AE4AOABLAHAAZABPAFEAawBDAGMANgBMAEkAVABjAHgANwBCAEgA UAArAHYAVQAzAFIAaQBoAFoAWAA5AGUAMwA3AHIAUgBiAGEANwBYAHEAYgBhAC8AVABWAFoAWgBK AGMAbAB4AHIAawBoAEoAUABCADcAbABmADIAdwB3AEEAKwBMAE0AawB3AGIAaABLADkAOQBPAFMA VwBKAEMARQBVAEYAcQByADEATgA1AEYASwBHADUASQB2AEkATQBIAEUAQwA4AGoAcgBuADkAcQBH AGMAegAwAHQAVwBQAG8AVgB3AHkAYwBmAHcAOAB4AHUAQQBPAGwAVABCAGkANwB5ADgAbwA1AEYA MwBXAGIAVQBhAHQAMQBsAGUAWAAyAGYASwBVAEgAbgBXAEYARQBOAEwAVQBZADgALwBDAHgAOABa AGkAcgBWADgAQwAwAGYAMwBpAFcAMABYAG4AWgBqAFMAZgBnAEUAawBaAEoAbgBSADEAMQBYAEwA VQBtAGUARgBWAEcAdQA4AGgANQB2AFYAVABYAFEAYwBmADEAUQBYAEsAUABYAHUALwBBAFUAVgAz AGwANwBDAEQAUAAzAGIAegBBAHoAaABEAFQARAByADcAVABNAGUAQQBOAGcATgBSAGwAMwArAEUA TgBRADAAUQB6AEYARgB2ADkARwBnAEYAeABXAC8AbQBIAEQAMwA5AFMAMwAvAHUAeQB5AG0AYgBi ADcAVwA2AE8AYgA0AGUAOABVAGQAawBYADcAUgB2AGYAbQBqAEgAegBHAEEAegBUAC8ARQBYACsA egBwAGQAMABYAFQAcwA3AGQAWgA3AFIAVwB3AHIAWQBQAGQALwBpAEoAawBsADQAdQAvAGQAdwBk AGIASABaAGsAbwBEAGYATwB1AEgAZABIAEEANQBlAFkAagB1ACsAbQBLADYAVwBPAEgASABvAG0A eABBAHMAZgBIAGoAUgBPAHEASwAvAG0AMQBnADYAeQArAHcAYwAxAGgAZwBPAHQARQBzAEgAdgBy ADkAVwB4AHkASAA5AFAAQwAzAGsAQQBOAEgAbgBqADUASgBRAFMAWgBBAEoAawBiAGUAQQAxADgA cABHAFoAVABtAGkAUwBEAGkASAAvAHQAaQBxAFkASABQAGcAdgAwAHEAYQBNAGIANgBKAFoARABI AEUARwBmAFEAbQBLAGMAeQBrAFIARgB2AHUAZwBYAFUAZgBoADEAbgBjAHkAWgBnAEMANgA3ADYA UQBkAGsAaABTAFAAcQB3ADIAagBOAE8AYwBGAHcAdQBrAHgASgBXAEcAMQByAHAAcAAyAEQATwBR AEUANAB6AGIAVwBYAHYAOABNADIAVgBrADQAcQBlAEgAVQBUADMAYgBNADEAQgB3AGgAbABnAEcA bQB4AGcAUQBEAFcANAB2AHIAbgBnADAATAAwAGsARQAvAEkAZwBOAEsAZABGAFEAOQBGAEoAagBD AGsAZwBmAHMAaAB4AGsAdgBmAEIAdABTAHMAVABGADUAZwA5AG8ANABQAEQAMQAxADEAQwBJAHMA RgBQADAALwB3ADMAQQBTAGkAVwA1ADEANABjAHEAcQByAGYAcgBPAFEAYQBmAHAAcQBJAHUAUgBF AHUAUABKAHAAbQBGAEwAVABkADkAbwBYAEsAbABaAHgAMABYAC8AaABUAHUAZwBxAHAAawBBADYA SwBJAEwASABkAEQALwBYAGMAbgBJAEkAMQBoAHAANgBOAGIAOQBxAHgAVABrAHYAcgA4ADQAMgBJ AEMARQBPAEEAMABNADUAMAB5AEQANwBFAGMATwBuAFYASQBsAGIARAA1AEMAZwBuAFcAMQBpADkA NABYAE4AaAAxAEcAVABQAEYAcgB3AHAAaQBXAFQASQB1AHoAbgBxADUAdwBLAHYATAAxAHQAQgBh AFIAKwBlAFAAawA1AGUAcQB4ADAAdwAvAFcAVwB0AGQAWQBwAE0AOABWAFMAMwA1AHYAagBSAHoA ZgBkAHoAZgBvAHkAMgBjAHAANwBHAHEAdgB2AHkAVABLAHcAQgB5ADgAegBFADUAVABwAE8AawA1 ACsALwBZAGoARgB2ADgAaQBtAGUANwB4ADgAcgBFAEkAQgBXAEkAWABKAFIALwA0AHoAQwB3AGYA SwByAFoAbgA3AEwASwBFAHkAcQA2AEUANQBpAHQALwBrADkAQwBzAEgASABZAFgANABGAEIAWQBC AEwAeQBkADYASQBjAFcAdABKAFkAdgAwADAAWABMAEkAZQA4AEoAYQA5ADQASAAvAEIASAA3AGYA egB0AC8ASgArAGgAcwBxACsAOQBjAEYAWQBDAHUANABLAFEATgBrAHQASQBTADYAagBEAE8AYgAy AEwAQwB2AGsAcQBhAG0AegBEAHUASgA3AFkAeABjAGIALwBIAGEAMABOAHYAawBHAFgAcwBYAEwA ZgBOAGwAVgBvAHAAaAA3AEQAZABmAFgAbAB5AFcARgBJAHoAZABQAGEAUQAyAFoAUQBXADYAZgBI AFUAMgBZACsAQQBXAEYAeAA3AHYASAB1ADkAcgBvAFQAdwA3ADIASABaAHIAWABDAHYATQAAAAAA J8I= --_000_DM6PR12MB3753701CC9692D1FB31D2FE7DFB79DM6PR12MB3753namp_--