From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arnd Bergmann Subject: Re: [GIT PULL] optimize 64-by-32 ddivision for constant divisors on 32-bit machines Date: Sun, 22 Nov 2015 23:18:13 +0100 Message-ID: <4206238.8hPtvbUZ9X@wuerfel> References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="nextPart12176460.b1Z7fKGLNi" Content-Transfer-Encoding: 7Bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Nicolas Pitre , Russell King - ARM Linux , linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org List-Id: linux-arch.vger.kernel.org This is a multi-part message in MIME format. --nextPart12176460.b1Z7fKGLNi Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" On Monday 16 November 2015 20:20:38 you wrote: > Arnd, > > Please pull the following branch: > > git://git.linaro.org/people/nicolas.pitre/linux div64 > > This contains those patches I've initially posted here: > > https://lkml.org/lkml/2015/11/2/715 > > Only changes to those posted patches are cosmetic improvements such as > the use of ilog2() replacing the custom __div64_ffs(). Exposure in > linux-next would be a good thing. > > I also included fixes for a couple do_div() misuses that an allyesconfig > build turned up after switching ARM to the generic do_div() code. > Those patches have been posted separately and addressed to relevant > maintainers. They are included here until/unless those maintainers > include those patches in their tree. > > Original cover letter: > > This is a generalization of the optimization I produced for ARM a decade > ago to turn constant divisors into a multiplication by the divisor > reciprocal. Turns out that after all those years gcc is still not > optimizing things on its own for that case. > > This has important performance benefits as discussed in this thread: > > https://lkml.org/lkml/2015/10/28/851 > > This series brings the formerly ARM-only optimization to all 32-bit > architectures using C code by default. The possibility for the actual > multiplication to be implemented in assembly is provided in order to get > optimal code. The ARM version can be used as an example implementation > for other interested architectures to implement. I'm now getting a build regressing with the attached randconfig configuration, when compiling drivers/net/wireless/iwlegacy/common.o: drivers/built-in.o: In function `il_send_rxon_timing': :(.text+0xbbac80): undefined reference to `__aeabi_uldivmod' :(.text+0xbbac9c): undefined reference to `__aeabi_uldivmod' :(.text+0xbbacdc): undefined reference to `__aeabi_uldivmod' :(.text+0xbbadc8): undefined reference to `__aeabi_uldivmod' :(.text+0xbbadf8): undefined reference to `__aeabi_uldivmod' :(.text+0xbbae3c): more undefined references to `__aeabi_uldivmod' follow drivers/built-in.o: In function `il_send_rxon_timing': :(.text+0xbbb11c): undefined reference to `____ilog2_NaN' I've verified that this goes away if I turn off CONFIG_PROFILE_ALL_BRANCHES, and it only shows up with gcc-5.0 through gcc-5.2.1, but not 4.9.3. Aside from those, I have not been able to reduce the failure scenario. Also, I have only tested on ARM32, no idea if this shows up elsewhere. Arnd --nextPart12176460.b1Z7fKGLNi Content-Disposition: attachment; filename="0x2673AB84-config.gz" Content-Transfer-Encoding: base64 Content-Type: application/gzip; name="0x2673AB84-config.gz" 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 --nextPart12176460.b1Z7fKGLNi-- From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.kundenserver.de ([212.227.126.130]:49441 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752789AbbKVWSV (ORCPT ); Sun, 22 Nov 2015 17:18:21 -0500 From: Arnd Bergmann Subject: Re: [GIT PULL] optimize 64-by-32 ddivision for constant divisors on 32-bit machines Date: Sun, 22 Nov 2015 23:18:13 +0100 Message-ID: <4206238.8hPtvbUZ9X@wuerfel> In-Reply-To: References: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="nextPart12176460.b1Z7fKGLNi" Content-Transfer-Encoding: 7Bit Sender: linux-arch-owner@vger.kernel.org List-ID: To: Nicolas Pitre , Russell King - ARM Linux , linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org Message-ID: <20151122221813.Jf47MAuBamw31FTf9b6Vr7kmjK9FLvhFARbCaz6YlGc@z> This is a multi-part message in MIME format. --nextPart12176460.b1Z7fKGLNi Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" On Monday 16 November 2015 20:20:38 you wrote: > Arnd, > > Please pull the following branch: > > git://git.linaro.org/people/nicolas.pitre/linux div64 > > This contains those patches I've initially posted here: > > https://lkml.org/lkml/2015/11/2/715 > > Only changes to those posted patches are cosmetic improvements such as > the use of ilog2() replacing the custom __div64_ffs(). Exposure in > linux-next would be a good thing. > > I also included fixes for a couple do_div() misuses that an allyesconfig > build turned up after switching ARM to the generic do_div() code. > Those patches have been posted separately and addressed to relevant > maintainers. They are included here until/unless those maintainers > include those patches in their tree. > > Original cover letter: > > This is a generalization of the optimization I produced for ARM a decade > ago to turn constant divisors into a multiplication by the divisor > reciprocal. Turns out that after all those years gcc is still not > optimizing things on its own for that case. > > This has important performance benefits as discussed in this thread: > > https://lkml.org/lkml/2015/10/28/851 > > This series brings the formerly ARM-only optimization to all 32-bit > architectures using C code by default. The possibility for the actual > multiplication to be implemented in assembly is provided in order to get > optimal code. The ARM version can be used as an example implementation > for other interested architectures to implement. I'm now getting a build regressing with the attached randconfig configuration, when compiling drivers/net/wireless/iwlegacy/common.o: drivers/built-in.o: In function `il_send_rxon_timing': :(.text+0xbbac80): undefined reference to `__aeabi_uldivmod' :(.text+0xbbac9c): undefined reference to `__aeabi_uldivmod' :(.text+0xbbacdc): undefined reference to `__aeabi_uldivmod' :(.text+0xbbadc8): undefined reference to `__aeabi_uldivmod' :(.text+0xbbadf8): undefined reference to `__aeabi_uldivmod' :(.text+0xbbae3c): more undefined references to `__aeabi_uldivmod' follow drivers/built-in.o: In function `il_send_rxon_timing': :(.text+0xbbb11c): undefined reference to `____ilog2_NaN' I've verified that this goes away if I turn off CONFIG_PROFILE_ALL_BRANCHES, and it only shows up with gcc-5.0 through gcc-5.2.1, but not 4.9.3. Aside from those, I have not been able to reduce the failure scenario. Also, I have only tested on ARM32, no idea if this shows up elsewhere. Arnd --nextPart12176460.b1Z7fKGLNi Content-Disposition: attachment; filename="0x2673AB84-config.gz" Content-Transfer-Encoding: base64 Content-Type: application/gzip; name="0x2673AB84-config.gz" H4sIAFM+UlYAA4w8S3PjNtL3/ArV5DvsHjbj17zqKx9AEBQRkQRMgJLsC0rxaLKu2NasLWcz/367 AT4AEtTuVCUz7AYaQKPRLzT0808/L8jb8fC0Oz7c7x4ffyx+3z/vX3bH/dfFt4fH/f8vUrGohF6w lOtfoHHx8Pz21/vdy9Pi6perX87+8XJ/vljtX573jwt6eP728PsbdH44PP/0809UVBlfGlKX1z+8 D5MTZdTS0JzwasBUjKUITktiClYtdR72QnijmOGiLJspyoINKfiyKlmlrz93DdQtjNZIKWqtDJGl YWVTEM2FN3ZO1szIWlBDpUdbaUJXuiaUdRRGXYAOq+itFnLaoBB0lbIIwhHk9U1WkKWa4uuNYqXZ 0nxJ0hRWtBQ117nHw4xvDSN1cQvfpmQeZskqVnNq8g3jy1xPERQYlNQwa5OygtyOuI98LInEdWvm s5jmAwsb4FPC1KhrzbTRAjeoHjBrRrWolUmIYtdnf32DP2fwp0PLHLZGZJli+vpsPNOkWQ6E5FKT pAB+szUr1PVFB09Z1nGbK3397v3jw2/vnw5f3x73r+//r6lIyWBmBYPx3/9yb8XzXdcX/lK6buwM h5FgW8xG1KsBkjS8SDUHSmzrZqHcdoGE/7xY2tPyuHjdH9++DzKf1GLFKgP7o0rpUa+4NqxaA0tx yiXX15f9YmgtlIJplZIX7PqdN1ELMZqpULxIsWa1QkEeGvtgQxotRhK7YnXFCrO84zKOKe5KEsds 7+Z6zAxS3F0NiHDgnxchGEddPLwung9HZOUEv707hYUZnEZf+ehBdkhTaJMLpVFQrt/97fnwvP97 z0q1IR6PQI2suaQTAP5NdeGvSQoFJ7S8aVjDovNyOw0nV9S3hmjQMnm0XZaTKi3iNOCkwVGOokgD ujqyYrs39jDbFjhxUhSdJIPkL17ffnv98XrcPw2S3J1HPBj25E+VCqJULjbzGHdwfSmpU8CB8tvA +VSsSuN9ae6LKUJSUQZWw3GoBWOLWHPY60CdICYTNQW9pfOakZRXy4iuRA0O86606nikH572L68x NmlOV3DcGazWNxJ3RgItkXLqC0glEMPnttaiY/sHOh3ZZVAb1f2kwGS917vXPxZHmN1i9/x18Xrc HV8Xu/v7w9vz8eH599E0oYMhlIqm0m7h/cjIGKvqBnRkHolKrbFkIMTQUPsUxjizvoxQ0ESt0Mgo vysCnVmyPWe6mW07pA/jIlyQ5UtNm4WK7VR1awDnDw2foN1hq2KjqlFjO3nsEt08JAVLKwrU26Wo oo10zZhtaX2BWTo4JTiozCRC6Ggra5xMwqsLGsXzlftHZFmFwO4ZnE+e6evzT2PxVzSH82EPwcBt uqxFI9UYMD5gLTSDZd75DkELlzyNkVhz6mkXkFJwDAIJsR4adG5xkUW1tAA/FkzQtjTGhraHXa3n YhFemyiGZujPVOmGp9ZDHTZM+x3iu1Ws2vHiZiFndCUFrzSecvBLWGS+aKqUBKnxONiAW1b5TgyY Jf8bvTIHGFgJXKxUjD44cn5fJwboSdiJ+zTAgAAzwMetGQWHMY1Qq1svM2AB7LT1hOo4lyg1QoIW 4ncMtbRR8I/Ysezsbmf1KvB4eCVSnzPW5DU8Pf/oOXQy82c0e+5H3SBq0Lz1bwcWLJkuUQO1xjQ+ T+DSYGx99sECTvRcAVjdlt5yZA3CEfim3qFjRQY6p/aOEPrdJmsKj0tZo9nW6yOFj1UQPZEi88Td mhofYA2iDwB2eqvrCOVBXEK45yKSdM1hXm2fkZhan8wnLyk3Nw2vV15DoJ2QuubhXgCQpWlUDF18 B9RNb8878gjEsHJdwmQE7YxHG9LK/cu3w8vT7vl+v2B/7p/BrBIwsBQNK3gCzv56lBz5yAzWpcMZ a6WYH3Kookl6BTqcAvD6iYZAYhU9JKogSUzYgNZIxjQEkynRBKKxmmec2tA30hWUa8aLwBOy1skq JG+6K7ZldCRownVmo4PngQe/1YWP0UXZTh+vEgiSbCCPioeiKxGZrvVjcePQBIJNB88j8NfbCehx tDo4wXZ1uRCrERKjYPjWfNmIxuvZG8ZSWt+t9R0jnisi8WAZMFLNeE41g6AfDIjLLrQLNETyyDQA OjatgygjoRjcantHPG386NOuekNACNFASFKj2LcRZIQ/ilEUQgM7qH0jbluAkrZDAHu1jfI9CxlB +co9RIK3W81ESZOmsOKmIHXMik/aQmwvqjHfcFshirdbv+ITdMT9HbUoRdoyRzKKp8lTSiJtCnDO USZRFdd+wGP7YN7LYmD3BZo3j2cFcAH0NV1tIDTytlWAewdaWTUwYJVeThCEtpksl42gYv2P33av +6+LP5wC+/5y+PbwGMQA2KgNjf2d6ado8e3JNXHLZJuAbS5BQ6FrkDLkuk/Nb3FprqIb7Le5Mp/m 9HZ3rNy5zFmN6T1PexJwfzPPvoAjVqKV80+9tYQKVfz1mecTui2LDNxtpnXUC9AR/jFOWp+4p1Mk KcligVLr7CRq6ffugRDAx30jzZY117fzTmSZgqZm7gwH58GKgdy9HB8wCbvQP77vQytFas21TQ6l a1LRqLkkJQjW0NSTcZUKFUOwjAdgl1EQC3X/zz1m46yp7LxT4XzKSojAnezgKShVXF1kYl0Tmnlx fpfIccCeXAfGYU6kf1qS1+/uv/2rT/3wyrJXSbArTYXbPUotODyq/xZ/Chftu6kxsJvp7CPD3mEu lmjQI9TUpZd7GYIuuwnKhr9WEIYtcBn08Ohb/1YWROOJjOeV6hJUTrVEtVCX609zrYAYLaT6dH6+ nW/BEkXOz89ONJBfLrcnCGQQEyc1T5dx62HbQDBzggIX8vzkENDg8mI753wg9nI74SPfyqtTRFfq 88cvH+bxmy9n2y9nJxhTSAqzOjGC3MZzqRZZy3imwAkWbsmJodUlvTi5uJSseUX5fANREnk+UViW lX8t+NP3x/0TeNn2BmkhvuNfqDn8RvJxd0SffKrbHPtvPp9dXp7HdDrp0ReeSiP9Vo7y5XgWENOd JPlyuN+/vh5eRocJ02lbjGXC5IW5vPjzQwghCdgmtv6gQ7C08IKBMb8NMRQmBz4aX4966CIx66tN wkfN5fmHKcQE92UIRRfFZUbVdHHZfnd8e4lw1l7XkDStjXZO+qyS0HlTxlPTOHrqVpVyhbcp0RQE qPiVdWNzVsggWBqDB8qWaHGxPYue19IU520bl/D64OPQG4KgEv3nUoVGBJxvUwsMoOIJtk1ZbvVE oJM3zBJ//354OQ6CAqFsGNcOezAFdm5PiIykERBcqviRQxwYIgxsDavs5RXK+GxbpZtYVImoUbIW QVysZynJms8QkkTxtBc70BX/PLweF/eH5+PL4RE8hcXXl4c/A4cBGoG4bEJO1JTUyKOL8ax6hO03 O0G89ul4PDPTgtyCkFEiWTA0xAmYiIzBTGc/o8iE+ldrFkEwtBoB0bQnzZjbjLBY4GMxSpaT1gBz 0jvHga6JdYNOUIZIdgNsAE88OgaGnOjCVzR2lO0iZTnqCjuUTo5Mm3GJqZ91qWTBIZCIL2ZAY8Af Tb64BhdBhqWDnsfSwpIsWX83/dfnM/cnsP8ViJnkwg8oJPhepdSTmHaEXosCoktSB5nRFhmLgu7w yh98VG8kgM1ZakBdnEB9mEVdzvf6cBZTq24SZ16MfHd97rHJOet5jbdOngvLiDVcPX0B322+64Tr YWMdVNIRkR01ZQVEo939KoRyLBbDDokOmVVmTQrupXLwqi3IYCJA6pGFV5vuglESLxga8ixWv5DC 5M2Sgc32nHTQEwF9BBhMXuO0sQhjnHhgZRKGCpWw10KOSphCa+EG42JLNJYptLIvtQ0x8D7l+ov9 4+VYkXsJGg8/0msBbr9oGAXGYBBK1l21zSDrp1yJts0dZkQw5scymaE+JBFNRQN9slJlpHsX35VY 0FLyyg53fXX25WPgZoD6slu5CrhICwYKDb2FCOWsFpVuk41Dj5n6hTtsGFudFCIw43dJEwvF71Sf l+5419bCwLpkkKDqmtrynSCwtvlIVGhd3iu6KiyWWY9yefaWHIba2u0QdQqB5fl5L+hdtRUSDtjR tGnNDde5vXqT8WRGm2OMyeeGi+DIuAIv5/l17kNygE6HPkzwiyNAecccQU38pOlwd4XZC1IaVxHk 8RSPEvh/4NOyrVelNMATpa49u1Aa2BZWpZjH0EF2x+JgeIRHtF0vRzb34VX0bLkcsnUerD9DYJ9A 53727ZPN0XsKCVdtWqfFq0IhKrcp4pkqEi3MHV7gwRgTaw1nZiEP/wZ3rdw97363UVsXqCEue9n/ 623/fP9j8Xq/a/OPQRSQ1ewmSpV/fRwFVyi/oeK1Er0Ua4OTC2+BAjTIZhPTDdo1sXVufQgEG9RP YJGOnVDcPsCGc7HANtXhYcdJCJaqYV5UNLJgU/8nezzssFhj8f3w8Hxc7J/eHrtCSje94+JxvwNX +fC8H7CLpzcA/bYHOo/7++P+a9e8eYXpf9/d7xe/PTzvXn4s7D3W0VsRpk1LjRlpX4PXzIpErz8x YZ0zkgZRWNtV0ZpLPTE/RDQz1QquW8lVzOXGsdsLCxcbWPF66sUrdtDbvHjcbeEJHJvZ667QZY44 y90exktGAdonpvswrqe3uXFus2FZxsEHBhV5wtOekALlNUoRBCW0NgVoF461ZoonY6krnXsyZY5P wuOPT6a3jn2NY7U//vvw8gfK5rAFvZ9MV8xTmO4bgnviWaam4tvwa9Rgm/khE37ZutcRaHz5boGq SfCujdPbyDptC+eBsGlPOP1cgW8av4zEQogVi1HljjeDfZUueUqJiss9NOiy7WAzGh2N5KCRxYFC IcqFyD4BWcWsJE6SS79IzkGWeIxBardjhNFNFZiSvr13pXKL7p1Y8bDKF9utNQ9BTRonmYkgw9yC hgnEeY6cNSReDGlxTMWNFXfTG/sSId7uuht+ZleHpUR6YiCBjk6lMEKfo+A1HbFlhE6Yf24ssqjF CBIeEzdFKjtwOEncCkTEK86gF/xzeerap29Dm8RPPHWmoMNfv7t/++3h/l1IvUw/KB4fHOTm49wZ w2JrdANLElY6eIIjtWwPRXY7EirbGzwhe20LB7qUI+/Wb+wusuNHL6VUjnlPB05bPYiABaU8fZ17 6tASMtjoYlrT4aNjZZEci8d0WGMF3yZNIEhOfqVVtDzRtujuwOyxNXlJKG7IlFKkncrJeZRlsz1m 0hu2/X+bwamR23bBBTh8wH9+4gwh2t8tBIyqJLQr1R4EFCseSga7aXgsw+nh4Rj5nnPgJsAnSCKP aWJEFaRiQV9TSkHGBJL64uPn+I14caGjsZD2prQktX8XbW/A/CEcxPAlOHEKLz/nTkTbcA2zbms8 4pGh9ensgVDeLthun88uzm9iMLNc14Ece6gSUNEJpYxW0arOogg2Ez4voqdnGx62rb1Jr2PeH0RE xcrXcGuM2woWgrlM0/CKGgGGVTQa028vvNuXgkgveJW5qAJ1zxhDbny4Csj3UFMV7T9seSLHIJtE rdbQRYnQFYMT1g/hadOuntWqtJu3/dseHLv37UX9KFBr2xua3MwpVYvPdexQ9dhM0ckc2qM1Asra VgpOBrD+1ek51DNFtx1eZafmqPyKgg6o2U0Rm41OspNDLeuofe3QqUJjFyMMf7P4rXrft65P4ssb ZOGJwWkuVmy61JvY+immTqfg7GYeM4XleRZbqpy5m+nxRRiNObF83L2+Pnx7uB/ZXexECzUeB0BY +RO94OnwmvIqZSM/GRHWGb+awrNNbJjmMqaSelpqLSMjAPRjjFhWiM0JarSrxB4vVU443VFj81LD SqJn3h91FAiNxzUdnkeDzF4ouF+dldIgK5ZCsFszJfDNWoRGAlqC2FqlwMT1UJMU8byr1ySduVbw mlQxCfHwJYZ2fg58IB76HQIC7rXacOBoFGiCQGvtVHYYZRW8Wtms9RQaRgOlLEbxGULMUomwjZXk 0UOfXJ1QI3amYBJn9rS4BNOiwLCi2QxSb+79g3XZ40rIazFEuR7pemuSRt2asCo9uekfqbWpiMVx /xo+bLKDrvSSVSHFtBYQmoiKB2ntnJQ1Sa2paQvm7v/YHxf17uvDAUsmj4f7w2NYAQHGPbYg/94H PkxNNiEgoeHNAoCWm6liI9Ui3f/5cB/JPGKX9WQgVUxAbjs8ACUFNQnX+JjCvylAXMGCNzgozvrL +Xiqmpuc0Wi2DrC/kurOcPjXZUgpK9g2mJ1EYzKe7rJ2oGBAvL2fGU011RUfMeFXEl5AekDDfXfV R0wv6RHLStVWaAQTkoysED4zqdWaYEFKUNphuxXbKZBOmUDb1rEZtbjpnEr8/8yEKP30acQQC5qy w4HjQyuR6YnIuGIY904rsLW8Tme08MwtbQYnfVSI1qI2HN9rK080Owg+v/agWMYdPkKwoLAyw4KU vJ004v5JyZboJwey79zvc/vmuoxfoHbdkCGsEHiRuCF1BVxTU9pYuj55JDcQcCG2DAuaBjR0y+IJ s76Ri3RIgQOlMUe3b0lhs7wfHZiSQhbFgjCedGwaQYDkrdTQT87iKC3nkXoVvgnv0XMp+Tay8abS QWwBe00jiJriLbDSQVl+DGvy8N1grMk6j3HIb9pfP58cs211/e7p4fn1+LJ/NP88vouMXTKVnxow VOY9uJWcCAYIqu5CODjnYV97gRblRiVcqfKpWYFLlwgsNQzlfphEUbJpkqxHK01OVDANO67/l1aC Jv9LM54o9V/FDg7q7Jp0WswjHU+nL8CCJed4K4s37vjucbha3nCA+VoRmziC7nH952E5dbbi4buN Eap9SQM+0YyP9yU4kA5i1rzWPF482LbARN0sxYn+IzwLvyKv4BAK3UfeaIhvVFThMZkb98JiBMFS K61vp4N1eFsfezowqbLwRX8Gh5kv+ShJE+Dn6qIRl4e41tfdvSyyh/0jvjd8enp7bsPexd+gx98X X6276PmJSEfxwNssNrPXHa5QSGbmV95f9M15oLZ0oUzItf+jJw/3bUOvTrtt37injn2tRgxsJNG5 V+YAO6xLmY2qbx0MHPgmnvvWpEoJvp3yfM3aDZPxugSD7B4I+k+7N6YQZFQ10DfmVVtsERkN7GJN +qbe3HuSxqtOjozoo01GigIffHlnmthr4rV/E97tQAFB/AxuBB3S7bfK5Lcw1JorEQ/3+p+6wLJs 59fF8vFsGYSj7tvwCzqBKVnyCbAs/ee/XW//VQuWeakcmJriTxJko71hFWXTX0ro66yHg+Cltmmp dGKWXCUgvdGXshxiY6xNNaNa2zXbggjZX+LB72ihApypsE7K1vf2b4sHu6JjiZFUe4zzb/pFhpfj uv2hn54KgPH3JFKdxHYHsFg8iC/VAkr2F6LiqPS2IiUPJmEriQK/e4CFgQzAg70TmQlS2/Bdpv6G A2BMwFaPj4jg78DUa5CAoC7SIVALBzABWjn4/Sr3hAl/9Kp9CWsfuIY/rDUAhroPBzIzj2I69DJa sNJhyfbz509fPk4GMucXn6+m0Er8h7Era24bV9Z/RY8zVSc3IrWYepgHiKQkRNxCUIvzwnJizcR1 HSdlO3dy/v3tBkASS1POQ2Kxu7FvDaD7A6ZnHG8otz+P0BYHaPW1eSHRcdCsWgioqoajh5KhF3yq mbUC4DcCIEmLs9pxpR7GC/oUVh/bmKP6Qy3hXcoJi1fLqZ+jg2OH2tFjmLZ8IBRHKFOegARVWm5K hWkAdOujxs1DSYdN6rVlQIHfrXb4Kz6k8YhRUF/z68SPU5wjqoRQwbRqkqB5YLVv4uRI30ygUz52 5DZt6PPXfIteMtS1uFLF6M7hFL0nizPlytYX+Sit9OUsmj+8fKGmVZEWAvHcMi5m2XEakqZFySJc gGZaldZAM8i4cFCz4iHPb/WsMAzAHayJJV3BuOXNoIMkbdVQxzNiiy4qsTECG77Ju0MD42oYiDfn M30HzmOxmoViPqUuqtGGO2uFsFRBWK2yUhxAl8D5bGRJ3cECmBlz5EcYI5AzDiud7d3DqkSsYHPA MioaLrJwNZ0ax2+KEhojtGu0BjiLBcFY74KbaIQuj5K89peZWk1pP8BdHi9nC+o2JBHBMjJc79Z5 NY0W7rfWK4YuIF3PDrQ/Gaj++ry63Qi2mkeUm4JQc2I3LsPKwO9LU1i6c99XS9GhhUOj/2ii66mn ybAhW0Y3C4++msVn65onXt8EU9kPPX2mufy6e5lwPAz4+U3Cjbx8vXu+3E9en++eXjCLk8eHp8vk Hkboww/8aQJbtbbeYA5Xd9Apk9LH18vz3WRTbdnk74fnb/9CUpP77/8+PX6/u58oHEXrEFx6K6HW XWVeZPzp9fI4AbVCKmVqa9AZo4qYbwjyEGSHPmBjzPju+Z6KcFT++4/em1G83r1eDBvlyR9xKfI/ jT3OMHDjHb25jc+ZBBAYZWqcQVbRGzwUSVPqAEehTiSGbqM+1KUEmvuiYS/syL5/+dn7xb5/uL/g v/95/fWKVr2Tr5fHH+8fnv7+PoHNIUSgPOhMj/skbc+gVUvDMyutVl0NCJsIC1PFqTUEmWLUFRKY W2pJMELHxLoqyf1hUVrXFiCnIdUoTzwrQQ3/Fjf0vhtFpG5un5+qDgM19eXrww8gdOP//eef//z9 8MvZTHRKF+Eb72dSbmU2m78MB0cjIcIr1AhrqcnqG1U92KC0yvWCaJJys1mXjj+dIzJ4kvqhYelc htTa5hTJylrHY2m8tLTPnpHxYHGe+Yw4T5ZzIkBTc7w0IgKIxSIk9E2kz6ZUkXZVM1vS5oadyAeY JeqrCqCIg3BKJFtxfiYHRhMFN9SaZwiEAVEhkk5GWYjoZh5Ql459ZpI4nEL9IxYMFUPPL1LKnKAv 6/G0F1R4wXnORuAVepksCuNgSuMZDELxaprajeJ1gBz0Fr9+jpxBAmeqkzVxtIyn04CcK5TFoF4r BNfarD/6kInToln+moFOidtmSuXCAIauhMEt60RJ0Rf21mIsE/p41XtRyoxNV7IYOv+T1//+uEz+ AC3gf/8zeb37cfnPJE7egbLxpz+vCBO8cFcrWuPTSmGZOHShyUlH1DBfF8nIqVKfCnl40jHjnVc9 MUIyMwdAzRbJyu12zKBRCgh5lS1uC1/dkTXYdIrUi9MJRMVVozttuYlJMpf/UxzBxCg942v44xVc BaH23T1b+qtbYNKKVVd9Ym5NneTFwFikyc7txru2hu29T4XNijj55DSPvUSBzLLDaEFKkUjkR84c WLCee8iolaxnJxIBUWq26V+Bz7ZvGKBKrb0U7LcL1cUSesXUMHmDImLlEbmV7WCg9IQeu+Bl8u/D 61fgPr0DHWDyBPra/10mD4gV+PfdF0NXl3GxnX213xOvqRqSz3MbdwZpcXqk6l3yPpY1/+glBS0R B0sS4EZlBf30u1yaDMGzcO7WLBaYuDMjV6acVFekw60lrpFCRu7jNFtvt4drNy+5hKrIhtXbtPGP A+K85dLVmgoDTIRFM483kVbZqwKS8Kjf2OviMRWe9utkLTVWdl9Fp+e1dXWNvTkI5zRLqbdpmk6C 2Wo++WPz8Hw5wb8//fVvw+sULSyGnHaUtrQavidDbkKCbJ0BD9RSWI8MNIP1SNdBuDUGCt0k9IFZ 7RqIGz0wb5OaI5whYVwFm8VhA+3hi8hLxKYxsXeQgguCyBzci4HjrDC2xE7QBkPAUkd3Q1pHObNb 1adItXUxL2lmTpSQgpKHtZhLmy48mPDKnzy8vD4/fP6Jb3oImKC+fJ2wZ9iQvF6+INSGUSFWMySC tfkxitLleQTyyZPSPvUV5XSbNjvcJjduaytFop3FI8d8hgxLWNWkY9a8ndA2Nbtz2gQzW8E2ZbMm HYHo1mcdjaARioYockO/go8oCAIsq32EBQFIA2EI0J63Jqh+R3ENZaXzGO7k3qykmu6Xpgg2RTnu 9hizJKXxXIxI1nXJEmg0Q2ecz60PhRt0aEoFyOHxpLPxFb5BiHMsuilSnI1ZKC644+6zLYsZWT4M SK54EinXvjAC2bHuCqXHWhqpophl5zRh0GA5i0diiNmRH97s8rDAZeKK0UUnxuv6MN6gvZSIx464 WsRBoA5t85VlYam+NTBEd4m66012hxuXsZnayE/y1lhO9C6qizML7T3VARS5NzsqOm9bRwtpaHcl +d3uTrkNUmJG8QlfonirOOmZtF01JDashjnMcmLcNNBFAhJeZ9NsFc9aQbu4dhzUMBhDVp53/LzY JWGLAanzRl5N53p26kiFcO5rdyYiGbJhirccC5CW/kbz7t6sMXmFQwp9yN9o1ZzVR+euJD9iQaiL 2jMLlpE7K4v9yNmG2N+OOXN0iUPKrCitZSXPzlC11KGS5Ni2qpLkm75l58W49gNccfLYROZ4bBkc 7kUUzS2YNKQs0P6ORJ0Xn0DesV42o7+tLY0Nv4PpSFVuUpYV1HRrRFgwWGRzWwtUJCqciGZRSI+I aGaeIA238sOarkjqRobMVLh37a3NjB45qFlv9elyT+Ub+l7prQQaLCEttvztdf1jVm75m0v7xwPL 8L79epUjJmCTGjNrBBsF06UWv5vScsXTpLYaWY06fnMo0rY5cdGMOB11glEQrkYFJL51fZZWIdSy VEfBckX2ghqmJveMZedesXexsOOajiQxbZuW0znd42r036lHuotgOSxQo97ovVhqA+EQEjwz3QZE vAqns4DMkODmqRMXK3PxgO9gZV/obt5YgEVuum6KPF4F1usR3F6epIApgeE1ZUhU0zQKSVnuyXNW lJqH07HKbeQZ/puVe6C1e1Pktigr0P7ekmvS3aEZseA0pN6UOPIxE1ktcOKfnG2SorSnBa0n9OyZ 2RaaipdHCWzFYypGZPJCscl8G3KsoLBQNkliLBNJujFP6uWnY/4n9hvLShFUkoqECt3dKuNdZZHC +QQo3TE+sWNlMPMVDWcYkDzZi6azMzKtBQE2W7S8Vi90gK48oLKjoYYTy0dcq9x4em6GDicjPNgD gT44koUjb1IhUjsLuCmFFuGxsOk4XGwK7JnUItNVZEfX+zZfOr7dFgfh0W9wY+8UGcjRjSJTZilx lfURDdcqatEZCaOAiJhT47CIBNOz6ToiOG7pp0HgFFdpPW6aSQXqwjwaSVNylzd+RCWq+zZZInA6 kgmaYPFmzWznSknfVqQqqsJA5ShsHjuMpv9OWDmq6nTr5gZPHguem8f4PcOFrc1M3KCqsj/wJTe0 GbSJMKIzB0sJyaPIKsjMKwtAt9JoSe4FGTBK1lCKC3KsGGyIFIzRu/AxeMiyj/eEVXKR7WKb1xtL mg9/SQZ67jcOTaL54K9lN1uhNcu7l4f7ywRdE7o7O8zd5XKPD+t+f5aczpuV3d/9eL08+6ezp8z2 kMwQsqthom12vEBDdHKmy03tX2E35zaoUVVzkS9oDBKW5FEYkLgsTRYFkbUiD144J8Gp3OSnLDKx X5udNgd1aPrVE+M8dzeOyNbsFnaci71/9YNEaTReu1RHwwfiin5kCTjLPbVHOvFsGQbWYisJLRc1 7tB8hudoBXEH0737be+6NM0vWk/duJWGHJ0Wle+4mC3P1sSjSZSXYTfXz027hfnMwbFGihBrR+Qg UiEF1VNHwn7oxJKgj+l6EUF69yB//HhxRh8vWrEL+qygKyDuc5woPcLutt260SKRtCzRvKyiQpD+ hMi0PfuQsjvVhZfquGsbcP1rgYGLjhLOWZHF3IwcJJVoBGjpcZLSe8eMhkHPaCIc7WHNq1NobTA0 wfDoH67RNGu8KlAiJDVomFeB6cy0QBmdgvgpO/GNaa2lCE57ATU55tZ37nzLUGvElxhAmHyBA6tE D9qTXD7//OcfhGMsfUTMLsQbOfd9QwcG3tD5ExbwHbtXoMxXy4VFmK3miy6fD/8+4ufkPf5CyTdz LhO4lnVDwMx7ty76FDnMySV0vJ/0Iq7b7dBp0zon7bqrxXxY34bldjEf6eDIsbtM3YRns8fD93w6 tZYFIC060qBdN8uATgPEIz8GRYJfs5m5ZbM4izHOYjyMZcWlOLYX5kBzHcNkya8z3FKcidg72d5R j2Iq5xGSRbWHZBArruaO96VTpmDlYONDa1S96mMqWaswTj2SSO2UJTGhzw2RexPO2FXumpqllZIX pX76qZc+6IlsJA57dtQEV/PqyGMDvqsLT2UExrqJy/TMTZs1qOvGiv+UBeGC0mSRYfZg+I7sbwda Qn57c8lJbmJ6a53WfSWm14GhkOYNlCZ48XX00YdL4lNAL2A1bItX9jEbkq5BRyDf1YHkdHx6yNl5 gvYij5eXl8n6+fvd/Wd8VnzwCFKuE093nx/tLc7r9wmaq6sYkEEc1JxI6BIDx06bcVhr+8DdsH2a URrhMT/jLbuxGomksL9aPs8cirXt7Sjt8YNDzCsHB5Dc9A78LiK9iaYKjCLsYN28SRrsVKGQZ4eq sAWVYQ98T/5Wz6TgU/TKT8M098cASe361SkyH1787GObZw9PP39Nvt493ysXkL7VNDrSywvasX0B PpXMjguZX6WcvPvy9e5JPz0pcZS6vFq9QIZp00NN6eCKGTS14VOpaAUPXBLiIKg5NNK77wdx96vr krDb7rLtpB0sWwqDVTEbhJxxZivFEdN1SV1oKe6m5s0nMhw75i0LYGjnMXkArCskE8wPm/B0l0HL jYcTaZKt2cF6plVXWBzf+jGu95CbOfnYjIovbvAqKTEBiRVnyz6ZxwuKuNvE9tKsyKflchVSsuLs Urs9rtGCuqqw+SCDz/Lgd+jrVlN/1l124o2FPs25iISbqGwtzHhV9Kjz7Mur2dftIR2Pufj0Y2HL t4y+scrt+ShXQYQ1ryhiFpTctzL9Jsc9MUad0FBWWg/s2fL4zU8WeqiskNGgokrTxJqaFB2Pooq0 9ArnNL8iwhz9wUIpVVFU1omloglWO7PXLrGRYItj7tUTf/rx83XU3p8X1cGC3YZPd9MmaZsNOqLb UFSKg5YuDvKdYqgnivY5CQ6rRHLW1Py8V3AK/TsNj7i69lbCL05uEf0CxrfpIW7T20owE+nd4Yq4 TlNYQf4KpuH8usztXzfLyBb5UN4SSadHkmiMYdUMY4giKsA+vZW+S0NEHaVlSWU7/ticKBrlrChO s19TqXxsgukNlcjHJgyWFKN77YNgZXs6kW1la3kWQ/YmEi22F2titpwHSzIK4EXzICLnpF5Idbpr SWR5NAtnVJmAMaMYsOrezBZUXeexILOaV3UQ0k7WvUyRnpoRe8xeBtE0URuntdqhcsss2XC8+Zeo HNdKL5ryxE4mmoTBwt/Cgu0bmIeCbnFIVYYiWPj+6ZxuylM2n84o5b4XOetu7AdGM+A2pY/xBiFW Qc+lTXmN+eAKHyYDfDCDPi1XIvJxqpFnMJRAeYh3ar4Znya57VOvqCy5CebXsr/OWbCgalDPT7Pz tF0fmsZcqvScnkerOWhnpxpqy08Zenu0Wt20O1ZB8a9VYBzMbqIZRqQSuiabw9i9kt28Osymi6mf m20VUppgx8TbvjS1EIgMVsOzRk86fsz7c/NhNRp1Dxqm68GNv06bw1ByP/amEstFGER07diiajBY sZECR74238/smWiy0zOdfBzkn9G0q3gTLW7mXhc55dfqtS7xQUdEfygdT10llLDVdLFoy8J5U4YQ W87eFDvBvByc26v9iyXnbHZ1vMQ5m03J8wSt0OCjpbL6W1bX5gSpM1sfw+X0rLuDIAqNAstFJzCa kJK7MSJS6n2n7PL35cT12Utry6wEP/F/24JbkUEvcyZORUdMs31Oa/Q6JOwNBGUMqtgZXwPbTc7C ANYpKW8CQhhIqI8Tmavj9lrarNJpO+HKrIqBKciHJFQtIZCunZdDV519ZFuWp+47N2qzAVuQuy94 Xe0h0FmX7Nab1WUhyky/nqNe0hKmZCdgbNBOPu3YGGR8TCyxLijwXakVTC7NrfXC37FqRPe4PeK7 ofuf5YGkLxXscANRww+Fi6Vd0yx7w5mwKD+VJhpa0W6FhZEkb6dbwQvqaBgy7kAqAWWfp/6GR1ye H+4efbcmnUmJAxabM6hmRKG9uBjk1ngYESECoJwjvakL4DWWFZvlIG0wrDMDk1HU7YHVjfhrTnFr aBCep9dE0nMjX2EcK2DOCvRZqEnN0BSUsHQ2WJldUQ2+NTvKr8VI0TciG6380+iM1EfbhFFEurEY QjAR2MfaJhOGTlqYa7hVO5yqOARuIxxTFVjl96d3GBRParA3yuNg39teRYTzLkQ1Daj+NzC7TnWt NnrpkSeM7DEgkSzRWg9vncdrz7OXMelUriixKvErV3FgmmSNx/N3lg7DGGNuxnhOL/OajeMk482V LMOORRBjUZGH0Rh6UWuJ32gpLUkjxHZFtW5dDOKVsn8gn//tEo3jwjQftMijk5aIgyUXaN9IZqhn XwnogFhpPsxa67RO2PWaWsf5cjayT+s6ktInPjRsiy3zG6JviSHM1lsy+Vm0zBWyRc54JXZGhOQD cxUxjz3aAOkmn4VdDN5g7pm/MRRrqhlQtfqdoNjx5RphQA0oZl2FXqaBNoyUWehwYb6HCZmslIE1 WiHwlZ4lPCzf8rjMHGSCMaG3SylgnyD8iUqRxwdIA01A5EDS3040j5s6687FNEsCO5h7q4wYn1Vl HTvujrG+LTTzIqnkmxUaNdGLllc5h71HkWTW5g6pFYNFUp0hkRzROAY7yNImNLJAGxa7KZlQAZqA qC/o86vAYYTLFyZStiSd8NGepHRTlo/OlhtDGjRmULoT00+3J8lXE0Hvd9+Q7/k+4rcfRTUSVvYF 6qp6tloam2t8do0rN+LhapqddLsS4Zt4qxM1CVzglOuv3Cazu6cYi1SLFYdj6ZxfIFtGfSWoaGaz T5UJF+hybMRk3Jk4aLQwO2a36wMBVRbGxFWGGRtmXJ7yQSGtfRxX5hP0a+OSCQqufZgPRGWdrlwv fj6+Pvx4vPyCHR/mI/768MPIjJUQq9fqNAQizbK0GPEK1CmM2bl37Cpmq8U8cEszsH5djb1OR8wA ga8xuNE6dCQDIle40H39s8d/vj8/vH799mI1gXyoeM0bu/6QWMUbisjMSPsTDgRHHCpVQ8dNIBNA /4rgiF96kBl/p6ci58FitnArS5KXtCt8zz+Tj5EiN09uFksvToVyMF65ygl5JE4emZBdkiLM17KQ gjBrc5tUSI/z0CYKLhaLlVdoIC/Jk3TNXC3PdjxHzjxCVZdmS7389+X18m3yGQHHVf1P/vgGDfP4 38nl2+fLPdr1v9dS72AzhIB/fzpNdD676ZhuGVYRNIL5aB3H6AdyZfwkqeDbQkLa2zqswzSe/7Hi N0Vo01wQkpqYHXW6DafOWLDXedng+dZNj5fVjMQnRuaHT/Mb2+8Aqfs0r0i0KGTC3jfcO3Nas7QM GmWvKnOWcEewlNdLTo+M2WhdVWd2pZJqzp15Gt/3gCnD3s2orpnT8CbIVKqzHdM5q1ZukfAFra7j pr9eL89PsB0Hxns1mdxpXxPCfkCWRYGUj+ShgzDPEGjdTrZheAMljZtlnOXrV7Vg6HSNgWOPCn11 5T+XjRWi4XdckobW9Tutel+FND8fBOyn5Qe68xCAIP0S7RcO8KvNRd7CX7n8GVqWqebBh7U8q+Nt wY1p3aiWUj6lYIbvKK2JXSzDPz4gTLCF3VPuOZNeSdTGOM4bachhTrlCKaANdPzMzjMqB11yVSV8 JaSqjIFSVQQIV9FUyPB0GqTp3P8/Y1fWHDeOpP+KXjdidoc3WQ9+YJGsKrbIIk2wLr9UaGW5W9Gy yiG1Z6b3128mwANHgvJDt1z5JQ7iSCSARCaZLQZaxjge91xJlXOUwCovadf8Mwvl9X9GdRE6Ve13 jHHy8NftzVyX+xYqfnv8k6g2fKsbJgn6JOORPWRDSfEQ8w5tPfa2yOWDASXMHZioX5/RRh5mLy/t /X9s5eDeXVKo+atqnCTZgfWgiHOFTGfois8HdNCFoGJATRJQWVVEYrPRxPqQDA9C8e2klpxdmGyu z2mzV1qZyu0KnFn5fPp+e/v77vvDjx+wvvLOMoQITxcH80vj+Q6jna5eiDEibkphAb5v9qlWjWH5 1ajmEZ1onJMS65nT1B2VIPVdeiZfWMntQQTkE3BnNjiumkYxw6mvrZimTs00beVEtD4n7ja1oIwq Cp2bkZsqjh7PSRhq1Z6WMjWjL7Btpl/0C/hsTFRUzPigePrPD5hX5rAwjIVkqnpqPyB7feyKEelQ VE8fCQNVj2Ig2hi3LL61X8Sts9ko7OyGjvnl9Sb/hS9X3ScIeld+gfFuq4a4pjZS8UiffU/tfzku dDFiLPqrgN58DAMr7MNkgYGbDCSRtdU4vnI9rR8G6wCTqnry4FRxlW4SV6vgk+TEe7mxxY7I+P51 vzAT6wrm744YJ5SnEtFceeYLb9Hi4g8UlNsbPQnUPOus9XzmJETGJ6XWJ/eaEb4k3f/+9/OwSa0f YIejWfS7Y0BgtDQjraNnlpx5QeJpZY7Jz2RIUCmte6rppOQ6PlSbvTwo7vAhldAi0Q2eJGcnOlNC EE1krLqTWAF0cJBrEb1kDtn9t5o0sgCeLYXs/UUFrCl8ULQzre0mOI5IvyIyhxwhRAUsdUkKJyDL W3/2YtrqhJ9e8tiklWKEJdOtj4VadKSBjPLZYj2R5noI0xnsqANlIzHgRjqMyiWoRKJ12sMovMwt NSVTENLRvswgR0cZ6GzNqPywFc90RJ8xw3TlhmRdYJlyY5CEC4kHFmWi4mZgy2f5OVk51JnRyFG1 SezF87eMdN0Uds5xj247yXVAKXUV/wIPbQ478vBQO7Anpc9WRi5o3sAN6Ts4hWflfMjjhfFCWyFH rB7cSVCYrKhuGjngO/wgpvp4mx62xbXqM28VLA270U7WHHhdHzqyPBnL7PpVIKt0YnZyR13mpOXk xdMsmU+X4lYm/GdPX0TKrPzzQ89WLSITkg+fTKV9SV5pyXxCE7aVJtDpiuaDvLrpiIgAv5x1enqU X7eclNeS/Of1qNp0COJwYrIj3pvshfNy4pxoCgOVx4FLOxFRWCi1Y2aoXceTlhAVUKaFCtEhPlQe ypZV4fBdSwErjxSPM0cfn2UHIDIQ2AHyQwGIPLoeAMUf1SOQY05NAMviyKO/Dm1gMvpwa2Tpzy1R 1ZxFVGQxjOtFFyV2EwsFleE9mvCYeW5iN3HCDQ0k3mZLIaEfh8wERqPsNM+oSm6r0E0Y7YlX4vEc i6HJwAE6VGqWDWSPoKII26i+fUZsV+4il7y9mBptXaeygirR2+JM0PskNqm/ZQFRM5Amnet5DlUz jPetxYPROfhyQwxHAGA5JYYUAp5rSeF5RA05EJCCgUOkKqtyEPVAfSdyIjJbjrlLsoRzRAmd7Ypo fIwVF/krCxCQ0oBDIa1uKDwWJUni8d2YVCvmGdP6pFSui/3Gc9d1pq8xUwPXkU92TR1TCqME0z1a x8sfAwxLy0tVU5EN8VUTSbXUIfmoDouNCTA1jOsVWQdQV/zAAgSkkBXQkpRtsyT2I6IhEAg8Ynzu +0zsjkumxDme8KyH8U72NEJxTAeEknhgm+R9yLNygsXP2iThShql7XBnr/PV+s2OpAJ4H1S1qr3Q scQTU8Te8jjsMz+hxNwgd4geB8Rz4pDscpzCQbCooeBWKEoIkdS3LICNHTEkD1mu+nqXAY8CvlSR S9HxrcwmJcQD2/VUKwCZkjZAzsjvH+79Fzslrws39qmd18hRgGIQOMQsBMBzLUB08hyqqjXLgrhe QCghILC1v4rJr8x2YcSNUC3xk+ds6iiilMA8c70kT1xiGKSgtTlUXwAQJx6VAj4+obqp3KeeQ6xl SD8T+kifxcR473d1RoWn7esWNHkLnegjoAcOOWoQIWMdjgzHMo2SKKXSHnuXdoo4MySeTzTOKQHd 081pYOXmVGEc8uig0QrP0pLKGYj+FXScnmiFSeJVnIQ9IUgFFO0J5RugyIt3hMIukIKEtKN3vuKk qv2eIAl1g2yQkaOhdtQjeOpK/jAVA03KN9YjPhheXrcNBscr2uupVN0tUYybtOzE+5DFislJ8J0V +gnIfj3JsL+vqibDt5eL6ey1Ihjl7yRg9Gp71V3bygz0txCM2hdQ+WGMjtQSlB0DXVBDg7VF2o0A ZWiazfD8ifdld39qmpzKMW/GSwEyQ9g4o7fmOaElZDNavnynXmRhhOYmM+uEd7I+TQ5ocmiS8y6N Q0+vHXv4/v7z9XeiTvOB+GBKTMkStobeY6xcV1NYYnZ7fX58v2PPL8+Pt9e79cPjnz9eHuRA1Io3 UMyCDcY6EolHWFMecDLu3Y0HtZKKNFEtn8EP6Lor862WAL1b6fnNo0dioAUtMIigiw11K4Ww5piV k7jZ8uR+lP4SlUmv1YBajPuEb1KtT7iPrsfb97v3H0+Pz9+eH+/wXZQUC1T12IpZGB3AqaK5MAIh 0WQKB9lmM4fWaCrH/P0f8mAgm2tW06JfYVxoLsW5ELdn/vbz9RGNa0yH8kO6epPrIVuAkjI/Vq95 R6pHmbsKozDdkwlPkvZeEjtUEfyJGAZD1oziZ3BXZTndusgDXxyuHMvzIZ7JufUc6uKIf7OwxlPr NJroaY+axLeXGX1/zz8eDwB9e1X4+aCnx6bXGUK9UP5InmrwCfTVD5iuwiQangoqcYUlompbj8Cu jEB35B8l1wY2KNfCMvQQa3n7zFkhDfLWbCXwxXZJXvsjokXK5TGT+DqClbE0ArfXyOpGcS+HgGmo gdQkaeuEvJKdUaMXODly7L2Le9sgtBzgDAxxDBr3BwwreoBNDInFxGRgSFbOYhWSlUcdnkyofH43 ExON2Ee+wTgelqlkdJOht2WbbUIYtfbvQAclnmuzbUUOboo6jE+5tMlmRCb2TAvwJKjqhR+nCQsd jXifONr3d/uwj/g+U6k2K7LFOpdBHE2vLNWUdejQJmkcvb8kMLZsMmAIWzMlSdfn0HEWQmthGtge Wus5XuxJNFDm0tr3w/O1Z1maa80uLJ/0j8J78YS+nuadnFZ1Svs1QkMn17FcSHMrKMel5q+AVLsy XntOt1xeTwyeS52fSLA2CkZzLbK0FVlBCfaIzIBKLTuAgbzyqQ356BnGCOw7upSxmHDwbAcezS/n 6E+GGqfoSjb2lwZ5VfuhbwyFD54Cc5bMD5OVXb72NR0mBCDN6pKv1MLwjyRSTXyqQ9exTTAE1df7 gmq10Jhg++gHOLCuQfpRwUyj65746OPAqldM9n2KADgFiVzG5O9Izn52gmR3+jzziKgxx6bq6Yuz mROfWh7EI1520AzeZy7cc/Mt98T3QQXSrE+SiFrfJJ489OX1TEL28KclEaHA0rUUavJimaZip2KW J2sKk0cKFI3FpWq/SfehH8ozZMZUM2vJ5xXXAOkal6xa+c5yKwNP5MVuSueA60W83GScxbMlT2Iy rK3KQn9xJQQNBaEKBwLdAiVRsKLrw8GIXl1UrhW5iGs8sW+rgaKd6RA5pkcVX916qXic0AUClMjn +BIE+h891nTNcEbadSmHLJCAzeFLoVysSNippsjCqk15mzSDsxJHdAJX5ha7YNbtTEhTGWdkkKbX Yy3rvzMOK3joRr5lPOPa7/kfDiChxXgfyYpRCVr8SlOj0bAkotYGWXmhija9OhJcYiVbrJ6xYmFU AW4TK70I42cb35++Pj/cPd7eCPe3IlWW1ugSZE6soCD0qwaUnqPEMK+unAUdTPToz2TiodZZztql OXc5ZsmJ5R2VhcbVZb/ABD/6Dh0bUtrdscwL/oxp/lpBOgaV0nWCmubHhfVd8Ii1vS73OA/S/ZYM CILZoyNhD/4jil8fNvjwh6DmtfiicmuCnia8ZjqU0sj3GzOynN+x5sfzir7c4zmgeGhpGAfWfIxR Pqh5V2BK+8CANpFiJpje/kXzZukGtJyMPOIYejM9lnso6diW0F4lgzwvevcqPFna9gej4aBpoiCI oCx5EzdCoCaQCNuBWnfQqbXvgfqjOmdpsmHCWT9kiBR7ZWELU8ooSUJ3uSzhaVw/lqa5lEiGJgsr y5ViiEKw5M0SXMP06MxuNVisBv04TKaZYxsl89Ti3lYq+jbKLHrr5ct1+621uI8gPmNDn8YONTx7 16Ku07ajXhuouRXny75h1y0zh1tfXtc4xqlxWBjjcAiCDF9xMD+zx+lANhO0OH/mMDe3KitLYURs EnkUBhBv7FMU6MUdS+giQ4KwKT4DKAj/5IFIhqfpijwRy0eaw8yFClnk0MPr4/PLy8Pb37Nrhr9+ vsLffwDn6/sN//HsPf7j7tvb7fWvp9ev7/9lyix2WKMD/zlgnFFY8fp4+8pz/fo0/mvIn7/qvfEn 7388vfyAP+j/YYpTkP78+nyTUv14uz0+vU8Jvz//R7l8GLrpqB1DDOQ8jQOfWLMAWCUBrWoMHAV6 Eg/tEpUzyHcVwxBmrR84DiGjWeiTlmczXPleanxCdfQ9Jy0zz1+bmR7y1PUDalcgcNCEYtnkeabK BpXD2Gu9mNXt2Zg1zf5yXfebq8B4J3U5m7pI7wuWppF4R8pZj89fn25WZlAeYlfeQQjyuk9co4JA DCOCGEVmw9wzx/WoA7mhl6okOsZRFFOCLYUNObVblvEzMaaObWjzuS1xkF6sJzx2ZPudgXzyEsdY XvrTauUYDcepRHsc27PveY4xT0Xv4MR6UOYd0amxGxtjIzt7YcKfiUq5Pb0u5CFbUErkxBikfGTE xvwS5ND8QgR8y+2GxEHaAQ34fZKQHbtjiRZKSojEh+9Pbw+DWDM9/IrEzdGLwpWZaQPDb1EAIQP5 nmHoUBZFnjEo6n51dOS99dDEHeyr2syfOmrz8vD+hx6kSvTe83eQuP96QvOMSTDrUqfNoe6+S4cj lXnU98qzfP+nKOvxBoWBcMfb5bEsQ5bEobebvEvVz++PTy9oQ3FDb0/q+qH3Wuw7vtnydehpFt2D a2CxOv18h3UW6vN+e7w+ih4WK6W+M+wP+2Jy+JH9fP/r9v35/57u+uOdWFDNZZOnQM81re0kW2KD JSrxSGNpg0uelxroAqpewqv4KknIawuZq0jDOLJnwuGPMql7zzlbqomYbHFtYL4V81TZr6Eueekh M2FQE9dS9DnzHNm2U8VCxfpXxQIrVp8rSBgya6U5Hi9t3QfGLAhY4lguQWXG9Oy5EW3+a44V8v2Z zLbJHEW+GJi3gFn6cSjaszVKEdBPoNX8YSFyrM2aJB2LIJePG7Y/pCvH+WjcsNJzw5j+nLJfuf7Z VpUOlpJf6N5z5Ttut/mQ8XPt5i60raoDyiLp/ekuP67vNqM6L4slAECJT0LPw/0M8c3IIArKy7Xj qJcYGkjI1P52e3lHRz2w0jy93H7cvT79e95YzAIVc8oPdX25biY7re3bw48/0HrOOJg7blPVfdRA 4BurbXtgn9xohPpi2wkzK8V4VqJi7NPilFaKeWCt/Lje12xwg2jSN+sZmpsGwM0ao0UtWWsiV9Wk +RU6NCdisCLe91pdtrCD56Zjlvoo2OT5ZdDJ0AcGvWhicu54D5SkUJ7hI5DtQDeNTDorK1d+kzHS 0Wk0LjCr5Kx9Ub7RKJ0ry1lOSfNCfR08U/nFXtvTt3kyW00dMiJDWufb9qCWKGjXjDu4U7IbEKJU iWnfHI5FKuU5EIYDppAkj7bLn3y1xJEJ/S5w93GWQuttqn6E4psRCSw9plttRB23hTakUtlSdMh4 qzxiQWJWdt2BXT/DiDY6Bs2H84OlmmxnuvDjA6G0Guch/PlMSiRA1k22Y3pug8Ni6CpLKnQdnWda t7epcKQn4nE+v/94efj7rgX18kWbG5xx0N30ogdsPOaKiiRNqQWL1300vlVKLMeAdnfrt+evvz9p heNcavu9H0SOWTYO92vLksgz14DNG2iwd//789s3mPG5vkPZSDJ0lD5cFknkNQiUHF+zKrRcPuSF 3+umwaf/jLgowRw2GGG6qroiM4GsaS9QbmoAZQ1Dd12Vyk3IgHUYya88FxW+nLmuL6S/fuBjF0aX jABZMgJyyTOyabqi3O6vxR6W371WqXXT7waEHNDIAn9MjhmH8vqqmLPXvkK5q8AuKDZF1xX5VT72 QmZYDYVTOrnwOkULR/LaBas2CholJ0wwLCVq0ejeAZunF+68zZFGRN6U+o/LESXDtvb039BtmwZv KoC6F70nf0/a1RlID/pzJN9zysC5rIvOo3VJzBJWMmh5tQ3KmvUq5YDDXKFMUfa08hioZv7ZYl0M +B72oyW9h8YhTsewxTrFsmMu3rnoSsrocSRe6xKdS5cH+s2+xIfR6j4fLPNoYNrSZdC2Q/gNxjI+ EfVEBMfS8jdzaTc42JH9RVEoJpJlnKf9RR9dGMrIUixiW72xkfhBdZmvDw8fxaiFeVy3lQScaG/t AU+zTPYNi0DJ9N9XxU3fSJPfOOIALRqQhKoVN5DvL2QkakB8odrJzEgSVbInUU3IgXhsmrxpXC2r Yw9rHHV8hyIJltVCm7tpd69JFV/5DUpLrS9sAw1fCNXX4qi+eVJA4THUNoQt9oY4e9egw5/7IFQv CQAZ3QvR6QajN30GFjAD901tm7draDL53GWm8YvnrbaOj5jeIesOtilsVxRaCx+a6727cs4k1SGp eq+ax2ESxkCCOrGeoo5d6spjmoBXWBlMRQSJWZUyNsScUBHTleicHZ1qxmf3rFM1pbpwk9bF6ip2 ShJZBNo8aeEnZwbTFIZgGt7ULFYAeJJEPoLTIHXfL4HCsnG5L2o/8p3U2jiRT3kLkVjaJAzPZPtg 8IzOkrPVrlLqNsV6USrxCO0VVy2FrfPIdeQrjC1sntJet5OgVafBIkGcwNxe328voCENO4AhKLtx 2CGORTI9DMsGRBAsfBvQAX8JHIOvtR0ot91lmRfjc+KRhdyyVbOlBBprDnv1XTYSrg1j9hcEbG95 rs2TYg2VdMJ/d5mbbbOTdyrwY/YD2HfFftvvFFQJNXnYaS6+IPUwjc2bAXwo+PDC60CY8WDSNIDW 3ZFfxeGsO9DzlKOt7T6AowfYolCLJ//gorov92ojZDvYF1x0Wgm/dOKl7ZSY7UiEZto2+0570j1T rxv6UBLTFngcRj0t52BVZEpkHaR90UIIi26o12VHDxGObzp62UUQ8uNBky2VuL8Uag1OaaVYbfMC Lp0x/JFeZqBxWjLuT+V+l2o9cV/sGWyRejOrKjOeVqh4sW+O5EM5BJtt2StO6WXqNf/NAsCPttXm tEAsfYp4d6jXVdGmuUd3LfJsV4Fz5YGUlKQn0BeqhRHBdUseRltvnrrEZ5TNhlKlOd6gAVOhjWce uJT3vp4f6AEFFTgUMVhF8B141XSSMJGIVyVCFCYo+rS6yOElOBWjiGU5SVQOWmQ6sR+RYWt+oBEw /RtBgUGbzj0dO5hzoOzXqs1SGAH3Oo0fZGnEtijwHOheL5f12MsgOMnDBc5x2LfVQZMzHV8K1YmN cc5hF05te3k+sHL1vzUXNTOZavRVXx4bvRiY7wy+xTaRdzBjNTHV7zpQ9oX35BmRqdroF5Ils2wP OFqWdUOeWiF6Lve1Ue8vRdfgR1rSfLnksMw0mggS7kOuu8Pa6DeBDIEPxC9j6eNxl6ilV8Qukobn ga2vzQ62FPox1lQocixZJh9Oa+LTFJN4+KE9UOf2cMIkLnt4+3qXG4/TIcl6iDChk4RBMvuUmMga dBFZ2ccStDCNyIwWgFRddhiGKpvDUJHVgt0k/FGmAZJZvrM89keURzfZUYOA16fcQF/mepYLO0ue quaR/pTn9aIiRuWydUw/Tax5IChIIzpMSaQG6ZVL2OEfOWAfUg9YcNQ1laPSUQ8CYaU9xsX6N2xX rlMTqHu520E96ctMEWAjzTSslUJqsL+eH/8k3B6MaQ97hvbXoEsdavXNIzrzEAOKagA2DUyjMPv4 MavO+5y865pYfuML6v7qJ2ezPa5duPIoMtXc++I0rj7jSg+/xA6Zol038P/d+IlAN9uRM/M4rvKh 3UwNdSrfUTsU0TeJkey5kxNFcAnF2kCm2x0rcy6LAwNRHD5k/v/Gnq25bZzXv+Lp0+7M6Ta+JHEe +iBLsq1alBSJcuy+aNLUTT3dxBnHmdP99wcgRZoXMD3f7DepAYgX8AaQuEzcNoD6rQOTETjbT+4M pq4MNPbK7RRqyRdUSajXh0oSPTZ1aw29sg0YBLx3IUV1lzyE5MfmVYaAkJ6hcnST0ZT0mpVN5+PL m7H3Ufg6Q6A9jzQB5XGETk0uNI8vb4Ybt/+eq5yeX5e/HWDJrVdS+bkfyUDAVzwZXYmF5iyFwY/D cfDt3/3zr7+Gfw/glBzUi5nAQx/fMEkFpYEO/jpLK5aFtmQtSmpUCF6B1S76uiX8uH989Fclr7PF wvElMBEyKWqoGkVUFmmzLHmwkGUK5+osJbNuWoSmuEwXFduvvzTRe0tY0aioYmc27V9OmJrqdXCS vDqPTrE7/dj/i4niHg7PP/aPg7+Qpaf74+Pu5A+NZl0dgXaYFn/stXSIMbuM1+kYcigDWWtLfC6S t8KBaN/MnKEyHBmLyISADpWs6zyXvVLs7E0GWrzNMPxXBYpeQbmtGNRRkvQ8IetifBlHYYz7CsTy zcRmg/9hkdJVAdwtzuxVXCeMbklWlWYyMBfTxewdZLhGA98lEafrbuoqBOd0qY2py6SgO3SwSWMc oiau25mD8i7TEWqOu6DK00UUb2UGM3IZCqqQD5NAMkYXvcHLOeKjmkO1JtcRoKQRXQQClzGIiVu6 XYgHHAcFJoinJUTADPbKeMP2xsHwRQWfv8MOTYJZTd+nSNJ1oPfoiGOqIaiyYauIm0pFHs1ml1/T JuAKrIk2UzL0lSJImv5thoBfT1z2nzHdXULteQbR1fWIKnY8GhPw5ZZNL00TYYXA+N439iObgXLD a5AURO+ceD4a3FzGY6rZWZMPR9QXEjEKfnJ5TbV8g5h3x62KQfwgXV8MiunliOCYQFCsFIgLO1q5 hQvkJdPcnAz5NODY3ZPMbscjSkvSU9xNU6YRvr+5GhM3HpNCNKAq3JgZCBRizsbDMTlj6g10ko6x ZJBckNGxFEHKxhcjakqtAX4TEzOhXk+nwoVB5zCzV7bMuPbv/QlEyKc/rfqYlZTYbqy7kRW94gy3 7EFN+CXBXFy/U4yZyzI7M5VN8IcdYHoT+PR6NH1//iPN5P9BM32PRvYBt2XUX4Jsk2Rigxd0oTaT HnpngtHEdO/ScBX2hYDTS7Hhq+E1j97d1yZTTo0ywsdEZQi/vCHgDbsaTYgpO7udTC+oqVxdxhfE NMK5T664cJyHnuDrtrhllVoch+ePKPzba8DdqnJyB0Ew0bJFykBYIrruBkNUCMyjPdlsyE2STekE ZHroijU5e1i5oVM3aQIVMsU/KlyRST+kSlcnmlcg3EpDB0M4PsP8lMUGbk2LSEDhm55GzbaIO77p 0kLEmo6XUSGMaO8ybr5sYSiGtFhYZjoI0yGg5Hd2Y7vSuo3H+K44yFP6CTbaZPhRwBqtyUEAZbSV XsZA00jizsFrYRuDT2aANM3je2hZYUYF4wgqZtW8b8kZWOFzngXIx+OLHqSbIeLZzCIWaIeYB3Yx yZ3osRekrYcThagvrMvAZdPa5SpXeqeBjehFCm1sSBleWI+zKPYLwjeDHqPnUqzTeLtzye4ji3qx 2JtKXR2ZTxdRu/EiYrSmaUiL1+PmLTUCKrlHFE7+WkQlGGVBouiXDnTTJ5PXIwYUs7hsxk5taKzl ZoFGRJHyjUNat6bCjiA2l76iugXreeCOE9eVCmlAtE8a2X/W7r7HE/oMu3tIb4pvzZUzrFcTPdQM w6qUhQfPiqq1bnx6OGNEGlO2fzgeXg8/ToPlfy+748f14PFt93oyHrDOs5KHriXiZV2yVJuEGcxU 0X0xv58VoUYh4AzwgSJfvGLaUtlGNy/7Z5Ea3ZHnYgFsDm9HKthynK+aOpY7nA2CWmapB3XzfGM4 orjMy/DdHSz1qJp1Xip5EIZWmP0u+GEf8318fdFtKv19j2RpUxZXLrSss7JwgU1bTDIXKF22vEat +RSjlXpNOu/uDbsZXREUNpuKEtqereA4tZxbemwiY6JWdczo+8WeLgUFghL1ejRMjrFljalGLoO5 CKwtPQzPOlCLPHDDmf2AIYNdVxn9sqpaJyOmMNKyWZXcO7FY9/h4CM4587nP+CrIWNj0BQr0Dmv1 ajiwOpDVSFHwALfTvikY6SXclVsnKLhiaVQsym7DbZsql6rakFYI0zFONlYb+ryGDa88oOlkpofO 3iNYlOWz0pgTmHKQLa1ZCKf+6KJjMzJdND7SwcpgViF9qZ19AmYlYy0s7swFOaHRFrvn3XH/MBDI QXX/uBNX3yoOjWEFIL7GbX0hUoa45Z4x0OnoT2g4+fK53eJyLklNbogXcNk0Un9T21SYRDmk+STG GDSyWnnLt3s6nHYYiYZQLlI05EBV0djBeCq8ZxioPRIhi3l5en10t3uM/v9X89/rafc0KJ8H8c/9 y9/n3ASe4QCGyOpTxBrDDeswK+Z1FJvJHhHaxBWop4ZgpbhTgbgInMwKO9tXW4AM2tQRmb4R83EY c6cSUdrmdXqrxTP5c7A4QKOfD/Y9RI+U+VSE0XdXFvKFgDqFDOoqrfEcjqRFBlmgMKdrojUlX5p0 Oiis22Tihf3cvy5dOw81571ow+NAth0MMFdvSVRGvkAV3LLSgZ+wpReLqizo8FpIwMuSMg4VKHxN sa/t1yDWyARvUoBjae9w6E80JOVNNpxMLeoDaWWzZhnSX8vQ95paqn0+uXW6YAI0cYVibXkAVG5c ZN9F2jR5LhHdR6wfVhyhuChQ2g98JB6/zWA0CEQFxS1HaSg88OKINPyOGpoe00mzfjUh6ltclgYA Jumqs3L0zUoQOjsMNegkmKsz0ISzqoy57R8iEyDDj3Csx7n5Tg0/unm0Si3JFoEcFILMTKCDQMwT lfZBD81aEdfLx554Xi23cIp8exXb3Xk+9JpNZwXak+Lk+PoStcA4b4WdnUUBP7RQk1WZNL230XDW DqebjTRP4wsbCYd8N5oWDBRZU62yUPChcZslzp6eocG2JJVuiWbKLGbdCqOHY3lITE+aJdquy2xN w/HwohOxB6k5ZBFOekJrjgJF6NEMcfF2UbRo7JG5ebPjyDISZvHMH8bdEW+c759hcT8dnvenA+G5 UJsBe/myhb2+npW5ljKi5+/Hw/67uePCUVCXGXUcFGtmeq2Lnx3bNF0Zl9xqr7gNuZ27oTjd8y+d O3bHssj1/ArYLgqlTkBuzXT4Kf0zaFJ0aKj78OOl7TUub4H40uPsvFpEaPj1Y//4drwXaXcaX3UV VN6n++OTUCy97VZlsZaKKGh/1nJVjt9MRF4kigXJTy5Yo0g49kbd3BjgHtBtIs6tzVIhqrLJ0BOQ 2hIVTZPGLewqW+f7cRd6T97wiYPrMV9miaUg4e/gyzPUzGYxaGBWkGt8IQeM2UkNBFLbkFBjxJsB yGLU+W6U6fPJRL7HK5PO4Jfqp9PiL2ZpNphiNsLDsXzFV+gahAaCFNfLeN7Y00JBunIUzwiwEaRf 7vCWpK+osNJwfdI0gkXNKi8X/vcSHZhBMy5ZSW05Wa57c14toxA5zeg5qhkifZidHBClXjSK21oU ZLFFybO5McSJC8gkQPDSamskEUSpt21pGpKIn3iViGZjYnOq55EtbFc1gHtC2C6KLCCTSorQSpNY XqfGSrudM96thy5g5DQv5ta2hbFH501g9ePebk3DuDVTN5ZrjH67lRR9KL+Hn1ZkjMbZDnqAnIkW k3vEErM/LxzFyaMKry1FUc6+oJ9enjXkLQ3S4Iyx2nCGBhlvkOiW6s4nH+Gw/JSsE7HZe3t91pQ3 V1cX9r5S5llq3et8BbLAImuTuTNOUvUqm0/ziH8CzYqsF3BWnayBLyzI2iXB38p0LwYFvEIv+sn4 msJnJUqpICF//rB/PUynlzcfhx9M5cpb6VL2ed29fT8MflAtFpu/2R4BQHNLnjtAbBn6MWWOZaxA goSSJ6BhEAO5SuvCrEFpTkrOYpX3k9qXJMI7hJbtAjaBmWgdNYvEH+eIYVkTi10MLahSZs3MUgR7 D22ZUeIU1QO62vDUjOaK6Hzsx/W24nSZS6dI+C09g2yHKQ2lz9rz+eA3/owLo4JdhhPKbkkMCzFQ SHPbRs0ygFxvwrXju/WGrr9kLn8qB3BbbCYexwF4FepS7ZUpIWitmybdbOv630g0Bviw4RXsS6YP ivztuzf38Io11pHag0NbMMzOdYhhbZiXcCjelfXKnOCUrGC+QMMPHdmL3lryRu9O3YTMu26RXI+v 7dLPGDO4s4WZmjkcHcwoiAmXFmqBFTbAwQyDGEs2d3CU44NDMnnnc9qqxyG6+nMdN4HG34yvQpjL i2C7bsh3IZvEThBkN+d6EvgcTl2cX9000KjhKDgRADV0a4yaOKOdz8zKqLgKJt6ZYAo8dmtTiMkf awyPqqIIDanCX4cqp8JPWJ0NNnv453YPww1fldm0o+7kNLJ1K0YLDNg9AzHGFEWc5qCfBQqWBCDh t3VJFR/XJSh4ZIwyTbKtszy3450o3CJK84w2pdEkIP1Tlp4Kn0H7LZt9jShaOxicxZL328zbepU1 S7vQls/NuJM5s37Ynqar3fF59+/g5/3Dr/3zo3q8eTnun0+/RPz070+718fB4QXvbOxnBNSc5Dsp 0UCWNg0uRhAM8nSd6nz2nye6KdsiEvmBzebEh6cXkEA/YgqjAeguD79keoQHCT8aDVEiiTS0Qt0N iqrqNI64eQPd4xlo4fp6Q0nNGCNEfPl5eDEyklY0vM4qfGKH05U8F9sCFC/MCcpmpWWk1evklkyW Rkla93cr5DMOftOAdoQ2AyB1sojbrv4uTna2LHJKBZadqkqh7RrSLAYlQGFBmPX4QK0+SH59vvg9 NF+ksIkootvhrgz/zkGy+/b2+Cjn0HmO4BRINxwDRpChYpu8VT4gpomMACudVPExWqeqJSxleRqt XMbLlylYUJm+jRXNGuSHh19vL3IqLe+fH+2JDIssRrmtLCtqsC18t47yFthjI3ERlC0H8HnQYLwT 78bMYSl+t0rTyrl1kP5raC6juTr467W3q3n9n8HT22n3ewf/2J0e/vnnn7+NZ1QO0imvI9PHW1YF /1/jRXWjnwjruA2MWl0CqxFNCpwVapeIVrOMJAOhFRMtiad6agMrq060s3ZGeN4WcraDKl8taRrU PKM8l0jRCHeeoH1zXNYJi8vWDJ8mixMRlR0uiZ9d7Ij0MDCdjCJk7Cj4aCroMzOaBPzhMNV7U0+v 4UZRHVqE3QFhVNn1W+WpxyO3oJ6QiEiqenS+jq9vm3I+74ugR1NM03cIZKmK5dT66HnaFFHV+0PS CHzvRk9GouNpNwONGrgGUw80EudS0cKlMHUKOqyQIoiKAiM9oZImviQjeGhimEeKzGeyj+kb447K LEdn+zXafnjDICzY5LShlTHFYx7Bmqm8JXNeU3q+gwIPrWBRTfqWGFNN09Ez0azSHZK0aFmHD4Nz J8ixYo7sked3KjeXt2dxhvPd60luL/3H+SqxX5uke97VRJvJUFMMM1It003SMnPmIBTP6mLhByUT yBVguR1CVMCF7ELF7xHYehk1S8fwB61so8pLrCbo/QjnAtwmqWV7C6eTzeYmQmsRd+uKapheq0Vi PCtgH2O84Vs7bqn4AtYWd1kg8pjc+fH+PCh3wOzPijiHtn7+8B0Pg09T0Kz+aT7YZBgipJuObE3Q QImIBqQngEFULbcNCBY/8H/XFxcEBZrAIsUuSIFt6JplNuefR2RLBMFdGQi05RLOcSOO5cM3KefF JRPRxM5cerp/+Pnp7VnlePnnp2aVCJZrhz3SoA6fIJpO+K7iv0IkmqLjpgnDmUjiqsy257TRKZ+t h7RfmkEpX3FTzsbUuJ0JxctznVagAPXxDvrEMg9vx/3pP18kX6Vb2+gFFmbWcDw1AYXLNXDx2H9L njH4ipaoorVsL25MPbh6AkSL9UbYi4gF5MjUgoSSSXvU3BLspXR8Ltk063exnz+c5wQ2UBtJx8f/ Xk4HmZhVpywwjKAFMRxJC8uY0QKPfDgoGCTQJ4VTKs6qpXlwuRj/o2VkKpgG0CetLYFIw0hCrRG6 uArXHA0lOm8027h8lpU0lLFrjwTVGpQTnxE9nCrP3UhdfP8p2mEJnRN3e2oy9+SL+XA0ZW3uNaFo cxrodx/vcG/btE09jPiTEL1gEhNuV9TyJawsNWejt9PPHRzmD/eYqTF9fsA5jAYc/7s//RxEr6+H h71AJfene28ux2Z0ANVxAhYvI/hvdFGV+XY4vrj0CJr0Nlt70BQ+AnVvrRo7E04GT4fv5qunqmIW +9Xa70Qa+s6wpeaDfw/LzZcdPWGJ+jamptLDYO+6qyPt8bfEFGaBHljORGolUsANVfna9DjaP4Jk 5tdQx+MRwSYEU1A+vEhMDyI1wuSeERxblkwIGEGXwXCnOf71dxSWWNHRDbB5lX8Gj8yki2fweORT N8toSAFlEe7sAcQlGci5x/NFPbyh9pe7yvlOnhn7l5+2q4za4f2pFBXtLCPAdewzeAaizzwjhkkh vNhOatgjlua5mZJFI/COLfRRwy+ppQZw6oq7RydEJ+fiL1HWahl9JYO/qIGJ8iYihlftPcSek/on K+bLsUKyq2FNfY7wu5JkcQ8/M0tffvZpA83rGM2KeR6RoRV7gq9WwBC1M30tPdh04q/l/OuE4ChA l37g4Pr++fvhaVC8PX3bHaVXhTDpIxqNsYBA569pf7S+Y/UMlaOi9RolMP3+5rFD4KKGjk5sEsVk diODwqv3S4bxllPUCqqth5Xxg6qMaJRCeQ0LkDUhcUxT1PZViItGMS9cz9I/lfCOArSnoru+MSOk UVhSmkMK6ZVF7T+IvbUvPwxMxhY8jcODFjVbhoH/sxjPxI5vK9/PO94dT+hBAhLHq4gw9rp/fL4/ vR375wLrrkE+bJvKQ21dsfn4BkV3S72W7Sd4PMuKqN72VwlqCef7b0dMQn08vJ32z+YRPst4naL7 qR0VWGv8Zzx1oyMCN5uW6up2EDSbIq623bwumbKUI0jytAhgi5R3Lc/MVwxtth5n6EpkXtYplOnT J5qPlmkxqzbxciGs/urUkgpiEAQzbm2a8fDKpvBlCaiHt5391dg5OQFA3hy5JKC9prMtFUPCIpgQ pUf1nbPxOhSzjDRqq2Mz2l4208KV+fk0VO7VBETNgIc+ZgXnkvGoFkWcCvKu506RlMzg0rlNcBB0 6oLDhiapD8fzBR80cisvgID2Z5PR268lUTJCqZLhmCGpJza17v7mKyJIzkhUN4u/EKxQsxfv39Vd hlqetvGmeNdYR7lj0xk1TRlnsBjFqq3N2z3Y1XCxmNb8EoSX9J21iJY6lEAPSG7NlZ2XlrsU/n7v brTIe2s3t5P9vaqzULFyfeWKrMrmwlYM+2Twvm47ZSpq3h0l5BRLktqa6PPEfJYoC048VpSFY3CK ZNPf1ALtUeZ+IUBXv4dDr4jr3wHzBYFFx5LcrcYmiaCbxfskaIjWTX5fhSmgafT9W8+NArvzLsFw 9HtE+xELiuHF7yHdwgaf6HJyR9ITAGiE4nxmaB94JPuqUgT8H5EOqlUWagEA --nextPart12176460.b1Z7fKGLNi--