From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 6223BC433E6 for ; Sat, 13 Mar 2021 13:59:17 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id B17FA64F13 for ; Sat, 13 Mar 2021 13:59:16 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org B17FA64F13 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 424D96B0071; Sat, 13 Mar 2021 08:59:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 3D3866B0072; Sat, 13 Mar 2021 08:59:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2276D6B0073; Sat, 13 Mar 2021 08:59:16 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0148.hostedemail.com [216.40.44.148]) by kanga.kvack.org (Postfix) with ESMTP id F0AF76B0071 for ; Sat, 13 Mar 2021 08:59:15 -0500 (EST) Received: from smtpin07.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 9B56718022D07 for ; Sat, 13 Mar 2021 13:58:39 +0000 (UTC) X-FDA: 77915006358.07.D4FDB1E Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by imf20.hostedemail.com (Postfix) with ESMTP id BE64511514EB for ; Sat, 13 Mar 2021 12:53:09 +0000 (UTC) IronPort-SDR: 7i2xmAOwgRir9oSGdS+I4ckTclnunCuQX2e6733px+1gbooMGHDh0+GxjvyAdGolTxJk64i7fo 8fTWtpKKimxw== X-IronPort-AV: E=McAfee;i="6000,8403,9921"; a="168852382" X-IronPort-AV: E=Sophos;i="5.81,245,1610438400"; d="gz'50?scan'50,208,50";a="168852382" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Mar 2021 04:53:11 -0800 IronPort-SDR: jXas7/GlbrGqLn3HhkVRHBij0bLMk4LX2JgdzYk0Kc+1eUUqg/lOw9V7atlNDKL9geZZoudszl OP0GB3SVbHBg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,245,1610438400"; d="gz'50?scan'50,208,50";a="510597875" Received: from lkp-server02.sh.intel.com (HELO ce64c092ff93) ([10.239.97.151]) by fmsmga001.fm.intel.com with ESMTP; 13 Mar 2021 04:53:08 -0800 Received: from kbuild by ce64c092ff93 with local (Exim 4.92) (envelope-from ) id 1lL3lT-00022l-Gh; Sat, 13 Mar 2021 12:53:07 +0000 Date: Sat, 13 Mar 2021 20:53:03 +0800 From: kernel test robot To: Yu Zhao , linux-mm@kvack.org Cc: kbuild-all@lists.01.org, Alex Shi , Andrew Morton , Linux Memory Management List , Dave Hansen , Hillf Danton , Johannes Weiner , Joonsoo Kim , Matthew Wilcox , Mel Gorman Subject: Re: [PATCH v1 13/14] mm: multigenerational lru: Kconfig Message-ID: <202103132044.OKdxStiV-lkp@intel.com> References: <20210313075747.3781593-14-yuzhao@google.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="vkogqOf2sHV7VnPd" Content-Disposition: inline In-Reply-To: <20210313075747.3781593-14-yuzhao@google.com> User-Agent: Mutt/1.10.1 (2018-07-13) X-Stat-Signature: sfrp58kokairjr8te5t6ehmppq7hwjhe X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: BE64511514EB Received-SPF: none (intel.com>: No applicable sender policy available) receiver=imf20; identity=mailfrom; envelope-from=""; helo=mga17.intel.com; client-ip=192.55.52.151 X-HE-DKIM-Result: none/none X-HE-Tag: 1615639989-690389 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --vkogqOf2sHV7VnPd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi Yu, Thank you for the patch! Yet something to improve: [auto build test ERROR on tip/x86/core] [also build test ERROR on tip/x86/mm tip/sched/core linus/master v5.12-rc2] [cannot apply to cgroup/for-next tip/perf/core hnaz-linux-mm/master next-20210312] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Yu-Zhao/Multigenerational-LRU/20210313-160036 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git d0962f2b24c99889a386f0658c71535f56358f77 config: mips-randconfig-r022-20210313 (attached as .config) compiler: mipsel-linux-gcc (GCC) 9.3.0 reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/7a8b80d7f0d02852d49395fc6e035743816f6b1d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Yu-Zhao/Multigenerational-LRU/20210313-160036 git checkout 7a8b80d7f0d02852d49395fc6e035743816f6b1d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All error/warnings (new ones prefixed by >>): mm/vmscan.c: In function 'walk_pte_range': >> mm/vmscan.c:4776:56: error: implicit declaration of function 'pmd_young'; did you mean 'pte_young'? [-Werror=implicit-function-declaration] 4776 | if (IS_ENABLED(CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG) && !pmd_young(pmd)) | ^~~~~~~~~ | pte_young mm/vmscan.c: In function 'walk_pmd_range': >> mm/vmscan.c:4851:23: error: implicit declaration of function 'pmd_pfn'; did you mean 'pmd_off'? [-Werror=implicit-function-declaration] 4851 | unsigned long pfn = pmd_pfn(*pmd); | ^~~~~~~ | pmd_off >> mm/vmscan.c:4882:7: error: implicit declaration of function 'pmd_dirty'; did you mean 'pte_dirty'? [-Werror=implicit-function-declaration] 4882 | if (pmd_dirty(*pmd) && !PageDirty(page) && | ^~~~~~~~~ | pte_dirty cc1: some warnings being treated as errors -- mm/memcontrol.c: In function 'mem_cgroup_attach': >> mm/memcontrol.c:6179:3: warning: suggest braces around empty body in an 'else' statement [-Wempty-body] 6179 | ; | ^ vim +4776 mm/vmscan.c 4c59e20072808a Yu Zhao 2021-03-13 4759 4c59e20072808a Yu Zhao 2021-03-13 4760 static int walk_pte_range(pmd_t *pmdp, unsigned long start, unsigned long end, 4c59e20072808a Yu Zhao 2021-03-13 4761 struct mm_walk *walk) 4c59e20072808a Yu Zhao 2021-03-13 4762 { 4c59e20072808a Yu Zhao 2021-03-13 4763 pmd_t pmd; 4c59e20072808a Yu Zhao 2021-03-13 4764 pte_t *pte; 4c59e20072808a Yu Zhao 2021-03-13 4765 spinlock_t *ptl; 4c59e20072808a Yu Zhao 2021-03-13 4766 struct mm_walk_args *args = walk->private; 4c59e20072808a Yu Zhao 2021-03-13 4767 int old_gen, new_gen = lru_gen_from_seq(args->max_seq); 4c59e20072808a Yu Zhao 2021-03-13 4768 4c59e20072808a Yu Zhao 2021-03-13 4769 pmd = pmd_read_atomic(pmdp); 4c59e20072808a Yu Zhao 2021-03-13 4770 barrier(); 4c59e20072808a Yu Zhao 2021-03-13 4771 if (!pmd_present(pmd) || pmd_trans_huge(pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4772 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4773 4c59e20072808a Yu Zhao 2021-03-13 4774 VM_BUG_ON(pmd_huge(pmd) || pmd_devmap(pmd) || is_hugepd(__hugepd(pmd_val(pmd)))); 4c59e20072808a Yu Zhao 2021-03-13 4775 4c59e20072808a Yu Zhao 2021-03-13 @4776 if (IS_ENABLED(CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG) && !pmd_young(pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4777 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4778 4c59e20072808a Yu Zhao 2021-03-13 4779 pte = pte_offset_map_lock(walk->mm, &pmd, start, &ptl); 4c59e20072808a Yu Zhao 2021-03-13 4780 arch_enter_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4781 4c59e20072808a Yu Zhao 2021-03-13 4782 for (; start != end; pte++, start += PAGE_SIZE) { 4c59e20072808a Yu Zhao 2021-03-13 4783 struct page *page; 4c59e20072808a Yu Zhao 2021-03-13 4784 unsigned long pfn = pte_pfn(*pte); 4c59e20072808a Yu Zhao 2021-03-13 4785 4c59e20072808a Yu Zhao 2021-03-13 4786 if (!pte_present(*pte) || !pte_young(*pte) || is_zero_pfn(pfn)) 4c59e20072808a Yu Zhao 2021-03-13 4787 continue; 4c59e20072808a Yu Zhao 2021-03-13 4788 4c59e20072808a Yu Zhao 2021-03-13 4789 /* 4c59e20072808a Yu Zhao 2021-03-13 4790 * If this pte maps a page from a different node, set the 4c59e20072808a Yu Zhao 2021-03-13 4791 * bitmap to prevent the accessed bit on its parent pmd from 4c59e20072808a Yu Zhao 2021-03-13 4792 * being cleared. 4c59e20072808a Yu Zhao 2021-03-13 4793 */ 4c59e20072808a Yu Zhao 2021-03-13 4794 if (pfn < args->start_pfn || pfn >= args->end_pfn) { 4c59e20072808a Yu Zhao 2021-03-13 4795 args->addr_bitmap |= get_addr_mask(start); 4c59e20072808a Yu Zhao 2021-03-13 4796 continue; 4c59e20072808a Yu Zhao 2021-03-13 4797 } 4c59e20072808a Yu Zhao 2021-03-13 4798 4c59e20072808a Yu Zhao 2021-03-13 4799 page = compound_head(pte_page(*pte)); 4c59e20072808a Yu Zhao 2021-03-13 4800 if (page_to_nid(page) != args->node_id) { 4c59e20072808a Yu Zhao 2021-03-13 4801 args->addr_bitmap |= get_addr_mask(start); 4c59e20072808a Yu Zhao 2021-03-13 4802 continue; 4c59e20072808a Yu Zhao 2021-03-13 4803 } 4c59e20072808a Yu Zhao 2021-03-13 4804 if (page_memcg_rcu(page) != args->memcg) 4c59e20072808a Yu Zhao 2021-03-13 4805 continue; 4c59e20072808a Yu Zhao 2021-03-13 4806 4c59e20072808a Yu Zhao 2021-03-13 4807 if (ptep_test_and_clear_young(walk->vma, start, pte)) { 4c59e20072808a Yu Zhao 2021-03-13 4808 old_gen = page_update_lru_gen(page, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4809 if (old_gen >= 0 && old_gen != new_gen) { 4c59e20072808a Yu Zhao 2021-03-13 4810 update_batch_size(page, old_gen, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4811 args->batch_size++; 4c59e20072808a Yu Zhao 2021-03-13 4812 } 4c59e20072808a Yu Zhao 2021-03-13 4813 } 4c59e20072808a Yu Zhao 2021-03-13 4814 4c59e20072808a Yu Zhao 2021-03-13 4815 if (pte_dirty(*pte) && !PageDirty(page) && 4c59e20072808a Yu Zhao 2021-03-13 4816 !(PageAnon(page) && PageSwapBacked(page) && !PageSwapCache(page))) 4c59e20072808a Yu Zhao 2021-03-13 4817 set_page_dirty(page); 4c59e20072808a Yu Zhao 2021-03-13 4818 } 4c59e20072808a Yu Zhao 2021-03-13 4819 4c59e20072808a Yu Zhao 2021-03-13 4820 arch_leave_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4821 pte_unmap_unlock(pte, ptl); 4c59e20072808a Yu Zhao 2021-03-13 4822 4c59e20072808a Yu Zhao 2021-03-13 4823 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4824 } 4c59e20072808a Yu Zhao 2021-03-13 4825 4c59e20072808a Yu Zhao 2021-03-13 4826 static int walk_pmd_range(pud_t *pudp, unsigned long start, unsigned long end, 4c59e20072808a Yu Zhao 2021-03-13 4827 struct mm_walk *walk) 4c59e20072808a Yu Zhao 2021-03-13 4828 { 4c59e20072808a Yu Zhao 2021-03-13 4829 pud_t pud; 4c59e20072808a Yu Zhao 2021-03-13 4830 pmd_t *pmd; 4c59e20072808a Yu Zhao 2021-03-13 4831 spinlock_t *ptl; 4c59e20072808a Yu Zhao 2021-03-13 4832 struct mm_walk_args *args = walk->private; 4c59e20072808a Yu Zhao 2021-03-13 4833 int old_gen, new_gen = lru_gen_from_seq(args->max_seq); 4c59e20072808a Yu Zhao 2021-03-13 4834 4c59e20072808a Yu Zhao 2021-03-13 4835 pud = READ_ONCE(*pudp); 4c59e20072808a Yu Zhao 2021-03-13 4836 if (!pud_present(pud) || WARN_ON_ONCE(pud_trans_huge(pud))) 4c59e20072808a Yu Zhao 2021-03-13 4837 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4838 4c59e20072808a Yu Zhao 2021-03-13 4839 VM_BUG_ON(pud_huge(pud) || pud_devmap(pud) || is_hugepd(__hugepd(pud_val(pud)))); 4c59e20072808a Yu Zhao 2021-03-13 4840 4c59e20072808a Yu Zhao 2021-03-13 4841 if (!IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && 4c59e20072808a Yu Zhao 2021-03-13 4842 !IS_ENABLED(CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG)) 4c59e20072808a Yu Zhao 2021-03-13 4843 goto done; 4c59e20072808a Yu Zhao 2021-03-13 4844 4c59e20072808a Yu Zhao 2021-03-13 4845 pmd = pmd_offset(&pud, start); 4c59e20072808a Yu Zhao 2021-03-13 4846 ptl = pmd_lock(walk->mm, pmd); 4c59e20072808a Yu Zhao 2021-03-13 4847 arch_enter_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4848 4c59e20072808a Yu Zhao 2021-03-13 4849 for (; start != end; pmd++, start = pmd_addr_end(start, end)) { 4c59e20072808a Yu Zhao 2021-03-13 4850 struct page *page; 4c59e20072808a Yu Zhao 2021-03-13 @4851 unsigned long pfn = pmd_pfn(*pmd); 4c59e20072808a Yu Zhao 2021-03-13 4852 4c59e20072808a Yu Zhao 2021-03-13 4853 if (!pmd_present(*pmd) || !pmd_young(*pmd) || is_huge_zero_pmd(*pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4854 continue; 4c59e20072808a Yu Zhao 2021-03-13 4855 4c59e20072808a Yu Zhao 2021-03-13 4856 if (!pmd_trans_huge(*pmd)) { 4c59e20072808a Yu Zhao 2021-03-13 4857 if (!(args->addr_bitmap & get_addr_mask(start)) && 4c59e20072808a Yu Zhao 2021-03-13 4858 (!(pmd_addr_end(start, end) & ~PMD_MASK) || 4c59e20072808a Yu Zhao 2021-03-13 4859 !walk->vma->vm_next || 4c59e20072808a Yu Zhao 2021-03-13 4860 (walk->vma->vm_next->vm_start & PMD_MASK) > end)) 4c59e20072808a Yu Zhao 2021-03-13 4861 pmdp_test_and_clear_young(walk->vma, start, pmd); 4c59e20072808a Yu Zhao 2021-03-13 4862 continue; 4c59e20072808a Yu Zhao 2021-03-13 4863 } 4c59e20072808a Yu Zhao 2021-03-13 4864 4c59e20072808a Yu Zhao 2021-03-13 4865 if (pfn < args->start_pfn || pfn >= args->end_pfn) 4c59e20072808a Yu Zhao 2021-03-13 4866 continue; 4c59e20072808a Yu Zhao 2021-03-13 4867 4c59e20072808a Yu Zhao 2021-03-13 4868 page = pmd_page(*pmd); 4c59e20072808a Yu Zhao 2021-03-13 4869 if (page_to_nid(page) != args->node_id) 4c59e20072808a Yu Zhao 2021-03-13 4870 continue; 4c59e20072808a Yu Zhao 2021-03-13 4871 if (page_memcg_rcu(page) != args->memcg) 4c59e20072808a Yu Zhao 2021-03-13 4872 continue; 4c59e20072808a Yu Zhao 2021-03-13 4873 4c59e20072808a Yu Zhao 2021-03-13 4874 if (pmdp_test_and_clear_young(walk->vma, start, pmd)) { 4c59e20072808a Yu Zhao 2021-03-13 4875 old_gen = page_update_lru_gen(page, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4876 if (old_gen >= 0 && old_gen != new_gen) { 4c59e20072808a Yu Zhao 2021-03-13 4877 update_batch_size(page, old_gen, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4878 args->batch_size++; 4c59e20072808a Yu Zhao 2021-03-13 4879 } 4c59e20072808a Yu Zhao 2021-03-13 4880 } 4c59e20072808a Yu Zhao 2021-03-13 4881 4c59e20072808a Yu Zhao 2021-03-13 @4882 if (pmd_dirty(*pmd) && !PageDirty(page) && 4c59e20072808a Yu Zhao 2021-03-13 4883 !(PageAnon(page) && PageSwapBacked(page) && !PageSwapCache(page))) 4c59e20072808a Yu Zhao 2021-03-13 4884 set_page_dirty(page); 4c59e20072808a Yu Zhao 2021-03-13 4885 } 4c59e20072808a Yu Zhao 2021-03-13 4886 4c59e20072808a Yu Zhao 2021-03-13 4887 arch_leave_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4888 spin_unlock(ptl); 4c59e20072808a Yu Zhao 2021-03-13 4889 done: 4c59e20072808a Yu Zhao 2021-03-13 4890 args->addr_bitmap = 0; 4c59e20072808a Yu Zhao 2021-03-13 4891 4c59e20072808a Yu Zhao 2021-03-13 4892 if (args->batch_size < MAX_BATCH_SIZE) 4c59e20072808a Yu Zhao 2021-03-13 4893 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4894 4c59e20072808a Yu Zhao 2021-03-13 4895 args->next_addr = end; 4c59e20072808a Yu Zhao 2021-03-13 4896 4c59e20072808a Yu Zhao 2021-03-13 4897 return -EAGAIN; 4c59e20072808a Yu Zhao 2021-03-13 4898 } 4c59e20072808a Yu Zhao 2021-03-13 4899 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --vkogqOf2sHV7VnPd Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 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 wPXVE3QRlkiXQ53timF8pWTl/wdf5oCdWWgBAA== --vkogqOf2sHV7VnPd-- From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============5888942818051271993==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH v1 13/14] mm: multigenerational lru: Kconfig Date: Sat, 13 Mar 2021 20:53:03 +0800 Message-ID: <202103132044.OKdxStiV-lkp@intel.com> In-Reply-To: <20210313075747.3781593-14-yuzhao@google.com> List-Id: --===============5888942818051271993== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Yu, Thank you for the patch! Yet something to improve: [auto build test ERROR on tip/x86/core] [also build test ERROR on tip/x86/mm tip/sched/core linus/master v5.12-rc2] [cannot apply to cgroup/for-next tip/perf/core hnaz-linux-mm/master next-20= 210312] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Yu-Zhao/Multigenerational-= LRU/20210313-160036 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git d0962f2= b24c99889a386f0658c71535f56358f77 config: mips-randconfig-r022-20210313 (attached as .config) compiler: mipsel-linux-gcc (GCC) 9.3.0 reproduce (this is a W=3D1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/7a8b80d7f0d02852d49395fc6= e035743816f6b1d git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Yu-Zhao/Multigenerational-LRU/2021= 0313-160036 git checkout 7a8b80d7f0d02852d49395fc6e035743816f6b1d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-9.3.0 make.cross = ARCH=3Dmips = If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All error/warnings (new ones prefixed by >>): mm/vmscan.c: In function 'walk_pte_range': >> mm/vmscan.c:4776:56: error: implicit declaration of function 'pmd_young'= ; did you mean 'pte_young'? [-Werror=3Dimplicit-function-declaration] 4776 | if (IS_ENABLED(CONFIG_HAVE_ARCH_PARENT_PMD_YOUNG) && !pmd_young= (pmd)) | ^~~~~~~~~ | pte_young mm/vmscan.c: In function 'walk_pmd_range': >> mm/vmscan.c:4851:23: error: implicit declaration of function 'pmd_pfn'; = did you mean 'pmd_off'? [-Werror=3Dimplicit-function-declaration] 4851 | unsigned long pfn =3D pmd_pfn(*pmd); | ^~~~~~~ | pmd_off >> mm/vmscan.c:4882:7: error: implicit declaration of function 'pmd_dirty';= did you mean 'pte_dirty'? [-Werror=3Dimplicit-function-declaration] 4882 | if (pmd_dirty(*pmd) && !PageDirty(page) && | ^~~~~~~~~ | pte_dirty cc1: some warnings being treated as errors -- mm/memcontrol.c: In function 'mem_cgroup_attach': >> mm/memcontrol.c:6179:3: warning: suggest braces around empty body in an = 'else' statement [-Wempty-body] 6179 | ; | ^ vim +4776 mm/vmscan.c 4c59e20072808a Yu Zhao 2021-03-13 4759 = 4c59e20072808a Yu Zhao 2021-03-13 4760 static int walk_pte_range(pmd_t *p= mdp, unsigned long start, unsigned long end, 4c59e20072808a Yu Zhao 2021-03-13 4761 struct mm_walk *walk) 4c59e20072808a Yu Zhao 2021-03-13 4762 { 4c59e20072808a Yu Zhao 2021-03-13 4763 pmd_t pmd; 4c59e20072808a Yu Zhao 2021-03-13 4764 pte_t *pte; 4c59e20072808a Yu Zhao 2021-03-13 4765 spinlock_t *ptl; 4c59e20072808a Yu Zhao 2021-03-13 4766 struct mm_walk_args *args =3D wal= k->private; 4c59e20072808a Yu Zhao 2021-03-13 4767 int old_gen, new_gen =3D lru_gen_= from_seq(args->max_seq); 4c59e20072808a Yu Zhao 2021-03-13 4768 = 4c59e20072808a Yu Zhao 2021-03-13 4769 pmd =3D pmd_read_atomic(pmdp); 4c59e20072808a Yu Zhao 2021-03-13 4770 barrier(); 4c59e20072808a Yu Zhao 2021-03-13 4771 if (!pmd_present(pmd) || pmd_tran= s_huge(pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4772 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4773 = 4c59e20072808a Yu Zhao 2021-03-13 4774 VM_BUG_ON(pmd_huge(pmd) || pmd_de= vmap(pmd) || is_hugepd(__hugepd(pmd_val(pmd)))); 4c59e20072808a Yu Zhao 2021-03-13 4775 = 4c59e20072808a Yu Zhao 2021-03-13 @4776 if (IS_ENABLED(CONFIG_HAVE_ARCH_P= ARENT_PMD_YOUNG) && !pmd_young(pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4777 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4778 = 4c59e20072808a Yu Zhao 2021-03-13 4779 pte =3D pte_offset_map_lock(walk-= >mm, &pmd, start, &ptl); 4c59e20072808a Yu Zhao 2021-03-13 4780 arch_enter_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4781 = 4c59e20072808a Yu Zhao 2021-03-13 4782 for (; start !=3D end; pte++, sta= rt +=3D PAGE_SIZE) { 4c59e20072808a Yu Zhao 2021-03-13 4783 struct page *page; 4c59e20072808a Yu Zhao 2021-03-13 4784 unsigned long pfn =3D pte_pfn(*p= te); 4c59e20072808a Yu Zhao 2021-03-13 4785 = 4c59e20072808a Yu Zhao 2021-03-13 4786 if (!pte_present(*pte) || !pte_y= oung(*pte) || is_zero_pfn(pfn)) 4c59e20072808a Yu Zhao 2021-03-13 4787 continue; 4c59e20072808a Yu Zhao 2021-03-13 4788 = 4c59e20072808a Yu Zhao 2021-03-13 4789 /* 4c59e20072808a Yu Zhao 2021-03-13 4790 * If this pte maps a page from = a different node, set the 4c59e20072808a Yu Zhao 2021-03-13 4791 * bitmap to prevent the accesse= d bit on its parent pmd from 4c59e20072808a Yu Zhao 2021-03-13 4792 * being cleared. 4c59e20072808a Yu Zhao 2021-03-13 4793 */ 4c59e20072808a Yu Zhao 2021-03-13 4794 if (pfn < args->start_pfn || pfn= >=3D args->end_pfn) { 4c59e20072808a Yu Zhao 2021-03-13 4795 args->addr_bitmap |=3D get_addr= _mask(start); 4c59e20072808a Yu Zhao 2021-03-13 4796 continue; 4c59e20072808a Yu Zhao 2021-03-13 4797 } 4c59e20072808a Yu Zhao 2021-03-13 4798 = 4c59e20072808a Yu Zhao 2021-03-13 4799 page =3D compound_head(pte_page(= *pte)); 4c59e20072808a Yu Zhao 2021-03-13 4800 if (page_to_nid(page) !=3D args-= >node_id) { 4c59e20072808a Yu Zhao 2021-03-13 4801 args->addr_bitmap |=3D get_addr= _mask(start); 4c59e20072808a Yu Zhao 2021-03-13 4802 continue; 4c59e20072808a Yu Zhao 2021-03-13 4803 } 4c59e20072808a Yu Zhao 2021-03-13 4804 if (page_memcg_rcu(page) !=3D ar= gs->memcg) 4c59e20072808a Yu Zhao 2021-03-13 4805 continue; 4c59e20072808a Yu Zhao 2021-03-13 4806 = 4c59e20072808a Yu Zhao 2021-03-13 4807 if (ptep_test_and_clear_young(wa= lk->vma, start, pte)) { 4c59e20072808a Yu Zhao 2021-03-13 4808 old_gen =3D page_update_lru_gen= (page, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4809 if (old_gen >=3D 0 && old_gen != =3D new_gen) { 4c59e20072808a Yu Zhao 2021-03-13 4810 update_batch_size(page, old_ge= n, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4811 args->batch_size++; 4c59e20072808a Yu Zhao 2021-03-13 4812 } 4c59e20072808a Yu Zhao 2021-03-13 4813 } 4c59e20072808a Yu Zhao 2021-03-13 4814 = 4c59e20072808a Yu Zhao 2021-03-13 4815 if (pte_dirty(*pte) && !PageDirt= y(page) && 4c59e20072808a Yu Zhao 2021-03-13 4816 !(PageAnon(page) && PageSwap= Backed(page) && !PageSwapCache(page))) 4c59e20072808a Yu Zhao 2021-03-13 4817 set_page_dirty(page); 4c59e20072808a Yu Zhao 2021-03-13 4818 } 4c59e20072808a Yu Zhao 2021-03-13 4819 = 4c59e20072808a Yu Zhao 2021-03-13 4820 arch_leave_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4821 pte_unmap_unlock(pte, ptl); 4c59e20072808a Yu Zhao 2021-03-13 4822 = 4c59e20072808a Yu Zhao 2021-03-13 4823 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4824 } 4c59e20072808a Yu Zhao 2021-03-13 4825 = 4c59e20072808a Yu Zhao 2021-03-13 4826 static int walk_pmd_range(pud_t *p= udp, unsigned long start, unsigned long end, 4c59e20072808a Yu Zhao 2021-03-13 4827 struct mm_walk *walk) 4c59e20072808a Yu Zhao 2021-03-13 4828 { 4c59e20072808a Yu Zhao 2021-03-13 4829 pud_t pud; 4c59e20072808a Yu Zhao 2021-03-13 4830 pmd_t *pmd; 4c59e20072808a Yu Zhao 2021-03-13 4831 spinlock_t *ptl; 4c59e20072808a Yu Zhao 2021-03-13 4832 struct mm_walk_args *args =3D wal= k->private; 4c59e20072808a Yu Zhao 2021-03-13 4833 int old_gen, new_gen =3D lru_gen_= from_seq(args->max_seq); 4c59e20072808a Yu Zhao 2021-03-13 4834 = 4c59e20072808a Yu Zhao 2021-03-13 4835 pud =3D READ_ONCE(*pudp); 4c59e20072808a Yu Zhao 2021-03-13 4836 if (!pud_present(pud) || WARN_ON_= ONCE(pud_trans_huge(pud))) 4c59e20072808a Yu Zhao 2021-03-13 4837 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4838 = 4c59e20072808a Yu Zhao 2021-03-13 4839 VM_BUG_ON(pud_huge(pud) || pud_de= vmap(pud) || is_hugepd(__hugepd(pud_val(pud)))); 4c59e20072808a Yu Zhao 2021-03-13 4840 = 4c59e20072808a Yu Zhao 2021-03-13 4841 if (!IS_ENABLED(CONFIG_TRANSPAREN= T_HUGEPAGE) && 4c59e20072808a Yu Zhao 2021-03-13 4842 !IS_ENABLED(CONFIG_HAVE_ARCH_= PARENT_PMD_YOUNG)) 4c59e20072808a Yu Zhao 2021-03-13 4843 goto done; 4c59e20072808a Yu Zhao 2021-03-13 4844 = 4c59e20072808a Yu Zhao 2021-03-13 4845 pmd =3D pmd_offset(&pud, start); 4c59e20072808a Yu Zhao 2021-03-13 4846 ptl =3D pmd_lock(walk->mm, pmd); 4c59e20072808a Yu Zhao 2021-03-13 4847 arch_enter_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4848 = 4c59e20072808a Yu Zhao 2021-03-13 4849 for (; start !=3D end; pmd++, sta= rt =3D pmd_addr_end(start, end)) { 4c59e20072808a Yu Zhao 2021-03-13 4850 struct page *page; 4c59e20072808a Yu Zhao 2021-03-13 @4851 unsigned long pfn =3D pmd_pfn(*p= md); 4c59e20072808a Yu Zhao 2021-03-13 4852 = 4c59e20072808a Yu Zhao 2021-03-13 4853 if (!pmd_present(*pmd) || !pmd_y= oung(*pmd) || is_huge_zero_pmd(*pmd)) 4c59e20072808a Yu Zhao 2021-03-13 4854 continue; 4c59e20072808a Yu Zhao 2021-03-13 4855 = 4c59e20072808a Yu Zhao 2021-03-13 4856 if (!pmd_trans_huge(*pmd)) { 4c59e20072808a Yu Zhao 2021-03-13 4857 if (!(args->addr_bitmap & get_a= ddr_mask(start)) && 4c59e20072808a Yu Zhao 2021-03-13 4858 (!(pmd_addr_end(start, end)= & ~PMD_MASK) || 4c59e20072808a Yu Zhao 2021-03-13 4859 !walk->vma->vm_next || 4c59e20072808a Yu Zhao 2021-03-13 4860 (walk->vma->vm_next->vm_st= art & PMD_MASK) > end)) 4c59e20072808a Yu Zhao 2021-03-13 4861 pmdp_test_and_clear_young(walk= ->vma, start, pmd); 4c59e20072808a Yu Zhao 2021-03-13 4862 continue; 4c59e20072808a Yu Zhao 2021-03-13 4863 } 4c59e20072808a Yu Zhao 2021-03-13 4864 = 4c59e20072808a Yu Zhao 2021-03-13 4865 if (pfn < args->start_pfn || pfn= >=3D args->end_pfn) 4c59e20072808a Yu Zhao 2021-03-13 4866 continue; 4c59e20072808a Yu Zhao 2021-03-13 4867 = 4c59e20072808a Yu Zhao 2021-03-13 4868 page =3D pmd_page(*pmd); 4c59e20072808a Yu Zhao 2021-03-13 4869 if (page_to_nid(page) !=3D args-= >node_id) 4c59e20072808a Yu Zhao 2021-03-13 4870 continue; 4c59e20072808a Yu Zhao 2021-03-13 4871 if (page_memcg_rcu(page) !=3D ar= gs->memcg) 4c59e20072808a Yu Zhao 2021-03-13 4872 continue; 4c59e20072808a Yu Zhao 2021-03-13 4873 = 4c59e20072808a Yu Zhao 2021-03-13 4874 if (pmdp_test_and_clear_young(wa= lk->vma, start, pmd)) { 4c59e20072808a Yu Zhao 2021-03-13 4875 old_gen =3D page_update_lru_gen= (page, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4876 if (old_gen >=3D 0 && old_gen != =3D new_gen) { 4c59e20072808a Yu Zhao 2021-03-13 4877 update_batch_size(page, old_ge= n, new_gen); 4c59e20072808a Yu Zhao 2021-03-13 4878 args->batch_size++; 4c59e20072808a Yu Zhao 2021-03-13 4879 } 4c59e20072808a Yu Zhao 2021-03-13 4880 } 4c59e20072808a Yu Zhao 2021-03-13 4881 = 4c59e20072808a Yu Zhao 2021-03-13 @4882 if (pmd_dirty(*pmd) && !PageDirt= y(page) && 4c59e20072808a Yu Zhao 2021-03-13 4883 !(PageAnon(page) && PageSwap= Backed(page) && !PageSwapCache(page))) 4c59e20072808a Yu Zhao 2021-03-13 4884 set_page_dirty(page); 4c59e20072808a Yu Zhao 2021-03-13 4885 } 4c59e20072808a Yu Zhao 2021-03-13 4886 = 4c59e20072808a Yu Zhao 2021-03-13 4887 arch_leave_lazy_mmu_mode(); 4c59e20072808a Yu Zhao 2021-03-13 4888 spin_unlock(ptl); 4c59e20072808a Yu Zhao 2021-03-13 4889 done: 4c59e20072808a Yu Zhao 2021-03-13 4890 args->addr_bitmap =3D 0; 4c59e20072808a Yu Zhao 2021-03-13 4891 = 4c59e20072808a Yu Zhao 2021-03-13 4892 if (args->batch_size < MAX_BATCH_= SIZE) 4c59e20072808a Yu Zhao 2021-03-13 4893 return 0; 4c59e20072808a Yu Zhao 2021-03-13 4894 = 4c59e20072808a Yu Zhao 2021-03-13 4895 args->next_addr =3D end; 4c59e20072808a Yu Zhao 2021-03-13 4896 = 4c59e20072808a Yu Zhao 2021-03-13 4897 return -EAGAIN; 4c59e20072808a Yu Zhao 2021-03-13 4898 } 4c59e20072808a Yu Zhao 2021-03-13 4899 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============5888942818051271993== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" H4sICLemTGAAAy5jb25maWcAlDxbc9w2r+/9FTvuSzvzNfUtbjJn/EBJ1IpdSZRJar32C8e1N6mn vuTY67b5fv0BqBspQZuczqS2ABAkQRDEhfSPP/y4YG+758eb3f3tzcPD18Xn7dP25Wa3vVt8un/Y /s8ikYtSmgVPhHkHxPn909u/vz7ef3ldvH93dPzu8JeX2+PFavvytH1YxM9Pn+4/v0Hz++enH378 IZZlKpY2ju2aKy1kaQ3fmPMDbL59+OUBef3y+fZ28dMyjn9efHx38u7wwGsltAXE+dcOtBw4nX88 PDk87GlzVi57VA/OE2QRpcnAAkAd2fHJ6cAh9xCH3hAypi3ThV1KIwcuHkKUuSj5gBLqwl5KtRog US3yxIiCW8OinFstlQEsyOfHxdJJ+2Hxut29fRkkJkphLC/XlikYmiiEOT85BvKue1lUAjgZrs3i /nXx9LxDDv1cZMzybjIHBxTYstqfjxui1Sw3Hn3G1tyuuCp5bpfXohrIfUwEmGMalV8XjMZsruda yDnEKY241gZXtxeNN15fMmO8G/U+Ahz7Pvzmen9ruR99SixbOKMWmPCU1blxGuGtTQfOpDYlK/j5 wU9Pz0/bn3sCfcm8BdNXei2qeALAn7HJB3gltdjY4qLmNaehkyaXzMSZHbWIldTaFryQ6soyY1ic Dcha81xEwzerwbh0OwL2z+L17Y/Xr6+77eOwI5a85ErEbntVSkZeXz5KZ/KSxvA05bERoDksTW3B 9IqmK8RSMYM7h0SL8ndkM4eOM3+fICSRBRNlCNOioIhsJrhiKs6uZvquhL8JygRMQNsS0CHHVKqY J9ZkirNElEuaY8Kjeplqt4G2T3eL508j+Q8GVsYrLWtg2ix4IgmWzsitUUFYnk/Rjglf89JoAllI besqYYZ3qmDuH7cvr5Q2ZNe2glYyEbG/+UuJGAFyIbaXQ/rUmVhmVnHthq10uGFbaUyG0G8JxXlR GeDqjH/PtIOvZV6Xhqkr0g60VD7OzTiu6l/Nzetfix30u7iBMbzubnavi5vb2+e3p9390+dBBkbE KwsNLItjCX0Fi4yL61aDQjr7qeMM9IOtl63u9GOLdII7LOawgaE1dcAY2D3aMH8ZEQTqlLMr12iE 2LSwvhMHFdIbHi0nLchl+Q45eaclyEhombtdPRG5iuuFnmqYgRWygBsmAh+Wb0DtvMnpgMK1GYFQ Uq5pq+djlFEsJjoC6eY5nvOFb2kQU3JYNs2XcZQLbUJcykpZO1dhArQ5Z+n50dkgFsdMxhHKZ26N h+FZtCO2iHxTEYquV71V84u/3B3MKRbRmVhlwB424fnj4K2gW5KCRRepOT/6zYfjihZs4+OPh40p SrMCXyblYx4nY5vT7AFnljqbo2//3N69PWxfFp+2N7u3l+2rA7czJrC9hVwqWVfejqjYklun3VwN UDgS4+Xoc3RYN7AV/Ai2Zb5q+yDk1yCa+QyMUiaUJTFxCm4xHCCXIjGZ34syfoP5niqRaL9dC1ZJ 6DWF2BT2x7UvDFhHzY0O7aeMkXuLm2eW8LWIOTEGaDg2W2OSqEoJxlrGq547M57rih6WrmAneMtb G23LYOjoT5Wa7BemouZwONkQ1fXKzagHWJN4VUlQcDy3jFTUOdcadvDv3VQCnw+WPeFw+MRwyibz GLs+DpQCzTo5dlRKWAjnnaqEJpHS2OZ3ekliKys4qsQ1R6cFz3X4UbAypiY3ptbwy+hgg0AmQVsV y4S7dbQcI6hy5NQBmVQVeFHgz6gykEXg3jbfYPljXhkXwqJJ9EKnKvVl1ZwQxMgLcNcF6oHHeskN OqJ24jE1CzIBp43TN3bMG//FgzoTOP62ZeG5j+D3DR88T0Fcyp8V0yDgOui8huB99Gl9j5RXMpiD WJYs92NvN04f4HxBH6Czxup1gYHwwkHwFmoV+DEsWQvNOzF5AgAmEVNK+MJeIclVoaeQZrKo5Bge BCs7XQJcwcJplgJiFVLD/sklS0JqF6j5k1zFhbcrleaB+wVD50lC2l6n3rg/7NiJdkDozK4LGK2M u9OszctU25dPzy+PN0+32wX/e/sEnhKDAy1GXwnc28b19Dg17EnP6zs5dgNbFw2z7iD0xoxJDGZs 5KdKdM4iXxg6ryPKxAEZLLKCA7YNhMNGgMWzBh0kq2DLyGKOSU+WMZWAVxDoYp2mEGG5c9xJlYHF Dfao4UVjYUATRCrikYmBsywVeaOyvQDDjE+vscK5Dm4lipvbP++ftkDxsL1tM2n95JCw91+ajAFp Vh0dy+EsKGjTzdRvNNxkx+/nML99pG28PyqaIi5Of9ts5nBnJzM4xziWEcvpA71gcQY6EGM0MvLu Q5rf2TWdsXFYWCNeokMo6eHnDGKUi/n2uZTlUsvyhM4pBTTHPP020RmVIHIUFWgr/HSWMRQTbH1D 56zahvG+4a3V6dHcIiC+hDOEw1YKRzb4CAwUfTXfHMKH3PAVOJi0vuqlAAfqmB5gi6QVtkV+2IM8 OdyHnOlTRFcGHHiViZLvpWCqmNmEAw+5n8c3CSBCUMU+glwYk3Ndq71cwBJLTetISxKJ5SyTUtiZ QbglNpuTj/s0yGxOZ/FipaQRoB7R+5n1iNla1IWVseHghM1t1DIv7CZX4HWyGX+0oaj2UPQ7zC4r 57JAhLiCsJ48D6fGehxkZpdcLDMvUu8zXrBlIgX+dpM38U4W58HLQhg4nyD0sM7lD5wNdKoV81Kd MV8D5NQ7S2MYcghpjClGu0SSDvOOVtdVJZXBRBzmWL3TGgI7zHXFMuMKtCg4Bl0thDOVX01cT8T2 TDNpqrx2YZ9PUY6GGbRBjwrOVSycBHFjq/AWTJJg5UzjGRonB12BaEcSBT/45HhElx/BQsGCtEmE 932iLjifvYFhq5Njq45nBnWNXU3lN9P0krMVBCoJVyM/IhzBdAChtBDmszUMnCdjhWYg4fX5MTnS k+MIVLBxMkJ23yBBZwoMVpsqdtrbezetA7n7+mU7yM2xGaVOMLSzp6vAHxwQR2eriN69PcnZ6Ypy Hl1m3KWPrsHoOtGeHx0NegBjhx2ISz7eOTjxEQJhuHrg+afc+EUOxHQ7PamLypo8GjFMq06QYTPY DYCrp8BGERtGo7PfWF1QmaFgQV0MSpQE2unpKcRWxRg4Afh1JRwpZig1ptt1wZRxNBCpFyJWsnVz R8IrNJsCE8HFFKrEhoCiDRmNimmRtFv2cIoAbdPnH0iNxqpAEIQG2GCozmSmEDYCPRiZ0EaRhqsF ujRCUwvG/MXhv4eHp4f4n+9PYdiCaozRKbWwfhA5Y1n9pZ8scYAOuJXKZd8Gq+AaN1D8UbDq3KtG Z9f2mHYKAXNK+2WAOTqkvTJEhd6c18/7Q1/1HeRsTwfzPRweUx52IBOm0LZlfqn6+hxG0MfxfMN9 1VdMZ26re4Ysu9IQFuaYz4ddfvjvp/a/D816h6opwfan1dnp1CpgaC/Tya6HPcaqCo43cBcSQxk7 R4bpHZ9uwgc8iVlGo1CsSPC6A/glsvg+SiCyfIOhw9zwAp54OGIOxXk7NEe8rGBESXAdZyncIdMn /MDvSThhctHbWzWFjgmuWjb7NOdrnuOOcGdY9Pa6eP6CB+/r4qcqFv9ZVHERC/afBYcT9T8L9z8T /zwccEDUZozAo+BLFnvuXlHUI5tSwA6zqmzsFEy+HGwVhWeb86P3NEGXZPkGn4CsYdfL8rsn2/sW iiVt9q8/9avnf7Yvi8ebp5vP28ft067jOEjIDSgTEbgSjYGspIaYxLeerYuqUVEJdIuZALy6g1f7 7Tsi1LIqrM459zdyC2kN5eBtFC7T7nA0o0u24q54HjDroe3tniPf9gf4JVUvq4rRIFwhnx4ABC8+ 8eUFiO4SghqepiIWmJtrc2hUuh0MfttXqw2zC9m7xQ1F0VMAoseJu4dt6C2LZOzYI8Qu5drmLBmZ gQBd8JKqWwY0ECv2WTUwIf0YFsnL/d+jzGfv8gDR+ArBEO7RXHynvJmjD5lIxHWb3r88/nPzQo5l KeUSppAKVaAfPSlam+3nl5vFp47DnePgFypnCDr0pO8gxbxaB+q1FsrUEKtez22XJk4CK8JKi1kg u050L/cu33nzAoHyDsKVt5ftL3fbLzAS0g40x2hYjXAn7QimIXxJg+rYqolZySPpd/TAcxaFiRrf ruAR250sUViQdUIR0DuaS+jEjFCrcbDcQBU3JCKowziIG4A7gTIpVyMkRt7wbcSyljVxcQYsUqPw jWM/MpfoHkPEY0R6ZZv7OwQBdoHyrEsXYYx5NEGeTFM7njlegCxk0l4qHE9U8SV4UWCA3QmLdz3c nZJqPP22BOKDXBkC21NwV01teIbu1iDMYb1Hc7lkYPCwUlsxhfWS9pYkwULzGI/FPSjYn3mQlpk0 mSNsbuDgDFCdeNwUFoZMW4Chbnga2d088jmimoBX5FRpNb3yA0oArbLx3ctv3xWCJW4nXvEYCx2e 8yKTOufabR/0M1WYB2jZ8w0qUNlcfsPJEUroWndRDyX1wOsZEbgOyA0QtvowVYbuKqWRVSIvy6ZB zq7wJs1wMOUSPU8YOdjjZFrFarYISpEaeXtfV9ngroVLxHnVMeoOQKMoja62KTuIwCidnqtn+/JF C9qOuDfPsVz/8sfN6/Zu8VfjNH95ef50/9BcNRsOJCAjyk3jPhxZU/ZyNbOg8LWnp2C6eMsbo1nh G5RvAGHBDAoS/ilZXZEkqFzaqDq8iUYSzN1CmFTxvnGq9XG/sQXWy/2zwFWdNdZrvQyF203oPFvX vZlstCAqaqibhBYGTXQ01lDV5ZhiwE/t99Swj/lpFfd3yXNKKYa5UK1Fm4jbN2QkGvGmSHTGjr6D 5ngmSTGiCvMJJM3Jh9OZKQHy/dHxfgawT7Lzg9c/b4DNwYQL7k4Fx+S+oWIx+hK8LgiASu9ykhWF S1wQ3UftFbf+c2V1rAVY64ua+7cIuws9kV6SwODe9nD7x/ClEuZqD8qao8Phcl+HxgxsErbqonxn 84JTEbGXERWmNOwgAmo8QgJK9aSxyFKxfNxH86IDTEmsriryzmh187K7xx2+MF+/bD3nFQZthIte WbJG4xG8TWBgf8uBhjKkYjPgh9FKnVJgVoglCxBerZ4pQXflF+X2DqbQidRUv3hDOBF61flXXghV wgR0He1jizdxldB28+GMYl4DC1c7IHvIk2LvmLGkSzHNjaJFq+uSAq8YWF9atDydEWzH8Uqvzz5Q TD3V9th2gfVIp3xNLS5cEObfhkKwi8ybRxNyuJrqqSO0E7KpJuKVuPChkodcXUW+d9qBo/TCH2HY yaDy4V1Jpssjj1Wzl3QFxyueQODxhE8VGry7XNzg9+HItpdgXvhcYx8Ztu6DPvdyJXFDHOVp5jHj xuqSbjqBD6kot2783+3t2+7mj4ete223cHeqdt4KRqJMC1eYHHU+INChNt66tn5ekDdBv88VoTpn F9u1V64pe9ow17ESVeAstQg4eqisFHbTBmS90szNsMnJbB+fX756mZFpOqAtr3gSBABEMQnHW36u FBE63CnTxi7r8D41vkLqnwB4m7/KwWuvjNMOV/I49YUGfnI8az1dnVFxPHFHrxd6Yzh5SBS7MN52 V/RaKG5tiD5s5Ef3K+3NuVs1F5qAkYXTJVHnp4cfvev8cc5ZE75TNU8FPYdJjdi9zRuag7lrXwNR KwtYsMlMn/f38K9bdj0HB+j9F6n6UcNP9M5JKc42mntBN9vgwyl9b2RPD1QFaB95Fn/XfPEB3/+D 8/nBw39P/7w9GHO+rqTMB6ZRPc90RHqSyjyZDnVEpZurot/H9Pzgvyefnh/uJqPs2JFHoWMxqBzO YfAB+2H2/IrRxuggzsL583HpLrcBu0wHlfrmypVu23dKQ8BXV7MPZ5Wr2Q8jKFUH8zS/hbQV38S3 dvMGrefI+9C73O7+eX75C+LfqdkDy7MCysfwG3withyA6CqFjhOY7GIECZtsksq9cxi9uvDArgG5 k+A8pYQGUHzvjLmugvmXefH9QmUqfJwNkUp65XfYNaqyK5c1gVUqqrlXYEDcJNAoj9n498VNgVc1 /Syx8UxepESy5ONvW6gJjY3TMAUOXO2Hw+OjC2IICY+bVQ2+rZJ1kPPL88B8wCcVKIIvla98Xmus zOY8BIsqSSpY1WFtEIAhC6OfPW9m7vTmrKLKxhXeR/TUT3DOcfrvg8B3gNoyb39x7x9gQUsYMMHY a9LoWxA+sLjB0VrWP2Jyu+fibfu2hb3za+uTBm8jW2obRxcjrXPgbKZw3eNT0r/p0I3OTVpVSsg9 rdzlmwt/0TqMIm/7d1idRuGeaoAXU6DhF/mwZj00SqfAONLUFGCj7RWMYd+Y5FL5UXYHTfTUMiAc foJrR0gkUfQV1F6WF98Yh15FSEHNMc7kinZGOoqLlL7q3XMA75NS7g6fXjQk0wnHbMWn0JRW0ox6 pNYrm+CU4KBrwOwdPSY79zDmfm69X4/pK4vu4E9pk9ghe0lMGuoZKXf4KhWpdO78ng7aAZ4ffPpf e/t8t304aIvNDzevr/ef7m9Hf4oE6eN8NEMAYDbWL2t0YBOLMuGbcAMhIr0crxlC6xPKpndYpdfV lBNCzyhmaS4vZ1cSCWafg/aTCt+m+YzJw7QjKPDaJiamg8FyBw5l1MDamo7/J0o8ZExeTPQISrx5 Ph5oi5uXaEtQcMNm2mItbH/jmJUiGe8jlAAj3733uww00zuj4+BGVVLirWUINtekjCM4PZjLDwaB dQ/tfl2TS+/RldQR5eFdNBc4Ma2HR0/MFe5DZ7GoxjsFIXapvck7CLo63fVkHy4qU5d0yah53Jr5 ss80Ja8LZTwnCr+sLoI1czDoiBSYQxaZIDgr/zakSt1fO/CNtnsPrDZNLgczDVVQGd1U1Ato5/TS Z5NH0bjEo5NS4YN2fWXDZ5TRRZigrlL7u5hTTtzZ7Y2iMMhY7Lavu66m1wYrE9QI4QcmQ4qlUCwR /e2O6ub2r+1uoW7u7p+xnrd7vn1+8G91gePp+efwZROGtw1ytg5PQiWLQfOU1Hi8uS7Y5h04r0/t YO+2f9/fdhda/FTnSmjta8UZhkzUDqkuuMmCxxTsCqJyi5cK0mRDwrNk4/NuMRWjvZQWzSvK7l2x xuNpZb13dr3msCADjfdsFLukVAwwkR8CImB5OQgWv38/+njyMSQRWrpAqTk7WblImoEkYzEj8RqH 8xgOZ73BVvS7nRJWex8WYpw9OKzfNG/96QepxGj7BfQLW/jSlCcqgKgU/8JGsLId0Boz8+QdGJXk ZT/AZCKpgh6ywEZE+Gc46JY5T8akhU5nTrDIeH+5Z4ClnJkaM72t5W/uqj68bXfPz7s/Z7cOzsjX Gfi+iFk4jVhERidBAcJBa6YMBcNdA6tGorJTElzKlZj06jBRrKuRbDoUM9kJ/erQI5opIXsUJ5dC 0V6zR4S1TOooC0ZakDNo5ElOYHk29yx2ICrUer7jxORHXmW1XayTeALLax4zlYzha/gXDBp7G6si gCyuPz2KwqyccjyGMKccnq2bVcWuWSoiq9pbDi0IFwYA4VGbLjFPEBT9G8vVIZ6227vXxe558ccW Osfqwx1WHhb/x9mzLDeO67q/X+E6i1szVadPS7Jly4tZyHrY6ujVohwrvVF50pnp1KSTVJKu0/P3 lyApiSAhZ+ouZjoGQPEFggAJgOqEwdX2DQUBFVZczYvIIBmWMekGV5m+Jcvfw5LFwKysdb8hBd3X +tKBnXpbm7+HKz5DG93Ws869UZileF/I0ovE8EFYld8R8Mh2mqKf6lZQGnGVcJ+1YY6BJWeZ7wag H6dbg3PesmapvDu/LNL7uwfIF/D9+49HZaUtfuElflW8ockn+I7MmIY+rdxSoWraSuI0aUyaHhxT l/5yiTslQH3mRTbY67GgA7hYJt9NCDkKAsE/PNMW1toDKmGiNXigu1oRoxoU+FIly/TUlL5RiwTa 1UhE4PXmGv6Hk6fdk7GQ2wJkQjYIQEw1LTA/SXNBn+k0zPKKtqS4GtfCFYUyXox7wEhpysM+OKfR 1BEWijK4QR9fCREOVn2UMYuf6+jD7fnl6+L3l/uvfwrGnRyf729VjYvKPOI/Ste/Q5LXujaKwFzF bA+Q9lE7Hbluizql/YO4DCvjMJ+LJa8b+e3BrVym/bT6MzqHPzydvwq38mEuTv0YmjPMQdc24fhB 1NKRWvrryg6R7ZooL3o/cTLrftP2aFeNHvcP6eJ5rV9OD9aIcKOicTQUro36UEQsy2AelYpyZJ4x tBvS8h3byshU2SR7dGEtf2ORo2BFoe8YA6HuwCCctg981GPIcZZiXylApkkZyRuyCz6MNoOOEU6T IJ5UgSYqWLvr9xnbQXwc7VckAinigky6koEwgLAUdNvNDXQB0FadAtn7GQpMGuXNsKFVXIAId+pp TkrG8C9QTrMw12sT4ALyxgkU0XJZMGvSqbSOOe46C1HoiVz5D8E/bLBrJ4ef5/PLKzZmW/C33ghH ITwoHKF7EVFnOUBTpXRZziwi0N0qS7ghDa0SjT2+QgTLE/j+yEw/7cv58fVBiv78/LfV/F1+xdcQ w/033BDTFqkVLdpO27xv0BlrBjCS4Zo07g3cwG4sjdGtGytMSjQ+VVXPDalwdzCGc3Tk4muwCJlx QynTS4bFx6YqPqYP59dvi9tv98/E2QXMaprhsfqUxElkiBeAw82zIVZUeXHqVwmPReywq9BlBX2Y 7TuQ7PieoNKNUIrTQJZrZHYz9klVJG1zY7YBJNguLK96kXWwn/HZtQlnktbYhGTOHJsseK9hpAew TYdSRai+Zy418tl8FwR6ruECGeBaqpYYcmGaQmp1myeKmJliCOBcVQgxYwH02GY5pkVJMgSgMgDh jsmEIFNe0HmeVwmunp/hcFEBhWUmqM63XJabC6OCHaMbzl8tzoYQ62KWW21tboL2YVmVN0V1nFvy dR62DT6ue6/pMofo3cMfH26fHt/O94/c8OSfmj+2BMmSy0pQp4Z6dfZrYw6daasQrZ7ccaS+e//6 14fq8UMErbOUX/ThuIr2S3I3eL8n0qLjaifuE0CMgD3BvGUCGNxZBZRJ1G6kyyZZbMyhSxaXCwOL c4XyOhCZ+/nRgwB41TAptc///cj3v/PDw92D6N3iD8nLfChenh4eiEEUFcW8vjzrYzIB5EAESpQ9 ChIl06SVaR7iu5GRougyOvPRSAFnDZeqB66G4BKi+ogr4VxnJCsOm5DNHOKONEIM9fm+sLbB4v71 luAQ+B+Y9nZTwPu7KkU6dao1E1puhqO//aWeE4VisDa0+BuCdLdrB5aUPrtRxJfHnyLp04/n56eX N6JjSRSZzDjA+a4J1yjFjNeoQbmLDrpopSofTXNYhaKJec07tvhf+a8H8fqL79IzjRRAggzPwWeu bVWjdTNW8f6H9Y8cd4ZOwwH9KRdxeuwAzn/ChdUg2CU7dYXlOXgEAQv+AMUFLQZo9vkx2dGHQmMl IC5nKQ433FTdkftC3Gq2WpXqf4O/XduicBoOBN9XSAyOgDJZFom6qnafECC+KcMiQ7WOjKvDkHFY QSQmt0euQTPV3aclAi6nEQyOWFAOMq7aGpkwJKAPuyDYbNc2wvWClQ0twdrQGq8if9D5sgoGKo95 Dj+ow8sYXQ9+kVrJ5IrKf4NLiFAWTMfeeaoD6fyKqIKVpuQh1G//4rh/GV8XgmJHXzwKAuWLrgXo WsOQcyPEkp9xs+Nb7/2rPMr+/e72/OP1biGSZadswZUQ4Zwpi0BOsLuvyGwfRng3k6NZ4ekNUgx+ X1+1UXytbVoIrI4g9KRKCH0y8mZB0lTgOTjE0wW8PAM3uUAqGddFsmCjxJ2OPzm8T2fSAV6LV3cg 1xmp36BvjhsVdfIRxr7nd31cV6Q70rEobsQKnFwmI7ZdemzlaNEwfHPNKwZXdLA0M5RPPKxjtg0c TyZNmaxelntbx1kSlUqUp4XVcUWcVQ3rW47xfQKxO7ibDQEXlW8dzc/pUETrpe9NgJi560DPaYcs gw7y3HY9i9NEU8/q6zosddEVeUKoKC0rSTgDF/YuKuGcRzxNoCigmTxHgYuwWwcb7XRbwbfLqEPO VQrODbg+2B7qhHXEyCqiJHEdZ4W2X9xilYvj5/l1kT2+vr38+C4yIb9+O7/wVfoGRyRAt3iA/Zqv 3tv7Z/hTf8OjZ8h0+n98TDvcULOZZ2w5cxMASVibEKy/Gh2zJ9GhIlcIWg/ogD2L9Vev4tFfo364 O79CQkxubzzdil6IY6KP91/v4L//vLy+Cbvp293D88f7xz+eFk+PC/4BqUPoF9NDEGnMFwwKMgPI XpNF8ncfYlewCVpT/j/a5yN0UqYjLgtMTsE/Tl1uQN3qkROUTh7gSmwPCiV0HWxIXnrgrI+///jz j/uf+mCIzpj2z9AOTaeXFmjEssFSs5aXiPwtKm34mjCDYWr19zeACv+CQ2Vt/QNkunqZmBDgw8Zk ynDRLtUgkZ1r8Qvn5L/+vXg7P9/9exHFH/jy+tXmAKbvO4dGwlp7HFiDHFMGSvI+dEBGB6Obo5TW vyUw/G+4YjGPTnWSvNrv5+IYBAEDtxZxh0CPTjssdLT9yKJ1JmeJOukEgjSiZpFvFPB/CsPgETsF N+oKQY7s+D9zlbGm1soOBwZGF/4Hj81J5FHTVoOAiyNp8eSB0bxjyg5RTAIJM3bActWjZDoe9wwo 4lPUt9FIM9dFIJWR8OMn+JiklGCVC0Q43uAGjbf61EgM51N6Mi91NnUIXd+jPUMUSSrf/iIaowjK rPwUDgvZLP2Zc2pG5haTeHZT+MvIdxxrAOMDfVZEyBxNf5pLTU5Z7Co7LT4/aiO+bRs3CACDXCPY 0x+gtWgOVSPo16Cik3rhoDcKPwnb52xSK63Fmz0+/3iblbmDW4h2m1EfpdcXtXkIJDxTlxQ5svMk RiaEuUJ3iRJThBDorjDjzc0DvJB1Dy8z/HFGrhWqUHVkCfLWwnC4wz92s1gWcRu27LvfIKnmZZqb 3zbrAJN8qm6QS4qEJtckUPNrk+M9f7Api1wlN/OJvrU2zk4Cbx6Dl9am3g+QPixDvob05TGhlhRb T+g4I4tF1a6h3k8aCfaphzbbCdHMvHeJKPriPaJjlufcRKVsnJFI5CIPI237HVGMaykniJhoCGRb xBEBzkQeGLJXEtV7ZAzASHWCp16qhhzRItwneR5SQnJqNCRPqZodMcUCtUN50iccuLzrvhBTR09Z zH8QmC+HpDwcQ2IU4t2WgO7DIuEwajCPzQ5OtNOOQIbMd1yXHFJYbkcyIGMkSVkWrnfmchd5UNG7 fvBb3XnzOYiqYmUu2LY6Rge59LWCExD0RHguKcN5jXSKIKiLYO3QG6FOGMabAD9PQhE1XEa5yt2J /kxb8G256Oh9AVEeq77OuiijnVp00t3Rcx13+c/ovPc6AafSkI0si8pg6QbToCOimyBqi9BdOfTI S/zedWfxbctquQXPVCAIkOeYjV+ZmzhBgdxfdII43DrL1dxMwbko5593BusQFjU7ZDgfhk6QJC2t JyCifZiH1EmBTTR4gcxV10VLIy81QZUeP2UtO9Iju6+qOOto3IELYD1vrY7L8oyzV0cj2ZrdbNbu XLP3x/ILtUmirl21qed6G7qCJA9nhECSVzRCCJX+FDiOO8cEkoQ+69DpirBz3WD+O0XEReZMunBE VzDXpa7rEVGSp6FIub6iZ6kQP2ZmqejWx7xvWTQ3F1mZdOQVH6riauN6dO11UhaQb5DGJjHXPFu/ c9Y0XvzdqBdNyPaJv0+kYYLIwDlhufQ71VeqpUK80u04xW2w6bp5AVRE7nITLC/0Ims9d0nXzJsk FvIMZ3K05zjdBfEoKWbmXyJnFkpT9NhxCy1TbuyQWfwwEbu0xbHWpTUqTFSk6H1fjKtnZDrrgrU/ K7Lbmq19Z/P+Zv4ladeeRx16IypLc0TjWB0KtaO+v/Nmn5k/E4eBaoSHLjNqI1C2RKazsoQNGkxf ldwaIbEj0tCfuE7jrjrbbJTwGbGnSIQeE4W1IWokdsc1Ax9Z9srCWnYOH7O2nUl6NBiZ3WbDJ1I2 en4wBNl2yffgutVPLRVars++PjWyRsvALMJg5TsmGPwb+h3f5ZLG7oBAxgkEnVMu4xrRNby9ZLbp qms/bU1gk+yPObz9N9ORJmmPWi9MHRh43nODeYqwqz3OAXVyZencp3zlLB1U1OjwQCK6M9tjTrV2 Vs7YaeMjR/HPbOk6zAt442auA3WUBv5mZfNpfSrUTF3gJiC63PrmKnB8qF4uEWrKmwreWoej24sz H4cbL3DUPFrHKqBvrpfjUrQWXZcvV/Nrn4sQb721WCoqQlD47O8phLmKDaq4ufZAeKgmv0e59v8x 5YaiRHSsrYssck3Z1BTZqNZPPrgApAWSQLFCsygFJHWWNsTcdAXci9XVlknvuhbEMyFLx4KsLEho dSX1UcIccbJ0OL98FTEG2cdqMRzRq0JGu8VP+L+670TgOmyudiiEXcLzbFczamOWaHjvzfiSus7j pcyqOQgSztiVhE3UG7WYFPXFZoj1JmscCx4FivKaD4sE+5EMkL5kvh8Q8BzduFJjPiakpI5c5Rng t/PL+fbt7sWOJmv1NLXXeorvirNYLgImSiYzBTKdciCgYOZzIYcTST2BIZMifoMLknVt+S7R3qCz EHnfLcD0aXbMVQ4Ra2Kmd1auqC/35wfb7Usd2wg/pAilRJSIwHhpSQPr74Qrb/MZXhkKuGvfd8L+ OuSgEice08lSOFiknbJ0MjWC79QZMbxWBnghLIMdjSwbEe8GaSAJbAO58YvkEol8kghn/UW1hyXk d6ADN3TCkNUJvMOuwg7Jj4ngH3A6eXfI4gReEjBJqS6ycHbW6Vw0qHTrBQGtROtk6rHd+aZA9Mpw ezeksXh6/ACFObVgaHGBbN9sy/IwaDl4bJqTPCCmiXYNCvONkRGorWezUyxLs+sL/MiiqOxqqqBA UAxtU7rrjBkPKGMS9Yqy1We1RXxqwz2OYaXxF/o5Q9nvbuqQXWBoVU5Fks7iwF4QS8NaWjrRLjzG 8Gbqb67re9P7aYpSuSHVrJ9ZOJjgnwx92Fzg1JTlfV7P1DUh35dZgjYr0zzpyHHiv5JOhDJm+yzi sr4huNQkuTCXIAa/uEv/AtfWTWzVAUB7Z1NIWFkkiw0IEVovp9hcdyOJ3uQxCAHtYUbJImobM8Be oUrprhGHek/K/hDnmpG+r/I4zdhBKAZ6VHW/Z5RjgPBSNWjl43Ey4SN1ZiHflkMxyqqJIq3+kdoS RQQqdI3XBWNG3dQ3xrPAeW1PTl3Lm1TTxXKeJTOu9XPboIxzlBQcoCCWe5zvW8LBzU++ZYKswAnH 2oZ2eBc08rJd3iymof5GkUDrnkgSwHDmAwEUj83G1Wwl4tmzKk2RKVYXO6t24gNcc5Nv0+iFR6BI YcoV4CKhn8eeCHfhaule+j6RBWLCRZwhyEGcSLqsPiTCxlex6eDMsbid14fBE0nk/tI1JgiJhzxi K8NyneAr6gqDRY236nR/oNn6hyJ87KV/+lgHh1zNDSTE6cjIa2qZRfy/em6GamoxiyIZM89xJdQC gH3bR43uWKtjxJEbjeKSPSsT/eREx5bH66o1kcTXrnkn4Mq0u7G/w9rl8kvtreYx+KScb4T5jRFy PcC4AkZ6+NhWlT4zcpibI2u1RzxtNxkvIrxj9BtAGBHhswEhKBg8Pl00rV+AwnPTOIeUhi2O3bAY ih8Pb/fPD3c/eQ+gHSI0jmoMhLZLO1ekQUy4wqoJIPlRueUQUFkhaiEg8jZaLR0qtHSgqKNw669c qrBE/bxUOCtht7Ab1CR7DIyTi/RF3kV1HuuL+OK46eVV0gqwRvHEsUKymj7E+b7aTek54LujrQ+R /dO8THzz9+vb3ffF7xD3r+Ivf/n+9Pr28Pfi7vvvd1+/3n1dfFRUH7jBAE61v+KJjYC9lbKARjlO 4MVSkRWD8gpEtEmRXNMHKICdib8TYqAw5uLTl9UmcMwZv0qKOqcueQBZgaxiZhHOIO+3u7lakseX nsiv0ybGIpS68uis/5Mv/Eeuh3HURz6ffBLOX8/PQhoQ3ldeNIQAzTanDSvGdQbbla56+yY5TdWj TbhZR2o6+Q1HQ3PshDrdHnd4Poy0hCNIRQSYoy5xEPIFoV+zHZVJ7GDeZkZfEsCKwHVL+KAfal2z eqOn+xLurxyiUhJMiPhEgtl1RMKLrM4E4oDzDbGadphgXMmidBOmv/co3H0n4S7PVfkk4sjaCfxw D1EQ0yKGD4DA1xVcTbLwH2P6u0Fhb2tBM2SsrNnwVU3GTN6xkLskF8/iXgmtjtK7Jxpx/Ia8aycc wf82kdpFxqb9KR6We3t6sSRg3da84U+3f9lbFmTZd/0ggGcKo6txxYrEZ4v6cJNnuwW4gM5m3X97 WkC8Bl93fFF/Ffk/+EoXtb3+Z64eCKIJvHq5RP23SKKCXKF2d8Za1NY0mWgqq45C9CKPqv6eclYW un+qRg87WnosI+M0F77E/6KrQIihzpAtN57mUDHC4fJua9OLuySCvohqb8mcAGtjJtbGwFNvOYpI GDGd6zuUXB8I6gzSMx/wnjeWbov0UmF5ies5dg/lrSDVIuKAz6IRd3oX6q2iJNcf2h3bk0VNJeKy mdrGZcA+Xzav59fF8/3j7dvLA9ouhqwUMyR2j+NEvxke4BFbbfKlbzdJIAINAQ1DD+UpgAhehoxe Kr7Zd72BokqNI4yhSNZ8FkHwCMFFvO6tPYL6a9eADhFDGAqTunQmvViGcH8/Pz9zDUroL9aFgSi3 WXWdkZlKwOUBndkglUxAf3pF3M6fjDcnMDpt4R/HpX2x9E5dCt+QdI09pv0hP8UGSERCXGvLUQ7S LlizTWdCk/IL+LhhKAuL0I89zhLV7qgvCYmdOyBW2KozGgQvveqXMgI4qmP442ER92lEh2RcmNhR qRbQu5/PfH+wJzyMa58Lc7vSuKQ9yeW4n3paf9WYzzHHFaCe3T1h+ZBq64TemB+TDgn2x9o6i7zA ZC1NrzIGQ66ONP4Hg+SZbQib7EtVhgZ0F28c3wtsqBsQUN41tzhdG3BpHljrKq+X2xXt6aTwwWZJ 386MeH9NyWQ1QVgsjrMmdgcK7FvTIncMzNZN5Ld+sDRXAHYxk7MXLf1ga64V6VMWrK3xEIhgfaHH yndmrsfKacb68KkIttsVveBsXhE8dH3/8vaDa1QXZGu433NTPcSp68Rgcj3qWOv2OPm1ocxJ2wJO bi/liGiE++G/98oaKs7cRtabwCml+t/HzFsFmuKiY9xTQSFMe3rCsD1tnhFN0ZvIHs4oEJh/UJla h6TBTZBwhnJcjGDoi+MbTdNQATH1iMJdEpWJomtduCAU6baoUwQXmkRyI6ZwZ5qE9XAD1UfkNRam Cugv+7rPuI6Ao4sZhDvXwyBxKPdpTOJudHbHTKGpknCeL9KckDaWwLJjXed6WhMNahqKdRxKvHaG Cgk/DdgubDlr34x+nZrhfYCIwkZsCM4aHeQNhcKoDbYrn/J1G0iik+e4vl0fjOsaSSMdE1CMgwg0 uYDgng1nO2b3CgGLsAwt4FB899nbdF1H9V+hZp3eTLpDTHs3jD2AEBFaVRxIwPV/Q99XGCQeNbgC 57n0NjKMzcUopYGIfynYkpk8BgrYgkX8hFXWPFQkPi4m5CJN3i7XPp12cSKJVu7aozNkah1xV/5m c5FI+pxUinqNn1WnPik0hguDM7gT25zJmWXl+pqQ0hGev6FLbHRbTkP4c5/iyodDfsrf6oJQR6y7 jppNVuyWq82FvkqlZovv3nSc59KjP3DtPjzuE5hNb7ui7htHOnX7bferabmc8m34MWKu43hUt5Ry e3Gi/4+zK2mSG8fVfyVP0z0R78VoXw5zYGrJlEuUVJIyK8sXRbXbdleM7erw8qL73z+A1EJSkMox By+JDyIhEiRBCgTAqI1jMsNfW/l9gH7SYrpVXOm4+mlM/ByuetYmSRyPWc/FOnxS9fQdrCTKDW6M f5OGnq18O9PoEUXneJFwC/C3gGALiDcAd6MOOwxJIAbTRPf5nKAe3oT8ZqtxkNUBII6y6FJDevrV eWhHk5Hj3Nu00J0b7orcJbD5sMlHbxgqrhIZl9uans6WYtDXbq+e/tYQDZPAX6xoB4zSS8kw4U13 2a0/7WAHtVM9Rl6idC2HTaPl5zQQOfmJEioPfTf0NwKYjDwnMvvlhE73Nph6m3t+tPTtqOMk4Fgk AEYNoyQFgHZCHmFxWMSqdYnn4hzYLhHlqjhypuebVJAmo53rRoY+Igbcm8Rz1lSYwFrboeJyYdxu dsooCeRUvTdMJAchxQjoJ8oaGFOyCIAc1sII8KllQ+VwbGKaE4BDNIoAPH+rOifYGwGSgxgCaFs4 RJMgPbACQkCB2DElh4ACak+ocsThxrOuHW5YogpTACN5v4IgcLekC4KNHOcaD2lEaRwx3WLwApSi 8KRxybWuT+RVP5PcdI4bkb2VVbljH3kyL+rrN2hDmCcoG3nWBR64hHrx0CV1i4d04mOFgTLEFJhY /ksekQsW0OkDOIVhd4hzapYpOTl++cbg5fFrMsS+49IhMjUe0nDUOYgB1iRR6AaEwAh41GCt+kQe 7BRdr4fxmDmSHgbmnlYgRxgS4gAAe2Oypaom4Vsu1ZPIeeTHiiY3uh/LzEeT0VBzgg2bz6GkPWJI qJxcIGCJGpI8b/aX7qLqmks7FE1HJjKY2VrXd6gxDUBkBR4pQNt0vmfR+8eZqSuDCOyDV7TL8a2A coXSFidy5ElguZOpe87OTG5k7w20cX0g31MuA6+8JzA51k/M98C0sePWJ97daQFZPM+j5mZ2iwL9 +8wMNdBQ+3Nfw4Mw8Hr60GBmumWwYO6tKfe+172xrYgRyz4sBp7lUQYBIL4bhMTG55KksWURb4uA QwG3tMlsqpK3JYhOzUUPfLQdV+/bHfuOcmOZcditkGYMALtrO+DuX2tRgJwQAzHlGdgTxGyZgf3t WcQSCIBjbwABnikSdfMu8UK+g9BrjESPbry3dHZ934HyU2XzgDLNYENhO1Ea0RvuLpRfyNbbN3i9 aLfli4qhjwY1pwGyuwIAg+vQW8w+CfcX0f7Mk11jrOeNbVFDA+mkOSOQPQsVGDyqp5FO2nC88W1C Z6697djkaz9Ebhi6GwEuFZ7I3ttSI0dsp1sVxM6rD5PtI5C9qRQYSphse2K1llBQkdtmAAMnPOf7 RQNLdlY25MKqMWIBSdIUOZXySR85up71RaffU5+wjGftKavwYuh4qWFIs5I9DlxJZjAx1zklAIYq xxBeQ98WG0bFxJpmObuU/XCqMepq1gwPBRkxj+LP8QRE3FSkhFA5RZY4EXBtp+jXi/xZIZHvyKqT +GuroF2ZMMkb0cNpds3b7H6Cdls24xd503iXCz1uiPqnj++KEJMIwvlspqs3lQpMa74r2841mq47 gsJ1XXE0LpV1R4L7mHCmsitk5ZsRMp3rrke5dKYpxx7mkzOQRiZIUT/XILkT5C1RKvqhsZYTZ8mQ cCpqkcameRRJRE23LHzlP/z48k5kRttM+5OvsuMAZfo4aFA7N1QDHUw0R/lwh3EaZj8UnZP1ThRa VG0iQgzeOExq7QLOAp7LJKWOApEDXt2PrdtNL5TwWRHFiRAnRv0y7Il29wPppqPJQjODGolWROc7 0tafUfU7z0yMfPOVBTmmLfoFp44kReuLL5E3s1Ck+s7m586ZZesFTDfSmeaaDQFUm7Q2EDyxPkPP X3G2azR3Yrs3sxtHItE5jRM4sU47FwHYFqIV1Nc/Y4Bl1hUJtW9HEAo3/JiwtOK+CxzKJENwdn1S aDKCkqW3kST6BGdg6uH0NdPUONPvdaHqkZMWekQmjpvheNVngh5tOG2NDFFs0bvpGXfoXd6Mx688 H1MGpUD7QJ7k6M8AlTT8BTgd8enthiGSzHKaJPdBj7dfvu19y6WUR4Cm25gg3kWq77Qgya+KppZ1 WbJ1IUPAhRcGN2LS7Lhv2QTJWBcE/e4xAsXSvpSy4823rN2aR8c3Gb2j58/vvr6IjC5fX748v/t2 EPihmGI5r/MZC4Zx4C5XqH++IE0Yww8VaVrYPpYaHS2dEE1aFEbRqpSSX/SuMt0D8UO3bflqpEvx WVwLWTpGlNNLUnwCV9TYIqiObQx/lE/4S67Flm6SpjZPYb42unVyRjT1UNDjDWdnhWG1hOgsMP+5 ilpOQcHMIE2Ce8TYJaWDSI6hwta6/1DaTuhOd2W1Qkvu+ptDdfHb1AW557eI9goRRdbJuWInRl3A EebD6F/7N0Gc1d9cvh0y0ya+G/dt3alhopJHXxLEqdVoIqStJhugehuxRUfYtbddoiYWfxUqzKzY M2ZDEQARXYtvxviYEN0VWX/GRMZgYGbPr+6P6HInaWzETJvxVjhuNqvJUL92umVKT6KRB8FLxL5V 9ugVR17cMNBOXfZMveW7MOCF/IuMr9FduOqasvDgPlFsE3e5wP444RzwmZJ0NGN2ZR0NmJAqHDcP kXqspkP6vkLBUt+NIxKROwe6XeWmhO5XjcmhDGaFxdgYLMi8vyBba8/VSONCRd6VYDVAVGi1mVE0 a7L3SUS12Q3Epd8I7XfyFFNjcXRPGQPbfzxnle/6PqkiAotUN7YF000bJRqmsPtp/ZDY1Sf9mRe2 oitjVzXTNShwQptR0sJyE7hkl6H9EW7IJLB9dRQOmGSnjtYAWSUYBGSjEqaCDkavKXAp186f4ApC eilduCivTZIJ7BTqbdZ3PUzM38KiwIvpVhAg6fuh88Q+OaAEFLp0f0+7rtcKhy2YE1B9Pu2CdVNI x0N1D6JDUUzLnDQ2NJVDPtb4nk3L0kSRH5PlARKQOsub+zB2NiYM3Ma9MmHM+78VMt/9XCMJiz1/ Y9Vo8uj2yhLX5Je3mHZvo4ArzFEBbUoZXNFPccWvSKNeeFnILeuaY9a2j01hJI/oi+qRfGLerhKS iG3rrhzTLpYqGSw2uofb3ous/R5ue36lR7Sye11j5QmsZYtcLBYzcQ1BiVbAaGEBjBwyuq7BE1Z0 I+L3ZDsg45prTNOWki4icNxXZiO5i3Q2VnEqwvkGk35lzURfUUzBZLvOjhRbLuIGm3FDjmKSu0ui R8e9JKUHVz26zAKYO5U2We0oW4xFQaWoKYtW29e1yRTrm/6AJfBVGq8RTMYjIMVzHyhV3Rd5kWnb CZ6lBRMoXhyiQzpInhFXdk4qGVOVafHaJvSYtlcRNafLyiyZY+Lw978/P00bH8yWqCedl1IxLhJ6 rgUzGGW2qqG//gQvRhDsYcvzU8wtS/HC5mstk7Zz6xjvP13jVnCjCnENi5Rkvui8aqmpjmuRZvWg ZRMbW64WruEyyN14S/P39y9e+fzlx1+Hlz9x16mcq8lyrl6pLOoLTT8pV+jYuRl0blOoryUZWHrd 3KBKDrk55UUlFp3qpOdJEhWIj1qYSG5ISiMMp3JhdP1iioYtsVeU1zbaluBRdXQ+hZTZqsfoTB+e P31/j9lrn74dprzUh6fvh19yARw+qw//oio3vNqiF/LTGzWGkY1n3IE/E9e6mWeGTET4K42vuctX TFDRvTpNbTMPTIVWYQIeGGtJUZYYkF6ObX1AP3159/zp09PXv81mK1pxCV1SD08/vr/879xqv/19 +IUBRRLWZfxiamrRjp/LRNFPP35/fvmfw/+hIohQMF+fgKBU9+2/qG8ZNKJIUQcMwncv+iX5cQxf KnGLUuZM/vFliRv137+pUjJGsGrKzBzkEutTFjmqE+0K1E6QddAG1N5E40h12VVB3jvWbaPYW+JY 2gGbhvma95uOeZsYTzwPlmppmGiaulY40Qmnr09//oGfAlbxhNJWuU0NP2QoqFQN5ITUtIFF6zbF 39N8IBAV17E4FZ0D4TvejfHizAdzMWOSrhEKF8YXHOD1U5gkW/5geIOM4sGavfH4CSYE4XowiWCI toXhc90ZpxMK7ZJzlk5KjoPr/RcxGg5jumv4n8j0rE51+JwMYxhaFr2Jn1i6orQD2ulsYsGA0qiW cUSZdSuucaemhMDYkliIzFq+jiAqmqwGVWSq6qmsupjXU7alFFdo+kW7kdImrMXAZeeUF2YHC6y8 kilUEW9YJZINyzXp+dufn57+PjRPX95/MqQXjANDAWDOB60rV8o0snSXbnhrWf3Qc7/xh6p3fT/e 7jT51LHOYF3AswonjCnHNp21v9qW/XDhQ1UGemNInhRDoHEKwbag6PPcSAiXlUXKhrvU9Xub/ISz sOZZcSuq4Q7EGwruHJnqvKixPaJjVf5ohZbjpYUTMNdK6eoLjPx8h//ATGpvjdaRt6rqEmNXWmH8 NmF0gW/SYih7qJlnlpnSbcV8d2Yp64a+s/Rv+gpHUZ3SomvQue4uteIwtbYH4NgLGUvxncr+Doo9 u7YXPOxKoTwAEp9TWHFiqmGr+sqQT2idbb3CEgShwygezqq+wECfLLf88CHzbfrV67Lg2W0okxT/ W12g7+k76MojbdHhve/zUPf4NSOmAh0o7F2Kf0CfesePwsF3e1J/4W/W1RhG+nq92VZuuV5lke+/ cTKjz9IT62NawChreRDa6iUPkiVyrA0NaevqWA/tEVQuJY+7lXHIeHeBkdEFqR2kG+UtTJl7ZvSF L5I7cN9YN/Lu1AY7J5vQYBHL/j5bFDFrgJ+e72S5taFNKj9jP9lOdQ4F0lJmxV09eO7DNbdPJANY Jc1Q3oNytXZ3s8gOHpk6yw2vYfrwCpPn9naZbTAVsJmsYFh1fRhutoHG9EpP1RWGC7l5jsfuGqrK Pq2HvgS1e+jO7oYy9e2lfByXqXB4uL+d9kfktejA5KpvqPKxE8fUwIF5oMmgd25NY/l+4oSOuu4b 66z6+LEt0lNGFTkj2lK9OKccvz7//vH9ymwSkU5T8rqGgM/Q2j2mwQPTynUN43Wc1IFUiUAVOlzC kzj0yz4ObKPHdexySwwYVuEBT6USs084JvM5Fw1ejkibG35bOGXDMfKtqzvkW4tE9VAuBrhWE5px TV+5nh4XRrZry2An2nRRQH6CNXi8lf6ArQl/isi4m27wFLFFOutNqKMm25JENEVIVejPRYUhnpLA hSbEZPKmTH3dnYsjkx4l9PVwgs3TG81Aw100MkTUUPUGn0Bhzckbz1yZ0ee6CnzoPdUjaXqgSW2n s/QrRYjJ8zqYK1h1C1zyZrjJFkaqH6eGps0GgI8FjvEiIj53eg19PYm4Ae3srsTA5Oe0iXzPeOcN W34km2WuppX1nKAJLiOProSW5KFoLhsCZ33FrsXV7ISRTPnLq43ZJs3pYlbKb11Ox7kUk4TI67Vv HbUYIVjsgYf7S9HezTGM869Pn98ffvvx4QNsz1JzP5YfYXuQYqyBpeWBJk62H1WS+rbTJlpsqQmx sFD4kxdl2eIR9WcDSOrmER5nKwD2PafsCFa+hnSPHV0WAmRZCKhlLZKDVHWbFadqyKq0YNSBwVRj rcaKzjHzRw7GYpYOqocD0I8suStFjmOVm8OcPm77O40dN4woVi8zuq376I8pFPnqJgA8fblmHTPe qG4wlWVLfrjAl7FT6bWttZDwTdXLwVvDp1vv+Rv+Z8AyhQDawkf/py2YZ2jTwPZ/Q1Iw711Li+dG aq9os+PTu/98ev74x/fDPw6w7TBT+82NhlsScdo9ft5RXxqxncCwc8+aBazwuz51fJdCtK/CC3n0 CNKink3YvchkXpJhZhauVSRRDYoi3RnbAMlQOQvPOlyd8vzo6kUWLpxtLEb2v8FFO6ooTLAe+JS5 oLGE+oVmpd0xx0j7miTTl+vdahSvX6o9V95tKxY9+4ci/xU6MCwbuuBjGtgW5YGj1N0mt6SqyLIz LS3HK6NF+xxAT13jQizN6pcv314+wQw1LrTjVwgiRP71xHayR6UXzh/Xaag0MvxbXnjV/TuyaLyt H7p/O/48j7SMZ8dLDpM1ldOMgKeUh00La0b7SE9exGOYR3h9H2/Kf7PfRPPsVKt5HPDXII5PYP2o aABaVPX6UZCkvPSOo2VEXR3bT4919aXSb9RW64SgZ1jdV/MpELWbO0W6hILsW9jr9fTqAIwto/NC Xs6kGYFFTzHJx2Py7s/37zC/Gz6wWh6Rn3l4orQMCEFLWj3NzkwccuqSroCbRtVIQbqAmVHqRR+z 8q6odL7kjGdKJq2AXyaxvpxYawrGWcLKkrL2xDPiK45RzmMDi39nFgTNfaqr1rjZqrFkvNtuAnQv MHKYIfUtncZddhY/Fm1qPnLKN/LMCLAE07W+ULYLwmBQszIt9FYHCYxM9YL6aHTYAyv7ujGV9Vpk D+J8cOslHlsxqvUqC4xQbxZV9GT6N0DeMCN3OhL7h6I6M/r6rnytCjM39ORnLGQoEzPeIRKz1Xgs s6q+Uvc1BAhbufUYmaj4o1FOkGZ6nmtzTtFe+LHMGpY6ElpsKgBPsWfRioXowznLyk4rUSr+qUg4 qEKmiwZ7KbQaTeZHeUNXYwXrXCj9akxhIoiuzmnXFMGBhz/tpmZjeuxC6pxWYdUbqlm3fXZnVg+2 CG4KQdPTTQGarGflY0VffxAMmKcz2ZonwYqtxHlhspoH8OSqW69UKgcufKsZsmOFkWJZA8Wp6+oZ jI64EatA4H3GuN5iQAJtgEk+6/QuhvKbUg2VJHqYFzrXCY/sWVdoo20mbs9uHSz1/Zv6caxiWQcV +vbTfXGtdTlgpumyLDWIZxjP3KRh2rsxf5IWSmChGxVrTYwpbR+GpqPvQop5ryh4vTk13YqK13qj vs3aWrSDIs5E2xPl7WMKy+imWslgF8P5clypiUQSeGHY6shfWwtx2XSqIUtZAEtSOM1gmasU6eZw cNKvssCwv63TwhiDapYwtfw567xCnCS/dLAtPycF5qrtwVSUhw1q+yLHjh+ceim2eWi77B4Wa64d Vo1keUhKlzEcRY6nv1ck6SYGNvVsD6Jfnp6QF5nRmW52SOLJv7r0X8h5OL98+44m7uTmtbpZig8b IdOR1KWYH2xNGjCpQZKAFVOre44Fb8o+1wMPzBB0G2tZR57l6FxidlJ1UYf7mNrGaTzpQ8K7c0JJ OKWwIYvP8V/yg9/Cw4vymLFLb77lRjJ1hDAloLdxWRDgCxRcBG1dblWc3K+649zdmwLwnprOF8Fv YG5UVJPUnCmmxEJnXAaDVDw3OQavoaqpsgc0cRSlwF/yQIaiDVPgjjUiFnGZD/uzBh9b3DJXoH2Y BDY5o/NkOqk9nsMQCQXFg1QodxVnrLcd9RKxpFau5fgxM8mdG+DFu89GJQzjcVHf/6TsmMrdiYyy BNXXLpcKurh7S2nDgjpG4+BhjUcRYz0Dz0y37M32kAl6HEPYkWrcHROQfnIiq8Bb4966ZiCT5zgj 6hvXAyeyL+7scE6uYiOTfiV9IhonbMurkKdWMxzogT8EXZ4Gbj6lHiEKynKR1RTgmDqRRfsBSLl7 1ydvOUlVm6PC6E+Nl5e2i+0ThlcZtsrty8SPbfUIWhZLRMhQgG05UVH9v4wuIcJJCDqezQaxqcFF 59p56dpqjiAVcG5zyrNlBjh8ePl6+O3T85f//Gr/8wBL+KE9HQ/jSe0PzOFD2SeHXxdbUEkxK/sL jWVuiGCGUpCvV94wPa9OxLvExovJaAmjTptai8M2JEetE1LX3WWJq9gKUsoTd22R8kh+w/j09O0P 4dvbv3x998fuvNn2ka/H4Zkbuv/6/PGjZkpIGWCKPmnnkSpZ5lTfwGqY2M9qekANTYvubqXvE8h7 ar+lsZwzMJpg3e5XrTpxzGeyO8NnZE0aOvq7xsQS2H0UPbVV1fiIuXN+6TGUmtgpi6Z//vM7JgD9 dvgu239R6Or9d+maj279H54/Hn7Fbvr+9PXj+++mNs/d0bKqww+SG/XLiyibLQb75YKOb6CxVVlP p/I2CsPDSXMkzI2JkS22lKp/VI2AI457aviaay/S/r+yJ2luo8f1r6h8mqnKYslL7FeVQ2+S+Kk3 9yLLvnQpcsdRxZJcWmqS+fUPIHsBm2glc4kjAGRzBQESS+FPNHFVCbfCRhNGbuaSzClUGsimCIIY N40K62KYK8NdSZnEBJadj02vlPQpdPAhlVyTpY8SqikmVXHmtl4iiiCae8YDcYWrRX7aTISnnj9G XYK1vlUksJFo6DYKRYaYeQFTr0I7Qeedp7YD0AeirtrKF5VBT/s5tEv3Haq+u9eYbtvgoxW8BYhg gsklhChU+VbRzYa3M9ZKFghHNA+xyv1bmSATsDJnlMg2UmMFTiI5kzdEH5QIJb3CYZim1oS/+a36 CgsVVBpuoimBprQSRF/0vLoT7XrqSUaET8XnvHUALbRUGQqCxzxnmDF3Y0tz55FxArvESpHF8EaH 3ffjYPr7vdx/nA9eTyXos/TmoPaJ+AOpduX0ZOc9Abcza4KZk1k9DS28Wk+iXg/EJvnO7y6kiAVN fzjFUCmOT7gS/EAnCT+KMDegQQhryYNVRn0b5ZrvVNLAmgBm7VLVkffXNMEtwdUht9r11OJScXPF BpHv0NwM2aoBNbzuw1xfa4tYw7Ev4YTEcR3vy+UtWzXi7qk9FMWlo0uM3hVr88DliSSFMBMN/J14 /CMBoVRO9X+keuQfXgjJ3OGsxQiBEfOE4CqXQy3JLy0KW7BNKSm2r+V2vRqkO+dgPt7VZlfOxJRd KU5dedDx62JHN7wlVZeuJxdRl4xNlkeJFpV7O1vDYnjXE/i9psqcHAeLv3Pkhqxug8rxCxOoWZNN H9NYhHjHZ/A9R2ZQT3enPRdmVIrQKv6vBoGTxva0RZyizzWyrQlNFt30RxfFazAc4VGaccME4B7O WGfvjkV2e22zI8T2qblxsoRv04TJDZ8NplqIQZWTugiAmLvpUtWoy1BSSsAyzblL3CrL+GZ3LN/3 uxWnBiUeXtHD2PIWjExhVen75vBqzl0SB6n2FiMB8rjmZE2JDFOzgLQ8mkj5FQC9RcnZXLdXa1cj XaKRwaNI2hiFO9ApHjFBZ2uIqBAwDv9Kfx+O5WYQbQfOj/X7vwcHVKW/w/J3dddXa/O2e1W7gsvd zqGVxdh+t3xZ7TZ9BVm8Sgm3iD+P92V5WC3fysHDbi8e+ir5E6nStj4Fi74KDJxEeltUzwb++lgq rH1av6F61gySsSjQWYpebuBPGdAZAK0zu47N7cSDeRPP3tfrtkl//3HZ1ofT8g2GsXecWTyRljDm tDD202IN+tevvjo5bPNk9FeLq+ERQR2Vu1611c/BZAeE2x0d4zp+twwkrqzVo9D1AivUVAFKFnsJ siAr7PEs12jxuT+12HzwlK4JKUdMs2k1oESCnF3r+nV/jEebtuuFN0ftnXTBW2QOe0caACej5i7j eGIV7hjjlYsxZTHqMAWtPeB1e8GGmMTLT/ISFuBBMk51kApAnTnaO6NM25GCopJxjAyxoLnp9TSy BYFVQUo7FcuL3Ds+lq5spAyYyn8WRECi5ClAZcVRefY/SDda0/QKMHgetg20oHv0DK5DXycP7Rfg hzqtnTgnlO35zUok2Aiuc0Tp4E8uo/VNO2B9gkio5z5KBHRBxJGT6aHnZaJmwqgMbhBPnwbp6dtB 7mqSHV2ZixWAJopSC6x8YxS6nTFAxAK0NBjdCF9mOaNLBx2XQwvRI1n/Rq+gev8rsihJYO9wk0+o XFUDg0ktfx7pKFzGIljcBQ/49e6HAxDC/bZjPR+OF1YxuguDYpoKp1tFg8TO8YsaqCLH86MMZ831 +GAX+qw0n0cu5liaJZZwgVWK8B/P4UbKzWKy6wN9Y8NP2JWc+VZiNV4P1vZlv1u/UJELeHISCZdt eE3eNMAiJ2c41zLGy59dNqSAiSJUxpOPg+N+uVpvXzmThJTlSkJ6oGVTfVcqWNFnWNkQBCl3MdKg Y2mrZBYzosq0lg1mFyiXbxdpJT/HmEysjtDUh5JCOPFFwOOi8vDqFoKTyHv2WmzT9kr1iRMZ0imP OxyCVg3yjNANwqIxxfSVgxOs00g806xxzkBDEaXVeAKTK8IrLe7GmHriwQ/5pI0XMmHkUq8bwFTW P/rNPUF0TGkIxsxLq1GlINhzPUWU7Y3FOOrWGzls+GB8QofhXrThWWTk3fe38lcbpIWYgeSLwnIn X+5H2m0/grtZyglKXijQyCTMJ4jMEsXkSEwFVfjwF545nSFNfVFl4Ws3JICU/oPByHr2UeIoB1B6 25EjnMxWBtXklqs8Og1VFoQU4PRxltM9EkRppv8qHBWEqr3KVvb6LpWzx2sQyhWv1XTLuYVhGjIP 5hGvj1N+c6Sov+pMGWS8ESDYVQS4qzO46w6uOccFfB6+RXllA3SmnqM9vjUYVIxhxMfcCiF1Fgsr yxKmZqwiStFl0fF5dOo5eSIyIib802nmP51KWkGWFGfHAwn6YnXJwky2poX6+ob+rkPBzbX7S8Q8 5FHGOWcv+tqMiJ7IbIiKQnQBBDaR5Jzws6g71K0SFAsPY9VZGevwOBmnI9WrppSdqQngTH2EX9FT f41RH/lzFHqdQeOn3VvgKNKprSGVMVxEH57wWQUDys+Uf14jWYcuGlw8dfGEaRYgvyVPcY+hLeDn nr7iGlDXVK5F2LkAjhsCI5uEFnIN2tK0eYVrtUcFYvmXxCiTgbYOy6yjhlWPlqixBiJFX39uGuRS bCuUP+uMZYppjlExbZWqBIAV2aOVhJ1hVIi+3aOwGcgF5IvjALYIcbtXgFGnTU5GlgTGTxyn19ri UbDu8oPh4pdfNMfwcE8ay2hhaIou0GG1gD+0Qo7E8h8t6XHq+xFv7EdKidD1eCtxQhR40OEo1taB OiKWqx+a/2/qgNajiSESIHmUPhIVYoqZdyeJxcsTisZYzgoc2SjvF75I6QmKKNxUGptoob1rgZA0 bfpKfJ+qrqpuux+TKPjszl15ajKHpkij+9vby74jLnfHBqr+Dl+3umqJ0s/AHD97C/wXtMKerwcp UPZ9ew5l+49eE1mz08xYzRLEyPsUnTyyvTzbE6WSH8rTyw7jOJIeNpseznPt2gYBs27OEQmdBz0p byQWbaPoTpbA2MIn7ygUndwOEglyl+8mHseTZ14S0lZ1lLosiI2f3AGjEB1ZBFRBzCSSeCCJUXkR /7QTUyvO5tjRh5BU2W0oMwh2rr0MU3ZRKqKb+vqP2vzn68X6sMNI4R+HF2QR+CogiRzT6yvOpk8j 0RLP6pgvWqAKDXfHph/rkIz0ZhPMTc8n726+aOtdw/XEAu8Q8YkqOkScoWmH5KqvibfXZ5rIPcZ2 SG7PFL//U/H7q/7i9zd/MUD3V/wFkU50/ceG3H257i4OYMG4GgsuvLlWdji6uexZGoAa6ihpm6OD 6g8N9SmqwSOe+oqnvuapb3iwMfo1go+/TSn6hrTpzVXfgA75KHQaCX+XjSSzSNwVnArZIPPuhzE9 JpyJrEtGjXc8tMbnSjoeSI15wul+DUkSgQplhfogS8xTInyfr3hieb7grjUaAhAsZ2adAtpq6e7S DSrMBa9WaeMgetw+ayKQ7GeCtadCijwbE/vzPBSOdnNUAYoQn5V88ayiwNQmd+QpPioeH+ipo10g qHfYcnXar4+/TePBmfekiRL4GyTYhxzDbUtRjL839pIUhDOYUSwBov+EO75s5gMZusN50tm3R/RR 2tY5EkAU7hQDpCifXu7bSKMCuTuKhogDlZKPCdZT+SiRJYLe/piXCDVkzFVTndIMJrYy6s2Mllky UG4IvUOFDWV5UBNA7bS06GMG0RkU6HW+j8bImlQPejCqemmUJ2ziYnlX4chKMC5EN5Ati1bdufh8 +Lbefj4dyv1m91J+VBFiiaTR9D6LguiJ2+4NhRXHFnwgYYauRkGHqXUcj29EnzN0HeWlh6C6+uCm uUNYmWJylBiXOBaaiWUXB8sc5qgvCnlN/GR1TWC7FKk1xjc1NtAC+aYzc6PHsPDTgG1uiy48K/HJ cpMXKRKJQjVGdsVWw84KNQm/hwzvCSa992k9hSQW1jgcBF2rau2Vw6i4wtVW8NwqI8/xHSLX4k4Q HLALtEV62f1n++H3crP88LZbvryvtx8Oy+8lUK5fPqy3x/IV2euH5fv7EnbF/sOhfMNI+x8Om+Xq 54fjbrP7vfvw7f37heLHs3K/Ld9kSKhyi+8wLV+ugsRDJb8H6+36uF6+rf+7RCw1qhMZblEYvu5E TBxQm/x8gndLwGpBp/KsmdzH/LsvS24/JR7vU3uGHvlYz1wJdElQfI74KLCXWYoUX4ioNwM53HqG pkb3j2xjNtI9CxsdDo+dqH7nc/a/34+7wWq3L9s42O0UKGLo00SldeDAIxPuWS4LNEnTmSPiKeXJ HYRZROeUBGiSJvQStIWxhCZzrRve2xKrr/GzODapZ/Shp67BiQKGFGQu4LlmvRXcLKBfi+rU6CRk 2b4nLQBTgyrMfZ8Fml+J5V8DLP+4xMS26lueTb3QMcgrQ0Qd6IUTjOJXvcrFp29v69XHn+XvwUou 0FeMBPTbWJdJqlnNV1CXk0Tr7zhmgzzHnTLVeE7iptwzRb1Cg5HRDeCyc290czO8r7tinY4/yu1x vVpixgdvK/uDWT7/sz7+GFiHw261lih3eVwaHXScgGnZxOGuL+siUxBnrdFlHPlPQ5VxsFve8iYi HfbklKx75z0IzjupGZypBWysyfdhS0tWlJQOZidsc8ydsW3CMnMNO8yK9Ryb6ZSfcFFlK2QkQ0B2 V7PtGMAFDctdb1zv6TGxtDhn9UBiXIQsPzMb6DY1r9fCFH0Me8YI9CiTqSlg96sLaHj/F+eqUBVe +LU8HM2PJc7ViJkTBBvQxWKqItV0m2H71swbcQ9uGoE5f/CdbHjpijG3tKe8Y049Z/2LukZJ47Bz KztwOV/RBnlj8lEBi10aKZnrJQnc4e2lUSSdWkMOOLq55cA3wxHTI0Bw/lcN+7niyuDrkh2xLw6K 4jHGr1Ur0lm//9BMHhoOYU4bwIpMMN+0/eixN6xmPedW4Pm+4MX8hibN+IscQnDb3zPXM/fuWB1Z Bp+umCTTG4X64yqCAzfmDeWa+blmagcVujtUVUzCzfu+PBw0Abjp19hX1/AGz3vm9M4KeXdtnk/+ 8zUHm3Js5jnNzKB6yXL7stsMwtPmW7kfTMptue9I7fVqCTF3R5yEE+ODbmJPpG+bscQkZsqxQoXh JD+J4Y4ORBjAfwT603pomUmvG4gYJROYdZtcI4oeXtjga7G1f1oa0kQPQMWgYcHPueSAXVIpb5+p ygul/BfZGPgx63GrrPmHxbq5EjFbWrZ09Ie39bc9Zl3a707H9ZY533xhs0wF4dU50URLPEPD4qod e664IuFRjch2voZWsuPQHO9BeHMqJdItYXSO5NznycHX1ztN5DOJek6f6aO5cTCLnzRKF4yU0GI5 WbrF4vcury1z9wOFCCaZ5/TsZ8Cb7rMEiXdBC8fjtXBC52A+lHOnBbQ0wIh+TjFZ+Gw7Cb57sWal TwEGhAYs3sFmT9SLlSDj3PYrmjS3dbLFzeV94XhJdX3rVfZuLUE8c9I7tDnBVDeyjopiQym+1Jd0 bPkvKqckFCZ3YmKCd6uxp+yB0FqnvkBuNna5P6KHCegmBxk45LB+3S6Pp305WP0oVz/X21diKBm5 OdQD1crvXKyg8OEzlgCyAtS4T+/l5qL5unzipVfkiWatZOLTrxfd0t4iSyw6eEZ5g6LyDLq8vyV3 g1HoYvbCPzUG+A/GwUizv6CQTFKaiVxcEEOLvxhQFa2hl5eilZvFpcdE54SOi3aFsQUIhOikTsan 9igIvazIM+FrVTlR4rKvTBhm0SvCPLC1QCbqacIiVwhh1PosyNho0gpQGWt2WqDwLKoDdjB5rgOH twYa3uoUjVpBYCLLC72UruTAT+a1qYLD1vXsJy0SlYbhnyYrEit5tHpPW6Swex7fAHvL6yjOtc4U HTZokbBNDc8hORgrlY7Yk7kiI8dPa9GKYcgDMkDM10DMRJfnOogvgaJ1exf+jEcRCBC+tmOf1RHa gYJgytQsxdUWrlGTL1JTz2dEcAae1Vpjnqbg6HALEJeigMbSpVCsk64/m0b0tdI0cgRsjblXWEli aS9b0naZ+mQokLlNEO4GRGwJ8fsAQTIpqtEzJ8H4t6pE8ZiIDJ8YAlvLjYEoaLZvJYicSkGYqUGG WkHasXwGkmkD+O9g8AWmJkSFUVgjikDrFmId2i1Zk5cAb6kR6vai/L48vR1lQt7162l3Ogw26lp8 uS+XwD//W/4fETShMDL4IrCfYKl+Hd4amBSVeIWlG5qioRn4gN8bfESrSvQEOtCILM4pG0ksH07h AMftjjzYIAJ9oXrN3Orpt73QAVUp4cIOphNfLWrCAeK8SPRpeKBM29ftv5qtkUWBcG5pcAr/ucgs 7QYOnfRA9uRsqINYqMBALW8au2SlRDLu8QQOSy3oOD4h102Yu2lkNmziZeirH41durnGUZiR1OTk oThk1RpJf/frrlPD3S+6s1N0AovIYKXAuLWhxJd1TOJWHyPE9cE4zbsdkZpROvVdcWX2skImvUj/ HNIJYpc+z1Bc3iD1p7paspPQ9/16e/wpw6K9bMrDq2lYIe2hZzJsgiaQKDDGgud14SoJAYjXPogn fvP48qWX4iEXXvb1ullYlchr1HBNtspTaMHqPbeZKEXRtdxs36GfAjtCMd5LEijQIapmunewmgue 9Vv58bjeVALfQZKuFHxvDq1M2iCNzL+CIkV4BK62GJYFuvGx9pRTDz1p0dgazgj6uqO6CVKvtLEJ RBpYmaObHWgY+XV0r1AW9k1yiL/siuy4vCNar+oV5pbfTq+v+GQptofj/rQpt0fdmBgDqaNQrfvw aj3Q7YJrmGR5j70PtA0ZvodJygDdn858pKqwenymvEkegrOJazPnYm6nVgjSXygyPATUBLSm2Hba taaqs138zUB1u6NMCoxruur5uKmDbFjcNKAaYbR+GqVGwuNIYHIBqt3I7lbfAqEFH8K760n50MtX bbacfMJH8/4xjCY5SOQFQDHD4MfM3YfCosURstYwagfUdRsJT38tb7tbyQ/wcxDt3g8fBv5u9fP0 rtbpdLl9pSzMknFcYJ1rnjQaGL3Scu/rUEfKAygn0c2kpo32Hnmsu7+da4gyXYN99HKSwajNOZO5 tutrt/aFnynSXR7YwpnnxR3lUOmZ+GLXrrJ/Hd7XW3zFg0ZuTsfyVwn/KY+rT58+0UCJ0pgF657I E686aptRe4RdlctgHK1K1Z6F/8MX9SUGEgYoBxNt28tlBSo+a/glGRdsvSIPMbA9DJ/SZVrZEqfk p9pqL8sjiJOwx1aojmvcCD+Osr6VYSagJMkNB6nOLPdUqS7PnZyb3gRjKIF4Jpl1s6hGw7ZqvaC2 xcZ5qHi2HImkswEb7CSx4ilPU5+BY4ntViCBRSA9RUFSw+uBDgn6NMiGIyVwkJA+2aowbVVBVUuL xBL6KmoFNmNi23m3MFJJX6w6NHFEnSXQM6/L8d+sYeMxE6D6WK8xc1FLY7FKpuGhxZ1m1I1uV7Ww dYasyl1Y2Jp0WWc0vCDGhjUlctFEuD0DU4XOKno0derepJ+gVYSNtAjT4e3NzaVsEbvIO0NIZces PBxxWyNnczDYzPK1pFtploeCa1ZzcM6caG4cAMD2AVxNUazdTiA9OxAJrDK8rMJxwPXVE3QRlkiX Q53timF8pWTl/wdf5oCdWWgBAA== --===============5888942818051271993==--