插槽内容与出口
在之前的章节中,我们已经了解到组件能够接收任意类型的 JavaScript 值作为 props,但组件要如何接收模板内容呢?在某些场景中,我们可能想要为子组件传递一些模板片段,让子组件在它们的组件中渲染这些片段。
举例来说,这里有一个 <FancyButton> 组件,可以像这样使用:
<FancyButton>
Click me! <!-- 插槽内容 -->
</FancyButton>
而 <FancyButton> 的模板是这样的:
<button class="fancy-btn">
<slot></slot> <!-- 插槽出口 -->
</button>
<slot> 元素是一个插槽出口 (slot outlet),标示了父元素提供的插槽内容 (slot content) 将在哪里被渲染。
![](data:image/png;base64,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)
最终渲染出的 DOM 是这样:
<button class="fancy-btn">Click me!</button>
通过使用插槽,<FancyButton> 仅负责渲染外层的 <button> (以及相应的样式),而其内部的内容由父组件提供。
理解插槽的另一种方式是和下面的 JavaScript 函数作类比,其概念是类似的:
// 父元素传入插槽内容
FancyButton('Click me!')
// FancyButton 在自己的模板中渲染插槽内容
function FancyButton(slotContent) {
return `<button class="fancy-btn">
${slotContent}
</button>`
}
插槽内容可以是任意合法的模板内容,不局限于文本。例如我们可以传入多个元素,甚至是组件:
<FancyButton>
<span style="color:red">Click me!</span>
<AwesomeIcon name="plus" />
</FancyButton>
通过使用插槽,<FancyButton> 组件更加灵活和具有可复用性。现在组件可以用在不同的地方渲染各异的内容,但同时还保证都具有相同的样式。
Vue 组件的插槽机制是受原生 Web Component <slot> 元素的启发而诞生,同时还做了一些功能拓展,这些拓展的功能我们后面会学习到。
渲染作用域
插槽内容可以访问到父组件的数据作用域,因为插槽内容本身是在父组件模板中定义的。举例来说:
<span>{{ message }}</span>
<FancyButton>{{ message }}</FancyButton>
这里的两个 {{ message }} 插值表达式渲染的内容都是一样的。
插槽内容无法访问子组件的数据。Vue 模板中的表达式只能访问其定义时所处的作用域,这和 JavaScript 的词法作用域规则是一致的。换言之:
父组件模板中的表达式只能访问父组件的作用域;子组件模板中的表达式只能访问子组件的作用域。
默认内容
在外部没有提供任何内容的情况下,可以为插槽指定默认内容。比如有这样一个 <SubmitButton> 组件:
<button type="submit">
<slot></slot>
</button>
如果我们想在父组件没有提供任何插槽内容时在 <button> 内渲染“Submit”,只需要将“Submit”写在 <slot> 标签之间来作为默认内容:
<button type="submit">
<slot>
Submit <!-- 默认内容 -->
</slot>
</button>
现在,当我们在父组件中使用 <SubmitButton> 且没有提供任何插槽内容时:
<SubmitButton />
“Submit”将会被作为默认内容渲染:
<button type="submit">Submit</button>
但如果我们提供了插槽内容:
<SubmitButton>Save</SubmitButton>
那么被显式提供的内容会取代默认内容:
<button type="submit">Save</button>
具名插槽
有时在一个组件中包含多个插槽出口是很有用的。举例来说,在一个 <BaseLayout> 组件中,有如下模板:
<div class="container">
<header>
<!-- 标题内容放这里 -->
</header>
<main>
<!-- 主要内容放这里 -->
</main>
<footer>
<!-- 底部内容放这里 -->
</footer>
</div>
对于这种场景,<slot> 元素可以有一个特殊的 attribute name,用来给各个插槽分配唯一的 ID,以确定每一处要渲染的内容:
<div class="container">
<header>
<slot name="header"></slot>
</header>
<main>
<slot></slot>
</main>
<footer>
<slot name="footer"></slot>
</footer>
</div>
这类带 name 的插槽被称为具名插槽 (named slots)。没有提供 name 的 <slot> 出口会隐式地命名为“default”。
在父组件中使用 <BaseLayout> 时,我们需要一种方式将多个插槽内容传入到各自目标插槽的出口。此时就需要用到具名插槽了:
要为具名插槽传入内容,我们需要使用一个含 v-slot 指令的 <template> 元素,并将目标插槽的名字传给该指令:
<BaseLayout>
<template v-slot:header>
<!-- header 插槽的内容放这里 -->
</template>
</BaseLayout>
v-slot 有对应的简写 #,因此 <template v-slot:header> 可以简写为 <template #header>。其意思就是“将这部分模板片段传入子组件的 header 插槽中”。
![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAApIAAAEnCAYAAAAaZ6M9AAAgAElEQVR4nOydeXxU1fn/35ktk2TInhCyACHsW1gEWRQFF9S61F1rK2qttlptra1tf/q1/Vr9WvtttdW6VmtpsS58LaiIgiiCKJuEnZCQkITs+zbJ7JPfHyczkyEJCUPITOR5v155zdzMnXuec+eecz/3eZ5zTlhHR0cHgiAIgiAIgnCSaIJtgCAIgiAIgjA0ESEpCIIgCIIgBIQISUEQBEEQBCEgREgKgiAIgiAIASFCUhAEQRAEQQgIEZKCIAiCIAhCQIiQFARBEARBEAJChKQgCIIgCIIQECIkBUEQBEEQhIAQISkIgiAIgiAEhAhJQRAEQRAEISBESAqCIAiCIAgBIUJSEARBEARBCAgRkoIgCIIgCEJAiJAUBEEQBEEQAkKEpCAIgiAIghAQIiQFQRAEQRCEgBAhKQiCIAiCIASECElBEARBEAQhIERICoIgCIIgCAEhQlIQBEEQBEEICBGSgiAIgiAIQkCIkBQEQRAEQRACQoSkIAiCIAiCEBAiJAVBEARBEISAECEpCIIgCIIgBIQISUEQBEEQBCEgREgKgiAIgiAIASFCUhAEQRAEQQgIEZKCIAiCIAhCQIiQFARBEARBEAJChKQgCIIgCIIQELpgGyCcOvs219He4mDauYlExeiDbY4gCILQBzWl7Rzd20xSRgRZ2bHBNkcQAkaEZB+4XR3UV1gI04SRmBbR4z4NVVZcDjcJqRFotGGDbCHs21xLbZmFMdkxfQpJW7uTlno74RFaohPDB8lCQRBOlRce2Ou3rQ/XkDF+GAuuSiU6wXBay179fAEVBW1cekcmmdOiT2tZJ0NduYUOd0dAfa/F7MTcaMdo0jEs7vSev56oLbOwdU0lk+fH90tInkpdBeF0IqHtPnDY3Kx44jDv/DG/133WvlrEiicO09pkH0TLAqM038yKJw7z+cryYJsiCMJJYLO4sFlcpI41kTrWhEYbRu6OBv7zXAFuV8dpLdthc2OzuHC7T285J8t7LxSy4n8C63uP7m9mxROH2bWh5jRYNvC890LhkLnPCGcWIeeRbG9xUnywhdjkcGztLqpL2ohOMDD+rDh0eqV77VYXhfuaaayyEh6hY9LZ8URGq6ocyWnCYXOTPsHEoa/qmTAnnrjh4bQ1Oziyu4n2FgdJ6ZFkTotGp9dgbnJwLLeVhDQjDqubY4dbiIzWM3VhAm5XB7k7GgBwuzs4tLWBMdNjMEZpvfbmfd2IxewEoCCnmbEzYohJCsft6uDI7ibqKyxEmHRMOMtnY97XjbjdHWSMH0bezkYcNhcT5sQTFaPj0LYG2lscpI8fxsiJwwAo2t+MxewibayJw183oNGEMeGsuF69EG5XB4V7m6kta0cfrmX0lGiS0iNoqrFSergVAHOjndwdDUyaGw9Ac62do/ubsJidjMg0hZTXQRDOVCoK24iK0RHTJXpw6e2jCY/U4nS4eeWh/TRWWWmstpGQasTt6qDoQAvVJW1+bd9DXbmFogMtOGwuho+KYtTkYd5+tet3j+9X+8LpcHNkd5O3T54wJw5TrJ6qonYaqqwkpBkZPjISgMK9zdjaXWRMNDEszkBzrZ38HNUPdu177FYXBbub0YdrGDdLeezK8s201NsZPSWa0vxW7DY34Ot7bVYXxkhdnx7amtJ2KgraABVRKtzbTFZ2DICfPalZJkZPifZ+p67MStrYKKpK2qmvsJCQGsGEs+Ioyzdz7HALRpOO6ecmotNraKqxUVHYRkKakcZKKw3VVkZkRpE5LaZXuzxl29pdJKQZGTczFp1eQ97Xjd3q2td9RhAGi5C74uorLaxbXkx4hBabxeX9/9H9zVx+1xjamh289Yc8Wurt6MM1OGxutq6p4OZfTiQh1cjmd8toqbcTGa2jvcVJUkYkdpuLd5854ne80VOiueqeLKqK21i3vNi7v4eKAjPnXJ3KxrdKAfVEvm55Mbc8PBFjVKR3v0/fOOY97uZ3y4gwaYmK1fPBS0cpPtji3W/rB5Xc+IsJJKQa+fSNY9htLiJMvjJzPq0hOsFAbZkFgO1rq7j2p+MYOXEYX75XQW2Zxe+cbF9byXcfnkhsstHv/Dkdbt57vpBjh1t95+eDCq68J4v2Fid7Pq8FoPpYOxvfLGXS3HiOHW5l9V8LcDl93oZxs2K5/K4xp/BLCoIQCG5XB4d3NLJnYw3Vx9q57oFxfkLSg8uhhIVWF0ZUrK7Htv/le+Vc9aMsMqfFcHhHAx//oxiNJgy9UYPVXMXoKdFcfd9YnA539z5rTQXXPzjeKwB7w2518e8n82istvqVe8ODE2htsrNueTHp401c/7Px2NqdfPi3owDc9YdpFO5t5oOXC+lw+47n6ZutbU7WLS8mOsHgFZI5n9ZQuLeJ6x4Y163vNZq02NpdbFpZxugp0cw4P6lX0Va4p5kDX9YBUHKwBUuLk6zsGAr2NLHmlaN+9px9aQoLrkqlcE8z2z6sxGjSYTX77hV7NtZSUWj2bpccbOHq+8ZSXmhm/fIS7znxMPeyFBZemdrNptztDaxbXgyARhOGy9lB/vQYrronq8e6RsXqvb+3h+1rq7jxFxOIGy5pS8LgEbKhba0+jGW/nczNv5pAeISWIzlN1JS2cyyvlfBILXOWDufHf5nB2Zel4LC5vZ2Ch/gUIxfcMpKEEUY+e7MUm8XF+Tekc9dT08icFkPxwRaKDvg6zQiTjmW/ncz1PxtPmAbycxoxxRq444kpAIRHaPnR09kkpvrnSd7xxFQSUpWYu/XRyYw/K479X9RRfLCF0VOiueupaSxdNgqbxcUXq3zh5A43nH9DBnc9NY2k9AhsFheJqRHc+eRUZl80HIC8nY1+Zc25ZDh3PTWNyfMTcNjcPYZkGqqsWNqcTDw7nnuezubSO0bjcnawa301E+fEcekdowHInBbDHU9MBeCzt0pxOTu48kdZ3PnkVFIyoziS00RVUVtAv50gCCdPS72dbWsqeenn+1i3vJimWhuTzo4nbrj/w+Lbf8xjxRO5vPbwQew2F0tuHokxUtet7V92ZyYdbtjxcRWgBE+HG278xQR+8OQ00sebaKiy0lBl5fCORooPtpA+3sRdT03jkjtG47C5+eq9ij7tLs1rRWcIY/ZFqk9eclMGLmcHezfXkjk1mvAILeUFZqztTooPteJydjBqkooIrf9XCRpNGN++dyx3PDGFlMwoig+2cLgzEnQi7nhiKqY4PYSpvnfCWXGkjY1S3sq8VlY/X8hrDx9g1yc13qiRhzmXDGfxjRkATFuUyPU/H4fL0cH65SVotRquvn8stz02mbjhRrZ/XEVzvc373eEZkdz11DQWXZsGKOfHLQ9P5Hv/NQmtLoziQy3Y2n3lxSUbuf13U7j6vrGEaeDrddVY2/3tASjc20RiWgQ3PDiee5+ZQXSCgaP7m6krt/B9T13x1XXf5jqOHW5lzPQY7npqGhcvG4XF7OSL/5T1ee4EYSAJOY+kh/gUI/EpqgPNmhHLoa311JVZmTw/ntGToync28y2NZXUVVgBsLa7/L5/8bJRxCSEYzE7qSpqQ6sPIzxCR8mhViJMqtrlBWZSs6IAGD4qqrNMMIQrz5/D5sYY4TtFxkgtx2OM1KLRqMRnXXgYOr2Gklz1hBibFE7JoVZAfV5d4i/MRk+OJjxSS3JGJLVlFkZOGsawOAOpWVHs+oRund+oydFExeiZuSSJQ1vrqS5p72ZPckYk1z8wjqMHWtjxURVtLQ5AHUujDUNnUM8OGk0YxkgtDVVWGqusREbrsLW7KD1sZlicnqoidX5SMqP6+qkEQRgAtq2p5ODWemKTwllycwajp0ZjjOzeRUcnhKPRhBEeoaUs30zu9nomzo3rte17vGFxKUYqi9rY+FYpE8+OZ/GNGd4BhF+9rwRjfIqxs8+CMI3qA/oiKzuW9HEmb5/cUKX6ZFu7C51e4+2/iw+0ePvGyfMTqC5px2p2kpoV5Q1nz7ogmbWvFnEst5X08aYTlttT3zt8VBRX3zcWa7uTIzlNbFtTyeZ3y7DbXMy/fIT3uzq9Br1R431vCNdyLLcFm8VF3PBw2pudtDc7GRZnoLHa6vdQPSIriqgYPSMnRgPlxCSEk5yhvLZRMXpaGuxYu0S/EtONxCaFE5sUTsb4YRzLa6WuM/LUlcvvGkNVURul+WaOdZ4nOlTfnZgW0a2uHk9kTKK6z3i8qDXHuh9bEE4nISsku2II78yNtLmoKW3n/54+gtvdwciJw7C0dX+y64rDphq029XB5++Uev8fHuHrhAYaT5kHt9aTu73BW54nF+lU8Qja44Um4A39tzbaGT0lBk137euHxewTmsefH7e7t28JgjDQDB8VyeGdDTTV2vh6fTWtjY4ec6E9OZIAK5/OpyzfTOHeZtLHmU7Y9hffmE54pJZDX9V7U3Ymnh3PpbePxtb5IJ67vcEbCTGE99F5dFJXbuGdP+bjdLgZPSXaL4wLMH6WEpJH9zVTfLAFfbiGzGnRHMtVEaEIk2+mCU/+ud0WeOdTW2Yhd3sDR3IaMTc5CI/Qdosk9YTH7qZaW/e+0NXbt04OvUEDHXQ7RwBbVlWwc10VcSnhDB8VhdNx4nPg8Xoe+LLOey8Lj9AS1r+fTRAGjJAVkl1HITbVqrBCVLSe/V/UYbO4uOCWkUw/N5FD2xq8SdM9ERmtJ0yjPHB3PDHF+4Rva3cRHqmlYE/TgNseFa06xkXXpTP93ERACTWPJ/RUqe/0wsYmdc+DObyjgZZ6OzMvSOb869OpKW2ncE9zr8eKTlDHMIRruesP07xit63ZIXNSCsIgkn1+EmNnxnJoWwN7NtawZVU5W1aVc/MvJ/QaGfAICFfnYJeWejszzk9i8U0Zfm3f7eqgYHczaVkmzr8+ncqjZta+Vszh7Q3MWpLc2Q+0cu7VaWSfnwSAtd3Zo0f0eA5+VY/N4mLRtWnMvmg4BXua/PL2Rk2OxmjSkZ/TSIdbeSN1eo2376kt80VWPN60YXF6wjrr1vVe0Neo8f1b6tiw4hig+seLvjeKsTNj+lUPU+cUQLFJ4dz66GTvFDu2difhkTq2flDZ5zF6oqOLyfWVVgiDqFg97V0cAW5XBzmfVqPTa/juw5PQ6TWsfDqf9pbePcKRnvvMtWlMX6R+s4G8zwhCfwnZK66yqI3P3ymjw91B8cEWjCYtGRNNVHaGGPJ2NkAH7Plc5Qn21sHo9BqmzE/gwJf1vPPHfCadnUB9hYWj+5q57mfj+rRDqw8jTKO8oVtWVTDt3IRuie8e8fXVe5VMOyeRGYuTyc9p5PO3S2mqsWEI17B/Sx3TFyVx9mUpAZ+TjW+VMmZ6LPs2qwEzY6Z3TyQP7+wwy/JaOfBlPbnb6/0/j1CPq9UlbWxbU8m8y0eQOS2Gov3N/N/TRxg3K5baMgsluS1875HJMgJQEAaRqBg9c5YOZ+aSJEoOtbJnYw0Ou79nauPbpWg0YTRUWaksakOrC2P0lBiOHVYevpLD3du+RhvGjnWVNNXYWHLTSKJi9F6BFh6hYdo5iRzcWsem/yujud6OIVzDwa31TJ6f4BcS3rOxhsIuD9+pY03ePqVgbzP6cG23fHWNNozxM2PZ94X6/4Q5cQAkpkWQPt5EWb6Z9188SnJGBF9/Uk2YBqaek0hUtJ7wCC3mJgef/vuYCufmtvgdOypaT0u9na/eq2Tm4iRcDjcTzopj+qKkPkPjOp3qtwtymogw6Tj70hRSMqOoKmpj1XMFjJwUTXVJO9XH2vneIxP7+OV658iuJqLjK2ipt9NUayNueLg3ncnPHr0Gm9XF7s9qcdjcVB71d5B4zrOnrrMuSKZgdxObVpbTUm9Hp9dw4Mt6Zi5J8ubZC8JgELKDbYbFGTiS08iez2sJj9By2R2ZGCN1zFySRFJ6BGX5Zj5765jXK9fYmZfTE4tvymDqwgSaamxsWVXO4Z0NjJsd683BPBE6vYa5l6TQ4Yad66poqe8+h9fMC5LR6sI4vKOBsvxWUrOiuPSOTCJMOnZ9Us3WNZVEmHSMnnrqU+psWaU6jazsGKZ1eju7MnFunFcMfvKvEnQ6DWEaaG1y4HZ1kDbWRPp4E+YmB1vXqCfsy74/mglnxVFV0sbmd8vJ39XI+FlxGCJC9vIQhG80Or2GrOwYrv3pODImDPP7LHd7Awe31lNT2k76eBPXPTCeyGgdY2fGMuGsOBqrrH5tv6nWhtvVwbfvySI5I5JP/32M918sxGFzs/imDGKTjaRkRnLVj7L8+iytPozMKf4Pq8cOt3Jwa733r7zAzIwlSaRkRlFRoPpkTyi+qdbXJ0+er6YZizDpSB/nE3gXLxvF6CnRFO5tUmXqwrji7iyS0tWk2+dck4ZWF8a+zXUc3dfMiDH+ntkZi5O8fW9lURvTFyVx2Z2ZfYpIgFFToklINdLaaGf3p8ohcfldmWRlx3LscCtbVpVzLLeFqQsTMBgDjxfHJoezb3MtudsbMMXqueS20d320WjDuHjZKMKNWrasKufgV3XevMvmOhWRm7kk2a+uaWNNXHrHaAwRGnauU79ZVIye9OOuF0E43YR1dHSE1AyzpXmt/N8zR0gfb+Lan4yjtcnOsFhDt5n8WxvV9D/9CVl4sFtdWNqcREXrTzpf0WJ24nZ19BrutVvVZMFR0Xo/W1sb7Wg0YacUJl7xeC61ZWpkoGcFhr7CF578yd726+n8ncr5EQQhNOir7VvMTpwOd7e+ykOgfdaJ+uTKo2be+kM+U89J5KLvjjwpm3rrWz1Y2504bL3Xpy+a622ER2j97La2O7FZXD3ee/rLwa31rF9ewuT58VzwnZFYzM4+bXQ63LS1OHott7e6DsR9RhACJaTjlhptGDEJPc+HFciSVgajNuAny76EW2/HHuilt/qb/9LXfj3ZdSrnRxCE0KCvth9I39AfevveppVlHN6pBh3O6My/PBmb+uqXjJE6jCee6vKE9HSPUcccuNujTq/p13nV6TW93vN8dnX/fzCWeBQEDyEnJHX6MKITDN4BK4LKm7JZXOIlFARhyFGa14rb1cGia9P8Vtn5pmMI1xCdYMAog1+EbzghF9oWBEEQBEEQhgbi4hIEQRAEQRACQoSkIAiCIAiCEBAiJAVBEARBEISAECEpCIIgCIIgBIQISUEQBEEQBCEgREgKgiAIgiAIASFCUhAEQRAEQQgIEZKCIAiCIAhCQIiQFARBEARBEAJChKQgCIIgCIIQECEpJM1NDgDWvHKUZ36Y4/3/Mz/MkW3Zlu1v0PaaV44C0NbsQBAEQRh6hJyQbGt28I/fHOTI7iaS0iODbY4gCKeRpIxI8r5u5PVHD3ofIM9kTuYh+oUH9gJga3cFtP3awwcAaKm3BbS94vFcAGpK2wPaXvl0PgClea0Bbb//onoIKdzT1LldeFLb65YXA3Bwa31A25+vLAMg59OagLa3rqkEYOsHlQFt7/6sBoDP3ykLaPvg1noA1i0vDmi7cG8TAO+/UBjQdmleKwArn84/+e0f5VBT2g7AisdzA9purrcB8NrDBwLatrW7AHjhgb0BbXt45oc53bbX/K0IGDoP2LpgG3A8UTF6LvreKCoKzJx3fTpnX5bi/eyBl2b57Svbsi3bQ3970ztlLL1tNKZYPWcynofopbeNJik9kiM5TcE2SRCEIJCUbiRvZyMb3jjGst9ODvm+Mayjo6Mj2EZ0Zc0rR0lMjWDe5SOCbYogCIPE9o+qqC1t5/K7xgTblKCS93UjVUVtnHd9erBNEQQhiGx6p4zUsSbGzYoNtil9EnKh7SM5TV4XviAIZwZfvVdxxnvg1rxylMYqq4hIQRA474Z0Gqqt3jzyUCbkQtvHh78EQfjmI+1ePUQfyWmSaIwgCIB6wCYs2Fb0TciFtj0JqeGR2iBbIgjCYCHtXhAEYWgScqHtF362lxd+tjfYZgiCMIhIuxcEQRiahFxoOzxCPBKCcKYh7R7v9D4S5hcEATr7hDB44MXQ7hNCTkje80x2sE0QBGGQkXYvCIIwNJEcSUEQgo60e7B2ngPjGXwOBEHwMVT6hJATkhLeEYQzD2n3giAIQ5OQC21HJxiCbYIgCIOMtHu8SxhKmF8QBOjsE8LgnqdDu08IOSH5/SemBtsEQRAGGWn3YLO4gm2CIAghhM3iknkkA6Glc2H06ITwIFsiCMJgIe1+6ORDCYIwOAyVPiHkhKTkSgnCmYe0e0EQhKFJyIW2kzIigm2CIAiDjLR7yZEUBMEfyZEMkO8+PCnYJgiCMMhIu5ccSUEQ/JEcyQCpLW0HICkjMsiWCIIwWEi7Hzr5UIIgDA5DpU8IOSEpuVKCcOYh7V4QBGFoEnKhbcmVEoQzD2n38NrDBwCZCkkQBMVrDx+AsDC+//iUYJtyQkJOSEqulCCceUi7h5Z6e7BNEAQhhGipt0uOZCCU5rUCkDFhWJAtEQRhsJB2D82dc2nGnMFzaQqC4GOo9AkhJyQlV0oQzjyk3QuCIAxNQi60nT7eFGwTBEEYZKTdS46kIAj+SI5kgFz/s/HBNsEPi9POk/vf825rw8Iw6Y1MjRvJ4uGTMWgH/xT+6eAamu0W7pl4ESkRsYNeviAMNKHW7oOB5EgKgtAVyZEMkMK9zQBkZccE2RKF2WHlqs/+2ONn2fGj+N/Zt6DVaAbVpu9sfo5qSzMvz7+TsdEpg1r2qXDMXMevc94k0RjNX+YuC7Y5QggRau0+GAyVfChBEAaHodInhJxH8v0XC4HQzJX6dOkjABS0VPGrXW+yt6GEHXUFzE/2eVNcbjcWlx2T3tjrcTz7RGgNJxShZoe1z336oj/29JdTtcfudlJlaT5lO4RvHqHc7geLUL9ZCIIwuAyVPiHkhGRWdnBDtXnNFbxX+jVGrYH7J13S4z5jo1OYEJPKttojtLlUOKrR3sbzuevYXH0YV4cbky6cy9Jncue4JV7hZXc5ee7wx2yqyqXNacOg0TEnMYt7J13McKPPE7O2fA8rCr+g2tKMQaNjYfIEHpzyLSJ0hn7Xo9Hext/yP2Vj5SHsbicmXThL07K5c9wSDFodG6sO8ueDHzE8IoZXFvzA+73N1Yf504E1fv9/s+gr3inaSovDQoRW762XJ6z/kx3LKW6t5S9nL2O0KQlQXtM2h41XF95FkjGaqz79I64ONwBVlmau+lR5eUebkvjL2co7+ejud0iJiGVpWjZZw4b3u67C0CfY7T4UkBxJQRC6IjmSAXLlj8YMepkut5sNVQdYW7qbA02lACxN675IekFLFQD5LVXk1Bdh1OqZnZAJwP/sW01OfRELkycwOTaN90t38U7xNiJ0Bm7NWgTAC3nrWVu2hzmJWcxLGkdhazVry3ZzrK2O1xbcjVaj4YPSHP58aC1RnUI0r7mCjVUHsbjsPDHrxn7X6ZmDa/myJs9rz4dlu3m3ZAcmvZFbsxaxKHkSz+eup7C1mgNNpUyNzQBgbdluzE4rt6Ypm984uoW/H/mcxPBhXJExmz0NxbxbsgOLy86DUy4HVB6p2WnF6fatFdzmsGF2Wr3icWnadJodFjZU7O8UtdMBSDRGe79jd7t4t2QH75bsYFJMGleMnB20PFRhcAlGuw81JEdSEISuDJUcyZC7Qx/a2gDA5Pnxg1Le8sLNvFu8nTanjahOgbNo+CTmJGR12/fura9632vCNPxy6pXEGaIAWDR8EvOTxnFp2gwidAaGR8Tw+N5V7G8s9X4nr7kSgGVjFzEpJg2AtMg47G4ndreTCI2BFUe/AOB3s24gO24ULreb73/1Mttqj1BrbSGpi/A6EfOSxjEjfhQXp07HpDcy2pTEwzlvs6O2kFuzFqHVaLhi5Gz+WbCZdeV7mRqbQZWliZ11hcqbmjYDl9vN20VbAfj97JvJHJZMs72dmzY9y7ryfdyatajf9twz8WIKWqqUkNQbuWfixd32eWzG9extLGFj1UG2VOfxh/3v89LhT7h61ByvGBe+mQx2uw9Fbnl4YrBNEAQhhBgqfULICcl1y4uBwbuhrCvfS5vTxpzELB6aegXx4b1PQ/LYzBsAaHa0s7xgE3/Y/z4pETFMjc1gccpk3inexq9y3vR66ACvRw7gwtRp5LdU8rMd/yIrejgTokcwL2kccxKVaK21tlBnVRMzv1u8g3eLdwAqNxGgsLW638Jtccpk3inZxqN7VmJ2WLF0huDtbqd3n2tHzuXNo1+xuSqXu8dfyJpSNZffxWnZROgMHDPX0ea0kWgcRuawZABiDJFkDRtObnM5xebaftvTHwxaFeqfk5jFzZn1PJv7MTn1Rawr3ytC8hvOYLf7UCQ5IzLYJgiCEEIMlT4h5ITk5PkJg1rezZkL+aB0FzvrCrlp07Nkx49i8YgpLEwaT4zB/0dc2GVQTbO9nVfzP2NDxX6mxmbwi6/fIL+lkgtHTCM7fhRF5hr+U7LD7/vXjprLtLgMVh/byf7GUlYf+5rVx75mYfIEHpt5vVd0asP8B7NMjk0H6GbPifhVzpscaCzlwhHTuHDENMrbG3ir6Cu/fUx6IxelTmVt2R42Vh3ik8r96DU6rht9NuAvgrtyukap11pb2Fx9mI2VB8ltLgdUDuXNYxaelvKE0GGw230osuKJXECWixQEQaH6hDC+G+KeyZATkkuXjRrU8q7ImMUVGbM41FTGyuLtbK09Qk59EQfSsnlo6hW9fq/a0gQo0VdrbSG/pZJofQS/nn4VAJurc/2EpN3l5K3irzBqDTw09UoAytsa+PH21/myJk+FrcOjidKF0+a0cUPmPG/eot3lpMVpITG8f8vHNdvbOdBYSoTW4LVnR21BNyEJcNPoBawt28Pygk002ttYmDzBO/AnLTIeo1ZPo62N8rYG0qLisbucFLXWAHi9lAaNuozqbK2MJQW7y4mzBxHqEcgWpx2X291NkD65/z32NpSgCdNw4YhpXJYxg+y4wb0ehOAw2O0+FKkttQTbBEEQQojaUovkSBL8L9AAACAASURBVAZCsHKlJsem85sZ6TTYzKyr2OcNJ3fl0d0rAWiwmcltLleCJ3UaJp0RvUZHi8PCnw+tJckYzfuluwA1kAdU2HZHbSG5zeVUtDcwK2EMVZYmrC4H0foITDojWo2GZWPP44XD6/nFzje4ImMWBo2OTdW5uDrc/Ouce/3E1wt5n2DS+U/rc8/Ei4g3mLyC9Hh7jictKp5ZCZnk1BcBcPOYBd7PDFodV2TMZmVnyP6i1GnsqC2kzWljccoUr7DNjh9FbnM5zx9eT35LJbvqivxC6N6yIuOJ0oXT7LDw8O63mRA9giprEw9NuRKtRkNaZBzzksZxWdqMAZmuSBg6SI7k0MmHEgRhcBgqfULICclg50rFh5u4OXNBj599WZMHKA/cpNg0lmWd5x0081/Z1/DU/vf4oDQHTZiGS9KyWVu2m9K2Oq/37ZHsq3nh8Cd8WLaHDzrzEUebknhgymXeqX2uHTUXg0bH8oJNvNvp0UyNjOPeiUu7efD2NpR0s/HWrHNJiYjttOd9rz3fSp/JB6W7KG9v6OYNvCJjNjn1RYyPHuGtj4c7xp6P1eXg4/K9LC/YjCZMw6Lhk3hwyre8+9ycuYCc+iLyWyr5V+EWrsyYhavD7Q1PezBodfxy2lU8tf89dtYVsrOukGh9BGanlRhDpHcUuHDmEex2HwoMlXwoQRAGh6HSJ4TcyjafrywD4Pzr04NsycnjcruptbUQo4884ZyPFqedZkc7EVrDCfMeqyxNGDS6Ew4AGgh7Ht+7io1VB3ls5g1+eaA92WzSGXv1FtZaWzBodH3mctpdThrs5lOqm/DNYii3+4FCciQFQeiK5EgGyFC+kWg1mn6tfR2hM/RrcvFTXUe7L3vyWypZfWwnG6sOkhoZx5yE3ufy64/N/R3BbdDqZI1wwY+h3O4HCsmRFAShK0MlRzLkPJK7P1MDOWYuSQ6yJd98Xs7bwDvF20gMH8ZvZ17XLawtCIOFtHuoKW0Hhk44SxCE08tQ6RNCziP5+TsqxHUm31AGi1vGnMMFI6aSaUo+bVP6CEJ/kHYf+jcLQRAGl6HSJ4SckJx/+Yhgm3DGYNIbGatPCbYZgiDtHlj5dD4A1/+s5zxlQRDOLIZKnxByQnKe3FAE4YxD2j2U5ZuDbYIgCCFEWb5ZciQDYdsatR613FgE4cxB2j2U5qnlUTMm9G/hAUEQvtkMlT4h5DySW+WGIghnHNLuQ/9mIQjC4DJU+oSQE5KSKyUIZx7S7odOPpQgCIPDUOkTQk5IhpxHYtcuePVVcDohMhL+8hffZ3V18Otf+7YzMuDRR33beXnwxz/6tmfOhHvu8W1/9RW8/rpv+8IL4cYbfdsffADvv+/bvukmuOAC3/brr6tjeLj3Xpgxw7f92GNQWurbfvJJSEz0bd9/P1i6zF33t7/53re3w09+4ttOSIDf/963fewY/O53vu0JE+DnP/dt794NL7zg216wAG6/3be9YQO8/XbgdfvjH9X59fDoo+r8e/jVr6C+3rf9l7+o38/DD37ge3+yv+vJ1u3KK+GKLuu2v/222sfD7berY3h4/nnYs8e3/fOfq/Prob+/a3g43Hmn/3kLUUKu3QcByZEUBKErQyVHMuSE5KbOFS7OC5UJiifJKhPCEMXlgvGh/STrIeTafRC47oFxwTZBEIQQYqj0CSE32OaZH6o1qB94aVZwDdm1S4nIyEiwWsHY87KAghCyOByg1yvvcm4uzJ4dbIt6JWTavSAIgnBShJxH8vwbQsQj8frryqPz7LMiIoWhiV6vHoIefBDCwkJaSIZMuw8iH7x4FIArftT7UqWCIJw5fPDiUTro4MofZQXblBMSckIyZFa2sNnUq14fXDtOJ3V1/nmEGg2MGxqu9BNy9Kjyxo0aFZyHAE/u5tixoNUOfvldMRpVfm+IEzLtPogU7G0Ktgm9Ync5OdRchjZMw7S4kd0+d7ndQV8dq8rSRJXFdw57szXUONRURoTWQOawZPKaKzBodGQO++a0B5fbDRD066OgpQqAsdEpfu9DmYK9TZIjGQjrl5cAcPGyUUG25Axg61b/wTzHDzoJZTZuVN62Sy+Ff/9bDUbxeNxeeUUJ5OMH4AwWngFWxw/wEXpF2j0h7XVosJt5cOcKTDoj713wc7/Pilpr+MmO5SQZo3ll/g+CJhjWle/jn4WbvdsmvZH3lvz8BN8IDR7ft4rJMWk8kn0Nfzr4IelR8TyafW2wzRoQzE4r3//yZcII49UFd2HSBy+690LeJwA8Ped7fu9DmSt/lEUHIZV92CMhJyQPblUesqDfUJ588vQct6gIXn4ZRozwHxUdDKZMgYgIMJvhww9P7ViVlUo4xcXBL385MPadiG3blMfP5YIvvvAf1Sz4c7qu5QEkZNp9EMnKjgm2CQFjd7uwuOxBtWFOYhbD9EaaHO28UbglqLacLBFag/d9lDY8iJZArbWFn3Y+GPx57rJTPp7ZYSUsLAx3CAiiWIPvwT5CG/rRxqHSJ4SckFx6W4jcSLpOpzKQ2O3KW9YfT1V7u5rCpbfwqMOhwtFarQrFh/fSATkc6vX4MP2YMeqvrq5vIelyqTJ6s9vh8A+Tn4i+6tUfKivhvPOgqkqFbtPSTlzeic63zQY6Xe/29FV36P0c91SWRtO/lInj93W5Ajtnp+taHkBCpt0HkVDMkbS7+k6LyByWzNvn3Y9BoxsUb6TZYSVCa+hW1uTYNCbHplFlaepTSLrcbiwue58est7KOtl9+iKmi8A5kU0DaY/ZYe2xLFeHmypLM2F9xFQ95/BEZZl0Rt4+7ydowzRE6Aw97tOXPR4sTjvaMA0Gbd+ypbd9jRpfvxuj9+/PQyE943gkRzJAJs9LCLYJA0NxMWzerATTjTcqMfOrX0Fnvgjl5Wq+P1B5iffd5/vuli2wZo0SZjqdmn/y1ltVvtumTfDuuzB3LuzYoY43Z46aczE5Wc1/GBkJv/kNNDbC+efDunVqv6lT1ZyF0dH9r4fZDCtXqrKcTlWfc8+Fa67xCZz77/fVq77eV6+0NH/v5PbtsGqVr17Z2XDLLTCsn7P3OxywYoV6tVjUyPpt29RnH30EkyfD2Wf79s/NhRdfhNpaiI2F225TXlgPOTnKnqoqZc/UqfC97/nOj9UK77yjUgA8dZ87F26+2Vd3hwPefBO+/FJt9zagZc8e9btVVSlxOH26mjszocv1/txzcOQI3H23+s1yc9X/77tP7f/mm6q8JUtU/uc3iG9Muz8FgpUjmddcwXulX2PUGrh/0iWAuhE/vm8VO+sK0YZpWDR8YrfvfVCaw6v5n3m3h0fE8MoC3/ysOQ1F/Pfud8mKHu4XQvzF12+Q31zJr6dfxbyk/udkv1O8jTePfkmLw0KEVs/StGzuHn9hv4SFhwabmVePfMbGykPY3U5MunCWpmVz57gl3uPY3U5ezf+Mj8v30ua0oQ3TMCshk/snXUJqZJx3n9ePfM6HZbt73ae/LBo+ialxKgVnXtI4JsR0n1P13ZIdrCj8ghaHBYNGx8Lk8Tw45XI/ceZ3fnQGLkub4Vev73/5MnW2Vn4x5Qpezt9ARXsjcYYofjntSuYkKqHync3P0eZQ4wMqLU1c9alK00mJjOXl+Xd66/5c7sdsqDiA3e0kQqtn8Ygp3DPhYq89B5pKeXhXl7l0w+CNc3/sJxR/smM5xeZafjr5Mv5+ZCMV7Y3EGCJ5cMq3WJjsizDtqCvkhcPrKW2rRxumYV7SWO6dtJThRp+37uGctznQVMoj2VfzTtE29jaU4Opw88SsG73X2JzELFIiYrzvk4z+951nD3+Mw+3kiozZTIo5gWNiEJEcyQAZ0rlSLhfs3KnEXkGB+p9nomm9HhYuVOJu1y4l9ubNU58ld0ms3rRJiaWICCXYiovVMW02JSg8IiovT32vpAQqKiAlRb0ePKiEpc2m9tuxQx3nwAH199ZbcNdd/a/TihXK3ilTVPj4iy/UZNqRkb5JthcuVIJz2zZl98KF6v9xXTrUnBw1sbtHiJaXq+Oazf4Tmfd1fgFaWpQYM5nUwBqP8Dv+aXLDBiUOIyPVeXr5ZXjmGeXVy8lRItNjT12dEnstLb7JyN95R9V3/Hgler/8Um1rNPDd7/rK+OILZcvMmer3Op7cXDXJuE6nympoUGXV18PDD/u8jJ7f7MUXfV5Sp9MnNt1u9cDw1VdKSC5Zon7rb8CAsCHd7geIwfQ6uNxuNlQdYG3pbg40qcntl6Zlez9/7vDHbKs9QmL4MOYmjWVHXUG3Y8QYIsmKHo7d5SS3uRyT0z8ikh07iih9OHsbSqiyNJESEYvZYWVPQwmRWj2z4jP7be8HpTm8nLeBxPBhXJY+k0NNZaw+9jV2t5MHp1ze7+P8+dBHfFmTx8Lk8UyOTefDst28W7IDk87IrWMXAfC3/M/4T8kOsuNGsXjEFPJbKllbtpuf7fwXb5z7Y7QaDX8/8jkri7d59ylorWZN6S6/fR7OeZsDjaXdjQiDv8xdxmhTEgA/nHCh96M7xp3fbff3S3fxwuH1ROsjuCx9JnnNFWysOgTAI9nXALDq2E5ezttAnCHKu8+7JTuos7V68y0tLjtmh5U/H1rL/OTxJBmj2dtQwhP7VvHu+T9Dq9GwJGUKDXYz68r3MUxv5OLU6YDyLHp4Pnc9a8v2kB03innJ49hQsZ+1ZXvQouGnUy4DlOcvK3o4AHsbSnrUQhansufZQx8xP3k8KRGx5NQX8b8HPmDWokwidAb2NJTwSM7baMI0LE2bToOtjS9r8iltb+DV+Xd5PYieuv337v/D4nKg1+hwd7j9xObNmQt6fO/B5Xazrnwf68r3MTY6hcvTZ3HhiKl9elJPJ5IjGSAhkyv1/PPq9d57+7f/+vXKi2ixKDG1YIHyTnk8YHq98kzm5SkBFRfnv4qNB0+I+cc/VgLG5YLf/hb27VMi1MP55ysRtHy5CvG2t6sVU1pa/I93zz0wciTU1MB//Zcq+2TmxZw6VeUiLligBNmoUUqM7d3rE5I33qhWutm2Te3TU73eeUe93n67z2v32GPqfJSXnzg07cFoVN//6CNobVXvn3tOibiuK8t4uOsuXx7lr3+tzl9pKYwerTx+AMuWKTEG8NRT6gGguFjtM348pKYqL2R0NGRlqdV9uq6o88UX6vXOO9VvffyKQACrV6vXO+7oXlZRkbKxKxkZ6ngJCf6/1c03q+/v2KGE6OuvqweDc8+F66/v/byd7LUcBEKm3QeRwcqHWl64mXeLt9PmtBGlC2dp2nQWDZ/EnAQlZO0uJxsrlVD537NuYaQpkYKWKu7e+qrfcRYNn8ii4ROpsjRxy+a/ditHq9Fw4YhpvHF0C1/V5HPNqLl8WZuPu8PNxWnZJ+VJXHFUtbPfzbqB8dEjMDusXL3xabbVHIEpfXy5C/OSxpEdP4qlqdMx6Y2Mi07hoa//zba6I14hWWyuJQy4IXOe15s1MioBi9NOm8tGtCaCwtZqwoBvjzqLRcPVohXpkXFYnHaaHe3Eh5tIi4zrOW+0owO9pv8pKv8p2UEY8P+mf5s5iVnY3U6u+exPfFFz2LvPG4VbCAP+Z/ZN6vw4rXxn03NsrsqlarwS8aCcW7+deR1TYzNwdbj5zubnqLe2UtBaxYSYVO4cv4QqSxPryvdh0hm5Z+LF3eyZFj+SkaZEloyYQpwhiqmx6dy3/R/kNPgeosdGp3i90Bese/yE9fPUC+DGTX+h3tpKkbmGybHpvF7wOe4ONw9Nu4ILR0wDlEd7d30RextLmJXg/zCSNSyFh6ZeQVpUPBanHYOm/9fYA5MvY0nqFDZWHmRLdR5/PrSWV/M/5bL0mdzdRewPJpIjGSAhkwvQdYm6/rBtmxKRkyYpcZIQQKiusdEnFj/5RP2BEifgvywedPfA9YQnry85WeXK1dSoUG9/RzOfdRZ8+qkSbDabb1okTyi7P1itvvzJr77yhaM99aqu7p+QrKxUQjk3V9UrL0+dkxkz1PvjB9x4cka1WiU2GxuV/Q6H8mSC8jLu2KHee859dbUSkrNnq7q/8oqy1ZMH6Xl1udS5BJjYGfrrKY/S46XsWlZzs3otL+8uJC+6yHf9dBX8er26viZNgm9/G/75T/WAsWXLiYXkyV7LQSBk2n0QGawcyXWdIds5iVk8NPUK4sNNfp9XWZqwu50kGocx0qTyawMdbbs0dTpvHN3Clpo8rhk1l82dnrSLUqf1+xgNNjN11lYMGh3jo0d47fnk4v930vYsHjGZd4q38fDut7E47V6h5+qyLsfFqdPJqS/i0d0ryRo2nAkxI5iXNM4vDH9x6nT2NJTw+N5VZA37irHRw1mYPMFvn55E2Mni6nBT2lZPGHg9uAaNjjUX+lKGaq0tNNrbMOmNvvOjMzIhJpWc+iLyWyq9QhJ8eYLaMA0x+kjqrK0nNVBq0fCJvFuyg9/t/Q9mhxW7W+XRujtO4p7Qha6iOi0ynjprq/eYh5rK6QA2VBxgc5USzlWWJjqAY2113YTktaPnkhYVD3DSnkStRsOs+ExmxWdy+9jzeS53HZurc1lbvidoQlJyJANkqCjwblx8sfJK5uaqXMixY5UImzOn/zmJntDt8QJxTOeNZdgwJQRPlZMZsPHSSypcPnu28k7W1CiP4MnQVXR2rVtGhvqLiOjfcT7+2H/9bc80Oxs3qr+ua4WfCM95Bv9z4bHH83u9/rpKK5gyRXl9zWafd/H4ep0Iz35dy0pLU39xPeRT9faAYDYrj/KePXDokDpuUpIKcQ9xhmy7H0AGK0fy5syFfFC6i511hdy06Vmy41V4dmHSeGIMkbgCFAQ9kRYVT3b8KA40ltJgM5NTX0zWsOFewdMftGEav9dT4dHdK8mpL1Ie2NQsytsbeKvoK799LkqdRqYpifdKv+ZQUzkflObwQWkOcxOzeHL2zT3us7ZsD2vL9vjt88Lh9RS0Vnc3oqODB6deTlpkfJ/2nsxvcfz58Wy7Tuahvx/84cAHbKw8yJzEMVyRMZtmRzuvH/l8QMvw4O5wE4Z/3TJNyWSakv3EsYdTuUaa7e1srj7MlzV55NQX4epwkxoZx7dHzgn4mKeK5EgGSCiOXOwX8+apv8JC+Pxz+PprFbo8dsw/7OoRCR6vVlfi4pSoslhg6VKfp8rhgLY2NWCksPDk7PJ4EJubVR6gRqOO0x+sViUiNRr4/veVR+zAgZ6FZNc8v+NHF0dGKo+g2axC8p5wf9d69Yfbb1e5iT/+sQrZm0wq1Pz00/0fsAPKy5eQoLyk556rPJqg7G5s9I1y3rVLvf7wh+o7xcX+QlKv9x2npEQJ/p5+15QUNchm7lzfYKDjy+oPK1cqIa3RqGOde+6QWUu7L4Zsux9ABmvk+hUZs7giYxaHmspYWbydrbVHyKkv4kBatgoLRsajCdPQaGvz5jZaXT1c1/1kaVo2extKeOHweuxuJxeehDcSVC5mtD6CFoeF8rYG0qLisbucPLl/NQatjl9P+3a/jmN2WMmpLyJCZ+A3M1Te4I66Qj8h6epw88bRLWjDNN7cy1prCz/e/jo76wo5Zq5jpCmRfxZu7rbPT3Ys99unwWb2myDdQxhh/RZ3Bo2O1Mg4KtsbyW+tZFJMGq4ON3/Y/z4Wl53HZt5AfLiJKF04LfZ2StvqyYhKwO52ktdcQRh4cxX7i0eMNTnaexzJvKkqlzDgkenXYNIbyWupOG1CcrQpiRJzLYtHTPaGtl1uN9XW5pMe1NQXL+VtYH3FPjRhGs5JnsC3R51FdlxwU22W3jaK0FrEumdCTkiGzOoOV14Z2PeystTfddepm75HyHlIS1ODKKqqlLcvOVmJvNtvV+LryitVruOf/qREl16vRKnbDU88cfL2/O1vypu4d686xowZvvDrnj2we7fPRodDeeEALrlE2eYRtm+/rYSuJyfweDz7ms3w178qz15zsxptrtXCt76ljvHXv/rqtXu3KvO3v+1/zmZlpapHeroK65pMJyciPVx5parryy+rwUGRkeocWSzKnshIVd/6emV3crKv7l1vAgsXqkndX3lFeaCPHOm5rFdegX/8Q4Xgo6NV3c1m+N3v+j9peWKiOtaiRRBzEh68QK/lQSRk2n0QGeyR65Nj0/nNjHQabGbWVezD7LACYNDquCh1KuvK9/FwztvMTxrHpurcbt/PaShiQ8V+LE4VFm2yt/OHA2qBg/smXuINLS5MGk+ULpxN1YfRa3Rc0mVQT3+5dvTZvH7kc36V8yYXpU5jV10RB5pKWZziS5DcUp3HV7V5WDpFr93tVPZ0wK1jF5FkjCZKF06708afD60lyRjN+6W7/MrRhmnY01DCvoYSaq0tzEoYQ5WliRa7Bb1G500DOH6fBruZRlub3z6egTCnyuUZs3gl71Me37uKC0dM5VBzOTn1RcztzCvUhmm4ZtRc/lX4Bb/a9SYXjpjKroYiWhwW5iePY2TUyU3/5RGmbU4bD+9+iwnRqVRZmnhwyuUYtDqSjMOotjTzQt56RkYl8mHZbgCcXbynx8x1vFXs7+l97vDHaNFw69hFPXoTe+KWMefwxL5V/Ongh+xtKCHeYGJr7REa7W28tvBuovX9jGb1g+ERMdw6dhGXpGX7DdIJJkNlNouQE5LXPRAiS/R5BpIESkyMWnXleCIj1TQ0//iHz+MVF6cElV4PF16oXt9/X40IBhW+vOmmwOYQjI31rV4zdqz/QJjSUv9QscPh216wQE2aftddSnBt2qQ8Yeedp8LINTX+nke9Xg0m+fvffSPETSaVWzhsmK9ea9b46pWQoHL9TmYZw7IyddyEBCUqA50GZ8ECZf/776u6dbXHI+yWLVMjzbdsUXVfsEAJy+Zm39yUl1yi7Ni5Uw3gmTHD56X0MGeOOrerVvnEaHQ0XH31ya18E+g1earX8iAQMu0+iARr5Hp8uKnbKNa7x19IlaWZvQ0lFJtruSxtBnXWVr99iltrWVe+z7ttdTm82/dM8OUHmvRGzkuZxNqyPcxPGhfQzf/m0QswO6ysPvY1yws2ownTsDhlMg9O+ZZ3n8LWaj977C4n68r3EQZcM2ouKRGxPJJ9DX/Y/z4flOag1Wi4LG0mH5Tuory9wet9e2T61TyXu44Py/bwQWkOABlRCdw/6RJvrmh/9hkobhw9H4fbxYrCLaw4ugVNmIZ5yeN4cLKv7t/LOhery8HqY1/77fOzLvv0F22Yhkeyr+HJfavZWXeUnXVHiTFE0uK0kKgdxoNTLufJfatZV668d5ekZVNlaabRbvbOBekZ+e3Bk+fo+S3o5yWwZIR6UHj1yGesLVO53jGGSG4fe/6AikiA28aeN6DHGwjWLy+hgw6WLhsdbFNOSFhHx1BwnH4DcTiUINHre/YueUKfvX3eF7/6lRIzTz6pBp243YEdp6stJlPfoq+veoFvUEtP+YHB4ET2eOoeGXli0dfa2r9z7CkrOjr463ALPnbuVFGCOXNUKkIQeOaHSpA88NKsoJTfE7XWFgwand+E2cHEMyrapDMGLNhcbje1thZi9JEnHJDhKcvQxcsYyD4Dhd3lpMFuPmHdB+L8ePCcp57q5vlsIMrpL7VWNSNJvMEUchOHny6e+WEOhMEDL4ZOn9ATIeeRXPl0PgDX/+ybkfvVK3r9ifPjtNqBW5EkkNBvoLb0VS8IHQHp4UT29Lfu/T3HoVb3ECHo7d4zpVJGRtCEZCiu7pNkPInFCwaBCJ3hlOf102o0/Qqt9qesgbCnvxi0uj7tHkh7TnSe+nsOB5JQuxYHA8mRDJCyfHOwTVB4pkzxDMQQhKHKELiWQ6bdB5Ghkg8lCMLgMFT6hJATkrc83H0prqDgmcS5v1PKhBq//a0Ktfa2/rZw5jAEruWTavctLSoHNzlZpQrU1KjBXAD5+WpAk2fJS898qfn5ataC8eOVsLZYlLA+0XyqBw+q+UY9S1p23be9XYXDGxuVl3nBAv8Vhnqz4wTI6j6CIHRlqORIhpyQTM4IjVycIc/JDGARhCBzUu2+slINAPPMKBAZqYTk6tW+laFAbd95p8p7/OQTJSDDw32zFKxdCw89BJk9LNX33HNqVgCdTj2QrV4N3/kOLF6scoCffNJ/QNVHH8GjjypberLj7rth1onznGR1H0EQunJwaz2EEfJCMuQyVlc8kcuKJ7pPNSEIwjeXgNq9w6FmRvAs0fnhh2rE/GOPqTXMw8Ph3//2n4D+3HPVRPaXXqrWMV+zpvtx6+qUp3H6dHj2WfjFL9T/P++cK+/jj5WIvPhitVzoeeep7S1berfjjTf87eiBpbeNCsk8SUEQgsPS20Zx8a2h3yeEnEeyttQSbBMUgSxxKAihyBC4lgNq91lZcE3nXH3r16vXlBS1fjmoWQZqa/09hxMmqJH1F12kvIiepTK7kpioBOCePeq4Hg+m5/WQWuaP889XZVx2mZqMPiVFhcNPZEdycq/VGSr5UIIgDA5DpU8IOSEZMjmSv/99sC0QhIFhCFzLp9zuPeu25+X5i8OICOV5PB7PVE49rTDicMDjj0NFhVrX/PgpnTyC0rO0Z3y8ypEE39yw/bWjC5tWlgFw3vXpJ9xPEIQzg00ry+gAzg/xPiHkhOQZkSNZVaWWuzt0qM+by6ARHq5umtdeG7TpT4Qzl1Nu9x6xN3OmmkQflCB0uXrOF66oUK9RUd0/27dPfT57tloes7UVtm3zfe5Z8aimRnkby8tVWHvCBN9UUWedpZYV7cuOLuR8WgOEhpAsq4PX1sGeo+AIkS5KEEIFowFmjIHbLoL0AZqlrydyPq2BMBGSJ81rDx8A4PtPTA2yJaeJqirl7Th+6cRgY7OpUF5uLjzyiIhJYVA55XZ/9tlqlaKdO9Xcn6mp6no2meC++3z7rV6tBut4PIczZ3Y/lkfwHT2qVj3Ky1PbnjZ77rlQUKAG/CxYANu3KzE5ZoyyY9Uqn/BMSfEtkCL/oQAAIABJREFU5dnVjh44/4bQuFmU1cFPXwarPdiWCEJoYrXDtsOwtwieuev0iclQ6RP6IuQG27TU22mp/wb3YO++G3oisis2m/KWCsIgcsrtPjISfvpTNc3Otm3wn/9AQ4Masd2V8HD1WUkJTJmilsQ8nokTlUBsbIQVK1TYPCJCvba3q8+uuEINyvnPf6C6Wo0anzNH2fHggz47Vq9Wo7zPOafPKsxckszMJb3nUA4W//hERKQg9AeLTXnuTxeh0if0Rcgtkdhcr0RWTEKQ5z+8/371+uyzA3vcH/84tIUkqPnwXngh2FYIA8XpupYHkAFt962tKmWk6zKUzz+vPJT33qsG6fRnOcu+lr20WsFsVp93nUPyeDv6uZpRqORIXveECElB6C8GPfznkdNzbMmRDJCgC0gPltM0ejzURSSonC7hm8PpupYHkAFt930tV9nf5Sz72s9oPHHe40kuTRoqOZIiIgWh/5zOHGLJkQyQFx7YC8A9z2QH2RJBEAaL097uTSY1DVIIr/Q0VPKhBEEYHIZKnxByQtJmOfGkvYIgfPM47e1+2bLTe/wB4LTnQn34oZpEvacwfBBJjoXhsb5tlxsOHQuePUOVsanKO1ZS4//ew4R0MOjgSEVwvM7TOhdnOXis51m3ToXMzrGhRVX+74c6QyE/EkJQSP7o6RDxRP7858G2QBAGhiFwLYdMuw8ipz1HcvVq+OILuP56NbVRiHDhDPjOYt+22Qo3PRk8e4Yq918JFQ3w+3fU++omeOIt3+cPXa8E+30vBkdkPXk7dKB+2zbrwB77rkvU66//4f++NyaPhKsXwI58+CRnYG0ZSCRHMkCMkdpgm6CYMCHYFgjCwDAEruWQafdBZFByJOvr4aWX1DVx441qdHmQ2VWgxGN0JNx03qkdKz0R/vt7UFYLv1kxMPYNJbp6GgdarIU6ze2+9+Y+6n7xLJg/CT76+vTadKpIjmSASI6kIJx5SLuH+ZePGLzC8vLUfLbnngtXXqlGuJ9GNBqIMIDF3j2smVem/pJj+ycko4y9iyS9TnndBlJEnag8T71OVJ6+8y7rcKqJrHsLKxsNYHeeWtj3ZMTUierVH3tO9Jt66Fr3E2E0qJSG/gxc6W3frnU5Ub0MOpg3CZrbYH+x7/8azcCH3E+V+ZePIKSm1emFkBOSkiMpCGce0u5h3mAKSVB3zU2bYMcOJSbPO++U8ifHpsKlZymh9LeP1f/0OvjhZbBwCpiMSpjsOqI+r2nq/7E1Grj+HLh6oTqOxQ7rd8E/NvgExVu/Bm3nzMijktU2wKESeOzf/S/r+XshNgqee1/ZnhgDdS3wzCrY27nqpdGgPls0TQkTix3W7YLlnfYsng53fwt25sGcCWqfDbth6Wx1rPtf9Imdc6fC9y6A1Hh1fnbkwUtrocncf5tBhWkLKrq/P54ZY+DXN6ry6lrg2fcgp8D3+byJsOwiyEhUgs1jT32L+tzzmy7O9tV98371m3pEsmefC2eq32Tz/p5tmTMe7ljqX9bx18aj34HJo+BP78JV82Bapjrmf78BO/PVPrsKVCj/+Pc9MXW0uobW7fIXoz+6TNn90dfqwSYUGPQ+IUBCTkg+8NKsYJugePtt9XrjjcG1I1j84AfBtkA4g3jA80Yuu8HHYlH93RdfwNVXAzP6/VWNBhZNVQJyyij1vw27fZ//4BIlnnYdUeJmTIrazkiEe17ovwfoO+crb2VdM3yxH2aNhavmK0H33Ptqn093q/D44mxos8DGfer/FQ39rg6gjhkTpWzfVaBsHpem8g5/8Kyy+YFvK3G864jyal08C749XwmpFZ8poWMyqgEmlfXq+xPT4Wiler9gssrNWzAZfnm9T4imJ8I5U1Q9/l9njp9HSPXEQ6/Bsc4BNSs+8/2/6/vjuWo+7ClU52hcmsqd/M5Tql6zx8IjNytBu26X8u7OnwRxJvj5q+r7nt90X5EScounq22XG15Y01nGPPU/sxW+PAjjUrvbMW20KsvlVmUlRquyRiQooe25NiIM6lw+dL16b3eq666r2Py/LT2/74nF09Xrp3v8/6/VKOF74Uz1O330tbqGgjkd1rY1lXQwyNGKAAg5IRkybNigXs9UISkIwpmFw3FSHsmrF8CN56mbvNmqBOSXh5T48uAREP/+3OflqWxQniyDrn83ab1OiR+AR/6plnBMiIa/P6Bu+ss3QEu78mRlpighWdfq84oGQgfw+FtqUIpWA2/8EpLjlLCqbFCi+OAxJUbarGok9BPLlBDrKuLW5UBtE/z0atiwR9V3XJoSRAA3LVKvz6yCrw6p93+8U3ndMlNU+ZUNvv2PJ5A5DP+wUo2K12rgtZ8qj+u4VPX73Hy+z54v1KqlPHWHErJjU5WX89Ax9RtsPqC8poeOwZ9+oDydHi6e5TvO9sMqjP72r/3tWHahsuGZVfB5p+h/8jZV98kj4UCx//5HK+HPq9X58ITdTxZPWLuuufvMAH9dA5sOqAej+ZPg3iuUZ3b9Lvj7+pMvayDYuqYSwkRInjTP/FANoQoZz+SZyt/+FmwLhIHC410O4d9U2r3yPsBpDGf1FmWIiIDLL4cLLvCtBNQPFk9XInJPITz7fs+h6o37lHB68nYlBAoqlAjrGkrtixHxSkhV1CsBAyrM6vHupSeenumCPKFnl1u9NxmVgAElmK+ap7yFEeG+//d1+rp6YI0GGNP5U184w+cpizNBGKpeRVWnJoh7wtIp3l1uJcATY3zCfmKGz55FncveJ0b77Cmo8NX9l9fx/9u77/ioynyP459MMukkhBQCIbQAoUndKIKAqItYUNeyuOquuthZcS3r6nUtV69X14uLFb2LrHIXCyAWxIKgFGmCCQQIIaETQhohhfRkwv3jx2HSMxkmmTPwe79eeYWZOeWZIefkm+f5PecQFGCvg6z73ruHw8mT9lKApmoW+8fI90nDYNxg+Xf4qVLdXlGNg+SXmyREgvO9hGMHy8/St1sav1ZbK+1N3g///lGG5i8aIqHYXUFSaySd5BegszcB6N5dLtGRkgL79ze9THS03N+3pWUiI2HMmJaXUcrN9Lh3Qz2UxSL3Db/++jbfhQfgsw1w/VgYESe9gymHJGQYPVUASzdJyLv6fOlluvoC+dqYWv/SNC0x6h7xauX1DvT4jXB+PKxLkV7Jbl3gpvFt20bddtvqBMz92fJVfGrizN1TZHi9KW8stYerM2VppT0Fp/5P/3wdTDxPhvXXbpFh+N9f2vQ2W+o1NN5/3X0dypWvpv4occVEmAlDpbd5/a7Gr4UESqAdM1B+pr0t8sfLss1nvl9naY2kk0wza3PsWPfu/847oXdvKYBv7jqA06e3vsxdd0HfvjBpEjzySPu1V5mXu3+WHWCa496N2r1Hsi4XXP5n9Xb5iu8hQXHcEKmT7BstQ5BWH5kgU14lj0EC16t3y9BheIh9AkdLjhyTsNG1s8zszi2UX/o9IuX1jGON1wkJcPpttcrfV0JkjQ1e/UyGl0f1a3uQLK2QIdbwUKnHM3pprT7y/ozPJixYhtWb4soQXVElwal7uPQkG0PbFov0Shrh7qIhEsZe+VTeQ7/ujYNkToG02Rii9m0iaWTkQWyk/OFhDG1bLPbyAVcL8peAmFvQ9GSa6ZPh0pHys7YpVQLkjoONl+tIWiPppMoymb3p5+7ryt15p3v3n50tIfHQodaXycxsfpncXAmSGRmub6PyDO7+WXaAaY57N9rYEUEyMlIm1CQkuGyTxuV75n0vQ6LGMK8RsAbGSoBM3i9B0N9XetuM4c4xA+XLqAP09ZFeL5DaytxCmYxxZQI8e4v0Jo3qJ8uv2VF/dnP2canXjAiFp26WEBoWbA+yrlBdI/sI9pfhz9xCmOzk9d0XrpVavL/9Tmrxyqvg/AHg72ef2f3Kp65ruyPtefg38jWir/RCXjhQhrBnvG0Pv13DpKf0yDH7e7fU6TH+YZtcZP7h38hkm8E9G+/r49UygWbmtTLxxthXSJDsq7is8TpnYsxA+dlau7Pp13MK4aNVUsvalisKtCetkXTSnEfkenLncq0UAPPmyZ0oCgrafxml3EyPexh5aTvfDu2aa2DKlHa7RWJhSeMZs698ap/le+Wp7HooB95eZq9z6xstk2YMvj72x19uku9zv5Pet0nDJaAYM30b1g+WV8Frn8OjN0ivJ8i1FVu7ZmJb2GplwsrD19lnK3+fCFckQLcwe82gI4wLYk+bIEP+IL15//7BPRcU/2GbfM63XCzvran2vLEUHrte/o9stTLJqmtnCezG57x4HcREyBD49eOklMHopTSs3Sk9kL+/xL6v4jL4YIXrQyTYh7WbC5IfrXb9Ps9Uu58TXMTr5MmTpqrlPOsvTOwpl9Ux8cQMdfY56497D3L1s67fpr+vDNdWVJ1ZSDC2U1rR+kXAw4KlRq+t12N0lDHkW1zmmkvEGBNNHBnu7whGewpKGtcnGu+9tf+HkEBZtrX/g5b25QpB/vDOg5BfBA//07Xb9vKCr55z7TY9jemCpGkcPjUNsGcTffJnQoOk6mjt9bOsXGrrj3JBwJGXuLcXoj2CpFJnq/YMkmY5J7TGdEPbxfmVAISE+7m3IS+8IN81UClP5wE/y6Y57t1o9SKZAWD2XxpKqY6xetER8DL/OcF0QXLeUynAuV0rpdS5Ro97z6mHUkp1DE85J5guSIaEN3MJf6XUWUuPe7j4ph7ubgIg9YXO3DFFqXORfzueusxyTmiN6YLk9BeHursJ7cvHB2pMfpb2O3eHF5V7nPXHvQPMUg81oq/cQ1kp1bq6t4Z0NbOcE1pjuiCZlyFT+iJjA93bkPaqJxs8GLZvb59tu8qgQe5ugXIlE9dGGkxz3LuRWWokp0+WCzG7YiayUmezAD+5Z3h70RpJJy14cTdwFtdK3XgjpKVBZaW7W9I0Pz+5ZZpSHeisP+4dYJZ6qB6R8No98MFK2LZfA6VSDVl9pCdy+uVyD/L2YpZzQmtMFyQjY9vx3lZm0K0bPPUUfPYZpKaaJ1D6+Ehv6Y03ShuV6kBn/XHvADPVQ/WIlLutKKXcx0znhJbodSSVUsoEdm2UGwwPvrCLm1uilDKDXRuPc5KTDLkw3N1NaZHpeiRNUyv1/PPy/Zln3NsOpc6UB/wsm+a4d6Pl8w8CGiSVUmL5/IPghQbJtjJNrVRGhnv3r5SreMDPsmmOezcabPJfFkqpjiXnBPMPGpsuSPYYEOzuJpw7jh2D/Hz7Y4sF+vd3X3vUOUuPe7j89l7uboJSykQ85ZxguiB50yMD3N2Ec8fGjbB0qf1xYCC8/rr72qPOWXrca42kUqo+rZF0UkbaCQBi4zu5tyF33tk+2z1wAP73f2Vm9EMPtc8+HDVkCAQEQEkJfP31mW0rK0tCaFgY/PWvrmmfco32+ll2IdMc927k6TWSVbYadhUdwdvLwnlhPRu9bqutxdticUPLlPJMWiPppE9n7wFMUCs1dmz7bLeqSoaTAx2YVFBWJtd19PZu+vXqahmO9vaWywg1d0ea6mr5brXWf75vX/k6dqz1IGmzyT6aa3d1df1h8pa09r6Ua7XXz7ILmea4dyMz10iuzNrB2uzdTI0dRUJEXJPLHK8q4dEtCwj28efLSx+r99rhkmP86ef3Cbb68++LZmigVMoBWiPppLjhnd3dBNc4eBDWrpXANG2ahKcnnoDaWnk9MxNmzpR/9+8PDz5oX3fdOli2TIKZjw+MHAl/+AP4+8OaNbBkCZx/PmzeLNtLSIANGyAqCp58UsLes89CQQFcfDEsXy7LDR0qvVMhIY6/j5ISWLxY9lVTI+9n/Hi5aLkRTGfOtL+v/Hz7+4qJqd87+fPP8Pnn9vc1fDjceit0OtUL9fbbEBEhwSc2tu2fufJYZ81xfwbMXA/1xaFfSC3KZMagyU6tbztZS1WtDZtxnlBKtcrM54S6TBckr7m/HW9c2d5sNtiyRcLe3r3ynNEbZLXCuHES7hITJeyNGSOvRdW5ev2aNbBggQw5jx8vgXTLFukNfPBB6fkrL5e740RFwaFDMis3OhqOHoWUFAmWlZWy3ObNsp2dO+Xrk0/gnnscf08LFkh7hwyB+Hj46SdYuVLaP3WqLDNunATOTZuk3ePGyfNhYfbtJCXBe+/Zg2hmpmy3pAQeO9V7UV0t2165UnpKJ06U99KwJ1WddTz6uHcRs9ZIZpcXklqUydCwWLr6hzZ6vcpW0+o2+nSK4tOL/4y3l0V7I5VykNZIOmlfchEAccMbn7A61MqV8v0yB2+k+f330otYXi5hauxYGD1aAhhIGJo2TQJgYqKErGnTGm/HGGL+059gwAAJp889J/fnLiiwL3fxxRLK5s+HSy6RHs+FC6G4uP72HngAevaE3Fx4+mnZd0WF9G46YuhQ6NdP3k9gIPTqBbNnQ3KyPUhOmwaHD0uQDAxs+n0tWiTf77xTPheQ6xumpUmojImBGTMgPV3C79at8P770ht6ySX2fam2a+vPshuY5rh3I3fVSKYVHeXLjF/w9/Zl5qApjV5flb0LgEnRQ+o9X15TxX9t/5wtx/bh7WVhQteBjdZdmbWTN3d9d/pxsNWPDyfYR1+SCw7xTNJieneK5PXzbz/9/FNJC9lZkMHj501lXFQ8z2xdRHRAZ6bGjiY2yNy/VJVyFa2RdNLSd/YBJqiVWrhQvjv6y3fTJgmRgwbB7bdDuBP/8QUF9rC4YoV8gYREaHw9QEf+sjdqGqOiZNg4Nxfy8hwfOv7Vr+CHH+DNN6WX07ilY1uGqCoq7PWTGzbIZwX295WTI0HSapXgPWQIXHEFfPSR3EZy/XoNkmeirT/LbmCa496NOnJ431Zby8rsnXyTsZWdhXJeuTxmeJPLrspKwdvLwiXd6gfJOWkr2JS3hwi/Tpwf2Y/Nx/Y2WjfUGkBcSFeqbDWkFmU2en1oaCxBVj92FmSQXV5IdEBnSqor2HxsH4HeVhLCpR6z3FbNkkObWXJoM8O79OKGXheQEN4XX2/T/QpTymXknKA1km1m5oLzFk2eLL2SqalSC9mvn4SwhATHaxJtNvneMCD2PTXs16mTBMEz1ZZJLu++K8Plo0dL72RuLnz7bdv2Vzd01n1vsbHyFXDqPsvGsP+WLbB/vzzXvbuESnVW89jj3oU6anh//r61LDn4M6U1lQT5+HF5zDAmdB10OrTVdeBELvtO5JAQEUeI1X4/dFttLSuP7gDgf351Kz2DI9hbnM29G9+rt35CRBwJEXFklxdy69q3Gm3f22Lh8pjh/N/etfyUs5ubeo9hfV46tSdruaz7eaeD4osjp5F0/ABrc1JZl5PGM1sXEeYbxA29L+B3fcw/mUwpZ3hKyY/pgqSnFJc2MmaMfO3bB6tXwy+/SJ3k4cP1L79iBCljJnVdYWESqsrL4fLLJYway5aWQufOsv22MHoQi4pkdrbFIttxREWFhEiLBaZPlx7DnTubDpJGOK2slEBcN6wGBkJwsNRDXnyxfbi/7vsCmDdPhrotFvksx4+X4X111vPY496FOmp4f3lmMqU1lSRExPH40Kl08Wv+YvCrjWHtBr2R2eWFVNXWEOHfiZ7BEQAEWx0sl2ngsuih/N/etWzM2yNBMidNnu9+3ullfL19GBPZnzGR/fldn3zeSP2OpPwDrMpK0SCpzlr7kos4yUn6mXwyoumCpGkKzuPjnVsvLk6+brxRhnGNIGeIiZEZy9nZ0tsXFSUh7847JXxdc40MRb76qoQuq1VCaW0tvPhi29szd670JiYnyzZGjLAPd2/bJrWIRhurq6UuEWDKFGmbEWwXLpSg+9NPTe/HWLakBN56S3oai4pktrm3N1x1lWzjrbfs72vrVtnnc89JzWZkJAwbBhdd5NjlkZRjnP1Z7kCmOe7dqKOG93/XZxxfZSSy5dg+bl7zBsO79GJStyGMixxAqG/9425F1g6sFh/GRdb/g8520nWzr2OCujC8Sy92FmSQV1FMUv5+4jp1ZVBozOllciqKWJOdyqqsFNKLswAYENKN3/a50GXtUMpslr6zD7zg4XfMXfJjuiBpmovyPvZY68u0JDS06SHZwEC44w744AMZxgUJaNXVEq4uu0y+L11qnyQRGQk33+zcdRc7d7bfvaZfv/oTYTIyJOwaqqvtj8eOlYum33OPhMs1a6SncOJEWLVKhrjr9jxarfDHP8K//mWfIR4cLHWQnTrZ39eyZfb3FR4O111nn/hzu73YXrnQmf4sdwDTHPdu1FE1klNjRzE1dhS7Co+w+ODPbMzbQ1L+AXbGDOfxofZa5F2FR8gpLyIhIq5Rb2N0QGcsXhYKKkvJLD1OTFAXh2ZvN+fKHiNJPn6I99J/pNxWXa83EuDvO5aSfPwQAd5WLo8ZzrWxo4kP7e70/pTyBJ5SI+l18uRJU7Vy+fxDwDkw1FVdLT12VquEzqYcO9by6y154gmZ4PLSSzK7u7bWue2ABMaCAgmGrc32duR9GROK6l4eSJ3Tzpnj3oSOV5aw/Oh2SqoruHvAJaeffy/9Rz4+sIEnh13HZd2GNlrvlZ1LWZ65nd7BkVwY2Z91uWlklObXuyD5zsIMvjmylfKaKtbm7MbX4sOkboMBeHDgFAJ8fAGZAT5tzeuU26rx9rLw8cQHCfMNOr2vV1OW0Ts4isu7D3N6CF0p1T5M1yN5zvwisVplFnVLWnvdUZ3O8LZz3t6Ot8WR96UBUjVwzhz3LXDXJZC6+AU3WWf4Y3ZKk8PahgfiJ5NXcYKk/AMcLMnjypgR5JQX1Vsms6yA5ZnbTz+uqq05/fiBePvFzQN8fJkYPYhvjmzj/Ii4eiES4NEhVzv9/pTyVJ5SI2m6HsmtP8qs5JGXRLWyZDszLk3jqbV6dXskXRVIlWfygJ9l0xz3bjT7viTAHJdASi/O4i9bPmRC9MBWQ9zxyhK8vSyN6iuVUmdm9n1JWiPpjNWLjgAm+IXy0EPyfe5c97bDWc89J8PZzd1/W507POBn2TTHvRuZ6TaRA0K6NbpfdnNamvWtlHKep9RImi5Ijrz03P1F4lKO3rlGKRPQ495zrhmnlOoYnnJOMF2QvPimHu5ugvA59dG05XaCSplNdbX8LDsz478Dmea4d6OMtBMAxMafYU2zUuqs4CnnBNPVSG5aJtcIG3N1N/c2JDFRbncYGGi/NI9SnqSyUkobysrkHuYjRri7Rc0yzXHvRmaqkVRKuZ/WSDppo1l+oYweLd/LyuDRR6GmRkLl66/blzl2DJ580v44Nhaeecb+OC0NZs2yPx45Eh54wP54wwb7BcBBrrVY9zqPX31lvwYkyLUkL73U/vj99+tfB3LGjPph4fnn69+fu+HEm5kz5WLjhro1dGVl9to6kGs+vvyy/fHhw/DCC/bH8fH1r1e4dSvMmWN/PHZs/Tv8rFxpvwe0M+9t1iz5fA3PPFP//uHGZCPD66/Xn2xy9932f7f1/7Wt7+2aa+rfK3zhQvu1NEHWHVtn1uzbb8vF4g2PPVb/ouKO/r/6+MiF7QMDTR0iwUTHvRv1GKC1hkopO085J5guSF5otl8kqakyLFjj/MV2lXKb1FT7H0UmZrrj3g1uekRvB6qUsvOUc4LphraVUupc5Cn1UEqpjuEp5wSLuxvQ0KZlWafrpZRS5wY97uHT2Xv4dPYedzdDKWUSn87ew6evmf+cYLqhba2VUurco8e959RDKaU6hqecE0w3tK13uFDq3KPHvVJKeSbTBUmllDoX5WXIrSwjY/VWg0opzzknmG5oe81iuVXaRBNfoHhl1g7WZu9mauwoEiLiKK+p4qUdX55+3dvLi2CrP0PDejKp62B8vTv+Y341ZRlFVeU8MPDXRAeY59ZrSjXFE4779rbgxd2AXkdSKSUWvLhbryPpjKQfZIjLzL9Qvjj0C6lFmcwYNBkA28la1uemNVrumyPbWJ6ZzP+MvhVvS8fOa0rMP0BOeRF/iBsPAR266zNyuOQYTyZ9TIR/CK+ff7u7m6M6iCcc9+0tMtaDDlSlVLuTc4KXu5vRKtMFycvv6OXuJrQou7yQ1KJMhobF0tU/tNHrP1z+NwD2FmfzROLHJB8/xOZje7kwyn49KFttLeW2KoKtzd960VgmwNu3xRBaUl3R6jKtcaQ9jjrT9lTV1pBdXnTG7VCexezHfUe47alB7m6CUspEPOWcYLogOXhMuFv3n1Z0lC8zfsHf25eZg6Y0en1V9i4AJkUPaXE7/UKiiQ/tzqa8PZTaqgAoqCrl7dTlrM3Zje1kLcE+flweM5y7+l9yevi7ylbDm7u/Y012KqU1lfhafBgV3ocZgybTPSDs9PaXH93O/L1ryCkvwtfiw7ioeB4dchUBPr4Ov9eCqlLmpv/AqqxdVNXWNGrPquwUXkv5lq4BofxzrP1OMOtz03llx1K6BoTyzpjpeFssfHxgA4sObKS4upwAbytX9hhZ7309tHk+B0/k8eLoaQztLHeguWXtm5RWV/LeuHuI9A/h2h9mYTtZC0B2eRHX/iB3BeodHMnrF0jv5Cs7lxLs48/lMcOJ69TV4feqzM3dx70ZeEo9lFKqY3jKOcF0QfL7+YcAmHx7x/VQ2GprWZm9k28ytrKzUG49d3nM8CaXXZWVgreXhUu6NR0k9xZnA5BenE1S/gH8va2MDu8DwKydy9iUt4dxUfEM7hzD10e2suTQZoKt/vwhbgIA7+35kW+ObCMhIo4xkf3ZdyKHb45sJbPsOPPG3ou3xcJXGUm8tusbgnz8uLLHSNKKjrIqO4VyWxUvjprWZLuaMjvlG9bnpjXbnglRg5ib/iP7TuSQXHCI4WHyf/JVRiIlNRX8IWYC3hYLH+5fx7/2rCbCrxNX9hjJrsIjLDm0mXJbFY8OuRqA8poqSmoqqKm1nd5/aXUlJTUVp8Pj5THDKKouZ+XRHadC7TAAIvxDTq9TXlPN8sztLDm0mUGhMUztOdptdahvgAgbAAAgAElEQVTKddxx3JuN1kgqperSGkknpWyU+yN31C+U+fvWsuTgz5TWVBJ0KrxM6DqIhPC4RsseOJHLvhM5JETEEWJtup7p3o3vnf63xcvCY4OvJsw3CIAxkf0ZHd6HK2JGEODjS2xQOM9sXcyOAvt9k41/3xZ30emeu5jAMKpqa6iqrSHA4suC/T8B8MKo3zI8rBe22lqmb/hfNuXtIbPsODGBXRx672Mi+zOiSy8mdx9GsNWf/iHRPP7LR2zM3cMf4iQkXh4znP/bu5blmckMD+tFdnkhW47tk6DXfRi22loWHtgIwH+Pvpm4Tl0pqa7g5jWvszxzO3+Im0BknSDYkgcGTmZvcbYESas/Dwyc3GiZJ8+7lit7jGBVdgrrctJ4ZcdS3t29gt/0SjgdxpXn6ejj3oy0RlIpVZfWSDqpo2ullmcmU1pTSUJEHI8PnUoXv+YvALraGNZupjcS4PmRvwWgqLqM+XvX8GrKMmKCwhjaOZZJ0YNZdHATTyR9THlNFeWnhryNHjmQntD04iz+suVDegdHMrhzDGMi+5MQIcE2r6KYYxVy26QlBzez5OBmQGoTATJK8x0OkpOiB7Po0Cae2rqw2fbc0PN8Fh3YyNrsVB6In8y3R7YBMDlmOMFWfzJLj1NaU0mEf6fTQ83BVn/iQqLZWZDBvhM5DgdJR/h6+5AQEUdCRBy39jnOm7uXs+XYPpZnJmuQ9GBaI+k59VBKqY7hKecE0wXJjq6V+l2fcXyVkciWY/u4ec0bDO/Si0ndhjAucgChvvXrElZk7cBq8WFcZPM3Uh9XZ1JNUVUZ76X/yMqjOxjaOZa//PIh6cVZXNbtPIZ36UVm2XE+ObCh3vrX9fwVQzv34LPDm9lVmMkXh3/hi8O/MC4qnudH3nR6OW+v+pNZBneW2a4N29ySZ7YtJin/gPTAdo9rsj3BVn8u6TaEb45sY23Obr47moy3l4Ube18A2ENnbW1to+23h7yKYtbm7GZVVgrpxVnYTtbSOziS3/Ud1yH7V+1DayQ9px5KKdUxPOWcYLog+dU7+wGYen/fDtnf1NhRTI0dxa7CIyw++DMb8/aQlH+AnTHDeXzo1NPL7So8Qk55EQkRcQ7Pbs4pLwQk9OVVFJNenEWAty9PDrsWgM15e+sFtypbDZ8c3IC/ty+PD70GgMzS4zy0eT7rc9PIqSgiwrcTQT5+lNZUckPv80/XLVbZaiiuKSfCz7Gbu5dUV5CUf4AAb1+eHXFDk+0x3Nx7LN8c2ca/9qyioKqUcVHxp2esxwR2IcjHj+NVpWSWHicmqAtVthoOnJDLufTpJHcqMSYBVdiqAalLrTnZOHwaAbm8pgpbbW2j2d9vpi5nfW4aFi8Ll0QP4crYEac/A+W5Ovq4NyOtkVRK1aU1kk7am1zolv0O7tyDZ0f04HhlCcuPbj89VGzYkJsOwGXdz2txO89sXQzI0PbOggwsXhYu634eodbA0wHwtV3fEOkfwtKMREBCFciw7ea8faQWZXK07DijwvuSXV5IaU0lIdYAQnwC8LZYuL3fRObs/p4nfvmYqbGj8LX4sCYnFdvJWv590Yx64WtO2gqCfeoH3wcG/ppIv5Bm29NQTFAXEiLi2HJsHwC/6zv29GveFgtTY0fzyYENPJH0Mb/ufh6b8/ZRWlPJhK6DTgfOoZ1j2VmQwdu7vye9OIvEYweoqq1ptK+eQREE+fhRVF3OU1sXEh/SjeyKQh4fcg3eFgsxgWHcG38ZV8aMcMnlipQ5uOu4N5OQcMevuKCUOvuFhPt6Qomk+W6RuC9ZriEYN7zxNRrd6Za1b3K8spTPJz3S6BI7JdUVXPvjrHrP+Vp8iAvpyu1xE0mIkF6W9bnp/H3Hl5TWVGLxsjAlZjjfHNlKqDWAxRc/jLfFQnZ5IXN2r2Bj3h5qT/XYxQaFM3PQFEadmv0N8FVGEvP3rqGgqhSA7oFh3Bf/69ND67esfZOcZq7H+L8X3kW/kGi2HNvH33cspaCqFIuXhat6jOSrjET8va0sveQv9QLp2pzd/Oe2T4nr1LXepYBAekPnpK3gu8xkqmtrsHhZuCgqnseHTj39WZVUV5we2rd4WZjSfRiHy/LZWZDBhxP+VO/uO5vy9vDf27+gtKYSgBBrAB9cdH+bhu2VZzHrca+UUqplpguSZmRMfpkQPfD05WycZautJa+ymFBrYIvXfCyvqaKouowAb98WA1R2eSG+Fp8WJwm5oj3/lfw5q7JTeHbEjUzoOrDFNgf7+DfbW5hXUYyvxafVUGi060zem1KepDj/1B9O4X5ubolSygw85ZxguiC5+B8yhHzTI81PaFEdJ704iy8Ob2F55na6BoTywbj79ZqNyuX0uIfZ9yUBWiOplBKz70vSGklnHEkvcXcTVB2rslJYnrmdCL9OPD38eg2Rql3oca81kkqp+rRG0kkZaXKNxNh4x2Yfq/ZVUl1BdnkhfYKjzuh+3kq1RI97pZTyTKYLkkopdS7ylHoopVTH8JRzgum6mBa8mMqCF1Pd3QylVAfS4x7mPZXCvKdS3N0MpZRJzHsqhXl/M/85wXQFb3kZ5e5uglKqg+lxrzWSSqn6tEbSSbmnbgkUZfJbAimlXEePe6WU8kymC5JKKXUuqiyzAeAX6O3mliilzMBTzglaI6mUcjs97mHOI8nMeSTZ3c1QSpnEnEeSmfOo+c8JWiOplHI7Pe7BL8DcvQ5KqY7lF+CtNZLOKDo13T3U5NPdlVKuo8e9Ukp5JtMFSaWUOhd5Sj2UUqpjeMo5wXQ1kvOe2sm8p3a6uxlKqQ6kx73WSCql6tMaSScV51e5uwlKqQ6mx73WSCql6tMaSSdVnOrK9Td5V65SynX0uFdKKc9kuiCplFLnIk+ph1JKdQxPOSeYrkZyzsPJzHnY/DUBSinX0eNeaySVUvVpjaSTKstt7m6CUqqD6XGvlFKeyXRD21orpdS5R497pZTyTKYLkkoppZRSyjOYrkZy9n1JzL4vyd3NUEp1ID3u9TNQStU3+74kZt9v/nOC6Wok+4/qTGRsoLuboZTqILW2k4y9tjt5GWXubopb6blPKWXwpPOiKYe29yQVkrmvhItv6uHupiil2tnqxUfo1ieI+F+FubspbqfnPqUUeNZ50XRD2ycKqlg+/yDd+gSxaVlWvaGehkM/+lgf62PPfvzzt9nExAWz4t+HKC2q5lzW1nOfcbmkyjKbU4+NW1IW51c69XjBf6UCkJtR5tTjxf9IByAj7YRTj5e+sx+AfdsKTz3e16bHy+cfBCBlY75Tj1cvPgJA0g+5Tj3euCwLgI1fZTn1eOuPuQCsXnTEqccpG/MBWD7/oFOP9yUXArB0zj6nHmeknQBg8T/S2/74/iRyT/XULfivVKceF+VXAnJ7VmceG9d4nPNwslOPDbPvS2r0+Odvs+jeN4iVCw57xHnRdEPbncJ8ufP5IQSFWln2z/3ubo5Sqh3lZZRxwRXRRPcZTFCo1d3NcSs99ymlAPKOVHDBFd3o1jfII86LphzaVkoppZRS5me6oW2llFJKKeUZNEgqpZRSSimnaJBUSimllFJO0SCplFJKKaWcokFSKaWUUko5RYOkUkoppZRyigZJpZRSSinlFA2SSimllFLKKRoklVJKKaWUUzRIKqWUUkopp2iQVEoppZRSTtEgqZRSSimlnKJBUimllFJKOcXH3Q1QZzmbDQ4fhj59YM0aWLAAbrsNJk6EQ4ege3ewWt3dSqWUcglbLazeDutSYNdhKK2AkEDo1x0uGwljBoKv/uZVZxH9cVbtx2aDl16C3Fx4+WUID5fnO3eGsjJ5rmdPePJJ97azPa1ZA8XFMGEChIY6vl56OqSlQXw8DBjQfu1TSrnM0Xx4/iM4cqz+88VlkLRXvvp2gyd/C926uKeNZvbtL1BQAleMhrBOjq+3/QDsPATn9ZYvsykokfcWFgxX/MrdrXE9HdpW7cfbG664AoKDobAQBg2CuXNh+HAoKZFgNXmyLGuzubet7WXNGli6VMJkW6SlyXppaY4tf/y49PyWlbW9jUqpM3Y0Hx7/V+MQ2dD+LHh8HmQd75h2eZJvtsDHqyV4tcWOg/DRKvnuiGNFsC8LSira3kZH5BTU335BibTv21/M0T5X0yCpXK+6WnoiExNh9Gh44QUZwvb2ti8TFQUvviivJybK8mdrmOwIK1bI57xtm7tbotQ5p6oGXl4EhQ4GoIIS6bnUU557fLYBHnoXfk5tn+1/uPrMtt/e7XM1HdpWrnf0qPSOLV4MI0bUD5B1eXvLmfSzz+DECamZ7Nu3bfsqLIRdu6BbNwmwaWkQECA1mEbtZVkZJCXBsWPSO3r++RASIq8lJUFFBQwZAlu2QHm5tDk6Gtatg6IiadOwYfZ9lpXBzz/La1FRkJBg35fNJq/l5sLgwa233xjCtligd29pR3Py8iA5WXpzo6MlhFutso3MTFlm714IC5PeX6VUh9iYCvuz27ZORh6s2gGXjWifNjUlvxi27YceERJ+dxyEID+4IsFet1lSARt2QU6h1HZOHAqdg+W19bugohJG9YO1KVL/eeFAiImA75MkIA/sAQl1qnFKKqRmtKAEuneB8UPt+zLqSY8eh+F9Wm//joPy5W2B/t2lHc3JOg6b06WsIDYCxg6W/e44CIdzZZmUwxAeCiOa+LXTUruNz2H8efLc/iw4kAN9o2W97OP27XcLB3/fxtu31cp2DuXW/5wbtq9bOAzu2fpn404aJJXr9eoFr74qgae5EGnw9oYZM6RuMjCw7fs6cADef1+CYd3h45QUeOghCXsvvQT5+eDnB5WVMmT8t79JCFy0SF4LD5fvAMuXQ2yshDLDPfdIYMzPh7//HQoK7K+tXCl1nlYrvPmm7Bvg66/Bp4VD7LvvYMkSaZfFIiF20iS45ZbGy6amwhtvQE2N/bl16+Q9rlghrwP89JN87hokleowPzo5ELA+pWODZHomzP5cavXqDh8n7YP/vE2ee3Qu5BZK+Kmogo9XwT/uge7hMG855BVBZKgsA/D5BujTVSYWAXh5wV9uhAlDZYj38X9JgDV8uQlm3SUB7PkPIfHUaXbhGrC2cLpc/BPMXynt8rZIiL36ArjvysbLbtsH//kRVNc5XQ5Lgudugy82SpgGCb/FZY2DpFGmULeH+aPV8Pc7ISLU/jlcMEjex8bdMiR/yyQZkjY+i++ToPYkXDOm/varauBv8+3LGZ/jS3c0bl/tSfMHSR3aVq63Zo2EsKgox5bv2lUC4Zo1zu/TaoXnn4enn5bwtmuX9DSmpEhAveoqeOstCWrl5bBhQ/31b7gBZs2SEFxZKT2Xr7wiNZ4AW7fK908+kRB5zTUwe7b0fGZkwKpVsGeP7C8kBJ57Dp54ouUZ6StWyOuzZsm+oqNl/YomCmM++khC5H33yfJDhkhP5vffw/Tp0g6QGfF//KPzn6NSqs32HHVuvdQM17bDUVYfePdP8MZ98u9t+6G8EhL3QLA/TJsInz4FVyVID9sPyfXXv+PX8O+/yEz08koIDYIPHoEbL4KTJ2HTqb9r534nIfKWSfDRX2Wiyf4sWPYzpBySEBnWCd5+wB4um/PlJvC1yn4/eFR6VZP2yP4bevcbqLHBk9Nk+VH9ZELO5+vhsRtgyqkJLzOuhkdvaHr9wpL67c4pkDDZmsdukN5LY/v3NhF0v9woIfLCQfK53TVF6iI/WdO4fU2tbzYaJJXrLVggPXOO8vaG116T9ZzVs6cMb/fsKZN4amulZ27sWJg5U4Z7v/rK3pNYt0cRJJiFhkL//vJ45EhZxxhqNnoCjZ6/kBDYvl16E0HC5IED8u8xYyAmBuLiICKi+TZHRclw/Ny5Mhz+5z9L3ai/f/3lcnMhO1uWHz1a2nnVVfb2+PvbA6vV2nh9pVS7KnZyjlupmyZT9I2GHpEygzwsWE6XxeVyeaJnb4WIEAlN+Sdk+fwGcwVH9ZP1jJ6yMfHSU2cMNVedOl1u2y89lGHBsCUdAk4N8e7PhrQj8u+Lh0GvrjAwFqI6N9/m7l2gqhpeWSxDzs//Hv75EAT41V/uaL5MeOrWBcYNln1PmyCvbd0vbTACq6+PvU0GW62029cqwTgk0L5+0r7WP9sAX3vPalPbB5m9DxATDskHwOfUwF16ZuvtMyMd2laud9ttEqBsttaHtkGWe/DBxuHOFdLTpefQaoWhQyVcnonKU3/+Lllify4gQL5XV8t3R4Pc9OlSH7p9u3yBBMTrrqu/nNFDaewH7AFWZ2kr5XZB/s6FwpCA1pfpSDsOwDMLJMCM7ud8QDZUVMn3D1bYnwvyl3BphE1Hg9Kj18vQ9uZ0CaVeXvDb8fD7Sxvss9q+H4MRNsua6L1sqLxKgrWvnz3Q+fvVfz9nypiNvWyzDNMb7bV4uWb7HU2DpHK9iRMl4OTkyGzt1uTnQ79+ztVItmb1aulN/P3vpXdyw4b6tY9tFRwsYfQ//kOGokEeBwfbh8uzsuzL19Y2vZ2yMgm548dLoNy/X3pxv/7afkkkQ0SE1FDm50tYtVrlswX7tTlb259Sqt0M7inhpq36xbi+LWfim1+krnDGVKndXLm1fh1fW4UEwolyePVuGYoGKC6FkCBYcapa6EieffnmTl8l5XKdyMmjZSh6d4bMel/0E/xmbP1lu3aW02VugYRVXx+Z2AQQ1eBSvrYm9hfsL+0urYSiUhm2N9oY3uDalnVrMNsiIgQOZMvnPOnUPM6SCtm3J9IgqVxv/34Zqu7USeoWW+qVtNngH/+QSTF//avMXHYlI5wmJkpv4sqVZ7a9yy6DL76Q9zd+vITI9etl+Py886Q+MzERFi6UsGjMpm7IYpF6S5DJNVarnEV9fOS1hu9h5EjZ7ptvykXKjXrScePku9FDuX69rD+2wdlVKdVuxg12Lkhe2oETbRxh9OKtT5Hety83ntn2rhkDC36EZxfA5FHSw/nDNnjmFrhggAwBr0+Fud9Kj+6hXOlpbMjbG/75LXgB910lQ8G2Wlm/4a+XIH+ZSb5+l0zmOa+PXJ/Sy0uG7sE+i3rlNlm/4f/Dr0fBknUSVi8cBMsT5fmrL5Dv3bvIZKM3voT+MTIppi4jEC5PklN7jwYVTlefLz8vc5bJe/a2yOfym7Fw7Rj70PjyJMDLfD8nDWmNpHK9Xr2knu/66+2X+GmKMfR9000ySzqmHf48v/JK2fb27RLcjF5EY4Z2W02ZIsPPJSUSKH/8UWZIR0ZKcL73XjlzrFwpgbq5yxn5+8P990u947x58O670qs5c2bTQ+N33CH1kampst+KCpg2TS5VBBIcQ0Kkt7XhRCKlVLuaNLxxWGhN325yu0QzuXkC9ImWkDP3O/t7MmZot9VN42XiTlEp/PsH+OpnucxPtzDplXz8RrB6y0Sa3UcgvkfT2wnwhSd+K5fHmbVErtkZEiiBtKmh8T//RsL9tv2y34oquHuK/fO+bITUTu46LL2uDd06SYLv/mwZlj9WLHWSxl1pfnexve5z6UapOa2r7vbX7mi8/dH94cFrwN8Kn/4kM9bDO0k5AcCvW2mf2XidPHnypLsboc5iSUlyiZ1HHpFhWCNYZmfD22/DjTfCqFHt346CAum1c9Xwuc0m2wwMbLzN6moJmiEhjtWIFhRIL6Ijt1AsK5Oe1aa2bbQpNFTvX65UBzuaD3/9l2N3ZQkLglfuMu9tEo8VSV2gq4ZabbWyzaCAxtusqpHh7rBO9nrB1trmbXHsFool5RIim9q20aawTs3PFi+vsret4TKtrV9VAwUnWt4+yGxwf18ZQm9r+8xCg6RqX//93zKj+dVXpbfszTdldnKfPnJ5nKgouQajI4FLKaVM7Gg+vLRI6t+a0yNCZkabNUQq1VYaJFX7qq6WOsHevaWub8ECmdU9cSLs2yfPa4hUSp0lqmpg0274YatcX7K4TOr2BveEi4bI5W4c6XlTylNokFRKKaWUUk7Rv4uUUkoppZRTNEgqpZRSSimnaJBUSimllFJO0SCplFJKKaWcokFSKaWUUko5RYOkUkoppZRyigZJpZRSSinlFJPfeEd5PJsNfv4ZEhNhzx4oL5d7SvfqBePGyb2i9XZ+SimllEfSC5Kr9pOXB2+8IffVbk5sLNx/P0RGdly7OtKaNVBcDBMmOHYvbUN6OqSlQXw8DBjQfu1TSimlzoAObav2kZcHL7/ccogEuQ/3yy/L8mejNWtg6VIJk22RlibrpaU5tvzx43D4MJSVtb2NZ6qsTPZ97JhrtlddLdvLynLN9pRSSrUbDZLK9aqr4Z13HA9PxcXSc2mztW+7zmYrVsALL8C2bR2/77Q02feiRa7ZXlGRbG/uXNdsTymlVLvRGknletu2SU9jW2RnSy3l2LFtW6+wEHbtgm7dJMCmpUFAAEycaK+9LCuDpCTpMQsOhvPPh5AQeS0pCSoqYMgQ2LJFajhHjIDoaFi3TkJN374wbJh9n2Vl0taiIoiKgoQE+76MmtDcXBg8uPX2G0PYFgv07i3taE5eHiQnQ0mJtG/0aNlvejpkZsoye/dCWBgMGtR4/aIieY8N1zfanZQk2wkMlM+oc2d57dAheb5fP9i/X/6vYmLkfefmQmqqLHf8OGzaBGPGNG5v3c8wO1u207s3FBRI7Wx4uKxXXi7tMD7nDRvqf75KKaVMRYOkcr31651bLzGx7UHywAF4/30JhnV7QFNS4KGHJDy99BLk54OfH1RWypDx3/4mIXDRInktPFy+AyxfLrWbe/fat3fPPRJo8vPh73+XAGRYuRKefFLCzptvyr4Bvv4afFo4xL77DpYskXZZLBKiJk2CW25pvGxqqvTa1tTYn1u3Tt7jihX2MPfTTxLcGgbJjAz4n/+RfRg2bYIHH4TaWmm3sQ2Azz+HmTNlO5s2yXts+BmXlcl7XrVKHh86BB9/LIEwJQXeeqt+exMS5HPcuRMWLqz/mRvrJyTA4sXyOD9f/m91QpZSSpmWDm0r1zt0yLn19uxxfp9WKzz/PDz9tIS3XbukpzElRXrYrrpKgs2kSRKmNmyov/4NN8CsWTKbvLJSei5feQWuuEJe37pVvn/yiYTIa66B2bOl5zMjQ8LUnj2yv5AQeO45eOKJlgPQihXy+qxZsq/oaFm/oqLxsh99JKHsvvtk+SFDpCfz++9h+nRpB8Btt8Ef/9h4/QUL5H3fdpusP2CA7Cs1Veo4U1PluVmzJOzV1EiIq1tuEB8v7bzpJnm8ZQtccAHcdZc8HjZMQjvAhx/KNmbMkHX69pXlDxywby8sTF6bMUMeb98uvZ5PPy2PY2Lg9dfl/08ppZQpaY+kcr2SEufWq9tb1lY9e8rwNsjs6Px8acfYsTLEnJwMX31l70ms26MIEswCA6F/fwnCI0dK0BkyBL791t6zZvTahYRI8PHzk8d1h/LHjJEQBBAR0fwwf1SU9HrOnSsh7M9/ll66hnJzZTg4KkqGo0GCsREEr7rKHlitVvD3r7++zQYHD8prRuC89VZ5LiLC3qM4ebJ8dgkJ8p4zMuDoUft2hg6Vz2TgQHlcVgbe3uDrK4+9veUzzMqSYe2QEFkmNVXWAwnbllN/v/buLc8br1VW2rcBspyGSKWUMjUNksr1AgKcC4XBwa5vS3q69BxarRKEnA25hspK+b5kif25gAD5Xl0t3xsGueZMnw6ffSaBdPt2ee6qq+C66+ovZ/RQGvsBe4B1ZJZ2ZaUMX9dtV/fu8mW8DtCpk/11I8A5Mwvc+IxLSqQH1xAQIKHWogMhSil1ttAgqVyvf397MGqLXr1c35bVq6U38fe/l97JDRvq1z62VXCwBKT/+A8ZigZ5HBxsHy6ve9ma2tqmt1NWJiF3/HgJlPv3S53i119Lz2BdERESvvLzJaxarZCTI6817MFsan+BgdK+sjL5CgyUXsLt22VSjbGNo0dlCLq6WnpBQXpB28rYXmCgDF0bvaXG57RyZdu3qZRSypQ0SCrXGz3auSA5bpzr22L0rCUmSs/bmYaYyy6DL76A116TEFhSIpOLZs6E886T+szERJlMUlZmn03dkMVi76275RYJW7W1sn7DHrvAQBlqT0yUsBkfL3WNYP/MjB7K9etl/YaTlkaPlnXmzJH1f/pJhvfHjpVtbNggvawFBTLkXVAgw/rGsHNLjH0fPCjlA1OnylD99u1Sczl6tAyT79oFzz7b+vaM4JmZKT22kyY51g6llFIdTseYlOtdcIG9t85RsbEyO9fVrrxStr19uwQ3o111Zwu3xZQpMvxcUiKB8scfZWZzZKQMDd97rwShlSull7Fv36a34+8vd/QJDYV58+Ddd6W3bubMpofG77hDAllqquy3ogKmTbN/ZmPHSk3i3r2NJxKBLJuQIDWKS5fK+rffLp/NgAFw552y3NKl8lkNGWJ/rjXx8fJVUCDrA9x9t+zv4EGZhf3LL9L+usPzzQkNlTrT2lqp1TyT2lmllFLtSm+RqNpHbq5cJseRi5KHhMBf/+rcMKqjCgqk58xVkzdsNtlmYGDjbVZXS9AMCZHJI460zWJx7BaKZWXSs9rUto02hYY2P1u8okKCWUvrN/WeHNHUZ1xRIZ9FS21qTlGRfG/LrSWVUkp1KA2Sqv3k5kpPW0sXJ4+OlmsZtmeIVEoppVS70CCp2ld1tdzpZv16uaxOSYkMb/bvL0OdF1zgWK+dUkoppUxHg6RSSimllHKKTrZRSimllFJO0SCplFJKKaWcokFSKaWUUko5RYOkUkoppZRyigZJpZRSSinlFA2SSimllFLKKRoklVJKKaWUUzRIKqWUUkopp2iQVEoppZRSTtEgqZRSSimlnKJBUimllFJKOUWDpFJKKaWUcooGSaWUUkop5RQNkkoppZRSyikaJJVSSimllFM0SCqllFJKKadokFRKKaWUUk7RIKmUUkoppZyiQVIppZRSSjlFg6RSSimllHKKBkmllFJKKeUUDTlKnaIAAAAOSURBVJJKKaWUUsop/w8IPzpE9E+fcAAAAABJRU5ErkJggg==)
下面我们给出完整的、向 <BaseLayout> 传递插槽内容的代码,指令均使用的是缩写形式:
<BaseLayout>
<template #header>
<h1>Here might be a page title</h1>
</template>
<template #default>
<p>A paragraph for the main content.</p>
<p>And another one.</p>
</template>
<template #footer>
<p>Here's some contact info</p>
</template>
</BaseLayout>
当一个组件同时接收默认插槽和具名插槽时,所有位于顶级的非 <template> 节点都被隐式地视为默认插槽的内容。所以上面也可以写成:
<BaseLayout>
<template #header>
<h1>Here might be a page title</h1>
</template>
<!-- 隐式的默认插槽 -->
<p>A paragraph for the main content.</p>
<p>And another one.</p>
<template #footer>
<p>Here's some contact info</p>
</template>
</BaseLayout>
现在 <template> 元素中的所有内容都将被传递到相应的插槽。最终渲染出的 HTML 如下:
<div class="container">
<header>
<h1>Here might be a page title</h1>
</header>
<main>
<p>A paragraph for the main content.</p>
<p>And another one.</p>
</main>
<footer>
<p>Here's some contact info</p>
</footer>
</div>
使用 JavaScript 函数来类比可能更有助于你来理解具名插槽:
// 传入不同的内容给不同名字的插槽
BaseLayout({
header: `...`,
default: `...`,
footer: `...`
})
// <BaseLayout> 渲染插槽内容到对应位置
function BaseLayout(slots) {
return `<div class="container">
<header>${slots.header}</header>
<main>${slots.default}</main>
<footer>${slots.footer}</footer>
</div>`
}
动态插槽名
动态指令参数在 v-slot 上也是有效的,即可以定义下面这样的动态插槽名:
<base-layout>
<template v-slot:[dynamicSlotName]>
...
</template>
<!-- 缩写为 -->
<template #[dynamicSlotName]>
...
</template>
</base-layout>
注意这里的表达式和动态指令参数受相同的语法限制。
作用域插槽
在上面的渲染作用域中我们讨论到,插槽的内容无法访问到子组件的状态。
然而在某些场景下插槽的内容可能想要同时使用父组件域内和子组件域内的数据。要做到这一点,我们需要一种方法来让子组件在渲染时将一部分数据提供给插槽。
我们也确实有办法这么做!可以像对组件传递 props 那样,向一个插槽的出口上传递 attributes:
<!-- <MyComponent> 的模板 -->
<div>
<slot :text="greetingMessage" :count="1"></slot>
</div>
当需要接收插槽 props 时,默认插槽和具名插槽的使用方式有一些小区别。下面我们将先展示默认插槽如何接受 props,通过子组件标签上的 v-slot 指令,直接接收到了一个插槽 props 对象:
<MyComponent v-slot="slotProps">
{{ slotProps.text }} {{ slotProps.count }}
</MyComponent>
![](data:image/png;base64,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)
子组件传入插槽的 props 作为了 v-slot 指令的值,可以在插槽内的表达式中访问。
你可以将作用域插槽类比为一个传入子组件的函数。子组件会将相应的 props 作为参数传给它:
MyComponent({
// 类比默认插槽,将其想成一个函数
default: (slotProps) => {
return `${slotProps.text} ${slotProps.count}`
}
})
function MyComponent(slots) {
const greetingMessage = 'hello'
return `<div>${
// 在插槽函数调用时传入 props
slots.default({ text: greetingMessage, count: 1 })
}</div>`
}
实际上,这已经和作用域插槽的最终代码编译结果、以及手动编写渲染函数时使用作用域插槽的方式非常类似了。
v-slot="slotProps" 可以类比这里的函数签名,和函数的参数类似,我们也可以在 v-slot 中使用解构:
<MyComponent v-slot="{ text, count }">
{{ text }} {{ count }}
</MyComponent>
具名作用域插槽
具名作用域插槽的工作方式也是类似的,插槽 props 可以作为 v-slot 指令的值被访问到:v-slot:name="slotProps"。当使用缩写时是这样:
<MyComponent>
<template #header="headerProps">
{{ headerProps }}
</template>
<template #default="defaultProps">
{{ defaultProps }}
</template>
<template #footer="footerProps">
{{ footerProps }}
</template>
</MyComponent>
向具名插槽中传入 props:
<slot name="header" message="hello"></slot>
注意插槽上的 name 是一个 Vue 特别保留的 attribute,不会作为 props 传递给插槽。因此最终 headerProps 的结果是 { message: 'hello' }。
如果你混用了具名插槽与默认插槽,则需要为默认插槽使用显式的 <template> 标签。尝试直接为组件添加 v-slot 指令将导致编译错误。这是为了避免因默认插槽的 props 的作用域而困惑。举例:
<!-- 该模板无法编译 -->
<template>
<MyComponent v-slot="{ message }">
<p>{{ message }}</p>
<template #footer>
<!-- message 属于默认插槽,此处不可用 -->
<p>{{ message }}</p>
</template>
</MyComponent>
</template>
为默认插槽使用显式的 <template> 标签有助于更清晰地指出 message 属性在其它插槽中不可用:
<template>
<MyComponent>
<!-- 使用显式的默认插槽 -->
<template #default="{ message }">
<p>{{ message }}</p>
</template>
<template #footer>
<p>Here's some contact info</p>
</template>
</MyComponent>
</template>
高级列表组件示例
你可能想问什么样的场景才适合用到作用域插槽,这里我们来看一个 <FancyList> 组件的例子。它会渲染一个列表,并同时会封装一些加载远端数据的逻辑、使用数据进行列表渲染、或者是像分页或无限滚动这样更进阶的功能。然而我们希望它能够保留足够的灵活性,将对单个列表元素内容和样式的控制权留给使用它的父组件。我们期望的用法可能是这样的:
<FancyList :api-url="url" :per-page="10">
<template #item="{ body, username, likes }">
<div class="item">
<p>{{ body }}</p>
<p>by {{ username }} | {{ likes }} likes</p>
</div>
</template>
</FancyList>
在 <FancyList> 之中,我们可以多次渲染 <slot> 并每次都提供不同的数据 (注意我们这里使用了 v-bind 来传递插槽的 props):
<ul>
<li v-for="item in items">
<slot name="item" v-bind="item"></slot>
</li>
</ul>
无渲染组件
上面的 <FancyList> 案例同时封装了可重用的逻辑 (数据获取、分页等) 和视图输出,但也将部分视图输出通过作用域插槽交给了消费者组件来管理。
如果我们将这个概念拓展一下,可以想象的是,一些组件可能只包括了逻辑而不需要自己渲染内容,视图输出通过作用域插槽全权交给了消费者组件。我们将这种类型的组件称为无渲染组件。
这里有一个无渲染组件的例子,一个封装了追踪当前鼠标位置逻辑的组件:
<MouseTracker v-slot="{ x, y }">
Mouse is at: {{ x }}, {{ y }}
</MouseTracker>
虽然这个模式很有趣,但大部分能用无渲染组件实现的功能都可以通过组合式 API 以另一种更高效的方式实现,并且还不会带来额外组件嵌套的开销。之后我们会在组合式函数一章中介绍如何更高效地实现追踪鼠标位置的功能。
尽管如此,作用域插槽在需要同时封装逻辑、组合视图界面时还是很有用,就像上面的 <FancyList> 组件那样。