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.5 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,MENTIONS_GIT_HOSTING, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,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 9566CC433DF for ; Fri, 31 Jul 2020 01:26:42 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 618F1208A9 for ; Fri, 31 Jul 2020 01:26:42 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730940AbgGaB0j (ORCPT ); Thu, 30 Jul 2020 21:26:39 -0400 Received: from mga05.intel.com ([192.55.52.43]:62724 "EHLO mga05.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727039AbgGaB0i (ORCPT ); Thu, 30 Jul 2020 21:26:38 -0400 IronPort-SDR: 9N4DEWKhNUUiAA2ciBBDBu+cs6viMl1gqcL2rObJzav2Nzv15qUR2BskNzZ5qzVVOA6BiMP6Ql Pw43ni5ZVYNg== X-IronPort-AV: E=McAfee;i="6000,8403,9698"; a="236580355" X-IronPort-AV: E=Sophos;i="5.75,416,1589266800"; d="gz'50?scan'50,208,50";a="236580355" X-Amp-Result: UNKNOWN X-Amp-Original-Verdict: FILE UNKNOWN X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 30 Jul 2020 17:54:20 -0700 IronPort-SDR: 1qAnGBIr9n80r5jYkSfHg+Pqnbka4dyTMbVlxMOmL9TcAi+CLyVRNZnFEetx9fvf9M3NuMr/ix vugAOmSPNolw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,416,1589266800"; d="gz'50?scan'50,208,50";a="321258981" Received: from lkp-server02.sh.intel.com (HELO d4d86dd808e0) ([10.239.97.151]) by orsmga008.jf.intel.com with ESMTP; 30 Jul 2020 17:54:18 -0700 Received: from kbuild by d4d86dd808e0 with local (Exim 4.92) (envelope-from ) id 1k1JJR-0000Lz-Sc; Fri, 31 Jul 2020 00:54:17 +0000 Date: Fri, 31 Jul 2020 08:54:03 +0800 From: kernel test robot To: Luc Van Oostenryck Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org Subject: security/apparmor/lsm.c:1101:21: sparse: sparse: incorrect type in initializer (different address spaces) Message-ID: <202007310833.wdH0K35A%lkp@intel.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="VS++wcV0S1rZb1Fb" Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org --VS++wcV0S1rZb1Fb Content-Type: text/plain; charset=us-ascii Content-Disposition: inline tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 83bdc7275e6206f560d247be856bceba3e1ed8f2 commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces date: 6 weeks ago config: openrisc-randconfig-s031-20200730 (attached as .config) compiler: or1k-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.2-98-g4932334a-dirty git checkout 670d0a4b10704667765f7d18f7592993d02783aa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=openrisc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> security/apparmor/lsm.c:1101:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int *__pu_addr @@ got int [noderef] __user *optlen @@ security/apparmor/lsm.c:1101:21: sparse: expected int *__pu_addr >> security/apparmor/lsm.c:1101:21: sparse: got int [noderef] __user *optlen security/apparmor/lsm.c: note: in included file (through include/asm-generic/atomic.h, arch/openrisc/include/asm/atomic.h, include/linux/atomic.h, ...): arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int security/apparmor/lsm.c: note: in included file (through include/linux/sched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *to @@ got void [noderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from security/apparmor/lsm.c: note: in included file (through include/linux/uaccess.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const *from @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void const *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [noderef] __user *from security/apparmor/lsm.c: note: in included file (through include/asm-generic/atomic.h, arch/openrisc/include/asm/atomic.h, include/linux/atomic.h, ...): arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big (32) for type int -- >> drivers/watchdog/pcwd_usb.c:375:37: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected char const *__gu_addr @@ got char const [noderef] __user * @@ drivers/watchdog/pcwd_usb.c:375:37: sparse: expected char const *__gu_addr >> drivers/watchdog/pcwd_usb.c:375:37: sparse: got char const [noderef] __user * >> drivers/watchdog/pcwd_usb.c:407:24: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int *__pu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:407:24: sparse: expected int *__pu_addr >> drivers/watchdog/pcwd_usb.c:407:24: sparse: got int [noderef] __user *p drivers/watchdog/pcwd_usb.c:416:24: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int *__pu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:416:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:416:24: sparse: got int [noderef] __user *p >> drivers/watchdog/pcwd_usb.c:423:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:423:21: sparse: expected int const *__gu_addr drivers/watchdog/pcwd_usb.c:423:21: sparse: got int [noderef] __user *p drivers/watchdog/pcwd_usb.c:447:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:447:21: sparse: expected int const *__gu_addr drivers/watchdog/pcwd_usb.c:447:21: sparse: got int [noderef] __user *p drivers/watchdog/pcwd_usb.c:458:24: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int *__pu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:458:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:458:24: sparse: got int [noderef] __user *p drivers/watchdog/pcwd_usb.c:467:24: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int *__pu_addr @@ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:467:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:467:24: sparse: got int [noderef] __user *p drivers/watchdog/pcwd_usb.c: note: in included file (through include/linux/sched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *to @@ got void [noderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/linux/uaccess.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const *from @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void const *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [noderef] __user *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/linux/sched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void *to @@ got void [noderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/linux/uaccess.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const *from @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void const *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [noderef] __user *from vim +1101 security/apparmor/lsm.c 56974a6fcfef69e John Johansen 2017-07-18 1066 56974a6fcfef69e John Johansen 2017-07-18 1067 /** 56974a6fcfef69e John Johansen 2017-07-18 1068 * apparmor_socket_getpeersec_stream - get security context of peer 56974a6fcfef69e John Johansen 2017-07-18 1069 * 56974a6fcfef69e John Johansen 2017-07-18 1070 * Note: for tcp only valid if using ipsec or cipso on lan 56974a6fcfef69e John Johansen 2017-07-18 1071 */ 56974a6fcfef69e John Johansen 2017-07-18 1072 static int apparmor_socket_getpeersec_stream(struct socket *sock, 56974a6fcfef69e John Johansen 2017-07-18 1073 char __user *optval, 56974a6fcfef69e John Johansen 2017-07-18 1074 int __user *optlen, 56974a6fcfef69e John Johansen 2017-07-18 1075 unsigned int len) 56974a6fcfef69e John Johansen 2017-07-18 1076 { 56974a6fcfef69e John Johansen 2017-07-18 1077 char *name; 56974a6fcfef69e John Johansen 2017-07-18 1078 int slen, error = 0; 56974a6fcfef69e John Johansen 2017-07-18 1079 struct aa_label *label; 56974a6fcfef69e John Johansen 2017-07-18 1080 struct aa_label *peer; 56974a6fcfef69e John Johansen 2017-07-18 1081 56974a6fcfef69e John Johansen 2017-07-18 1082 label = begin_current_label_crit_section(); 56974a6fcfef69e John Johansen 2017-07-18 1083 peer = sk_peer_label(sock->sk); 56974a6fcfef69e John Johansen 2017-07-18 1084 if (IS_ERR(peer)) { 56974a6fcfef69e John Johansen 2017-07-18 1085 error = PTR_ERR(peer); 56974a6fcfef69e John Johansen 2017-07-18 1086 goto done; 56974a6fcfef69e John Johansen 2017-07-18 1087 } 56974a6fcfef69e John Johansen 2017-07-18 1088 slen = aa_label_asxprint(&name, labels_ns(label), peer, 56974a6fcfef69e John Johansen 2017-07-18 1089 FLAG_SHOW_MODE | FLAG_VIEW_SUBNS | 56974a6fcfef69e John Johansen 2017-07-18 1090 FLAG_HIDDEN_UNCONFINED, GFP_KERNEL); 56974a6fcfef69e John Johansen 2017-07-18 1091 /* don't include terminating \0 in slen, it breaks some apps */ 56974a6fcfef69e John Johansen 2017-07-18 1092 if (slen < 0) { 56974a6fcfef69e John Johansen 2017-07-18 1093 error = -ENOMEM; 56974a6fcfef69e John Johansen 2017-07-18 1094 } else { 56974a6fcfef69e John Johansen 2017-07-18 1095 if (slen > len) { 56974a6fcfef69e John Johansen 2017-07-18 1096 error = -ERANGE; 56974a6fcfef69e John Johansen 2017-07-18 1097 } else if (copy_to_user(optval, name, slen)) { 56974a6fcfef69e John Johansen 2017-07-18 1098 error = -EFAULT; 56974a6fcfef69e John Johansen 2017-07-18 1099 goto out; 56974a6fcfef69e John Johansen 2017-07-18 1100 } 56974a6fcfef69e John Johansen 2017-07-18 @1101 if (put_user(slen, optlen)) 56974a6fcfef69e John Johansen 2017-07-18 1102 error = -EFAULT; 56974a6fcfef69e John Johansen 2017-07-18 1103 out: 56974a6fcfef69e John Johansen 2017-07-18 1104 kfree(name); 56974a6fcfef69e John Johansen 2017-07-18 1105 56974a6fcfef69e John Johansen 2017-07-18 1106 } 56974a6fcfef69e John Johansen 2017-07-18 1107 56974a6fcfef69e John Johansen 2017-07-18 1108 done: 56974a6fcfef69e John Johansen 2017-07-18 1109 end_current_label_crit_section(label); 56974a6fcfef69e John Johansen 2017-07-18 1110 56974a6fcfef69e John Johansen 2017-07-18 1111 return error; 56974a6fcfef69e John Johansen 2017-07-18 1112 } 56974a6fcfef69e John Johansen 2017-07-18 1113 :::::: The code at line 1101 was first introduced by commit :::::: 56974a6fcfef69ee0825bd66ed13e92070ac5224 apparmor: add base infastructure for socket mediation :::::: TO: John Johansen :::::: CC: John Johansen --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org --VS++wcV0S1rZb1Fb Content-Type: application/gzip Content-Disposition: attachment; filename=".config.gz" Content-Transfer-Encoding: base64 H4sICNgCI18AAy5jb25maWcAjDxdb9u4su/7K4QucLHnod3YadIWF3mgKMpmLYkKSfmjL4Lr uK3RNA5sZ/f0358ZSrJIiXK7QDfRzJAcDofzRTJ//vFnQF5O+x/r026zfnz8GXzdPm0P69P2 Ifiye9z+fxCJIBM6YBHXb4A42T29/Pfv/fP26bA7boKbN+/fXL0+bEbBbHt42j4GdP/0Zff1 BXrY7Z/++PMPKrKYT0pKyzmTious1Gyp717tD6Pvrx+xs9dfN5vgrwml/wk+vLl+c/XKasNV CYi7nw1o0vZz9+Hq+uqqQSTRGT6+fntl/jv3k5BsckZfWd1PiSqJSsuJ0KIdxELwLOEZs1Ai U1oWVAupWiiX9+VCyBlAYMZ/BhMjwsfguD29PLcyCKWYsawEEag0t1pnXJcsm5dEwjx4yvXd 9Rh6OQ+Z5jxhIDalg90xeNqfsOPzxAUlSTO3V6984JIU9vTCgoO0FEm0RR+xmBSJNsx4wFOh dEZSdvfqr6f90/Y/r1r+1ILkNl8tYqXmPKdeXC4UX5bpfcEK5iVYEE2n5TCeSqFUmbJUyFVJ tCZ06hFOoVjCw3bqpAAtblYJVi04vnw+/jyetj/aVZqwjElOzaLmUoTW6tsoNRULP4ZnHxnV uBxeNJ3y3FWdSKSEZy5M8bQFTEkWgQZUdIhuUSonUjEXZo8WsbCYxKirfwbbp4dg/6Uzb1+j FJac16PKfr8UlGvG5izT6iISFZ5ElKizyPXux/Zw9EldczqDncFArNqa+Kcyh15FxKmZQQ3O BGI4cOdZc4O0uuCTaSmZghFSJh1B9Lhp2uSSsTTX0JXZ+63W1vC5SIpME7ny63ZF5WGtaU8F NG9kQvPib70+fg9OwE6wBtaOp/XpGKw3m/3L02n39LUjJWhQEmr64NnE5i9UEaosZbA1gEJ7 2dNEzZQmWvmZV9yF17L6DS7NbCQtAuVb3mxVAq5dF/go2RJW11pu5VCYNh0Q8m6a1urmQfVA RcR8cC0JvYwAtSFRmYa2zrjzO+/YWfWLtYdn5zUXju7y2RR6BU302nK0zjHYFh7ru/FVqzc8 0zMw2THr0IyuK7Grzbftw8vj9hB82a5PL4ft0YBrpj3Ys0ObSFHkyuYQjCqdeJUjTGZ1Aw/z FaJUdMqiVg4x4bL0YmgMBgJMzIJHemrphR4gr6A5jxxma7CMUuL3ExU+hp33iclhtiM255T1 hgO1x43UgxuzaimuoLMzimjSYtBpgo2GLWlzXYBxzPwbEFyWHMLB5DuoZhQGxsqVy5TRWS5A b9D4QbjiM5VGxCY6MKzb7cF5w/pEDEwWJZpFntaSJWRlhRWgHCBFE0FIa+HMN0mhNyUKCTJu owsZlZNPtjcEQAiAsc0JwJJP7uq2mOUnp3HySXS+31oMCoGm192nEOuJHFwD/8TKWEh0N/Aj JRl1LH+XTMEvPoGuFNWJ7bjnrCx4NLq12Mhju+fKBvpiF7eZ8cmoHJbWmTXCMUliDRpXjrsF VMHW2f85RsUOCy2xsCQGUUmrk5BAmBEXzkAFhPKdT9BRq5dc2PSKTzKSxJZuGJ5sgAkcbICa gjmyAjhuLTAXZSErF9igozkHNmuRWJOFTkIiJbfFN0OSVar6kNKR5xlqRIBar/nc0Q5Y0mbM wT1t4ug48uKBORZF7iYz9rvOqfLt4cv+8GP9tNkG7J/tE/hdApadoueFCMY29b/ZopnbPK1E XoUkjn6opAi7dg5zEaIhrps5tiIhoW8zQAddMlgIOWFNWuFPG5AM7XXCFRgv0GWRenu3yaZE RhAROIpTxDEEzTmB8WBhIB8CK+hsHs1SY60xNeQxBwInaAfPHfPE0S8TGhir6gSSbr7XEIuc ZZIrK0bByC3E9c4iTqyR0tQKQppAerpgELpargcCWy5yAQ4yJXmHJwzb44RMwBwUOdJ4AnNV WBsJIkA6q5r2WmAED5bfQhgNyw/7zfZ43B+C08/nKga0go1m0nI0K0fjq6u2O8gAwM+UC8k1 01NwNBPL3TdCMlkpRHxlpEP0EFVo/Lg+HgPOA/50PB1eNlhSsMdq2hozyyEzL+N4ZKucjyIZ ebTJQwgG9xddRXzuj5W9bFsanvoTZshpRldXQ6jxzSDq2m3ldGctBKRFI6ssUnn/qcSkwjtT UDiVg6+TZaSW3rFdoagpicSinOTe4JamkamlNIsbbT+/fP0KiUOwf24W9tzxxyLNyyIXWVlk lTuLwFPC3sMtepkVBvyeSdGrVbGQd6U8PDSoS9ruFHnWh8233Wm7QdTrh+0ztAd7a03KjgWI pNNqx06FmPU3KaiGyWtL2CiQJlieDRtiVQoC3VJBuFdkZlsNkdCEETlEdD0OuS5FHJfaMULl hOgphp8C7e7EDoerkpixGmAXNcMKWJMfNx2IqEgg0QZvZ+IH9JSWNZ1oEsLEEvA34JnHjlio yFf1lEtt++3a4VQMY7RgKyraKdt9qZ7/nFAxf/15fdw+BN8rx/h82H/ZPTpJNRKVMyYzljhG /VLbruX/hRJYyU2KURKzpmiiCpViyHHlihIDptJEo7onZSdhq6iBkmJ+SPxBRk1VZJco6oqh P/1ouJL0XFh0A54e9x4u6zlRX/hskTgRmAUHGzMa6BVQ4/Hbi5zXVDe3v0F1/f53+roZjS9P BLbN9O7V8dt69KrXB2o3ZGcXpY2hy6JMuVIQibTpZMlT9M0DOWQGezCCECcNReIn0ZKnDd0M o9vBWWBBhKFeiVlhhR0h7j43+1NUcdj19wVT2sVgXhiqiRfoFGjbJFKzCQQM3vyyRpV6dOVE 4TXBJ7BKfgU39YvKDZWmbuorCCDRIuxMAABlet9lBp1LrLo8oEhFTnw7A9HVkQLEgFSu8jri dNr3CMoYlCAkrg+rQrL14bRDExNocFKOB4X5aW5aQ1KE6awvhU9VJFRLauVhMXfArVvsjGjP LL0v5xzaiCZi5KItPVmeEOi4qKKPCCy+e8JiIWer0M7XGnAY3zvlbGeQs59T2ahtWmS1UFXO M2MCbd01PhG9ljluiAwRUqhhErloCMxE2X+3m5fT+vPj1hyaBSb3OllTDnkWpxrdopNjuyk2 fpURRj7NsQu60bpcaOle1Zeikue6B07djAO6xB5tgQ0xa2aSbn/sDz+DdP20/rr94Q1kIM/Q TlKOAIgFIoZptpuc1Ac0XImkk12pPAGXnmvjxCExUndvO41CNH2d7VGBqrCAdmNBO2boHMCY LFAyNJlOQpfyiewwBj905YCEJciZsibcLE8Kc4UucItF8u7t1YfbtiAHSpJDKIUp38xqinFZ FZRZsJQ4H72suwHFygUSCJjU3bsG9CkXwslZPoWFb9d/uo5FEjmEJv4Q1ENsolEjPgxbZ470 YgnuCLJn6mTWMG2ctTljsAeZFHkZglWbpkT6w/Fh5Wvlek5Hs+3p3/3hu5tAnJebzpi2lx+/ IWEjE8coLN0v2FOpzbGBYSO/Cx1wrctYpqbk48ViqXbGVj5JV5NrTwryquiHB2jeroCgse0l pNXa686AKM/sA0fzXUZTmncGQzDWSP3JaU0gifTjcV4855eQEzRvLC2WHjYrilIXWROGN3Zi hdtdzDjzS7tqONd8EBuL4hKuHdY/AC5LSabDOAjIhpE8R3M0sNrtdG2gq6UVHc0bsNt9EeXD CmooJFn8ggKxsC5KS+E/0MTR4dfJpUjiTEOL0D6Wa0xlg797tXn5vNu8cntPoxuIlb3aO791 1XR+W+s6nqbGA6oKRFW5XsH2KaOBfAdnf3tpaW8vru2tZ3FdHlKe+zMNg+3orI1SXPdmDbDy Vvpkb9BZVJVsIqZXOeu1rjTtAqtoaXIsPGCWPrATDKGR/jBescltmSx+NZ4hA0/gvx5SLXOe XO4I1iAh4QAyzUGx/IYGr+oAAxT9kFVeZRiO5HhbCHKteOVgTJN8ujI1CPBsad45egeamCd6 wOiH+QUk2J+I0kGrq+iARZbRQGrXuXTThLDa8W3wCVPlPhEhKiHu1QeEQcbpP2RFZCjHtwMZ czLWvmGUttNJySO74FR9l3wC0bDKhOjKu8bPgc+yki0Q+GVfUabSx4OpPhkjqEhnORHkaWFG fH81Ht3b9C20nMwHPKRFkw7RRIzC0L6rAYllVOFj7C4OSWaeRsvxjdWI5FainU9FJ9y4TcQi J76AmjPGkO+bt45ZOUPLLKl/MYeZsEMyTQb2ftsIz8yZP7ABs1ARDfptkwl6WI2oNccoU3j4 LfAe3N0PO4vQKTF58WAlea4WXHuvlM0rvq1IvIF0HPcZDBlLjtm7hTJZsq8rF4GpTGrnJmjx eDbrxQJpPhC8VBcDfPOYKtlV+GrOEfOLBSmSa1gbhc53iOpe6uG4N6Pd20VNMlNdnTAmWEJC P3hNAykqAx25llsuy7BQq9I9cQ7vk066EJy2x/pOlcNaPtMT5j9ZMLZACohSRMYh0/GmLr3u Owg7TWmNTypJ1JZL8vXm+/YUyPXDbo/F5tN+s3+0shri7Gf8gtAGjwMSMmeOOKSwUk4pFGuG IMs345vgqWb2YfvPbrMNHg67f9wCzYwrSytvc+KeEIX5PcODAl+Fi6xAaUu8xBJHVnplwace eE5kD8Zyyz+sSGrXMC7O46wzxCkewCdGwz7lAkxI7SwdAJOF+/1x9OH6QyNHAARRNWrUlR4S zz1jz5fUa14RpxJqHwgjCHZYtwdKElqGXGNkm/nCZSSKE7bsdTaRHoZo2WHIxdJ37/wnjojl Mcefsc8IIz4tezwYUJknROOZRpeZCqvhf2+XN/7TRiOojwTPMIfxItYd2ZwXTOVgffD+w5f1 ZttZsCm/Ho2WPaZoPr4ZLb073tPjeaRChYMjvccaNRC4wmGp8gBVhMBxl62JoR2UwWxOcJ9d IklpSLoEFjpnZFaz4zQregpjCaMzabdlVSyvbtmpwS46W+psEOwyJ14/YZF0IDJGT+mYqAZY au0rtmA3Gcs7TRAEsikvhfI1FZ6Cil8QTnnkD/MQ5ztxAbh9cct8uvcd8RxCxfiEYqjjulI4 hFYsibtPCYzeho8v29N+f/o26BZCbQ5fEncxbLuJ86I81B3VscDmtqEqFMRYPtNhU4a0u6Jn VKpng3JtaKT2h6AVTUHkoASxC5qOr659haoan4MZWnrYi/2bqsJGOhn1hXVNe7CkYJTIqN// HP75u0/lPOnQEz299hdaB9fayiliiKnkwPMNQM6o71bWgkuWMOVeRY0nGM2P+ja5QTxttw/H 4LQPPm+BQzyZeMBTiaDOA0ZWZFJDsLpsjlYBsjS3MdvD8wUHWCtS81nbH3P54O79OTKKZ9wO F6vvZs+5QJ7lhZMv1fBJ7o1XMWj8YMUv1Xd7PuZElx/qC8Vea8xj1wrzuE/soqHLTnhuY7tm neXTMuE+pc1iSzPhA9KOCYfMzmEfwBkdKL4CrqOvdSi+PgTxbvuIFxJ//Hh52m3Ma7HgL2jx n1olLbuD/WgZv/vw7op0x1bcp4aIwbOekX39yQCzm+trD8j1vS2YjzsiUPrDzTS2Q9HfnE3L dq4I5GvepytYMI4tB9CUv/qQ+hpxDY0UpEXuoRLkS7C2ziXYmPBEzO0jVYjitRBJk1c20e1Q ZJvT2iqdv1PKSffbXEEpKT+fjub09WZ9eAg+H3YPX83Ctheodpt6mEB0D3GK6mrPlCW5zbMD hsRBT533anOd5vY5WQOB7K16dFPDwYBkEUmcG0y5rPqOuUwXRLLqqVwzjXh3+PHv+rANHvfr h+3BOhBdmCnbTJ5B5ugswhcbltSXWpLzIBb3bSvzCqA7cy/6fDnAR9dcMLH1tTuNcz5pLppg cOocGp/FaOI3yecD4c45wJMD1eOKAEOPuptSshTU0bMP8rS8F6qcFfgyUle3SdryJvZA1Cqj TT/mlZ6nm6p9Q8SanpoN0tyLzYsmLrWMPps459jVt2sOapiyb7zXsDS176k3je03ek1j6hSs MJmfgk4YhYmZU6FBZMwyWh3EMq9fH9hSVXz3crRMa1s6EkvtrTimU44lFVt17C4sDyLAINFe YaQRc6a8d4u0E93Ap1me/hW+9sLJ8/pwdMsU0IjId+aiin3XH8DWLZ8uSsRnqDM8SN28EDFI r3T7rBgOC/g1SPd4AaW6Za8P66fjY+UEkvXPHs9hMgOF6zFgblT5RVXhSmkpVWy/M8mqL8sz 6qSUvlIH75LKOMK+fPV5FUeWuqvUHdPIUuS9aZyvDYEWV8XC3ppKkv4tRfp3/Lg+fgs233bP nhoUrmLM3fE+sojRzqNchMNe7r7VrdtjldecBYqsxymiM9F9v9whCMELrDQzz5x9HSQW/kI3 EyZSpuXKZRBNQEiyWWkewZWji9hxd/gO/u3A8B2y95dZuP3FKNdj7zZv5sl9t+vPyN4UDHTg nmWDfj/Qo9DeBTEpaic/7upECgFT1NcViAlIH1po3lF7SdIOQHQAJFQs07btvKDz1cWr9fMz FolroMl/DNV6g/fQHZONjAmMIZe4Ong0NnCFFLfjdKXSQdXEapx0S6u/YqR6b7p9/PJ6s386 rXdPkKxBV/2qgcMGvrOJE6L8h+1Gz+g0H1/PBi/nAolSenzjvXGMyKS3LPm0B4J/XRh8l1pA XlPlkfY1rhrLpLmjjdjR+H3PLo8rZ1aFzrvj99fi6TVFifXiaFckgk6uvY7m19K1ecggkO08 1jPbI2OI8QKrF0+r6k1OdxM1NHWANLgaDZ3wnu7aFOMlWudJbzEMklHIqhZ4GJK6V/P8BOCH aHc3Lsr+TO2mIZ026yPX//4N3nv9+Lh9DJAm+FJtSJD2Yf/42PNBpp90yamne8z9PWBfibtd KAjMM//t94aEgLqZ4nllGHbHTVd1DBn+z5/+nkkirmYic//ihAdZ+c7z9Z7fo41MYnHlYaxH jH+DYVCNuk3CUBu1HNrmOW9W20glyYGT4P+qn2PINdPgR3WN0BtSGDJ3gvcQE4lz+HDehL/u uMeWkN0lr8Hm6vBbc+kE/3LMwNSKsBPuAKBcJOZhjJrilc2ObTIEIQvrvxrT/sGABhdD/OXe x60Rk6RgZjSHW9NdNwp1KKYrSDkhK/AdvWtriwinaAUhN6ZiA3/BBrB4gxhfGdgdlIzIZOVH zUT40QFEq4yk3GHgrKI2zMnBRFzfJ22/oQGTc4xcWdqZAVZOEuI7S4CIt34n2dZ4KlBJlu/f v/twO9yoBIdiv1Gv3jA4hdz6WUNWJAl++KvWNRHeNbhIEMlw+G2EGeYXeDDi/spjJPEcd6Zp NPf3gC9tUYhYdfJfkKluP/xqjp0ZVCXFecoC9fL8vD+crMIhQDue0YCqy27E/NmJNmdCzHSR eu+UG2RMQvCHqtNZTHu9aCIn3astTbXQZvRs3/s1TwgfFVgK2NnqOplfje0nfNHN+GZZRrn9 l3L+x9mVdbeNK+m/4sd7z7mZ5iKK1MM8QFwkxtxMUBLtFx4n8XRy2llO7L63+98PCgBJLAU5 Mw9ZVF8R+1IFVBUUon5KoQLaUUV2qut7OSFW+5yU7sKAbjwf7QK2c1UtPfU5XORbV3lzjl1G d4kXEPXssaRVsPO80KQEygHtXOeBIVGEAPujH8eaz8+M8Dx3HnZhc6zTbRhpmkdG/W2C6zGw 2rB6McmhC2WwCEw11kSZEbzEx4lmRa6Nhe7ckcYhQKUBzH5rHOc524fqm5dlJK9NzxE2iRwu biseIQWWaJUfSKrooJJck3GbxJFF34XpuEWo47ixyUw7nJLdscupdi8m0Tz3PW+DTgmjziJQ 1NNfjy/Sf/orD1/w8vnxJ5OFX+FsBfhunplsfPOJTZ4vP+C/aqyhiWqq1/8jMWwa6tNHQ/QZ B1fCBJTJbrE+Kr+9MnmT7VBMoPj59MzD672Yy9W57eSJ20pQ63EtkaUz0qN2vQTuQFM/0NE2 B5j1PXX9EcodmGlJhcMqJHfyq1tlPepJmUEINi14BOPSf8H5pUFZbx3W+Qx0CJk0FfZRIC+X LJDwyv4H67I//nXz+vjj6V83afaOjaN/qpNm3jIoaqZy7AWo7dzLJ2iwoPkT1TtnpqVHqyYp hAskhmeyylC1h4Nh2crpFGwm+CE33grDPHJfjJ4BgRPpC7ZLoeSS/40hFCIgOuhVuWf/oB+Y fQxUCB6ohzwUUN8tOayqr1E7o7Uu4gZX3bE4gtt6C4yf6vJYOUYBTgU9phlKRHW4GWeyTkMX DlfXAmN2SVnR1MRMDs0rlrWrLk1wQouHboIpJf3E9BIKMco94kQbrpd3634lru/IkfhRgJtg SZZChCK8xtKUzXvCs7zGdccmgGOHlBz0vo7CNHKYfIlmOKILG7aMLWu0NlBBMoVBqjaGjAuz byGaQd+32HIAPNyXXesDoHa6W4hYk9Yjhpv/fHn9zNBv72hR3Hx7fGUK5Wo7pUxpSIsc0xId jxxI8zNmps6xu7YvFX0HEmP5zXsSZP3RLNPHP19ev3+94eHU7PJACvtarOQiDUbBE+Js81Vv 94tsZfvu+7fnv01W3a8ZmpePDauF5+uv/3l8fv7w+PGPm99unp9+f/z4N3oqiboxccnd0BmG lEk3hr870IqyytUDIKB1+s43237LhI3vU2Qhs1SHWbHgRh36LWWzFnXdv9omc7lCcJEfRcBu 53AivSM+1d2JVOXDFY/GIXeohTVJwe8BxcrOCZ1HFwKnkmfc/2hP+vzksLg7OJxoWPloji9A rF6wf7cVnttwwgvI6NOZ9wwPUev4+vyGEtw4XCOaqnYEwOFOAy6Q9A6/EnDdETfkVF/96iuj BdDB4bEkDJREitYEzb4wGfzLhz9BcqVs/n/8fEOUyCnaNJ1D9PziJ4sADIbp2rEO9MU5b7K2 n8K0rZEdj+0vMa5VrQzJzmGwI5MmFUnh2FKXAqUuMFCXuc/8dU0eDEePFcqQIjd1WqHW5OqX bNo2g2qgo4J9itNPbK/TxAJBmZp9kqBxppSPRcBfvY33G7xp92kNc9kRBI5HZzNVZDtDeZqO 1iQl51INeaZCPA6AVstDXpdNuQwffP3E55CScP4gD9vXtZNTpqajbK1pCMsGLIzMitspFaf3 5UBPSNcX9fm9n7icqOXnh7Y9VHi7HE/kkpcoVCZBNI44pFv+KkhNeiZPakJ5fa4zp1nk/Bn7 hjStdlhQVyO98C0NX6yrscCMGtRUy7TXFYRbmiQRfpwlIJYsdqdoJNpaHdukQfJ+i8ulDByD DUPfmDA8ZcqGHtqyDRncGHj5NG2N93Gjne2zcT2CC+T/Zfwl4c5DBh8ZXZNDMnTmRrO2yXBE I0womXZ5QyHgI1onEEJMM/+7lMSe503cEQPJ8447ErncjPv6zWboWUtpuq6KgZdej0KU1PRk 6PXjYZ+bZ9/Il3l+hyfZVqQv2B+8x2lNU6S/aJ3u/HSHH3bCNzvff2MpYXIFWPOM+JZKBz6G tZoONWvxX6jqfdN2bKXXjmaZxjxWB6PH7G/PuurKfjKEiegl6u2hfHgpHwzHV0GZLpEr+OLC gMdZVBIXJ8Fq4vJsmIylexhKnqpiYvSbFR/LHhdiAAg6hyEIW42lkSM+d4/3hgm4coAICyos lbtd5Aiy3VWOuB9d53gaAnc8B7cN4W1pCaQApWTAGxDAW7apOURqgLv8QOjJFXKbe4skviPC 5orj0whwtpXFyYgfmgDO/rjWRYCPtHViZXfEp9KlUl3s4NcixGX1kN86MP3ai/10Oh/on9Xq /q9CitSHoClTbFscMmQKE+ppqe3kcESDWjKpH67SCAbmWUmcLdMTeRyNYTmI8i5QVflVQLU3 VumDg//hPlP3GhXisnzeNNiJXU/uU1vZunypycj+/vn0/PTycrP/+f3x0weIY4pYAQsnmTLY eF7tvCl4M0ElvTcCCWBTXJxwGBYt2inD7MCAnybQzHFzq+xb53rq9pV25TDT7Fkgb25+/Pnq vA2xvII4gXsQYfXnYFGAdUGlmSYIBJzXxe2/RhZvvNxqhhwCqcnQl6NEFmPkZ+gTzf3UKF7d QtxHhwe/YHnf3uM+RALOz4aVwkx2N6HLqUR8eZvf71vNuWSmsMWsiyL1nlhHksSJ7DBkuN1j udwNvhdhmQCgXzorUOBvMZFg4chkuIZ+m0RI2tWtKIydtMOtTMP5eMnx74eUbDc+ZniisiQb H2s9MazQdKs6CYPwWrLAofpYKamOcRhhfVKnFM2s7no/wAyKF44mvwzquckCQBAP0CPxhA9t lRUlPYrowdhUXVjp0F7IRX3oYoVODT6WmACsh2Bai8WmKn4csnZLHUxDe0qPRpQ4hPNSbbzw 6vgbHaM9JR2T+0esL4bbqav195aUVcO5IrAFg8pI4pI+UyamdlatpgutUIidwq9wVqKfpe2+ x0XRheVQBLgZ0crRO6RWjWNCo7etLKeSzcFaNcVZMC7DkHRAq0DLLL+UTebYzRa+oc4wjWDN ZL6AwgHdsdEEgzBAwAu8lKFGdFyQmhz4qQ0C8ajEbY9lxqG9FtF5xSBaQ47lNVzKjP1AG+/h mDfHE3bvtbBk+x2S6IHUedpi5R9O/R5MlIsRG8E08nwfAWCbPKk32wsydmr4do08FYULMd39 lT6pbtlgYjsRfpS1MHaUJ2QciFhco3r8u5ALWpKt0oViavOQcOrdFf/NdRPWsSnRdiAVLDsm MuOXJCvXYUixnU7hOJKGyZMHtAC3e/YDRaTGZ2E070tSsQZlGsvGqiosvJRpvLkyRhQi2KbA ez2leg2n4knS1cnWG3GUZDRONpqLjQ7HSRxjjWEy7VzpAybNkdxZ7JznZRpr7zNZHRJ7q0Sg Gk71ODgznRmmIXyzeicm15RjWvau1PanwPd8TAaxuIKdKxE4zW2bfCrTJgn95M3GSO+TdKiJ v8GPCGzWg+//Cusw0M594G3zbn6NOSM7z3FaobHdN4SN6Dea8kjqjh5L7UpcgfNcVWc15EAq 4pgKApOz0dVL+ZiGrmg/Kp+8LHmjHoe2zUpHcY5sO847HCurMjCifagw3dL7eIsvy1r2pwZ9 NEyr8O1QBH4QOxsEv/TTWVq8GnzFmy6J5/nXGDRbRhVm8rvvJ57vKhuT4qNf6ay6pr6PC8Ea W14VhEIMVcyxUePkP1zFKutxe6qmgeJnhxprk4+o2qXldhv7gWNzyBsjyoDWMRnT/Ydo9LY4 zv/f628+WfildGxMA7g1hmE0Qk0dxZuXVazvsyGJx9Hd+xem1vmOycMPZ9sa3pkbHItEnfph nITu76+tFXw7J8370tEygIe1GyuHK2DOJT83zqetG87qFFrc965k388D1MWQmaeLViHAF49J LW8kBO9YOxYxgN+DO7ajf3lTuJYODgaOVR7Ah3u4jSyvpT1AEOhNpOkjJhOff1fSIPT+6lzn /y+HwA/fnOusz/jmg5+7G5yBZbvu5MOs720u5wLfpegJt8rS15MevUDbjMoqd4S71tmoKdjh fIMfODy+dba6cLxFY7B1b+2A9NRvPGftTn3BVI7Qod5orGOy1QPWar3Q0W3kxfh9jcr4kA/b IHh7OD1YbxqhbH17rKVo+pYAW95RYYthHsOUFBPI+7rcGHaLnGToApyGt56A6r2RQKE67cwU MXUMepBJrwiTX1WdJSUwKaFnUTZWwYsIkwUkFM1n4MfHn594hJvyt/bGNJLXy81/wt/6C4iC 3JFeOz0T1KrcdzQwqT25qKUVRGn9xdiRUss8aADeaGZypE8nJBfSybyNjMRpMHVdT5rLnATg MMR0XJxpU0OjCIu8sDBUonvk3RDW5qvfCnKFIm4lPj/+fPz4+vTTdoAb1LefzuoLzMImE6Lg NFS8KqO6zAwzw0o7Xmwa41vJ8HZOpjmfw8sfu2TqBt06QfhPcTLSNBUPwQ8BDiH80jwa6dPP L4/PtjeyPIfgXq6p9jKOAJIg8syelmTlXeY5tgl+za584m+jyCPTmTBS41irVf4CTi+xcDQq 09qsaBrp29nUXDZEn49VuJp+OvGYPRsM7ZnIXdb5woJmlI9D3mSOh8FURkI7eLznbEaIxLrh oj1epkOuRumHIEnwjUeyQYQixLlEOLp+//YOkmEUPqy4LxTiLiiTYjpb6KNWKxrDiBQW6l/h fviSQ99tFOKVcUHLokRjfs14mjZjh33IgTnla83HhPFtSeMRM2uSLHJhfj8QMHofrEoY+JX6 ODin/X1H0MBX+nfXcufpsf7h7/xZI19l2pNT1rPV4L99PwqUB15tTndFymLcjuhlpmSQVkod nQttpqAzYD1llKtPsQZlO9+vfAprgmgZ3wALWk1Vh7bsCl1pCc5UNhBH2xkldhnsTGNhyymP jJmyZR+/zJnnGsiJfhjpPEvMF22bMKdpOvTVHG/ETLcRXoYZQV+HWe46tR1VpcpIC0iLQKhp hzkGRCMwQiuvEi9/V9r5JJV8dlqztTme53B+SAX5S5Fo0An+iL3+TYUuEjN/p9lXSGcLSzoo u7qcxLvDvUGFlZlHMzLp4Oot7pM1mX3F6OB8o4RzCfs8cWtYEDREDOdTjY0EgeoxYjnxQuAt h/ZKfl17yfu2cL2hVO9/pURMiBJPtGviliDxx3KY6GnE0lhxp6fiypKygc8FMxlJlPt9fUTE xnXM3Dcpt7pIsQEDAUzh8Y+N9jL2St2oYQfSPtjoGlg3BzhG57CzeGsKrElZc6BNzqBbA5sV HHjDa54ckgb2WpwOkQSDaKvMvpT96bB02Apd3c8xHQ0akzrQOtkiuqKTyW7uT3TgbrYi7Kht ABSkiOmUetLIfkzc/gBi8ehk8QS01gtAPTJm3ECJofVpnIdM/efz65cfz09/sRpAOXhgLqww bFPZC0WKpV1Vufb+tUzUiPi0UkWGBrka0k3obc2iA9SlZBdtMNMWneMvO9WubGAzsIE+P+hE /taewm+Voq7GtKsytN+vtpuelAxEC4qPo0K0FqNuGQ3k+ffvP7+8fv76YvRBdWj3pdXbQO7S wpG6QImqjhp5LPkuaiqEMl1HwTpK/355ffp68wECncr4d//4+v3l9fnvm6evH54+fXr6dPOb 5HrHRHEIjPdPvQopTCZ7nGQ5LQ8Njyqsy80GaDzmYqC2JzkwmHLBTJvE23tl896Kz6pwtpad FFBZg6JaiMZEy3rI0VdDGbgYw8snctka8o1JOAz6jY0H1sKPnx5/8IXFMgmESpctWL+e9OMr XjIROclZqL7dt0NxeniYWrYxOtkG0lK2X7srN5TNvWkLy6vSvn4Wk0LWQxktmq1lAFEsSnR2 Ocei0b7DCVONOSTHic4PRBlyxVkvEYjZeY28ssC8eoNlb5rUK/Uzfe5L9aEDHkKBUWSI2BXI LihZj73SrbEPFBLyjYzjJQ5iuvKmfnyBEbe64tv2qDyCBleZ9JTAhQP+ZRuD9mA10NiStdcs VDjxNIDcVGkmTAC4QwCKis2z3fyONU1WY0ZPEtSjTgOxoEargQoNio3VnJZqwWhVHXtTVTlc OHjyleMsGdBWTCE9H/CZ0uMRApWp7ElJt15gkPlhgdGhWihGoIzSKUwlzUuPQnu4b+7qbjrc ibprFSG1HVKMDxdlE8QOWaA8+nO2y6edfL9LDjljgLE/hgE1b/AlWgAeKQ94hirfBqNnfspn PvqJ6j94pPoPTeYSZ+dswdIjL6zk5y8QPGmtCCQActiaZKeHg2Y/nb4lzdBJdiHZd3TOwJbO IB0m04Pj4i3XKcxMJMgPYFGtb2HBYvWtqGl1vRTtd4gs8fj6/aclNXRDxwr+/eMfSLFZFf0o SVjqInaE2Aj5Ayc30uUKTPVd74vCiygvT083bLthe+UnHnqcbaA8t5f/cuUDgbiSoFNNsG2G VAv5a9dh+dIUNueo+RKY+LN8yvk7o2uysMIPEmdxalLjxB5SYv/DsxCAoiLBpiPzxjpaloqM XeBptl8zAoZRW+w6ZmaAJ79C6iW6fmKh2gJqojZCWXfqRysLMvoRGrduYRhq1SZ1yYuMcbxV 3SJmpL9NvAjLqk3zqsXWlTXNTNv2ZnpKN3HlRw5gp6zaMIG0M3FJ4JFIIeKiDFUa+cHM0RaG tDx/UvZ3ps+16H+HbwSXeI04T5wmB5RB5e4I3qonitiuXx9//GAyPs/Ckkv5d/FmHI2tltNN mUGokkt8gvWGDejZhXSYZCek9gH+8VSTErUeiBIg4N7cxDn5WF3wSw+O8vhLZ2zRFI20T7Y0 Hs2my5sHw0hNND6pSZQFbHi0e8wYTzCVus//3G0pGniTo+Z2Ltq7zqZCmoLMOqu7DxcNj1Of /vrBFl67b1eHIr14kg5D0lVGkjWd9d3hMhn6tT0CzV7m1MBuIkm/VgZ+ZhDan0r69U+LJLI6 eujKNEh8z1StjUYUE6jIfqFxA7O6pC8fWiMUB9D3WexFAXoDLWE/CRIjsX22i2K/vpwNujCH NYhVF+42odX6mT2L7bVWIUcmuU+jIeKmbsYYd1i/yJYGg5Rka3UAIwe+WU9OTrZ2dzHyzjcr OtzVo52ycB4yqKaV30zc7bTbfqSvF8H36hhgi6e/3WBjO/R3aCACZab4ZvunYZgknj3cS9pS x2s0fDnpwY7bEXrfroHwq6R7u2bLVwiqD/LDoc8PZFBNY0QVmDx2UpShiz/vR/67/3yRZwOr BrHU4+IvDzHTYLPDru10liRQM1kR/6Kdza+QY5NdGeihVIcEUl61HvT58d+qeQdLRxxWQLyd WiuboFOhuZtkqIsu3egQtmBoHH7o/hhzl9Q4ghAvkhC4sC/UGaYDvgtwFzAMp7TH9mqdK8FT jlSvFBWIE0ch48R3lSXJPcwUS2fxY2SEyJGwiJJwCzUR/TkkHrYl7bATS8EPcdp1JW4lu4au yQL/HYyrbJWnGtJg53CiUPnqYRs6LARVNpnbGwUTgpAiaVvYcm+3MvU5j3Fat5l6WCK4UQyi kNc4JDKkp66r7nGqHXZUQ10h1LuMCMY1VbasJ7sgMsliE5rgJERbGwV5Zl7vu+BBOE5F+2BP 4BjufvHMwi4FjxB1secSirdVn2iV36aXwPO1VWdGYJagVhMqgzq/NDqSFacHWFZ0j15oyrIz VG1YiPRkEOd09ndBPKq+vwZgmoya8DHDpEiTKxumE+ty1jl6CIalnoZINtPByyTWrmENBG0b jgWoADE3UEk7+HxNdwb4KPS0VXeGqi6JA8xjbWYwNa41Td4BV76shnAb+Whp/E0UxzaS5QO/ xhEs22iLfmxIpDqyC22EddjGj0YHsEPSAiCIYqzeAMWmhYvNEyWoyLKM5XofbtD0hZh89WMp Msf2ADqQ0yEXy/oGmXmzSYyN9EPkhUjT9cNuE0VYOU8p9T0PO2daWkHoN0jrZrvdLlLGKV9Q jZ/TucxMkrzXEUcmwlhQBBZGTE/lqwlZHPpKTgp946QnGL0GV1EXELmArQvYOYDQkYevzhcF 2AWaPccCDPHoO4DQBWzcgCYlaRB61KhxxK5U4whNlYaxIxT2wpEyXRV3R1x4RngbqAHDp6Fv 0ccfl9TAGhYtyTB2mAHDjHODFQjiadcvo0KZttKEhzneKLrYN1gTYXLwzFTEPhPJCywLgJKg QF/1WFiiMI4o9vUBvV+YUenkBoWzK10MTG06DbAj2uChivyE1igQeCjAxA6CkgOEKowBGhs5 lsetHyJjsNzXJEfyZfQuHxH6kMRYi71PN9fmAJPb/pe0K2tuHEfSf0VPOz2x09E8xEO70Q8Q SEls82qSOlwvCpWtqnKsbdX6mJ3694sEeOBIyLXbTw7nlwISVyIBJjIb18OywED+VrJOEYAr cESpCADRBD2gGzY6bPmUKXMtMEE7yjZQRDMB4Lm4oHPP8yyyzL059ohM4QgtcnghIgd/uOta gNAJUUXDMRcLeqxwhLHtxwvMbpIYfGawoV0gMDSujcQShh6qdjnkfyB3GM6RVcIBLO8QBxbI xBKiLlBdVtDadz5QZh0N0RdNYxlpufLcZUF1I2DaKegBWYx5EfoYFU+exOj48VViuDojC2z7 ZVTEVMiLGJu6RYzKG2OLp8AVTV6gZqEEI0POqGjF7NyvPj9ToPn1URU8uBE86j0aR74leLDM M0ePHwNH2VFxgZa1yt3iiNOOrVCkhQBEEdK7DGDHVXRdArRAb31GjpoWETYf+deFhbJe6wL3 6B5/si/wHavddC6qsRjwwXJjHP6/PuKgV42aImWqCZntKdv75w7S0wzwXAsQwrUC2pSipfOo uCbJwILNaoEtfUxltXQThOx8Dk4zmEbhuIeuMA752CXpyNF1bYRthW1RhPg+wzSY68VJ7GI3 txNTGylfexQgwk4FrHdj7EiSlURzDZARy6OhkcH3sDI7GiGnpW5TUGw36YraxVcYR7B3wQoD uuMyREvahzCgshd14CLTc9e5HmYz7GM/ivw1DsRuggMLK+ChhwsOXesJzoDoL0EHzaH6rUh4 HsVBh9jgAgpLvG1sTWxWNiRFoeFb2nRTCaqaYMet4bXGVMpAMRK8jEBZ7clttcUdYUcu8YpF JMFKSwiBhX2PHtkhbiJ3QmIF/+4Y8OBeIQLMnt7uvt1fvs7ql/Pbw9P58v42W1/+eX55vsi3 DeOP6ybtSz6uqx3SVJWBdWT++9NHTGVV1Wj3aHy1norxCn+SCsdpqXy1wbZYpm216pCxVMhS RdJNk7gNQn7bn3dxIPRtgPIL9fMn9jKoxyd70ywWnD6ccIFNVXExbwL9i0AT+JRlDXwlwmTs XWauiZnskTKbMuhCN0bL7D92X206s/H9Aybs8PUfLbntIFime/25FTz8I54LQXYM78Jtu/z1 8+n1fD/NLnp6uZcmFeOoKTKpIChO1bbZUn651srhVYClBV9w7Vf8mRLPyocWIDEoTYVoN/wV ku0L25IWBCkSyHJBnE0kBazwECScY6gLcgnQAs9rpDBeEWr4ZDU9Cfry/nwHDpVDXAIzW/gq MXQv0Ajt4sU8wPywOdz6kXohOFA91O2QzR7JM0b9Eem8OHIMV32ZhUfWA49uLSnABG5yit6V AQfrm2DhyBY7p5peNLw4cKo8YDTVVxLooxuNIpCgWiIKSgyKcyUfh9EBUSmPky1fG0Y8/gBH T40TqhhqfLRAv/qox+aAyt+1oKRehxvN6unatdSIYGfuAQyRKkIfKcaW1IDDeYnNSYDWpEvB KZlfeWpjS13/oEamkciWWzSZA2lvUXuhh13aALjJQma6GlGJN5BZk7QZxS8vAGY1Ge/bpIKz P9vQkugS4Ju0wL33AOSfk2XnvYkYIMRQXznmd76eqnmaTdTAUBCCHmMnsgmWLzhGajw3qfHC MaWB7/NItfECvd6b0FgrqWMHR71VjLbQaxwMkImcfuKPIWtNI/QkRbBdVkPGTlsaQ2BhttfW CtZ0FbBVhJ07+G+1z4CcNjr7ycSb2NE6oLdOdInblF5JdwUM2TwKD9e2gLYIHGO/4URjR1RZ bm5jNgNtCqDPJ9RTyPIQOI72cpEsIbYITqw6bcCGmOjCT7ArHu5eLufH893by+X54e51Jrwj syFrgWRbS7YWY7HsHgIbnvYMznw/X40iquaDAzQlvKLyfQdQ3ZVU0OIojo1S8mKrD1ZN8oJY oqfVbeg6gSVOGf8Y7mL71xDfTKvecDKdqAsHoXpupAsLTWAt8+1qs+cIQtv+ZTq1jlTh06oW J5xabbu05POK/cy7Ym2MLNqLsB5j2t3HblSGwwRmHA4Y2Sa2yIL7PHTmplGnFLPPXS/yr636 vPAD39jvO+oH8QKzTTg6+AErv8kruinJmmDOKtzEGx20TaJp+A0A0qXcnvLwOIq80UXgOri7 3QBbZwF3Udb2Ek6LDdpc37TNe5qJemX29AxIQwEJnOs/FQ7V8gbBIwOCV7tujg+I6i6i/kZH +mOpoYJXB1k/Xj0IjefqdL3Ne9flsZkj0fq+b+JYZQeIp1XlnfI5d2KAMCBbEU2n3RayJ+DE A0HseB6Bq1zM1FprKkQBCzyDqcYTynbQhMHBLw4DFEoCX55qEsK3QxQZDoomMhy0kEYMJ7ar rTAmiwKps0WDDrZ6hzPh1YqpaqhJs0Q7FalIaEd8C+K5aKdyBO3UFSkDPwjQ4dO9+CZEHD2u tlmw7AIfFShr84XvoLUyKPQil2AYU++hf0ARZmpEaAs5gvYkd2O0lMY26gBvuzBgrrY9FxsO WjKDwijEIOnog1QLaICeaRSe4ZiEl8CPSx8VEYfzhbWEOETdelWeBa4ppnMTDgWevVq2Zf1E 0xfouhBHOw/v9P7wrYWIVXAlQLcKxQt0ZhW0dllP41gdzF1cljqOA3TWABKiM7Wo/4wWHrrG 4CCJL3rhmm/pbH78RM2NickSjlliWG0/pRYNX+/i2AntUGyHFji0LzAyfy2hPvSfQOOAKkHq MVUCxsOqCTGTA6VrZ+MJafM1ZFa1rNXeUPlgGFp2VHVC7MpV4Ym1cF0TyMz5wA197LCrMIWe uKbAi4CZjl0O6EyRXQp+/vqgtVecnDUm10dXHnZ2M9DrakYwzdGlaL4+1DDlCaKEjU8OEal2 lif9E4f+NlFB5vgS1C3thuoKEELNKBdJedZYskVD0BtaJcwQxeSkfbi8VimcsNNwA/nB5JhO YDQcgk2ibAOMmmkvZ3QMAr7Z8IKmWqyiCWtSCA/qKxK0XZOS4pOSU5LVsq6aOt+ulSj9nL4l 8hmQkbqOMalZelh7hxAmNjHFq/gMjUUFya/7bDA6SUR7LrJOCfADsCHBYVkdjskOu7elqT78 PCEsp8v5sCYqvGlSIoPzVBTbvE1jwOWqeZZgkpXthiTVHlD0AyuUPJUqfSKUAHZkyvHQmQPb Mml2POBam+YpzzDXBzG4fzgNB7m3H9/lF5d9o0jBv7Do7RKoyNR37HY2Bohz2sFwWDkaArmm LWCbNDZoCGpgw/krL7njxjf/RpOlrri7vCBZW3dZkvJ82MaQC394JepnsltOVz1KpUrhvNLd w/35Ms8fnt//Nbt8h1P1q17rbp5LynGiqVcpEh0GO2WDrd4zCAaS7KwHcMEhDt9FVvL8xuVa Vk+Co9uWcnN5nUVaePBCUA2WCshqXyrPBXkZy+0KglMg1F1B8ryict9hfaSM2Biay+hBfZBg bOxDyNTen1uYNaLrRLSex/Pp9QxdxafLt9Mbj65z5jF57k0RmvN/v59f32ZEfNRKDzVTR0Va sjUgv/+2is6ZkoevD2+nx1m3M5sEs6tQMvsCpZTT7XEWcmCDTWpIiv27KwX7BBCyeMGnRz7K 2N7EmXgwyDbl4XeYmm7bY654jTCebZ5Kjzv7tiHSy7rG+GzORwGU4bRYhfPM+fPd6QmL2ArM Yi7SnOihVSWedcvMcaR5XCfvDWXMSObiMDikfMbWRUTrjHjqHvCp8cO5fFPHW9zd7NMlU7Ea 2fOm5BTk+fR4+Qq9Cds10huiynrXMBy/DRUcm4TxWEVmorhu6BhungqqyvTb/TTSqmyqztk6 ygWSTEW1Ww81hnqjB8931QsnBTiib91VFqEBtN93RaglItPXoaXv+SLQs5+r2HGHPmcpWpEN qtmpS2rpUa/3z6j7XKxKiTp+ZcYCO2m1K3Jpaf0DGvbLSRnLv18bSabklctmmYqOZA8pWldB +BiLL3yXL288uOX9+cvDM1OtL6f7h4ut30W20Kat8XjiIgkovWmwCLAAFm3mBcoJgFsho8aU LURhn2TzCH0KPsGyUyxfxRptMlg0QARGNQsoGsVfgA92u2wQ4TakwTJvSKinK7ubNC2xb0XC KoUTSFlp4pCF+t1YFN+lJIhCNM2OqJ6QKHLCjd7XXboK49AzCxTfsqzlARzLXzz6XRzU1pDc ZJhUd5enJ/hQwfccm4EFmmHuGtO624mwqKaR4mlngomOrAFOZ6ZRVeuGFEeSQlgg2Rotb7SG 0B+2a7vumBBQNW1GyupYJJ0aQnJErihObsV1teLEyGjTdBbedJgZAWyjZSi49F6eDEceND4n cmpqaJNejSI/Ox38pBj8NGCRYZcVpiWdMbnMjYKd15k1qx331YOF7h/ApydkC2WHJZrlOYHI DPw8ph7CTs93D4+Pp5cfNhOJdB3h4ctEaLKGB9bqp/bp/e3y6yv3W2Cq8/OP2d8IowiCWfLf 9CUAB3ZvVMWnd6Z5/zH7J9jdPN6kUMVTda9/tb6irX3lAqa3MpiqcLGVWAduMBofu1EuLijb Hu4uauSocV0H8Xz8GT09nV9ObMieXy9I+qje9GD6o4SzZW6O/SYLAuwrQ9+FxcFz5+avOB1z VJvgwDCOgCq/EJmoC6PTGNV3FxhV/nYlqNXOC+dGCUANFqboQI+xS0UJxqqI1Hx8Az0I59cK YzBSGKNGJlV9dTnxRjg1wMVZ4I6eA0PkBdiHvBFWvpCNVLR/I1SyyNJRcXxlnlW7BVrFQnP3 G+iuHwd4tupeo7VhaPGx6Ndqtygc9KWQhPuG6Qdk5Q3xSK6VqAwjuXNU62ICXBezoEd856DV 7HChdq6LVNM2ju/UFH1DLDjKqiodl/MgUgZFlaNbD4ebP4J5acjYBjchISjVRyQMbuYpXWMm 6MgQLMlKLy/t4vTGUDBtQCO/8OVjO64fuerMGc3clYYbpSD2kC4hN5GPPgLu79L2iwhTl4we O9FxRwt0j1Uk4bKtHk+v36zqPIGvjUhvgjcU+rl2hMN5KPeOWs0Yu/Cv7YnS7g+FEZHeQGoF PSReHDsiXnuzM28UlZ9p95/9NR2vpHt/nvIm/P93b6lkSOVQ58bNuMC6hMTKVmWAkWHBj6DL UNeKLuI4soD8IGL7JQctv2SnQSXHuYJ1nvreQcNCSyv/7FwlIK+MHajnKA5YChYomYZUbG7F ikPOfhiZ1+ACpfN5G8uvis1Ol7/BqQPtuYGl5xq29i1V/lm4iUsdEX9LXKfslrPVy+X5Dabw X1014In2+saswNPL/eyX19Pb+fHx4e3899mXvgb9zjSOk9YXD6uxEu54kPV/n7GV9HJ+fYPc ataykuYgZSIDyjBtqZckKgK9J/uAcVnKOJ5HvtQvv7Y/0wZm0c5dOaQkL6zz5ZHjdQYbdy67 PnBit3O8xUKTmw9V1iWuMrEmiFfpalUKOXT+lk1qnca6hU1KV25pN/vlJ/s4MRoaaA39lLMB DQzpmNL0nAYZh1gWhPaDbhVBSK/3t+jHaCiJdC0rqLy8vH2bEbaDPtydnn+7ubycT8+zbmrn b5TPL3YAt1ZXHpg6kV998CM9ZTuVq3Vrvk4639dZe2qAUkOCTBFHmw1kGweeh9GO4ubApLOz 9XgibZOfHt12IT8t56O7jEPiOa1Smroq/u3/VEVHwYNwUj79Xa7009nl+fHH7A22xtff2JFP /b04A4qdnp34+281gwkw+8KMJL5wjWnrLw63f6iNA8+9ud5i2CJHHUDFTdX0zuCXtAwcz3P/ Ln8lmmwwsatfLo+vkPSBCXV+vHyfPZ//x7qetkVxe1whXyXNiwde+Prl9P0bvIBA8pgkSKJZ wmjyTW1fh0wWBtsLMzRnn9+/fIFkOubV7mqJWn7oz/jvlqe7/3p8+PrtjU2QnCZ63mipaIaK L0a95wX2+JPQmzxbbzqFUTYgJ44+vD7+znTkEo73V6tS3LQmshnxckAMf8EJ4r5d+1wNwTbB wifmA5H756Ufc8WxJZSpwqMGEZpALMAq3oGh75Cf4cLuWSSWOg7kuJUKEqlR/KXBgZyFDfYZ ceLBQkiOXaC5bUvzR8liIUmzY50f5TWGLZPQdSJcUtLQAy2xULpS2f3E6FfVB2unV03sRMj2 rvuH1++Pp0FLmE4SQsNQPTWqQmZ/821Rtr/HDo431R6yU0rH0g9qH/gMdSVdE1fb0kzXtMkS sw2bTFk37N8pmm7XpOW62yDdy9gaouTv3kLpKKOUXETsLd/Pd7AXwQ+QnHDwCzLvUmqp90go 3XbVts9roQDNFrst4Fhdq8llRiLqaMXRditdnHPKtkll3yveWWl+k5VGF6ZdVR8tiWM5Q7Ze puU1DrpJm+bWIhvdZOy/W1UUWjUtyRqduF0TjVYQSvJc/zU/yugNobWHX0ZxkHVHl0Ek+qUT qDd7HL6tmxTN8A0om0DrqmyyVhmWiar1jfTLtGiPcmxvTsvlQFiCkmoP/gUVTaYLyKebVOuS dVossybRiCs5GD+n5FWTVfpk2VR5l8rpm/n/huDrLoz9RheTicKnuEXWm9tULWVLeZYalbgn eSd/FgPaLkv3bVVqz8RBjtuGwJdES40ZxBxRi8o6Y0H9QZbovgFYt8/KjT5IN2kJeZ+6SqPn VAt4zolpohPKaldpNNYPoDx00Qb6MfnDIuDIwf6pVX/XAbEsV8CbbbHM05okHj5xgWe9mDti Aig/3W/SNG+v6YKCsMEt2BRD80tzhrxr9E4syO2KmXQblco9XdcGb0abCoLwaOQKvlGmt3pv Ftu8y4wZqrCUHRbkQCCN/PEXSFWjrpUMnvyWEAyKrS1lg5LIdg1RpyXrLTXNuKB3JL8tbZtE DQnqqTbJeuJkUeAwm5wtjlBdJddMV8FoZVT/RZMxO1cfLsaqL72mopRogjDVb/RhS4p2W2p9 3SobB/xnKCUe0TgX2eeVDmy7lOBpU3uUTWS216c2pc+kqXNdUzZFptezbtK0JG2G28C8pII0 3R/VLRRnZWKbE/7EmINV3aZoqC+Obphe0hR9t4E03mMO1enBskS3T8otmEzHuvXVQrfe6lPa aFpsT2ilVb7PMtVHHoiHjE10lQSFqX08UIxh/nSbMJupMqwXEZ7tuEEz63JDKK+1MYS8fl4f bnYILYDYeWOiINQW5U5MmbH+JELPMSQGlXILyQWOmczQWng+7kw5FBi8A6CUKslQbWh2zLOu YwZ8WjK7qVRlRJ3iR0dDxS2JKY4jKESLZ9I253lyW72ostROU9xBrIHti7THDVU7Ta+UlCXT jzQ9lul+eJRhnBeKh9e78+Pj6fl8eX/lnWz4Ewl3PBEKrk6bNlPjYXHY6nqrsFXd+rjfMBWW Zy0er6/vrJb3Fs8g0C71LNdyE8H1f8s0WclsTWYe3v7uybAYiWk+Xl7f8JzHSv00jA6OA91r qfUAE0P0vvJDTk+Wa+2xnMlTU3gNU6YtwXToxGYkOAQonWrXqQ1EN2Qr+tgZI8TxroO50LJT h61pnG3V5niVFomqw9ZznU1tSgXJRtzwYAIrNhXYb7BehGDSEOdI6391IvUCWRm2ru9dGcE2 j13XlGokM8ErXS4BUvvsbmIShsEiuioYFA6h2CyCAazErhuI3NOrT1E0Tug+/iJ9PL0iX7L5 AqGF3g5mgJT4qxpA94k2uF0xHupLtjX9x0x4eFfMvkxn9+fvcCc7uzzPWtpms8/vb7NlfgPa 5tgms6fTj+FS9/T4epl9Ps+ez+f78/1/ziChr1zS5vz4nd8+P8FrkofnLxd9WQ6cugaDjsie Tl8fnr/afGqLhGoRD1QY7GJmV+FdktVGiBNB3X0wCRkLRPe7AtverHAtlJStr48dJxqlyk3h 8yWRncwnsghk2D8AOb2x3n6arR/fz7P89OP8Mn6D5DOLzdCny/1Z7kleCLxbq8ocu7PgG8Ge au6+QOEbHEK2SyRU86w1b7v7H2PXFbyHNhnkFCfaVtpThxoxqGgLC5IVBwtipNQdlF4UOigR V5EcgECQjbhjHOc1NB67P+Mqrm0jD7un5otFe0E40cyrTAlD29NjumeEBJGsoWSZ62tkhJsb n20DV0Wd7tgQiTe+nKhIQrgxsUlJh6LwSg9uElN2ZtfeGcql12wjwk6LMo+45ToWMVpRWtTp GkVWXZJBql8U3LFdprFIldUESy8mczS4LMn6WmsH+Iie3GXJY9fzPbxRsRv4+puffgIRdtD7 X8qepLmNnNf7+xWqnOarmnyxNi+HHNibxLg396LFly7HURzVeCtZrpm8X/8AshcuoDzvEkcA uLNBEAABehV5vnaNtaayJCsE1+G2zFmKufMcVbQUH1QTl9xVPvM4bHHfLZW2hIlfwW1uSr9I UunwSn+6O0lWXlzoTmYmdjxvclaYArCL/JL0RFWJNvWJrZGyVfLRFObxZHpmvgiRqKzi55dz +gO58VlNb5ibmsV4Z6JZTu7nl5s5jWORi98gCuYNbpBO+a9jaWEB93VeAIcoS7qZbeJlsaOh j74hf+uFxTfmXzvKb4BvZsnpOtZr697Zzrd4FOKoOUtSnoYuKUGpwc/o2jeoH2gSmrGuebn0 spQ+DMqyHp+5dvVN5Tq4W4I6Dy4uo7OL6RnN0tUAxnhC6vdXUgYOE35uMDIATc7NLrKgrkjb kmx/VZo8Pg4XWaWrsAXYvtN054e/vfDP6TitkkyExnfieeDSD4s7FZ41rY1EHxiawAIQNOCC TJQV6CaJMBdaWcn8e9bycbhme6uF694SG1INxinwwxX3CjNkmhhHtmZFwTM6U6koHzpF3HCJ SWDFfSjim6oujG3IS1TgRtZhswVK1+qGt2ICN9Z7MrxMw9/JfLyh9GSCpOQ+/mc6P7Pk9Q43 OycTxoiZ4+l1AwsjvDltzQosR1bC6eZSgFQm50StrmU5FTVt0Hbq0kCFbBGHsjZdXwH/AJi8 deW/fr/t7+8e5f2B/vjypaKHTtvHnRs/5Cu93yIgxkrqwPS9AvLx9MyIjKPoBB2d0CtZMBB7 qA1VbfNQEXfFz6by84SA+dwEFtX4YjxemuAId4MaDEqCl8G0LKdakre2bhEsRrz+6+e2+v26 ++xLd87Xx90/u8OXYKf8GpV/74/3vyh/IFkpPnPP+VR0ZW7KK8r8/X8bMnvIHo+7w/PdcTdK 4L5obwLZmyBvWFy1+gujp+mKi4dgEv9RRx3tqXsJb1FNueaV/hEkCR2KJCnhGFSMKh3EiJa/ e3o5/C6P+/u/qBtZX6hOhfgB7L5OyKilmImg8eJMlwqSUsJsBa3SrluB2X1g4dowUgllqnD6 UlsboI2wHtIWTyTyCuSmKR5eyzVyo3QR2l4nmE3FWnlR3o76LcAshQ9kfsWsTjHMBUWfkLI/ fnI+nVBBmwa0KoTKkZpRsiW0ODsbz8ZjijMLgjAezydnUyNol0AJ9zdK2h6wE7oQ5TPXYbV0 fD3wamLOnh3PTYBhlFfWp64SOFJDyJYwdvPM7jOAyeDYLXY+V5NomWXnczJq5ICdmuMF4Lk1 CfnlXH3I0AG1uNId8FLVvAzTMt/Q0zXfnJwVpJERKPWyXdTbilVk+jZB1Hs66mUD5o8ns/LM kZFBtrumrgUCpQai1bZ+MDEy1skpqabzqxMfFOEVqW21Ph6iXqzyGUZ4c9dbxf78aryh3SBl 1UR8SvuDmf/j7JoSJF8vx8vpOIqn46sTrbc0Rqozg5sJjfT3x/3zX3+MZQyJYuGN2txR788/ 8Hi0LaCjPwbj8n8MfuihvJdYPZax1k/MVbyBdXfjMS6wa57wmZW31R155BKJMOzt10vOQnXY PzzYTL01zpnHTGezw7RO5u7scHBrLJdZZfelxcM1hQ6aplElFXWz10iWISsqT1MNanjC1UPD +3ntwDC/4itebZ1jOMVQ+nG2BtXBQrl/PeJjirfRUU76sMXS3fHnHsUedJr/uX8Y/YFrc7w7 POyO5v7q1wADxfEwdc+0DIH2UT9zlqr6YA2XhpUWGcsoiA6m9qHQz6IzNDxqbDF3Eo9hkkkK Dv+m3GMpbXspKv9ECKUAs+vQxnBAeXWkWMD7QuU29TEcHR2rvm4LOprDCGBJtgrh/lPxiB5S S1aGcYTXQGfXkQi2dm4QdEGq9AH0N/x6017/1eVYBrPZxSXNfnmywAzqnKM2g9gjrVYSt0eo mBnEzw455M1rwUWGM/h1roOlTAncvCy1wOgSKxL2dbhPn4Yeop5CuGzFTebwqlNJKL2mgjd8 6IxhtYTa1ZT8xDGEOxWPo6hUE4D8jedXbQE9DI2iR6oScBGfy64i0SN2K+DGT9C7K6Q8Pwb6 IKc4wEoYo3hWxWqEI2mh4qqr2Uq3p0mSdlxDIwJKayMlDm3HZi2r0rghSTB6MJatOw4q4Ji/ tT5jke3k7eXncbSEO+Ph82r0IKLXqXfl7q3QB6RD84si3HoONzQQAxcwL8T4FlkcRFzdWh0E Lue5diS3sX78mD7/lms4x1Pyiug/vsDlsHx5P2gJ3Ia7Jdq30WYJbVbnM/olElmJUgfjsZfR 8hSHntedO5TVuwIusMfd6+HlnuqbDAoLrIGOPkMUlpW+Pr092FfOIk9KLaSPAIjvl1gciey/ zqFRrfKOWry3QFvB1z62FxzP6/1hp7z3kggYzB/l77fj7mmUPY/8X/vX/4zeUE78ub9XLu3y gdnT48sDgMsXX5uf7qEZgZbloMLdD2cxGytflR1e7n7cvzy5ypF46fyxyb9Eh93u7f7ucTe6 eTnwG1clH5FKcee/ycZVgYUTyJv3u0cMfeUqReKVjzTzDYONKLzZg3j/j1VnW6hN3bnya3J7 UoV718h/tQv6E0dEGY2K8KbbXu1PKpVsi5LZYYVZHg64IExAIBoYjUqUhwW6baFO3kGAZoyS rRzoPu2IozTIWnwVmj231FPDIJtwJWXTFhNuKn8QhcN/jiDp2ull+2WR5E1UsquZQ4JpSZy5 v1p8l4ThA5rpdE7f1gcSkY6A4DIqhcw3ZxbOq3Q+JvM0tARFdXl1MWXmdGF6s7l+5W8RnUad 1ndmhSYHcpJOe72JWei7nMcKqFOQKqCoRKcHo2ifF6xvE6FCt+JQgogGRY4ysmcYQ92sDkBN TOgmeXEzuoePj3ASLm7wVBz6ir4N6m2nS9RZ3AywrBhfo9u/emBYTfQtwDdzrXv29t4QmV+p HjpFiGYt+DFEXlYOScR5hZ+UlYe/fD17tkGI/n1xs6BjpEsSuPrbKgfph7Xcjsr372+CcQ1z 1XoG6fYcBQhCBkZzkei+Mc9PmmvMg4U2NCSjlhMKd8mOq6woNL6gIs3KVZy05H9Qe8niVWbW gBuWJ5vL5AY76agh4RuYUXWICjLfsGZymSbC2udA4fh1VMLyfJmBfJ4Eyfm5GqYCsZkfxnDx gc0SqKGqESWeQkvjohNh9gNj1I9lrqB+0+oLrUwKHgV0vo/E15zM4Sd82o4sAcy+XrPnH4eX /Q+VkcOJVWQ8IA/Xjrw/cdRnM+kKGJnxs2dRffUtOE9guwfMtmIu16Pj4e4eXUct7lCqXAx+ 4P21wguaNrsDAhpvKh0hHgGr/UEgyJFFm78riyn+phARSiz5cVdLG9IsSGhZaVawHp6UlDG4 R+cVJ4sRgXm7dxT2ZHa1RvlCOb0YRvVnMG3N4FvrQgmX8wGPFTXJougJSzPzXE/Rim50Ht6e Cq7GszM9JXGPS5i/3GQTAusVPFjY3QbJJrwNB6wpRuaFSJ1Rg8BG3UdE1UW4MNx6skjFuMoF UWx0EiANixQVQ6TesuFH9zCk0WPZI6Z956S/PlEQy1rjBAqGCQ8EqpdAUxqvdQXMCyMekaIK PkCEudoMEb9Uw7QdULTG6PCLi6uJnnJbgsvx7IwOGYgELmkJUL2SRU0XaPRBkXCzXI1Sy7ON /gulASvTWhnzxCMNScJXH/6fyvQWfqcrqFMtBQiIXOhKFwR6Mo7E8j/vFIW6aC1DmOzhtiaP AzXkHIt5wKoQ1goVe6XWaol3fzVqP8ifk0YVE1tAs2FVVdjgPCs5rI6vSXMdsgz9ujB0wAPJ tNF5fQsaqnQX62vWOjSzK5z9iwpnRoV6eZeLv0Be1ymXrkzKjH3z9IQ4+NtZDTSdeD7wKS2Z GYdVAow+nB4MxD4ZV7sjQG0M6tgzsni3mEQN36xGv7nmT6OgFlojcA1fFK5YxdH3Qmt4I7pC aeSicmJ0MvMljKD2qn4iDYi2dU2cmGLx7S7MXdHTFDVc4BhsgG1jafw12iEVhQaGO3dIPowb WgijZgUCeqS6YPG4n4BuD02MIQoATitFZn7JHZj8kjvkiS9ZkMj5slsTJjKefpPpOqia4UAR rpXcYT3F+WOU2x+9guEGdZgmH5Aw6aAD/J1aKrRsYA7ha6kfV/SmaYDG+q1GQfcHLinFtvPq pcAgZyy0rgEWF5ie2FKamxSVjQngEiDUO0qTrKcbGmphrXEOFUoJF7NOa8Rv6qyi33ULDFoD hOOjON4iRgatEpR+pawOPveMypm2USRM3zs1RhZRAH5daoHthZFEJchWGKR964BhOAVewB5s AvXRBUXA4jWDe0AEV/hM80BViHkahLQiXSFKQhh7ltvGDf/u/pcRWqwUBwCt1ZfUkjz4XGTJ F8wJhkf9cNIPQn6ZXcFdlGaFdRB1fLOrnK5Q6gCz8kvEqi/hBv9NK6PJflvpPCYpoZwGWZkk +LsznmPU+hwNg7PpBYXnGWr+y7D6+mn/9oLJNj+PP6mbeiCtq4hyKhPdNwQaRwvvx5+Xn3o2 Wxl7UgAMfZmAFWt1Sk9Om9TPvO3ef7yMflLTKQ5unXkJ0LUjg7pAoh5I/cgEEGcVn09zw3tb IP0lj4MipK4i12GRqsM2lIZVkuvdE4APJARJ45I54IIftVGKlG9c/hnEkU7nYU+eaiYrpY0f Ol2FCfUNANtaZ8W1SqUsp7nkyJ0nxm9NCyohDtFSIGdfnwzyWePIEoqG8jSi2TGWRKYoDaZw EJCDa4lwDeGuH6TGWAJe4iM/YAQ5lboPSKhr36LAbOWYLyxTjBN4Dpo/cbRag2bSprJOi9w3 fzeLslRnqYW6Ewj5Yb6kWZzPI60q/C0EoZLygBRYNNevgaULCaebYHVaBNU6ZNdNvsawDbSv raCqcwzZ5ca7PgGBtKTEAUp7hA541FPl4gndCcIP+pcFrHFsPmaJ4j3qKqcXIo3VvReXHb/V +LiC7g6CBg4CbU+quIvpBd2UQqInVdBwlw5PRYOInmyDiIogb5C4x2FEp3QR0WzCIPo3vT2n rFoGyUxfLgVzYkLPqSfBBsmVo+Kr6bmz4ivSlmYUn7gqnrmavLyYmU2CwIS7saFEB63seKLn sTCRlJc00ggfLFerrkId3hhiB57S4BkNntPgcxps7doOQcUw1cYydY6S8s/XCIwuXmf8sinM 6gSU0ngjMmE+HKCJ/nSuQ/hhXHHq6chAALeYWg3v1GOKjFVa4KAesy14HOsh+jrcgoUxp80q PUkRkvEqOjz38SFgYLfL05pXNlgMnuxoVRfXmgMTIlBaVnsexI5Hi6nILEXpNbNmfaOKZpr2 UbrR7O7fD/vjbzsiER5VQ4fwV5/k1NCFtfGKYIGQDJ3XNPHTa4tTkr+8dYdB11pfCH43wbLJ oG4RTdHhE9aqPJogCUthdq0K7lP6GlsZ2UE0Sbqrr5VBCUzOVAPQkq1C+KcIwhQGgVd8vE8K gcU3H2VaZKRZCkbrCwp8p7UM41zVGpBo2aVPX96+75+/vL/tDhhT5POv3ePr7vCJmKsSNn5a 05fjgShxJdbuSaosybaUPr+nYHnOoKMFMY0dSkhrH+F7yeQEnXHtcxC0Cj09FZyDtHWIpfat XWTQMpNVxxkLck5rz3qiLSNDFg1rwiL0K1DDuCkNgHCfrdMmLhNHDwaCJmRFTCuChfZN0LU3 lChDG2mapbRXtoO+18oS43EUEVj4QICVx4Y691RtnZKA2nQD6zSJAkadNTh3n9BF88fL389/ /r57uvvz8eXux+v++c+3u587oNz/+HP/fNw9IMv88/jy9PL75c/vrz8/SWZ6vTs87x5Hv+4O P3bPaKIdmKryzHC0f94f93eP+/+9Q6ziKoNbCD5xmJ5Ue/gvEEIzCXOnv2pQ5kjSoHlUISEV Vo5+dGj3MHq3O/PU6Hq6gU9BaHBVxSCyeDy3pRbs8Pv1+CLzmb8cRpJNDXMgiVEHy1SDsAae 2PCQBSTQJi2vfZ4vVaZqIOwiOotSgDZpoTpuDzCS0OZqXcedPWGuzl/nuU19rRpJuxpQl2+T gmACrM6ut4XbBXRttk7dKzEMo1tLtYjGk8ukjr8+GYi0jmOLGoF28+IPseR1tQSZQruhS4wj 1kGLDdMFT3vXyvz9++P+/vNfu9+je7FbHzBA/G9rkxYls3oQ2Dsl9H0CRhIWAVElsKxVOJnP RaZG6ePzfvy1ez7u7+8w8VH4LHoJ3+Ho7z2mknl7e7nfC1Rwd7yzuu37iTX1CwLmL0HMY5Oz PIu3Y5kcxpxVFi54OZ7QFv/uuwpv+OoUQQitAPfSaKQftfCWR2nmzR6ER62yH1HOZR2ysnes T+zPUHfAaqFxQbv6tejsVMu57K0O3BBNg9S7Lpj91aZLZRGMJcBHGlWd2MNAd+FuxywxBZ1j JkHSs7mbBJqj3MBA3MNcyUL/0+bM2b0d7cYKfzqxmxNge4Y2JOf1YnYdTjwH3J5UqLwanwU8 sjmRqN/c986pToKZRZwEBB2HHS1cGe2RFkkwVvO3KWD1TfUAnszPiYUAxJR8T9x9dEs2tmoD oKzNAs/HxEG5ZFMbmBCwCkQOL7MPvmpRjK/site5bE6KA/vXX3rewo6z2AsJsEZ3mOsQae1x Utfc4gt/RmyXbK2/GjIQlmq8208sCeNYz/DQo8qK9rVWCM5PEQTkfaNFRuIv0e71kt0y+p1m t0gsLtmpHdNxe3t5w9A+aOH0z413r/0OoVRJ/SlsH29w0SaXoYUPq9BmlHl6Peze3qTgbM9e FLOKUoV0XPw2sxq6nE2IccS3J8YByKX9bd+WQiSRb6funn+8PI3S96fvu8NosXveHQxpv9+7 JW/8nBIcg8JbGA8YVYyDR0ucYQMhSKjjEBEW8BvHR8Yh+sznWwuLgmBDyeodghafe6wij5sj 6WkK0pnDpCIvAcKwRArvnfOVeit53H8/YDazw8v7cf9MHJYx90jWJOAUl0FEezApgT+tzTZQ ndh03Gu/UjuEqEVCo3pJ8nQNqsBpowPH+LtzE+Rifht+HZ8iOdW88/wdRqcJpTaR46Bbru0N H64wvBcc1pwQSwYsJcMPWGzvbEZcBoDCfJesoFCfs/HDmPqIAe37cK6ePiugA4nIV9MsNpR5 m5XbBINkAgEqVDEU1NATBZnXXtzSlLWnk23mZ1eNH8IoIu6jj2rvoDo4LFz75SXGvF4hHmuR NJQ3BJBedKo1R1UXMvCcEZBtUGnxBWpR81B6ewnnO+wZJx7a+LvDEZ8Cwm1I5l182z883x3f D7vR/a/d/V/75wfFtTkLagxqxYX6+euneyj89gVLAFkD18H/vu6eepOodE1oKsxYIRXY+rNt G19qb+tbfLipCqbOr0tHmKUBK7ZmezS1rBo4CobfKCuauHMw+hdT1I3J4yn2QUQ3jzreGTuZ ZsF4cN7kN+oCd7DGg4s6HGEFZWHBN/WsANp0EeqeNszl2udxEEMxJICydbunUyChpn6+baJC PN5RNRcqSRymDmwaovMSj7W++FkRkCYrzD4TNmmdeFqEAmnIUJ+j9U+7fG76eHcoAwx3GeAL vNKURv74XKewrztQUVU3ein9xgU/+8AYFhyYQ+htL3VGpWBmDjYlSFixdm1rSQFLR556/rl2 nvozo33K0wDYv33H9JULl3mpxBApFXU0F5i8MVFmhWgNRMfeOXaoEqH4BMWE3+LZBFJHrHlR 3coz1YCCoErUjFCqZiGPkvQzuicgqRLkAkzRb26bQA3hKH83m8tzCyZetuU2LWfqarZApma5 GGDVEr4dC1HCaWHX6/nfLJi+h4cBNYtb9SWqgvAAMSExm1sSrF0kNLgyyu4jVs2B3e6CW1VT ZnGm3TBVKNaqftier+7assx8LnMGsqJgar49Jh6MqA/3EBQkahrnhGH1MSvQ7rIM9fegffIb EZAHaSNhFFsZ6WwRg4K36+FAuYjl0JWGb1T2F2ee/ovgQGmsu8L3c1plCdc5RHzbVEypkRc3 KEwqLSY5h69N+T64FwVKY5nIE7aAI7NQLcX4XjNTqimBYyV6sEM0PKcLklf0J611UOpGo04a EdDXw/75+NfoDtPdP+3eHmz7vDiEr0UcMO2ElGB0IiMFML/NlgpiYwznZdxbIS6cFDc1D6uv s34SW+HNqqGn6DIVGTZZDWy8SZQhwAEZFgVQabmmnXPRawT2j7vPx/1TK7G8CdJ7CT/YMyfb b69/Fgz9zGs/DEhc953rOZIVgjKPydNMIQnWrIi0s2wRwM73C547QlKFqTCnJP9X2fX1NA7D 8K/C4z2cEJzudQ9d6RiCNaVrN3iadqNCCDEmtkl8/PPPbmmcuDvuiSk2SZM4ju34Tw3fi4HA oklJq7airvPR5cWv35oyC2IYiNw1/W1L0pu5/0Q/HU8zRObDlZ6U6DtLvZBJzSVwBK69s6RK 9Wu+gvDncWWTgNksk7xqZ1A4DlfwndH99njZ5fVYnD8lpZwt5n6XTJio2GDzsukO51Xz5/jM xW9utvvDx/Gt2R78mEhUlYTU7ecw8Bq/3mNlI0cXn5cWVlhPJIbhMaVGmD00Cb0KOqfzeJ7Y T7/fmpjuWl7pw+MAR+6RStvbd+YxKTAKUnFQndS/6KQPQMMLQgM60u+fSj1VgLp2y9xWM1m7 dDeo0OorZbp9lbs2OmwQo60oGNAcI5XZQDI6RnFjBFQNuC3d1eMOzXLwZ3hnuQr6Ff+Aeh5U aer7RuGxFgsV24b4hfS2mMUjLGb8khOHu4RY5fg0vLgmofbaYjmdgw2ypLDngi+rLDJ/qgjX mQRxPgbYuulSFmJuE9ri2OAkzdzH6DJyjehJORp1ikQkoZ2B8c/c+27/8+zuffN63Al3ma63 z/6djUSP8NJwzq/7qJoRDFx75jMB4pp3NdL99TvtJhVcLWrUuKqI2AZS/QtwNa2JnKtkIPPn 8p6YMLHoK2ebFNgiI6OZfOX0AoirIXHdpyOn1I4ZhZBt6MTFjfqi5rb+bHQOKUbfmtiwgLdZ Vgg7EMMFnpd7Dvhjv3vZ4smZpvB2PDSfDf1oDpvz83M/AajrkpZfs8AX1qcsSiShNIIUBYDK pdxFTgtqWzIYjBmGXLGsSASosgff/toSZZu1LmLSNvpyKRBiNG6pHRrbkZZzFXUjrfxhAb9m t7KsiE9nCxg8/CK/0xdkWWENhMXl94EuWaceE1lsUJYicrnr53ZSFP+Pre+GrTjIhk4/czWP IsFDGKi+A6IOLRZy1ZNWR3QsBoUTLPNW7owB5vIqN/bT+rA+w1W9gYlORRa2izdU9rO9uv4B n1skKSCOTr0R2az37uVLbHWVVAlE+rIuQkNswCMG5qGHSkkIF1fAeXday7Q2JQw5VmkdHkFq 4rXo2wOS6cRfwkPqtoiSAPD/xY4IA1Jpx9YClt37UUNd7kM1lXAHiBWLTFsa0qzClFhpEq+g nFtaB2xKefqoitejPgh/sadUC2mnmoWwQjuuJxMfk1PKMb6Sq+hPhe+QghBR/6QzZTMiDBJk GcTC/FyPr/prG6wQuEm03P2NmCBNX5wT6X3XbD9e9htFP77yXTX7A/gAbqwUqQDXz43nCV8r CUVcfXkHfN9x5QGs2rIH/i4TBg4RsLfumEEVdqUdme8mJH6ewrfCFjiTtI2uFlgnBBiWrEiA St2iJZ5CG0/rHBcuTw37iFdsoyOSAL9OnXY+tXck8lAVm8lfnMhepFmGAQA= --VS++wcV0S1rZb1Fb-- From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============2289004685885499441==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: security/apparmor/lsm.c:1101:21: sparse: sparse: incorrect type in initializer (different address spaces) Date: Fri, 31 Jul 2020 08:54:03 +0800 Message-ID: <202007310833.wdH0K35A%lkp@intel.com> List-Id: --===============2289004685885499441== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git = master head: 83bdc7275e6206f560d247be856bceba3e1ed8f2 commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to= define address spaces date: 6 weeks ago config: openrisc-randconfig-s031-20200730 (attached as .config) compiler: or1k-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.2-98-g4932334a-dirty git checkout 670d0a4b10704667765f7d18f7592993d02783aa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-9.3.0 make.cross = C=3D1 CF=3D'-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=3Dopenrisc = If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> security/apparmor/lsm.c:1101:21: sparse: sparse: incorrect type in initi= alizer (different address spaces) @@ expected int *__pu_addr @@ got= int [noderef] __user *optlen @@ security/apparmor/lsm.c:1101:21: sparse: expected int *__pu_addr >> security/apparmor/lsm.c:1101:21: sparse: got int [noderef] __user *o= ptlen security/apparmor/lsm.c: note: in included file (through include/asm-gen= eric/atomic.h, arch/openrisc/include/asm/atomic.h, include/linux/atomic.h, = ...): arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int security/apparmor/lsm.c: note: in included file (through include/linux/s= ched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argume= nt 1 (different address spaces) @@ expected void *to @@ got void [n= oderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argume= nt 2 (different address spaces) @@ expected void const [noderef] __user= *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef= ] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from security/apparmor/lsm.c: note: in included file (through include/linux/u= access.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect ty= pe in argument 2 (different address spaces) @@ expected void const *fro= m @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void co= nst *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [= noderef] __user *from security/apparmor/lsm.c: note: in included file (through include/asm-gen= eric/atomic.h, arch/openrisc/include/asm/atomic.h, include/linux/atomic.h, = ...): arch/openrisc/include/asm/cmpxchg.h:69:29: sparse: sparse: shift too big= (32) for type int -- >> drivers/watchdog/pcwd_usb.c:375:37: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected char const *__gu_addr = @@ got char const [noderef] __user * @@ drivers/watchdog/pcwd_usb.c:375:37: sparse: expected char const *__g= u_addr >> drivers/watchdog/pcwd_usb.c:375:37: sparse: got char const [noderef]= __user * >> drivers/watchdog/pcwd_usb.c:407:24: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int *__pu_addr @@ = got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:407:24: sparse: expected int *__pu_addr >> drivers/watchdog/pcwd_usb.c:407:24: sparse: got int [noderef] __user= *p drivers/watchdog/pcwd_usb.c:416:24: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int *__pu_addr @@ = got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:416:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:416:24: sparse: got int [noderef] __user= *p >> drivers/watchdog/pcwd_usb.c:423:21: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int const *__gu_addr @= @ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:423:21: sparse: expected int const *__gu= _addr drivers/watchdog/pcwd_usb.c:423:21: sparse: got int [noderef] __user= *p drivers/watchdog/pcwd_usb.c:447:21: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int const *__gu_addr @= @ got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:447:21: sparse: expected int const *__gu= _addr drivers/watchdog/pcwd_usb.c:447:21: sparse: got int [noderef] __user= *p drivers/watchdog/pcwd_usb.c:458:24: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int *__pu_addr @@ = got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:458:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:458:24: sparse: got int [noderef] __user= *p drivers/watchdog/pcwd_usb.c:467:24: sparse: sparse: incorrect type in in= itializer (different address spaces) @@ expected int *__pu_addr @@ = got int [noderef] __user *p @@ drivers/watchdog/pcwd_usb.c:467:24: sparse: expected int *__pu_addr drivers/watchdog/pcwd_usb.c:467:24: sparse: got int [noderef] __user= *p drivers/watchdog/pcwd_usb.c: note: in included file (through include/lin= ux/sched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...= ): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argume= nt 1 (different address spaces) @@ expected void *to @@ got void [n= oderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argume= nt 2 (different address spaces) @@ expected void const [noderef] __user= *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef= ] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/lin= ux/uaccess.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...= ): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect ty= pe in argument 2 (different address spaces) @@ expected void const *fro= m @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void co= nst *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [= noderef] __user *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/lin= ux/sched/task.h, include/linux/sched/signal.h, include/linux/rcuwait.h, ...= ): include/linux/uaccess.h:131:38: sparse: sparse: incorrect type in argume= nt 1 (different address spaces) @@ expected void *to @@ got void [n= oderef] __user *to @@ include/linux/uaccess.h:131:38: sparse: expected void *to include/linux/uaccess.h:131:38: sparse: got void [noderef] __user *to include/linux/uaccess.h:131:42: sparse: sparse: incorrect type in argume= nt 2 (different address spaces) @@ expected void const [noderef] __user= *from @@ got void const *from @@ include/linux/uaccess.h:131:42: sparse: expected void const [noderef= ] __user *from include/linux/uaccess.h:131:42: sparse: got void const *from drivers/watchdog/pcwd_usb.c: note: in included file (through include/lin= ux/uaccess.h, include/linux/sched/task.h, include/linux/sched/signal.h, ...= ): arch/openrisc/include/asm/uaccess.h:246:55: sparse: sparse: incorrect ty= pe in argument 2 (different address spaces) @@ expected void const *fro= m @@ got void const [noderef] __user *from @@ arch/openrisc/include/asm/uaccess.h:246:55: sparse: expected void co= nst *from arch/openrisc/include/asm/uaccess.h:246:55: sparse: got void const [= noderef] __user *from vim +1101 security/apparmor/lsm.c 56974a6fcfef69e John Johansen 2017-07-18 1066 = 56974a6fcfef69e John Johansen 2017-07-18 1067 /** 56974a6fcfef69e John Johansen 2017-07-18 1068 * apparmor_socket_getpeers= ec_stream - get security context of peer 56974a6fcfef69e John Johansen 2017-07-18 1069 * 56974a6fcfef69e John Johansen 2017-07-18 1070 * Note: for tcp only valid= if using ipsec or cipso on lan 56974a6fcfef69e John Johansen 2017-07-18 1071 */ 56974a6fcfef69e John Johansen 2017-07-18 1072 static int apparmor_socket_= getpeersec_stream(struct socket *sock, 56974a6fcfef69e John Johansen 2017-07-18 1073 char __user *optv= al, 56974a6fcfef69e John Johansen 2017-07-18 1074 int __user *optle= n, 56974a6fcfef69e John Johansen 2017-07-18 1075 unsigned int len) 56974a6fcfef69e John Johansen 2017-07-18 1076 { 56974a6fcfef69e John Johansen 2017-07-18 1077 char *name; 56974a6fcfef69e John Johansen 2017-07-18 1078 int slen, error =3D 0; 56974a6fcfef69e John Johansen 2017-07-18 1079 struct aa_label *label; 56974a6fcfef69e John Johansen 2017-07-18 1080 struct aa_label *peer; 56974a6fcfef69e John Johansen 2017-07-18 1081 = 56974a6fcfef69e John Johansen 2017-07-18 1082 label =3D begin_current_la= bel_crit_section(); 56974a6fcfef69e John Johansen 2017-07-18 1083 peer =3D sk_peer_label(soc= k->sk); 56974a6fcfef69e John Johansen 2017-07-18 1084 if (IS_ERR(peer)) { 56974a6fcfef69e John Johansen 2017-07-18 1085 error =3D PTR_ERR(peer); 56974a6fcfef69e John Johansen 2017-07-18 1086 goto done; 56974a6fcfef69e John Johansen 2017-07-18 1087 } 56974a6fcfef69e John Johansen 2017-07-18 1088 slen =3D aa_label_asxprint= (&name, labels_ns(label), peer, 56974a6fcfef69e John Johansen 2017-07-18 1089 FLAG_SHOW_MODE | FLAG_= VIEW_SUBNS | 56974a6fcfef69e John Johansen 2017-07-18 1090 FLAG_HIDDEN_UNCONFINED= , GFP_KERNEL); 56974a6fcfef69e John Johansen 2017-07-18 1091 /* don't include terminati= ng \0 in slen, it breaks some apps */ 56974a6fcfef69e John Johansen 2017-07-18 1092 if (slen < 0) { 56974a6fcfef69e John Johansen 2017-07-18 1093 error =3D -ENOMEM; 56974a6fcfef69e John Johansen 2017-07-18 1094 } else { 56974a6fcfef69e John Johansen 2017-07-18 1095 if (slen > len) { 56974a6fcfef69e John Johansen 2017-07-18 1096 error =3D -ERANGE; 56974a6fcfef69e John Johansen 2017-07-18 1097 } else if (copy_to_user(o= ptval, name, slen)) { 56974a6fcfef69e John Johansen 2017-07-18 1098 error =3D -EFAULT; 56974a6fcfef69e John Johansen 2017-07-18 1099 goto out; 56974a6fcfef69e John Johansen 2017-07-18 1100 } 56974a6fcfef69e John Johansen 2017-07-18 @1101 if (put_user(slen, optlen= )) 56974a6fcfef69e John Johansen 2017-07-18 1102 error =3D -EFAULT; 56974a6fcfef69e John Johansen 2017-07-18 1103 out: 56974a6fcfef69e John Johansen 2017-07-18 1104 kfree(name); 56974a6fcfef69e John Johansen 2017-07-18 1105 = 56974a6fcfef69e John Johansen 2017-07-18 1106 } 56974a6fcfef69e John Johansen 2017-07-18 1107 = 56974a6fcfef69e John Johansen 2017-07-18 1108 done: 56974a6fcfef69e John Johansen 2017-07-18 1109 end_current_label_crit_sec= tion(label); 56974a6fcfef69e John Johansen 2017-07-18 1110 = 56974a6fcfef69e John Johansen 2017-07-18 1111 return error; 56974a6fcfef69e John Johansen 2017-07-18 1112 } 56974a6fcfef69e John Johansen 2017-07-18 1113 = :::::: The code at line 1101 was first introduced by commit :::::: 56974a6fcfef69ee0825bd66ed13e92070ac5224 apparmor: add base infastru= cture for socket mediation :::::: TO: John Johansen :::::: CC: John Johansen --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============2289004685885499441== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 tXck8lAVm8lfnMhepFmGAQA= --===============2289004685885499441==--