From 6620962a7ab2e5b77eb113077830ba9f547ee8bf Mon Sep 17 00:00:00 2001 From: cz f <957158638@qq.com> Date: Mon, 13 Oct 2025 22:34:51 +0800 Subject: [PATCH 1/2] =?UTF-8?q?mint=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../05-ShuffleNet/mindspore_shufflenet.ipynb | 107 +++++++++++++----- 1 file changed, 77 insertions(+), 30 deletions(-) diff --git a/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb b/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb index e21e984..e1826ff 100644 --- a/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb +++ b/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb @@ -2,7 +2,9 @@ "cells": [ { "cell_type": "markdown", - "metadata": {}, + "metadata": { + "tags": [] + }, "source": [ "# ShuffleNet图像分类\n", "\n", @@ -36,28 +38,27 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:549: UserWarning: The value of the smallest subnormal for type is zero.\n", " setattr(self, word, getattr(machar, word).flat[0])\n", - "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", " return self._float_to_str(self.smallest_subnormal)\n", - "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:549: UserWarning: The value of the smallest subnormal for type is zero.\n", " setattr(self, word, getattr(machar, word).flat[0])\n", - "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", " return self._float_to_str(self.smallest_subnormal)\n" ] } ], "source": [ "from mindspore import nn\n", - "import mindspore.ops as ops\n", - "from mindspore import Tensor\n", + "from mindspore import mint\n", "\n", "class GroupConv(nn.Cell):\n", " def __init__(self, in_channels, out_channels, kernel_size,\n", @@ -71,11 +72,11 @@ " padding=pad, pad_mode=pad_mode, group=1, weight_init='xavier_uniform'))\n", "\n", " def construct(self, x):\n", - " features = ops.split(x, split_size_or_sections=int(len(x[0]) // self.groups), axis=1)\n", + " features = mint.split(x, split_size_or_sections=int(len(x[0]) // self.groups), dim=1)\n", " outputs = ()\n", " for i in range(self.groups):\n", " outputs = outputs + (self.convs[i](features[i].astype(\"float32\")),)\n", - " out = ops.cat(outputs, axis=1)\n", + " out = mint.cat(outputs, dim=1)\n", " return out" ] }, @@ -131,13 +132,13 @@ " outputs = oup - inp\n", " else:\n", " outputs = oup\n", - " self.relu = nn.ReLU()\n", + " self.relu = mint.nn.ReLU()\n", " branch_main_1 = [\n", " GroupConv(in_channels=inp, out_channels=mid_channels,\n", " kernel_size=1, stride=1, pad_mode=\"pad\", pad=0,\n", " groups=1 if first_group else group),\n", " nn.BatchNorm2d(mid_channels),\n", - " nn.ReLU(),\n", + " mint.nn.ReLU(),\n", " ]\n", " branch_main_2 = [\n", " nn.Conv2d(mid_channels, mid_channels, kernel_size=ksize, stride=stride,\n", @@ -166,16 +167,16 @@ " out = self.relu(left + right)\n", " elif self.stride == 2:\n", " left = self.branch_proj(left)\n", - " out = ops.cat((left, right), 1)\n", + " out = mint.cat((left, right), 1)\n", " out = self.relu(out)\n", " return out\n", "\n", " def channel_shuffle(self, x):\n", - " batchsize, num_channels, height, width = ops.shape(x)\n", + " batchsize, num_channels, height, width = x.shape\n", " group_channels = num_channels // self.group\n", - " x = ops.reshape(x, (batchsize, group_channels, self.group, height, width))\n", - " x = ops.transpose(x, (0, 2, 1, 3, 4))\n", - " x = ops.reshape(x, (batchsize, num_channels, height, width))\n", + " x = mint.reshape(x, (batchsize, group_channels, self.group, height, width))\n", + " x = mint.transpose(x, 2, 1)\n", + " x = mint.reshape(x, (batchsize, num_channels, height, width))\n", " return x\n" ] }, @@ -228,7 +229,7 @@ " self.first_conv = nn.SequentialCell(\n", " nn.Conv2d(3, input_channel, 3, 2, 'pad', 1, weight_init='xavier_uniform', has_bias=False),\n", " nn.BatchNorm2d(input_channel),\n", - " nn.ReLU(),\n", + " mint.nn.ReLU(),\n", " )\n", " self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, pad_mode='same')\n", " features = []\n", @@ -244,14 +245,14 @@ " input_channel = output_channel\n", " self.features = nn.SequentialCell(features)\n", " self.globalpool = nn.AvgPool2d(7)\n", - " self.classifier = nn.Dense(self.stage_out_channels[-1], n_class)\n", + " self.classifier = mint.nn.Linear(self.stage_out_channels[-1], n_class)\n", "\n", " def construct(self, x):\n", " x = self.first_conv(x)\n", " x = self.maxpool(x)\n", " x = self.features(x)\n", " x = self.globalpool(x)\n", - " x = ops.reshape(x, (-1, self.stage_out_channels[-1]))\n", + " x = mint.reshape(x, (-1, self.stage_out_channels[-1]))\n", " x = self.classifier(x)\n", " return x" ] @@ -277,7 +278,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 4, "metadata": {}, "outputs": [], "source": [ @@ -297,7 +298,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": 5, "metadata": {}, "outputs": [ { @@ -306,7 +307,7 @@ "text": [ "Downloading data from https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/notebook/datasets/cifar-10-binary.tar.gz (162.2 MB)\n", "\n", - "file_sizes: 100%|████████████████████████████| 170M/170M [00:41<00:00, 4.13MB/s]\n", + "file_sizes: 100%|████████████████████████████| 170M/170M [00:03<00:00, 48.0MB/s]\n", "Extracting tar.gz file...\n", "Successfully downloaded / unzipped to ./dataset\n" ] @@ -317,7 +318,7 @@ "'./dataset'" ] }, - "execution_count": 4, + "execution_count": 5, "metadata": {}, "output_type": "execute_result" } @@ -332,7 +333,7 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": 6, "metadata": {}, "outputs": [], "source": [ @@ -340,6 +341,8 @@ "from mindspore.dataset import Cifar10Dataset\n", "from mindspore.dataset import vision, transforms\n", "\n", + "ms.set_context(mode=ms.PYNATIVE_MODE)\n", + "\n", "def get_dataset(train_dataset_path, batch_size, usage):\n", " image_trans = []\n", " if usage == \"train\":\n", @@ -377,12 +380,49 @@ }, { "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], + "execution_count": 7, + "metadata": { + "tags": [] + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Downloading data from https://cdn.modelers.cn/lfs/19/53/80d85faa48f962bf87c77db7c3d79fded38b41ae91bb01ad1c61f01bc4ad?response-content-disposition=attachment%3B+filename%3D%22shufflenetv1_1-150_390.ckpt%22&AWSAccessKeyId=HAZQA0Q6AQL2GHX4TKTL&Expires=1760420222&Signature=1v0Qd0F13SF6jExCRi3%2FWiKZmSM%3D (27.3 MB)\n", + "\n", + "file_sizes: 100%|███████████████████████████| 28.6M/28.6M [00:00<00:00, 170MB/s]\n", + "Successfully downloaded file to ./shufflenetv1_1-150_390.ckpt\n", + "model size is 2.0x\n" + ] + }, + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [48, 48], [16, 63], [16, 63]] to [[16, 31], [48, 48], [16, 63], (16, 63)].\n", + " warnings.warn(to_print)\n", + "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [480, 480], [16, 63], [16, 63]] to [[16, 31], [480, 480], [16, 63], (16, 63)].\n", + " warnings.warn(to_print)\n", + "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [960, 960], [4, 15], [4, 15]] to [[16, 31], [960, 960], [4, 15], (4, 15)].\n", + " warnings.warn(to_print)\n", + "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [1920, 1920], [7, 15], [7, 15]] to [[16, 31], [1920, 1920], [7, 15], (7, 15)].\n", + " warnings.warn(to_print)\n" + ] + }, + { + "data": { + "image/png": "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y2233Sbnn3++PPjgg3LaaafBdi+//HJZvny5fOELXzD+YY0sDE888YQ88sgj8o53vEMWLVoku3btkn/5l3+Rc889VzZu3CjxePxlbe9LX/qSfPjDH5ZkMjn/DwQH82l8fFzOPPNMKZVK8pGPfETa29vlG9/4hlxyySXy/e9/X9761rfCtm666SaJxWLyiU98QrZv3y633HKLhEIhsW1bZmdn5YYbbpDHHntMvv71r8vQ0JB8+tOfnv/uVVddJd/4xjfksssuk49+9KPy+OOPy0033SSbNm2SH/3oR/A727Ztkz/7sz+TD3zgA3LFFVfIbbfdJpdffrnccccd8vrXv/5l7f8111wjX//61+U973mPfOQjH5GRkRH553/+Z3n66afl4Ycffsm/mjmaYO4x945W1q1bJ4ODg3LTTTfJY489Jv/0T/8ks7Oz8s1vfvNFv3fttddKZ2enfPrTn57/C7t/+7d/k2uuuUbOPPNMue6662Tnzp1yySWXSFtbmwwMDCzE7pAmYt26dTI0NCQ33XSTPPXUU/K1r31Nurq65O/+7u9E5OXVpy1btsg73/lOueaaa+T973+/rFy5Up5//nm5+OKL5YQTTpDPfOYzEolEZPv27fAPs57nySWXXCIPPfSQXH311bJq1SrZsGGD3HzzzbJ161a5/fbbF7JLFhb/KOTee+/1RcT/3ve+N//aFVdc4YuI/4lPfAI+e/vtt/si4n/uc5+D1y+77DLfsix/+/btvu/7/pNPPumLiH/dddfB56688kpfRPzrr7/+8OwMaUq++MUv+iLij4yMwOsi4tu27T///PPw+sGcvPfee+H1kZERX0T82267bf61c845x0+lUv7u3bvhs57nzf/39ddf74uIPzk56W/atMnv6+vzTz31VH9mZuYV2T/SvDD3yJHm0ksv9aPRKOTJxo0b/UAg4B9cduzatcsPBAL+5z//efjuhg0b/GAwOP+653n+8uXL/QsvvBDyrFQq+UNDQ/7rX//6+dcO5t473/nOw7l75BAolUrGa48++qgvIv43v/nN+dcOHjPNbbfdZtSx1atX+2vXrjU+e9111/ki4j/44IPzr+XzeX9oaMgfHBz0Xdf1ff//1rrjjjvOr9Vq85995zvf6VuW5V900UWw3de+9rX+kiVL5uP169f7IuJfddVV8LmPfexjvoj499xzz/xr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zs7aRz/6Udu5c6fdddddZmb2C7/wC/aJT3zCfvmXf9keeOABe8Mb3mBJkthzzz1nn/jEJ+xzn/tc7kt+xPcnandiozh16pT99E//tP3Yj/2YffWrX7U/+qM/sne/+90v+S/ioiiy3/zN37T3ve999uY3v9l+/ud/3k6dOmW///u/L4fdDyh33HGHmZn96q/+qr3rXe+yKIrsp37qp77r9qOjo/b3//7ft4985CPmeZ4dOHDA/tf/+l+5bs3//J//s9111112++2323vf+17bt2+fzczM2Kc//Wl74oknnO1937c/+qM/sre97W32zne+0/7qr/4K/hJUfP+gdrfBbMzLaTeOXq+X/ct/+S+zI0eOZPV6PatWq9mRI0eyj370oy9uc88992SHDx92fnvfffdle/bseTHOezXxfffdl1Wr1ezEiRPZj/7oj2aVSiWbnp7O/vW//tdZkiTX8tTE9yCnT5/O/vE//sfZ1NRUViwWs/3792cf+MAHsl6vl3W73eyf//N/nm3bti0rl8vZG97whuyrX/1qds8992T33HMP7OfP//zPs5tuuikLw9Bpk+IHly9+8YvZHXfckRUKhWz//v3Zxz72sRdfjf6d/M//+T+zu+66K6tWq1m1Ws1uuOGG7AMf+EB29OhR2O7xxx/P3v72t2cTExNZsVjM9uzZk73zne/MvvCFL7y4zXe+el18//Pdrvfv//7vZ2aWnTp1KsuyLBsMBtkHP/jBbN++fVkURdmuXbuyX/mVX8m63S78bs+ePdlb3/pW5zhf+MIXsp/5mZ/Jtm/fnhUKhWz79u3ZP/gH/yA7duwYbNfv97Pf+q3fyg4fPpwVi8VsbGwsu+OOO7IPfvCD2dLS0it78mLDULsTm5Fvt8tnnnkme8c73pHV6/VsbGws+6f/9J9mnU7nxe327NmT3XfffS/G3263jzzySO5+P/rRj2b79u3LisViduedd2YPPvhg7lxQ/GDwG7/xG9mOHTsy3/dfzHdmln3gAx/I3X5ubi77uZ/7uaxSqWRjY2PZ+973vuypp57KvV946qmnsp/92Z/NGo1GViqVsuuvvz77tV/7tRe/z8u97XY7u+eee7JarZY9/PDD1+ScxcajdrdxeFmmtyi8kvziL/6iffKTn8xdNiaEEEIIIYQQQgghxDB+4Bx2QgghhBBCCCGEEEJsZvTATggh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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], "source": [ "import numpy as np\n", - "\n", "import matplotlib.pyplot as plt\n", "import mindspore.dataset as ds\n", "from mindspore import load_checkpoint, load_param_into_net\n", @@ -427,6 +467,13 @@ " plt.axis(\"off\")\n", "plt.show()\n" ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] } ], "metadata": { @@ -445,7 +492,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.7.9" + "version": "3.9.23" }, "vscode": { "interpreter": { From a0ee710a4de63e513ebc073cec2ac36c57f66fbf Mon Sep 17 00:00:00 2001 From: cz f <957158638@qq.com> Date: Tue, 13 Jan 2026 18:26:48 +0800 Subject: [PATCH 2/2] =?UTF-8?q?mint=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Online/README.md | 258 +++--- .../05-ShuffleNet/mindspore_shufflenet.ipynb | 399 ++++++-- Online/inference/README.md | 860 +++++++++--------- README.md | 268 +++--- 4 files changed, 1033 insertions(+), 752 deletions(-) diff --git a/Online/README.md b/Online/README.md index 14cf136..37f0840 100644 --- a/Online/README.md +++ b/Online/README.md @@ -1,129 +1,129 @@ -# 基于昇思MindSpore+香橙派开发板的应用实践案例 - -本路径下包含基于昇思MindSpore在香橙派AIpro开发板上开发的案例,共分为三类: - -- inference:推理案例 -- training:训推案例 -- community:第三方贡献的香橙派开发板应用案例 - -欢迎广大开发者进行学习、交流和贡献,如对案例有任何疑问或建议,可以提交`issue`,会有工程师进行定期解答,如希望贡献案例,可提交`pull request`,将案例贡献在community路径下。 - -## 目录 -- [基于昇思MindSpore+香橙派开发板的应用实践案例](#基于昇思mindspore香橙派开发板的应用实践案例) - - [目录](#目录) - - [模型案例清单和版本兼容](#模型案例清单和版本兼容) - - [推理案例(inference)](#推理案例inference) - - [训推案例(training)](#训推案例training) - - [第三方应用案例(community)](#第三方应用案例community) - - [学习资源](#学习资源) - - [贡献指南](#贡献指南) - - [贡献内容](#贡献内容) - - [代码格式要求](#代码格式要求) - - [README格式要求](#readme格式要求) - - [案例自验](#案例自验) - - [提交PR](#提交pr) - - [问题答疑](#问题答疑) - -## 模型案例清单和版本兼容 - -### 推理案例(inference) - -| 模型名 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | -| :----------------------------------------------------------- | :----------------------------------------- | :----------------- | :--------------- | -| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 8.1.RC1 | 2.6.0 | 8T8G | -| [ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD) | 8.1.RC1 | 2.6.0 | 8T8G | -| [RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN) | 8.1.RC1 | 2.6.0 | 8T8G | -| [LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN) | 8.1.RC1 | 2.6.0 | 8T8G | -| [Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | -| [DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) | 8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0 | 20T24G | -| [DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0 | 20T24G | -| [MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 8.0.0beta1 | 2.5.0 | 20T24G | - -### 训推案例(training) - -| 模型名 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | -| :----------------------------------------------------------- | :------------------------ | :------------ | :--------------- | -| [DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/01-DeepSeek-R1-Distill-Qwen-1.5B) | 8.0.0.beta1/8.1.RC1.beta1 | 2.5.0/2.6.0 | 20T24G | -| [minGPT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/02-minGPT) | 8.1.RC1.beta1 | 2.6.0 | 20T24G | -| [BERT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/03-BERT) | 8.0.0.beta1 | 2.5.0 | 20T24G | - -### 第三方应用案例(community) - - -| 案例名称 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | -| :----------------------------------------------------------- | :---------- | :------------ | :--------------- | -| [TokenClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TokenClassification) | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [SentenceSimilarity](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/SentenceSimilarity) | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [ImageToText](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageToText) | 8.0.0.beta1 | 2.6.0 | 8T16G | -| [TextRanking](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextRanking) | 8.0.0.beta1 | 2.6.0 | 8T16G | -| [FeatureExtraction](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/FeatureExtraction) | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [TableQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TableQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [ImageClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageClassification) | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [TextClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextClassification) | 8.0.0.beta1 |2.6.0 |20T24G | -| [Summarization](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Summarization) | 8.1.RC1 | 2.6.0 | 8T16G | -| [Translation](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Translation) | 8.1.RC1 | 2.6.0 | 8T16G | -| [ObjectDetection](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ObjectDetection) | 8.0.0.beta1 |2.6.0 |8T16G | -| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 8.0.0.beta1 | 2.6.0 |8T16G | -| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 8.1.RC1 | 2.6.0 | 8T16G | -| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G | - - - -## 学习资源 - -| 阶段 | 描述 | 链接 | -| :------- | :---------------------------------------------------------- | :----------------------------------------------------------- | -| 镜像获取 | 香橙派官网-官方镜像 | [8T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)
[20T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html) | -| 环境搭建 | 昇思官网香橙派开发教程 | [香橙派开发](https://www.mindspore.cn/tutorials/zh-CN/r2.6.0/orange_pi/overview.html) | -| 精品课程 | 《昇思+昇腾开发板:
软硬结合玩转DeepSeek开发实战》课程 | [课程链接](https://www.hiascend.com/developer/courses/detail/1925362775376744449) | -| 案例分享 | 昇腾开发板专区-案例分享 | [昇腾开发板专区](https://www.hiascend.com/developer/devboard) | - -## 贡献指南 - -欢迎各位开发者贡献基于昇思MindSpore+香橙派开发板的应用案例!开发者可通过向`Online/community`路径下提交`pull request`进行贡献,由工程师进行校验和合入。 - -### 贡献内容 - -请在`Online/community`路径下单独创建文件夹,文件夹名称以案例名称命名,需为英文且尽量简洁。文件夹中需包含: - -1. **代码(必选)**:python文件或jupyter notebook文件均可,如仅单一文件建议写成jupyter notebook格式 -2. **README(必选)**:需包含对版本、案例、模型、算法、如何启动运行、预期输出结果 -3. **数据集(可选)**:如涉及数据集,欢迎提供数据集获取方式,数据集可开源至[魔乐社区](https://modelers.cn/)或[大模型平台](https://xihe.mindspore.cn/) -4. 同时,请在Online路径的README文件中,模型案例清单和版本兼容-第三方应用案例(community)表格中,补充案例名称、CANN版本、MindSpore版本以及香橙派开发板型号 - -### 代码格式要求 - -- 建议写成jupyter notebook格式,并保留每个cell的输出结果 -- 代码中需包含对模型、算法、数据集的详细说明,便于他人理解 - -### README格式要求 - -- 使用Markdown编写,层级清晰 -- 包含案例名称、案例简介、所需依赖、版本、如何启动运行、预期输出结果等 - -### 案例自验 - -请开发者在提交PR前进行自验,保证应用案例在指定MindSpore版本要求下的香橙派环境中跑通,且输出达到预期。自验过程中请保留运行日志或截图,在提交PR时一并上传提供。 - -### 提交PR - -提交PR时,除代码、README修改以外,请额外在评论区补充: -1. 案例开发使用的CANN、MindSpore和相关套件版本,以便于工程师进行快速验收合入 -2. 自验通过保存的运行日志和截图 -3. (可选)如涉及开源实习任务,请补充任务issue链接,以便于快速关联实习任务并进行闭环 -4. (可选)开发过程中对MindSpore的建议,包括但不限于文档、教程、框架易用性、性能等等,一经采纳将作为评选昇思MindSpore优秀开发者的重要考核指标 - - -## 问题答疑 - -如在基于昇思MindSpore+香橙派开发板开发过程中遇到任何问题,欢迎在本代码仓中提交`issue`,定期会有工程师进行答疑。 +# 基于昇思MindSpore+香橙派开发板的应用实践案例 + +本路径下包含基于昇思MindSpore在香橙派AIpro开发板上开发的案例,共分为三类: + +- inference:推理案例 +- training:训推案例 +- community:第三方贡献的香橙派开发板应用案例 + +欢迎广大开发者进行学习、交流和贡献,如对案例有任何疑问或建议,可以提交`issue`,会有工程师进行定期解答,如希望贡献案例,可提交`pull request`,将案例贡献在community路径下。 + +## 目录 +- [基于昇思MindSpore+香橙派开发板的应用实践案例](#基于昇思mindspore香橙派开发板的应用实践案例) + - [目录](#目录) + - [模型案例清单和版本兼容](#模型案例清单和版本兼容) + - [推理案例(inference)](#推理案例inference) + - [训推案例(training)](#训推案例training) + - [第三方应用案例(community)](#第三方应用案例community) + - [学习资源](#学习资源) + - [贡献指南](#贡献指南) + - [贡献内容](#贡献内容) + - [代码格式要求](#代码格式要求) + - [README格式要求](#readme格式要求) + - [案例自验](#案例自验) + - [提交PR](#提交pr) + - [问题答疑](#问题答疑) + +## 模型案例清单和版本兼容 + +### 推理案例(inference) + +| 模型名 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | +| :----------------------------------------------------------- | :----------------------------------------- | :----------------- | :--------------- | +| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 8.1.RC1 | 2.6.0 | 8T8G | +| [ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet) | 8.1.RC1 | 2.6.0 | 8T16G | +| [SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD) | 8.1.RC1 | 2.6.0 | 8T8G | +| [RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN) | 8.1.RC1 | 2.6.0 | 8T8G | +| [LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN) | 8.1.RC1 | 2.6.0 | 8T8G | +| [Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) | 8.0.RC3.alpha002 | 2.4.10 | 8T16G | +| [DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) | 8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0 | 20T24G | +| [DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0 | 20T24G | +| [MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 8.0.0beta1 | 2.5.0 | 20T24G | + +### 训推案例(training) + +| 模型名 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | +| :----------------------------------------------------------- | :------------------------ | :------------ | :--------------- | +| [DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/01-DeepSeek-R1-Distill-Qwen-1.5B) | 8.0.0.beta1/8.1.RC1.beta1 | 2.5.0/2.6.0 | 20T24G | +| [minGPT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/02-minGPT) | 8.1.RC1.beta1 | 2.6.0 | 20T24G | +| [BERT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/03-BERT) | 8.0.0.beta1 | 2.5.0 | 20T24G | + +### 第三方应用案例(community) + + +| 案例名称 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | +| :----------------------------------------------------------- | :---------- | :------------ | :--------------- | +| [TokenClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TokenClassification) | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [SentenceSimilarity](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/SentenceSimilarity) | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [ImageToText](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageToText) | 8.0.0.beta1 | 2.6.0 | 8T16G | +| [TextRanking](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextRanking) | 8.0.0.beta1 | 2.6.0 | 8T16G | +| [FeatureExtraction](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/FeatureExtraction) | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [TableQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TableQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [ImageClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageClassification) | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [TextClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextClassification) | 8.0.0.beta1 |2.6.0 |20T24G | +| [Summarization](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Summarization) | 8.1.RC1 | 2.6.0 | 8T16G | +| [Translation](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Translation) | 8.1.RC1 | 2.6.0 | 8T16G | +| [ObjectDetection](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ObjectDetection) | 8.0.0.beta1 |2.6.0 |8T16G | +| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 8.0.0.beta1 | 2.6.0 |8T16G | +| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 8.1.RC1 | 2.6.0 | 8T16G | +| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 8.0.0.beta1 | 2.6.0 | 20T24G | + + + +## 学习资源 + +| 阶段 | 描述 | 链接 | +| :------- | :---------------------------------------------------------- | :----------------------------------------------------------- | +| 镜像获取 | 香橙派官网-官方镜像 | [8T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)
[20T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html) | +| 环境搭建 | 昇思官网香橙派开发教程 | [香橙派开发](https://www.mindspore.cn/tutorials/zh-CN/r2.6.0/orange_pi/overview.html) | +| 精品课程 | 《昇思+昇腾开发板:
软硬结合玩转DeepSeek开发实战》课程 | [课程链接](https://www.hiascend.com/developer/courses/detail/1925362775376744449) | +| 案例分享 | 昇腾开发板专区-案例分享 | [昇腾开发板专区](https://www.hiascend.com/developer/devboard) | + +## 贡献指南 + +欢迎各位开发者贡献基于昇思MindSpore+香橙派开发板的应用案例!开发者可通过向`Online/community`路径下提交`pull request`进行贡献,由工程师进行校验和合入。 + +### 贡献内容 + +请在`Online/community`路径下单独创建文件夹,文件夹名称以案例名称命名,需为英文且尽量简洁。文件夹中需包含: + +1. **代码(必选)**:python文件或jupyter notebook文件均可,如仅单一文件建议写成jupyter notebook格式 +2. **README(必选)**:需包含对版本、案例、模型、算法、如何启动运行、预期输出结果 +3. **数据集(可选)**:如涉及数据集,欢迎提供数据集获取方式,数据集可开源至[魔乐社区](https://modelers.cn/)或[大模型平台](https://xihe.mindspore.cn/) +4. 同时,请在Online路径的README文件中,模型案例清单和版本兼容-第三方应用案例(community)表格中,补充案例名称、CANN版本、MindSpore版本以及香橙派开发板型号 + +### 代码格式要求 + +- 建议写成jupyter notebook格式,并保留每个cell的输出结果 +- 代码中需包含对模型、算法、数据集的详细说明,便于他人理解 + +### README格式要求 + +- 使用Markdown编写,层级清晰 +- 包含案例名称、案例简介、所需依赖、版本、如何启动运行、预期输出结果等 + +### 案例自验 + +请开发者在提交PR前进行自验,保证应用案例在指定MindSpore版本要求下的香橙派环境中跑通,且输出达到预期。自验过程中请保留运行日志或截图,在提交PR时一并上传提供。 + +### 提交PR + +提交PR时,除代码、README修改以外,请额外在评论区补充: +1. 案例开发使用的CANN、MindSpore和相关套件版本,以便于工程师进行快速验收合入 +2. 自验通过保存的运行日志和截图 +3. (可选)如涉及开源实习任务,请补充任务issue链接,以便于快速关联实习任务并进行闭环 +4. (可选)开发过程中对MindSpore的建议,包括但不限于文档、教程、框架易用性、性能等等,一经采纳将作为评选昇思MindSpore优秀开发者的重要考核指标 + + +## 问题答疑 + +如在基于昇思MindSpore+香橙派开发板开发过程中遇到任何问题,欢迎在本代码仓中提交`issue`,定期会有工程师进行答疑。 diff --git a/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb b/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb index e1826ff..aca8f41 100644 --- a/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb +++ b/Online/inference/05-ShuffleNet/mindspore_shufflenet.ipynb @@ -2,9 +2,7 @@ "cells": [ { "cell_type": "markdown", - "metadata": { - "tags": [] - }, + "metadata": {}, "source": [ "# ShuffleNet图像分类\n", "\n", @@ -38,20 +36,20 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ - "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:549: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for type is zero.\n", " setattr(self, word, getattr(machar, word).flat[0])\n", - "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", " return self._float_to_str(self.smallest_subnormal)\n", - "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:549: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:499: UserWarning: The value of the smallest subnormal for type is zero.\n", " setattr(self, word, getattr(machar, word).flat[0])\n", - "/home/mindspore/miniconda/envs/jupyter/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", + "/usr/local/miniconda3/lib/python3.9/site-packages/numpy/core/getlimits.py:89: UserWarning: The value of the smallest subnormal for type is zero.\n", " return self._float_to_str(self.smallest_subnormal)\n" ] } @@ -59,6 +57,7 @@ "source": [ "from mindspore import nn\n", "from mindspore import mint\n", + "from mindspore import dtype as mstype\n", "\n", "class GroupConv(nn.Cell):\n", " def __init__(self, in_channels, out_channels, kernel_size,\n", @@ -69,13 +68,13 @@ " for _ in range(groups):\n", " self.convs.append(nn.Conv2d(in_channels // groups, out_channels // groups,\n", " kernel_size=kernel_size, stride=stride, has_bias=has_bias,\n", - " padding=pad, pad_mode=pad_mode, group=1, weight_init='xavier_uniform'))\n", + " padding=pad, pad_mode=pad_mode, group=1, weight_init='xavier_uniform',dtype=mstype.float16))\n", "\n", " def construct(self, x):\n", " features = mint.split(x, split_size_or_sections=int(len(x[0]) // self.groups), dim=1)\n", " outputs = ()\n", " for i in range(self.groups):\n", - " outputs = outputs + (self.convs[i](features[i].astype(\"float32\")),)\n", + " outputs = outputs + (self.convs[i](features[i].astype(\"float16\")),)\n", " out = mint.cat(outputs, dim=1)\n", " return out" ] @@ -137,23 +136,23 @@ " GroupConv(in_channels=inp, out_channels=mid_channels,\n", " kernel_size=1, stride=1, pad_mode=\"pad\", pad=0,\n", " groups=1 if first_group else group),\n", - " nn.BatchNorm2d(mid_channels),\n", + " nn.BatchNorm2d(mid_channels,dtype=mstype.float16),\n", " mint.nn.ReLU(),\n", " ]\n", " branch_main_2 = [\n", " nn.Conv2d(mid_channels, mid_channels, kernel_size=ksize, stride=stride,\n", " pad_mode='pad', padding=pad, group=mid_channels,\n", - " weight_init='xavier_uniform', has_bias=False),\n", - " nn.BatchNorm2d(mid_channels),\n", + " weight_init='xavier_uniform', has_bias=False,dtype=mstype.float16),\n", + " nn.BatchNorm2d(mid_channels,dtype=mstype.float16),\n", " GroupConv(in_channels=mid_channels, out_channels=outputs,\n", " kernel_size=1, stride=1, pad_mode=\"pad\", pad=0,\n", " groups=group),\n", - " nn.BatchNorm2d(outputs),\n", + " nn.BatchNorm2d(outputs,dtype=mstype.float16),\n", " ]\n", " self.branch_main_1 = nn.SequentialCell(branch_main_1)\n", " self.branch_main_2 = nn.SequentialCell(branch_main_2)\n", " if stride == 2:\n", - " self.branch_proj = nn.AvgPool2d(kernel_size=3, stride=2, pad_mode='same')\n", + " self.branch_proj = mint.nn.AvgPool2d(kernel_size=3, stride=2,padding=1)\n", "\n", " def construct(self, old_x):\n", " left = old_x\n", @@ -227,8 +226,8 @@ " raise NotImplementedError\n", " input_channel = self.stage_out_channels[1]\n", " self.first_conv = nn.SequentialCell(\n", - " nn.Conv2d(3, input_channel, 3, 2, 'pad', 1, weight_init='xavier_uniform', has_bias=False),\n", - " nn.BatchNorm2d(input_channel),\n", + " nn.Conv2d(3, input_channel, 3, 2, 'pad', 1, weight_init='xavier_uniform', has_bias=False,dtype=mstype.float16),\n", + " nn.BatchNorm2d(input_channel,dtype=mstype.float16),\n", " mint.nn.ReLU(),\n", " )\n", " self.maxpool = nn.MaxPool2d(kernel_size=3, stride=2, pad_mode='same')\n", @@ -244,8 +243,8 @@ " mid_channels=output_channel // 4, ksize=3, stride=stride))\n", " input_channel = output_channel\n", " self.features = nn.SequentialCell(features)\n", - " self.globalpool = nn.AvgPool2d(7)\n", - " self.classifier = mint.nn.Linear(self.stage_out_channels[-1], n_class)\n", + " self.globalpool = mint.nn.AvgPool2d(7)\n", + " self.classifier = mint.nn.Linear(self.stage_out_channels[-1], n_class,dtype=mstype.float16)\n", "\n", " def construct(self, x):\n", " x = self.first_conv(x)\n", @@ -261,30 +260,19 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "## 设置运行环境\n", - "\n", - "由于资源限制,需开启性能优化模式,具体设置如下参数:\n", - "\n", - " max_device_memory=\"2GB\" : 设置设备可用的最大内存为2GB。\n", - "\n", - " mode=mindspore.GRAPH_MODE : 表示在GRAPH_MODE模式中运行。\n", - "\n", - " device_target=\"Ascend\" : 表示待运行的目标设备为Ascend。\n", - "\n", - " jit_config={\"jit_level\":\"O2\"} : 编译优化级别开启极致性能优化,使用下沉的执行方式。\n", - "\n", - " ascend_config={\"precision_mode\":\"allow_mix_precision\"} : 自动混合精度,自动将部分算子的精度降低到float16或bfloat16。" + "## 设置运行环境" ] }, { "cell_type": "code", "execution_count": 4, - "metadata": {}, + "metadata": { + "scrolled": true + }, "outputs": [], "source": [ "import mindspore\n", - "\n", - "mindspore.set_context(max_device_memory=\"2GB\", mode=mindspore.GRAPH_MODE, device_target=\"Ascend\", jit_config={\"jit_level\":\"O2\"}, ascend_config={\"precision_mode\":\"allow_mix_precision\"})" + "mindspore.device_context.ascend.op_precision.precision_mode(\"allow_mix_precision\")" ] }, { @@ -307,7 +295,7 @@ "text": [ "Downloading data from https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/notebook/datasets/cifar-10-binary.tar.gz (162.2 MB)\n", "\n", - "file_sizes: 100%|████████████████████████████| 170M/170M [00:03<00:00, 48.0MB/s]\n", + "file_sizes: 100%|████████████████████████████| 170M/170M [00:15<00:00, 10.7MB/s]\n", "Extracting tar.gz file...\n", "Successfully downloaded / unzipped to ./dataset\n" ] @@ -341,8 +329,6 @@ "from mindspore.dataset import Cifar10Dataset\n", "from mindspore.dataset import vision, transforms\n", "\n", - "ms.set_context(mode=ms.PYNATIVE_MODE)\n", - "\n", "def get_dataset(train_dataset_path, batch_size, usage):\n", " image_trans = []\n", " if usage == \"train\":\n", @@ -382,16 +368,16 @@ "cell_type": "code", "execution_count": 7, "metadata": { - "tags": [] + "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Downloading data from https://cdn.modelers.cn/lfs/19/53/80d85faa48f962bf87c77db7c3d79fded38b41ae91bb01ad1c61f01bc4ad?response-content-disposition=attachment%3B+filename%3D%22shufflenetv1_1-150_390.ckpt%22&AWSAccessKeyId=HAZQA0Q6AQL2GHX4TKTL&Expires=1760420222&Signature=1v0Qd0F13SF6jExCRi3%2FWiKZmSM%3D (27.3 MB)\n", + "Downloading data from https://cdn.modelers.cn/lfs/19/53/80d85faa48f962bf87c77db7c3d79fded38b41ae91bb01ad1c61f01bc4ad?response-content-disposition=attachment%3B+filename%3D%22shufflenetv1_1-150_390.ckpt%22&AWSAccessKeyId=HAZQA0Q6AQL2GHX4TKTL&Expires=1768385097&Signature=XQl6Zew%2B3yyXc0TvXcRpM97IqkY%3D (27.3 MB)\n", "\n", - "file_sizes: 100%|███████████████████████████| 28.6M/28.6M [00:00<00:00, 170MB/s]\n", + "file_sizes: 100%|██████████████████████████| 28.6M/28.6M [00:02<00:00, 12.9MB/s]\n", "Successfully downloaded file to ./shufflenetv1_1-150_390.ckpt\n", "model size is 2.0x\n" ] @@ -400,19 +386,320 @@ "name": "stderr", "output_type": "stream", "text": [ - "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [48, 48], [16, 63], [16, 63]] to [[16, 31], [48, 48], [16, 63], (16, 63)].\n", - " warnings.warn(to_print)\n", - "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [480, 480], [16, 63], [16, 63]] to [[16, 31], [480, 480], [16, 63], (16, 63)].\n", - " warnings.warn(to_print)\n", - "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [960, 960], [4, 15], [4, 15]] to [[16, 31], [960, 960], [4, 15], (4, 15)].\n", - " warnings.warn(to_print)\n", - "/usr/local/Ascend/ascend-toolkit/8.1.RC1/opp/built-in/op_impl/ai_core/tbe/impl/util/util_conv2d_dynamic.py:130: UserWarning: conv2d fmap ori_range changed from [[16, 31], [1920, 1920], [7, 15], [7, 15]] to [[16, 31], [1920, 1920], [7, 15], (7, 15)].\n", - " warnings.warn(to_print)\n" + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.442.595 [mindspore/train/serialization.py:319] The type of first_conv.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.449.868 [mindspore/train/serialization.py:319] The type of first_conv.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.451.926 [mindspore/train/serialization.py:319] The type of first_conv.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.459.509 [mindspore/train/serialization.py:319] The type of first_conv.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.466.033 [mindspore/train/serialization.py:319] The type of first_conv.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.470.683 [mindspore/train/serialization.py:319] The type of features.0.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.473.861 [mindspore/train/serialization.py:319] The type of features.0.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.477.622 [mindspore/train/serialization.py:319] The type of features.0.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.483.847 [mindspore/train/serialization.py:319] The type of features.0.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.487.021 [mindspore/train/serialization.py:319] The type of features.0.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.490.119 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.493.595 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.497.123 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.500.716 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.503.908 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.507.258 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.510.341 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.513.247 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.516.340 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.522.809 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.527.043 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.529.969 [mindspore/train/serialization.py:319] The type of features.0.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.533.003 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.535.750 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.539.068 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.542.025 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.544.791 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.547.241 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.549.857 [mindspore/train/serialization.py:319] The type of features.1.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.552.411 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.554.845 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.557.814 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.563.655 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.566.496 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.569.156 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.571.578 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.574.264 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.577.507 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.580.663 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.583.763 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.586.726 [mindspore/train/serialization.py:319] The type of features.1.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.589.702 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.592.480 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.594.893 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.597.558 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.599.967 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.606.431 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.609.716 [mindspore/train/serialization.py:319] The type of features.2.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.612.979 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.615.917 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.619.205 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.622.281 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.625.178 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.627.786 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.630.410 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.632.978 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.635.522 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.638.105 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.640.591 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.643.358 [mindspore/train/serialization.py:319] The type of features.2.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.645.719 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.648.430 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.650.883 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.653.225 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.655.852 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.658.484 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.661.322 [mindspore/train/serialization.py:319] The type of features.3.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.664.002 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.666.965 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.669.895 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.672.690 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.675.019 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.677.447 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.679.703 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.682.122 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.684.552 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.686.843 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.689.254 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.691.874 [mindspore/train/serialization.py:319] The type of features.3.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.694.716 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.697.207 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.699.860 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.702.172 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.704.974 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.707.270 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.710.574 [mindspore/train/serialization.py:319] The type of features.4.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.713.342 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.716.349 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.719.114 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.721.810 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.724.793 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.727.869 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.731.149 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.733.871 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.736.681 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.738.862 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.741.657 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.743.944 [mindspore/train/serialization.py:319] The type of features.4.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.746.453 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.749.020 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.752.073 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.754.762 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.757.430 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.760.460 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.763.168 [mindspore/train/serialization.py:319] The type of features.5.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.767.064 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.769.918 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.772.680 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.775.470 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.777.888 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.780.359 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.782.821 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.785.625 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.788.459 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.790.971 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.793.587 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.795.901 [mindspore/train/serialization.py:319] The type of features.5.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.798.628 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.801.396 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.804.000 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.806.721 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.808.981 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.811.505 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.813.732 [mindspore/train/serialization.py:319] The type of features.6.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.816.026 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.818.388 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.821.189 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.823.333 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.825.664 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.828.359 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.831.401 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.834.403 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.837.553 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.840.752 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.843.126 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.845.498 [mindspore/train/serialization.py:319] The type of features.6.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.847.796 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.850.399 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.853.118 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.855.649 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.858.564 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.860.959 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.863.078 [mindspore/train/serialization.py:319] The type of features.7.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.865.640 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.868.300 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.870.777 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.873.359 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.875.725 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.878.062 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.880.620 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.883.423 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.886.261 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.888.898 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.891.201 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.894.210 [mindspore/train/serialization.py:319] The type of features.7.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.897.114 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.900.352 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.903.289 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.906.368 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.909.021 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.911.245 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.913.687 [mindspore/train/serialization.py:319] The type of features.8.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.915.935 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.918.906 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.921.656 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.924.505 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.927.014 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.929.475 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.932.281 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.934.861 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.937.646 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.940.329 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.942.755 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.945.309 [mindspore/train/serialization.py:319] The type of features.8.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.947.365 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.950.131 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.952.916 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.955.567 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.958.189 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.960.707 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.962.698 [mindspore/train/serialization.py:319] The type of features.9.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.965.248 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.967.486 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.969.932 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.972.256 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.974.618 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.977.575 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.981.027 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.983.870 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.987.070 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.989.847 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.992.285 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.994.530 [mindspore/train/serialization.py:319] The type of features.9.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.996.968 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:02.999.439 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.196.5 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.454.4 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.715.2 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.982.6 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.120.14 [mindspore/train/serialization.py:319] The type of features.10.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.144.85 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.168.54 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.191.04 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.216.11 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.243.89 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.268.13 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.294.58 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.318.57 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.345.05 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.370.69 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.393.50 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.419.26 [mindspore/train/serialization.py:319] The type of features.10.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.446.30 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.473.05 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.499.67 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.529.84 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.557.07 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.581.05 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.606.57 [mindspore/train/serialization.py:319] The type of features.11.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.630.87 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.657.86 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.679.63 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.705.15 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.729.49 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.757.48 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.789.74 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.819.12 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.844.33 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.870.08 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.901.68 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.928.26 [mindspore/train/serialization.py:319] The type of features.11.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.954.72 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.982.69 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.101.031 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.103.844 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.106.359 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.109.177 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.111.676 [mindspore/train/serialization.py:319] The type of features.12.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.114.044 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.116.465 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.118.943 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.121.302 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.123.474 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.126.158 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.129.153 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.131.972 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.145.423 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.147.189 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.149.707 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.151.989 [mindspore/train/serialization.py:319] The type of features.12.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.154.440 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.157.552 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.160.669 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.163.667 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.166.235 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.168.743 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.170.873 [mindspore/train/serialization.py:319] The type of features.13.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.173.350 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.176.298 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.179.160 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.182.003 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.185.009 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.187.490 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.191.091 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.194.439 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.197.560 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.199.855 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.202.254 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.204.674 [mindspore/train/serialization.py:319] The type of features.13.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.206.987 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.210.108 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.213.305 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.216.718 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.219.219 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.221.658 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.224.041 [mindspore/train/serialization.py:319] The type of features.14.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.226.396 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.229.115 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.231.520 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.233.863 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.236.073 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.238.391 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.241.429 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.244.867 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.247.820 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.250.383 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.252.698 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.254.983 [mindspore/train/serialization.py:319] The type of features.14.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.257.897 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.0.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.261.810 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.0.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.265.442 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.0.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.269.474 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.281.196 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.283.012 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.285.394 [mindspore/train/serialization.py:319] The type of features.15.branch_main_1.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.287.531 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.290.116 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.1.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.292.868 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.1.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.295.061 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.1.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.297.376 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.1.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.299.667 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.2.convs.0.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.302.771 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.2.convs.1.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.305.835 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.2.convs.2.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.308.972 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.3.moving_mean:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.311.342 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.3.moving_variance:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.313.691 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.3.gamma:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.316.535 [mindspore/train/serialization.py:319] The type of features.15.branch_main_2.3.beta:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.318.907 [mindspore/train/serialization.py:319] The type of classifier.weight:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n", + "[WARNING] ME(8258:255086515109920,MainProcess):2026-01-13-18:05:03.321.504 [mindspore/train/serialization.py:319] The type of classifier.bias:Float32 in 'parameter_dict' is different from the type of it in 'net':Float16, then the type convert from Float32 to Float16 in the network. May consume additional memory and time\n" ] }, { "data": { - "image/png": "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y2233Sbnn3++PPjgg3LaaafBdi+//HJZvny5fOELXzD+YY0sDE888YQ88sgj8o53vEMWLVoku3btkn/5l3+Rc889VzZu3CjxePxlbe9LX/qSfPjDH5ZkMjn/DwQH82l8fFzOPPNMKZVK8pGPfETa29vlG9/4hlxyySXy/e9/X9761rfCtm666SaJxWLyiU98QrZv3y633HKLhEIhsW1bZmdn5YYbbpDHHntMvv71r8vQ0JB8+tOfnv/uVVddJd/4xjfksssuk49+9KPy+OOPy0033SSbNm2SH/3oR/A727Ztkz/7sz+TD3zgA3LFFVfIbbfdJpdffrnccccd8vrXv/5l7f8111wjX//61+U973mPfOQjH5GRkRH553/+Z3n66afl4Ycffsm/mjmaYO4x945W1q1bJ4ODg3LTTTfJY489Jv/0T/8ks7Oz8s1vfvNFv3fttddKZ2enfPrTn57/C7t/+7d/k2uuuUbOPPNMue6662Tnzp1yySWXSFtbmwwMDCzE7pAmYt26dTI0NCQ33XSTPPXUU/K1r31Nurq65O/+7u9E5OXVpy1btsg73/lOueaaa+T973+/rFy5Up5//nm5+OKL5YQTTpDPfOYzEolEZPv27fAPs57nySWXXCIPPfSQXH311bJq1SrZsGGD3HzzzbJ161a5/fbbF7JLFhb/KOTee+/1RcT/3ve+N//aFVdc4YuI/4lPfAI+e/vtt/si4n/uc5+D1y+77DLfsix/+/btvu/7/pNPPumLiH/dddfB56688kpfRPzrr7/+8OwMaUq++MUv+iLij4yMwOsi4tu27T///PPw+sGcvPfee+H1kZERX0T82267bf61c845x0+lUv7u3bvhs57nzf/39ddf74uIPzk56W/atMnv6+vzTz31VH9mZuYV2T/SvDD3yJHm0ksv9aPRKOTJxo0b/UAg4B9cduzatcsPBAL+5z//efjuhg0b/GAwOP+653n+8uXL/QsvvBDyrFQq+UNDQ/7rX//6+dcO5t473/nOw7l75BAolUrGa48++qgvIv43v/nN+dcOHjPNbbfdZtSx1atX+2vXrjU+e9111/ki4j/44IPzr+XzeX9oaMgfHBz0Xdf1ff//1rrjjjvOr9Vq85995zvf6VuW5V900UWw3de+9rX+kiVL5uP169f7IuJfddVV8LmPfexjvoj499xzz/xrS5Ys8UXE/8EPfjD/2tzcnN/b2+u/5jWvmX+tUf294oor4HcffPBBX0T873znO/C7d9xxR8PXj3aYe8y9o42DuXzJJZfA69dee60vIv4zzzzj+/4LuXHFFVfMv38w18866yzfcZz512u1mt/V1eWfdNJJfrVanX/91ltv9UWk4Vggr04O5tZ73/teeP2tb32r397e7vv+71ef7rjjDvjszTffPH/u8Lv41re+5du2DfXW933/K1/5ii8i/sMPP/x77eMfA0fdLbEvxV/+5V9C/POf/1wCgYB85CMfgdc/+tGPiu/78otf/EJERO644w4ReeFfKX6bD3/4w4exteSPkbVr18qxxx77e313cnJSHnjgAXnve98rixcvhvca3drx3HPPydq1a2VwcFDuvvtuaW1t/b1+l7w6YO6Rw43runLnnXfKpZdeCnmyatUqufDCC+fjH/7wh+J5nqxbt06mpqbm/9fT0yPLly+Xe++9V0RE1q9fL9u2bZN3vetdMj09Pf+5YrEoF1xwgTzwwAPieR604QMf+MDC7Cz5ncRisfn/rtfrMj09LcuWLZNMJiNPPfXUK/pbP//5z+W0006D25+TyaRcffXVsmvXLtm4cSN8/i/+4i/gr4JOP/108X1f3vve98LnTj/9dNm7d684jjP/OyIif/3Xfw2f++hHPyoiYtwG2dfXB39h1dLSIn/xF38hTz/9tIyNjR3y/n3ve9+TdDotr3/962GsrFmzRpLJ5PxYIS/A3GPuHa188IMfhPjgOejB/PldvP/975dAIDAf/+Y3v5GJiQn5wAc+AA8lufLKKyWdTr+CLSZ/LOh11dlnny3T09OSy+Vedn0aGhqC9aDI/32uwH/9138Za7qDfO9735NVq1bJMcccA/Xo/PPPFxF5Vdejo+6W2BcjGAzCvfsiL7gw+vr6JJVKweurVq2af//g/9u2LUNDQ/C5ZcuWHcYWkz9GdI68HHbu3CkiIscdd9whff4tb3mLdHd3y5133inJZPL3/l3y6oC5Rw43k5OTUi6XZfny5cZ7K1eunF/Ybdu2TXzfb/g5EZk/qd22bZuIiFxxxRW/8zfn5ubggvAfkufklaFcLstNN90kt912m4yOjsKtyXNzc6/ob+3evVtOP/104/XfXqf9dt3S/+Bw8ARU3+aVTqfF8zyZm5uT9vb2+XWeXtf19PRIJpOZXw8eZNmyZcY/ZqxYsUJEXnCE9vT0HNL+bdu2Tebm5qSrq6vh+wcfpEZegLnH3Dta0fPp8PCw2LZt+Bs1es48mE96e6FQSJYuXfqHN5T80aFr18E11+zs7MuuT43WaH/2Z38mX/va1+Sqq66ST3ziE3LBBRfI2972NrnsssvmH4yzbds22bRp07zmR/Nqrke8YPdbRCIRPi2JHHZ++19/D9LoL5REXvhrlT+Et7/97fKNb3xDvvOd78g111zzB22L/PHD3CPNgud5YlmW/OIXv4B/2T/IwYu8B/+l9Ytf/KKcdNJJDbelLwg3ynOysHz4wx+W2267Ta677jp57WtfK+l0WizLkne84x3wr+eHq/68GI3y7cVe/+0LPiK/u82HC8/zpKurS77zne80fP93nbwcrTD3XjmYe3/cHGq+cM4kL8Wh1Kg/JN9isZg88MADcu+998rPfvYzueOOO+Q///M/5fzzz5df/vKXEggExPM8Of744+Uf//EfG2731exW5AW7l2DJkiVy9913Sz6fh7+y27x58/z7B//f8zwZGRmBf5HYvn37wjaYNAUvd1F18F8q9AMA9L9KHPyXreeee+6QtvvFL35RgsGgXHvttZJKpeRd73rXy2oX+eODuUeOJAefHnzwL+N+my1btsz/9/DwsPi+L0NDQ/N/+dGI4eFhEXnhlq4/+ZM/eeUbTA4L3//+9+WKK66Q//W//tf8a5VKxagzv11/Dt4SI2LWH5HfXduWLFkCuXUQvU77Qzm4ztu2bdv8X1CJvPDggWw2a/zO9u3bxfd9aPfWrVtF5IUn5R0qw8PDcvfdd8vrXvc6nlgfAsw95t7RyrZt2+Cvl7Zv3y6e572sYy7yf/N227Zt87cbirxwi/nIyIiceOKJr0h7yauDl1uffhe2bcsFF1wgF1xwgfzjP/6jfOELX5BPfepTcu+998qf/MmfyPDwsDzzzDNywQUXLPg/Xhxp+OdkL8Gb3vQmcV1X/vmf/xlev/nmm8WyLLnoootERObvxf7yl78Mn7vlllsWpqGkqUgkEiJiXgT5XSxZskQCgYA88MAD8LrOp87OTjnnnHPk3//932XPnj3wnv6XWJEXFpm33nqrXHbZZXLFFVfIj3/845exF+SPEeYeOZIEAgG58MIL5fbbb4c82bRpk9x5553z8dve9jYJBAJy4403Gvnj+75MT0+LiMiaNWtkeHhY/uEf/kEKhYLxe5OTk4dpT8gfQiAQMI7rLbfcYvz10sELsr9df4rFonzjG98wtplIJBrWtTe96U3y61//Wh599FHYxq233iqDg4O/t7ez0e+IvPDU0N/m4L/2v/nNb4bX9+/fD0/Hy+Vy8s1vflNOOumkQ74lUeSFp/O5riuf/exnjfccx3lZT/o+GmDuMfeOVv7P//k/EB88Bz14rnqonHLKKdLZ2Slf+cpXpFarzb/+9a9/ncecGLzc+tSImZkZ47WDd1VUq1UReaEejY6Oyle/+lXjs+Vyef4Jx69G+Bd2L8Fb3vIWOe+88+RTn/qU7Nq1S0488UT55S9/Kf/1X/8l11133fyEv2bNGnn7298uX/rSl2R6elrOOOMMuf/+++f/RetouxJ8tLNmzRoREfnUpz4l73jHOyQUCslb3vKW3/n5dDotl19+udxyyy1iWZYMDw/LT3/604b34//TP/2TnHXWWXLyySfL1VdfLUNDQ7Jr1y752c9+JuvXrzc+b9u2fPvb35ZLL71U1q1bJz//+c/hX8zIqwvmHjnS3HjjjXLHHXfI2WefLddee604jiO33HKLrF69Wp599lkReeFk+XOf+5z8j//xP2TXrl1y6aWXSiqVkpGREfnRj34kV199tXzsYx8T27bla1/7mlx00UWyevVqec973iP9/f0yOjoq9957r7S0tMhPfvKTI7zHRHPxxRfLt771LUmn03LsscfKo48+Knfffbe0t7fD597whjfI4sWL5X3ve598/OMfl0AgIP/+7/8unZ2dxj8MrFmzRv7lX/5FPve5z8myZcukq6tLzj//fPnEJz4h//Ef/yEXXXSRfOQjH5G2tjb5xje+ISMjI/KDH/zgFVOdnHjiiXLFFVfIrbfeKtlsVtauXSu//vWv5Rvf+IZceumlct5558HnV6xYIe973/vkiSeekO7ubvn3f/93GR8fl9tuu+1l/e7atWvlmmuukZtuuknWr18vb3jDGyQUCsm2bdvke9/7nvzv//2/5bLLLntF9vHVAHOPuXe0MjIyIpdccom88Y1vlEcffVS+/e1vy7ve9a6X/RdxoVBIPve5z8k111wj559/vvzZn/2ZjIyMyG233UaHHTF4ufWpEZ/5zGfkgQcekDe/+c2yZMkSmZiYkC9/+cuyaNGi+Yf6vPvd75bvfve78oEPfEDuvfdeed3rXieu68rmzZvlu9/9rtx5551yyimnHO7dPTIs9GNpm4GDjzL/3ve+N//aFVdc4ScSiYafz+fz/n//7//d7+vr80OhkL98+XL/i1/8ou95HnyuWCz6H/zgB/22tjY/mUz6l156qb9lyxZfRPz/+T//52HdJ9J8fPazn/X7+/t927Z9EfFHRkZ8EfE/+MEPNvz85OSk//a3v92Px+N+a2urf8011/jPPfecLyL+bbfdBp997rnn/Le+9a1+JpPxo9Gov3LlSv9v//Zv598/+Bju3348dqlU8teuXesnk0n/scceOyz7TJoD5h450tx///3+mjVr/HA47C9dutT/yle+Mp8bv80PfvAD/6yzzvITiYSfSCT8Y445xv/gBz/ob9myBT739NNP+29729v89vZ2PxKJ+EuWLPHXrVvn/+pXv5r/TKPcI0eG2dlZ/z3veY/f0dHhJ5NJ/8ILL/Q3b97sL1myxL/iiivgs08++aR/+umn++Fw2F+8eLH/j//4j/5tt902X7sOMjY25r/5zW/2U6mULyL+2rVr59/bsWOHf9lll83XpdNOO83/6U9/Cr/TaO3n+/78bz3xxBPweqN8qtfr/o033ugPDQ35oVDIHxgY8P/H//gffqVSge8uWbLEf/Ob3+zfeeed/gknnOBHIhH/mGOOMX77YJvuvffe+deuuOIKf8mSJUaf3nrrrf6aNWv8WCzmp1Ip//jjj/f/5m/+xt+/f7/x2aMZ5h5z72jjYL5s3LjRv+yyy/xUKuW3trb6H/rQh/xyuTz/OT0Gflf+HeTLX/6yPzQ05EciEf+UU07xH3jgAX/t2rWQ/+TVze9aV+k6+XLrk+ZXv/qV/6d/+qd+X1+fHw6H/b6+Pv+d73ynv3XrVvhcrVbz/+7v/s5fvXq1H4lE/NbWVn/NmjX+jTfe6M/Nzb2yO99EWL7f4F4m8oqxfv16ec1rXiPf/va35c///M+PdHMIIYQQQgghhBBCSJNDh90rSLlcNl770pe+JLZtyznnnHMEWkQIIYQQQgghhBBC/tigw+4V5O///u/lySeflPPOO0+CwaD84he/kF/84hdy9dVXv6ofNUwIIYQQQgghhBBCXjl4S+wryF133SU33nijbNy4UQqFgixevFje/e53y6c+9SkJBnltlBBCCCGEEEIIIYS8NLxgRwghhBBCCCGEEEJIE0GHHSGEEEIIIYQQQgghTQQv2BFCCCGEEEIIIYQQ0kTwgh0hhBBCCCGEEEIIIU3EIT8J4ay150Kczc5AHLE9iNvCqMZb3B43ttnZloC4I5OEOBwIQRyMxHADAWz+zGwW4pqDbWjNpI022G4d4mq1CnGlUoE4GotC7IoLcalcgDidacEf9PHzIiK1ag3igOB+BwIBiFNJ7KdEAvsxFMI2ltX2favBdVob+1K3yfEtiD/42a+Y2zgMfPXHd0O8b/OTEE+ObILYdXE/uhcfY2xz8fAqiFt7FkMcjeE2tj7/CMS7tz8LcT2Pxzyg2tDSauZdMIrj4bTXnQPxshXY7socjrfnn3saYs/D41WrY95ufH6D0YZcdgriag1zv17DvJuZLkFcKOFvOC5+v7OzDeLWNsxbERHXz+M2cDhKpYxj+PYf3mlsY6HwPO+lP/THiLKYWhaO9XIRj/v0DOZNW1srxG4N8yIWN2t/IBzBJqia5Am2ATPxyGDbC/PvWwN9WM9jMZz39PEJ2tg7jdrpeGreUdvIzuUgjtphiBNqfshXy/ibcTyesQh+X8Scp9LpDMSzs1jjakWsJ1q2W6+pYoG7JIGgmTXhEPZNOoFzZW8n5vLo+DjExRr2Y0sLft6pYyuLxTmjDYv6cU0QCmHf6gdUffcn641tHA6+97NHIdb1LhbBYxyOYt95AXxfRMTxsb+DaiQHVFqGdIlVimU/iNurW+p9owUitqte9XF9pY+Za+ux0mCj0ET/ReNG2/A89ZvqA3oLepv62Liuua402qlix2g3bvO9l6x+yW2+Enz9mqshLhfVelgdc2ugF+JsXJ0XiMgJaaw/e57F9dJPHl2P26hiLQkE1G+qehmKYO63dXYYbWiJ4TaWL+6E+NzXnQaxU8c2TM3hujKUwlqzaftuiH91H45fERFRfRfR9S+EYyEcxDyqqTY5dZXIKmciDWpAycfjOVvBvLNVGf/Jw48Z2zhcfOfpyyF++B6s96korsMTcVW7LfMUOpnAPu1I90HcGl8EcSaN5wcHpvZAvHPyGYhb+jEv2vuLRhtCEVyzlYtZiKNRHB8BKwOx5zoQuy6u01tbcB8iEXONFxT8zlwO5/Ppcey7SgH7oVTF8wVfVbDZmQP4+RJuX0QkV8D51xfcr9kZ7MtvfxrP9Q4XA8swr2w1JwXiOE8OrMSaZzWYk3bt2A+x52H/ptIpFWMNS4bxN3t7eyDOFvB4TmdnjTa0tWMdrM3iOrEwPg1xawrb1LOkHz/v4LnE3DR+v5A3cz+gLmvVq1jT5nKYE7FWnD/q6ppQXdVAV62lfb22FpGwWtPF1FqpVsOa+MzD641tNIJ/YUcIIYQQQgghhBBCSBPBC3aEEEIIIYQQQgghhDQRvGBHCCGEEEIIIYQQQkgTccgOu+c3Pg9xdkp5jPAWXbHa8YUOF+9VFhGxYl0QFz102BSUe8S38L77UgXvAy6VlYPLRb/CVMC88TsaxN9wHPxOQLl7IsrjUqrgPdSOcolZlXaI7QYyprry5sWC2HcF5ZObUX6BeBzdQJaN98NbygUoDRxHpYp2VSinR9B0UywEOeU1as+gF83v7MY4iI6J3sVLjW26Hu6b7aHvwSth/1Zm8b55v4z31fd3YB4vHlgG8cCyJUYb+vrRAdHVhfsRCmF/Oxl0RAwsQr+A42COVCroDsjOoqtBRGRqCvs2GNaDGJO1tR3bFE3gb8zl0GkQieLY8XzsVxGRkMqr3FwW4lq1kZXoyLBQDrNmo1pC58PMvp0Q792E78/lsCa+7vwLjG22KBeo/rcjSzmdjqaeDylnqavEjp6a16wwzotVxxxnhs9NSVAyKawvLco3V1OuEK+M9SYeQg9IuoFXKh7TzhScl6bU/O35GEejWCs6lTdqdhbrj/bNioj09WKtDigvTlcXzi8htY2RveiJCYdUP2aw35IYiohIu3IW6Vwvlkwvy0LgqeVRMILHp6ZcLcU5dNqEEub6KqDyQpQLV7sqHeWkc9W6pDKHc05Y5YQrpme0oLzCtoXfSSbwePhqG57yw2mf2Uv55kRE1G4ZDjvdD3oT2lmnf0M77HQbX/gN9Zsv4cVbKGZHRyAOqvoWUmv0UVUXtpWVBE1ETliF6z5P+Xm7O7B2xIxt4G/q/iypNfvcjOlzKlh4TKpqTXbiyadDXFdO4Klp3GZ3FMeSV0PvaCxi5p2ncrkrhV6w45biWnVyYhTichnHeKGg1pHqXCMSNOeevh4cX/Uw1uDtG3cZ31kotHIv0YH79+yT6DQb6DkZ4lTCnOcqyv1czuNxKWd0zcPzj9Y+XDcvH8C4HEXPXt7LGm3wcrgmiLg4EfkqV+outiEYwDxpa8HxEleO+nrRPL/PFdG7lp/GfN2zFR2MgYiqPyEck/tGxyBOJXEfC3nTJeY42qWra57xlQXB195UNbeWlUdt7ADWgq4Oc2ERVb5K28LcDHmYl9VZlXeduAZc1I3XLhLK7V7K4fnjCxvF8bNqFTrpes5Ed18yhgMwksS4qq6nVKt43pzLYn0SMb2Sk/snIR7ZjQc93IbXDAJRtf62sA2xFlwTRhv4mlNR9VwB5SXW8/+hcjSdBxFCCCGEEEIIIYQQ0vTwgh0hhBBCCCGEEEIIIU0EL9gRQgghhBBCCCGEENJEHLLDLhZUTgx17/8S5awb7EZvQVcnumFERGLavaY8EeUqOh0qdfRG+Orz4ZjyCTjKgefh90VE0m1437aj7i0PKweLUoVIIKzuua5hm+sOtjEeNl1wQeVBiKrPOBY6bWwf78F2lP9Eq/qSCdzHQhHvXX+hncrrpraRz6GnasFQLr1aFeNSCe8vH1yB98wXiqYPqFbHY9TWgbkaDOF17OXLV0B85hmnQNzfjffVp9OdENeDplshrtw7StMilvJQlYvoBqiqfonH8Bi3ZtATMrz0WKMNmzZtUT+K26xWMU/SLa0Qh9St+3M5dGv4gsem0X37s7N4fMolNcabR2HX0E30akDvl62ES2N70TH07KMPQFwvY56Ekpgn5Qa1o6UN5wPD4WThGGyGnm/khTochJWLxFJ90dqBbpGi7n/XFKU6qp5Y6pj39mC96OnE3xjZvgPijiDWzJ4+dGrajvlvgbbqP+0xbE+jB8cPKC+ecr/F1bwWsHEfO7vRuyMiElXePD2vOT7WwHQGf7NfrSkCagUVDOH7ES1JEhGvhvNBSwodKn79yIh1cmqOqas5ZmoSXa77RicgDkRNr04yhbUgYmN/KKWd1LSvsY7HtJTHNsaU61Vss+/yNfTc1Gr4o0uHlkO8bBids7Eo5ql2vRnutwZlwlcvelpqp0M1Pl/u3NOoVtm6DQ18f0eCkYryQpdxTIYtXK+Ji2PStkyH0NRuXIs8uX8fxJsn0AnlV1V9VP0XVTlQd9SaroHfNqr8TNky9vevN2yDuLcd96vq6GOoaouqPaFQg8RTh3jl8DDEg4sx17XLdOzALtycWjsnW9FT5mpnpYjEIzhm+zrQj7Y3gL+5kIxOYE3rG8J6FQjgnNSW1E5s0584OoKO35HRAxD39+F8XfTxN1qDmJtOy2aI7SS2uVpXjnIRyWcxn9uC2Mdh5aBrSeMxScXwnEafb9Qc9NGJY9aSuXE8D5rdiQm79TfrIU4MYJv7l+GaJJrA/czlsQ3ViulPFEt5cqfRZ6bPBReKSBj7wndx7LrK3y8Orum6Ws21TWUG86pcwP6IqvVUPI45sWol+iyXrxiEeK6gnLXRBn/vZWO7jz0etzE02AdxrYrnf75aw2nnfzCEx1OvpURE6kU876wVcW16RmUVxFYIa7sdVw67sLo2osqV3aDuhlXe6bXv73suyb+wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIk4ZIdd1MJ7i1Mp/OqKfrz3vz2G9wGHPPNe8cIM3mvsenj9sFxS9zMrVUVLBu+7Dyr3W3YO77kONtjbNuVsyOfwnupaRTm2Kng/s3aTJBPocanXyhDbrtmIUATb7br4G0Elpasqj1tYycRsD/utWkAnguj740Ukou4Vd5SXZa5o+v8WAqeC/Wcpd0gkjPflz01NQdzegy4GEZHFq/Fe/a4BvK8+pOVsyqtTdzCXNx9Ap0RpJ3oS6jbmuYjIlg3PQHzqKnTMnXPaqRDre95zyr20Z/d+iMPqvvxwGD1JIiIdnej727MXnSrhqHIflnEs5HLY10F1L39LC36/XDbdia7STjjKhRGJmH6aI8VCOcwWGl+JburKXbh/726IW+LKhZFBB8vELNbd6QOjxm92DyzGF5SsQlcoS0s1X8WkW7A/o8r11tWFbpeJaaw/0YjpTZubzULc3YF+mYiaAGIxdHD0D6AHJGHMcziQw2KO20hYu6qwtg/04X75IczLsKoFtRrW1Q7lgAo28JlVlTMlpWtUFduUn8O5s1rF+ae9A49VLIHze9AyHSvBGu5HpYi/6VRNL9JC8Mhjj0JcUE47WzAnylUcpRUX81BEJBTG1wJqjafUPVLxHfU+/kYijGMhZmF/R/VCRkRcNf8Wi9i/v3n2aYgnpnAuXTo0BHFHB/qDYsoF5DdwtbpKfuwpD7Gl+uUPlbf62qsnpvNZrykMF98CUVbr2xkb+8pyce3ZrhbySeXWFRGpFHF9lM3jNnJ6Ha9+Ux+vgPp8UP+tQ908XsUa/mZS9fevn3kW4hXLcF16zDDOkcEw5tngIProip7pMhs/gGvRXB5rjSjv5CnnnADx+ifuh7isXKj5OrZpumgei7Yyrpf7A7g+qBSO3Ny+dSu2ZXApzotDK/EY7Ny2HeJiCWukiEhCn1MqJ+NzWzZAnOxDh2Z7CuuVo+axfTtVnfVNB2BrGM9pfFE+szDuZ1u6G+LCHM5Rmzfh91sTuB5ItZh/+1Nvx1pcHMXvjI1nIB5ahJ+PJ3Gbjof7Watg3wfDZhtmZ/D4loqYi5Y5XSwIiYxaJ6j6n3LVPBfB2DJPKSUexM9UKuj4KxXwfM2P429O7MfvP+3ieUBF1bN2tQ4VEeldhMe4t0/NlRl1Xqq+r0/3omF1XqCuXdQbXZeI4UaqKi/8Ko4n45pMBOtRrAvXlU4M21BtcDB868XnVj3/Hyr8CztCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaiEN22LVG8KMx5clJJ9Br1NmCPgXXM10u+pVAUN1QbuP1xKqnPBLKZRFU9wW7ykfjB8zrkxMTWfxOHVuVL+F93CUX71dOxpQbTDluAsoPZVum6yKg7k8vq/vs4yH8jaByYVQq2KZyHX0DnjJCZQumTzBbwr4tKH9gpX5kru1WS+gcSiqfU0sbuhhOPvEkiAeWoh9CRCSvPBxbdu6FOKeOeSGbhXg6iw6JA2PoOWpJY5vENu+z/+l//gDi0Drs37WvPQvfD+Hx6elBR4X46CfIKo/YU0+jL0VEJBjCMZxIYZ45yhdQK2Qh1sOps7MNYleNlekZbKOIiC3opdBjOpNBfwD5w9HuIl2TJmcwv3ft2gNxVb2fiqIzolRAd8bmZ9ARJSLSo/w7mR70KWqHk1Y6vVp9giIiHR3tEGv/Ra2C9bu7B10i8SjOxSIikQDOrb2dWKPqdax501MTEKeUVy8YwsHv1bCNoaB5fGwbD2K5hHmidLBiR7HNVeWDrSqnSkStSQo5rIEiIokk1hvtqpqewVoeCaHjSaddTbUhX9DeN7Mfajn8zVoNa7v24C4U2YJaL/nYdkutI4JhXOPFLXM5GbDxNe02rKhVoKP+DTmv5v9yEeOIkhAlfdPfGFDNCkVwfFTUemjHXnRu7j4wBnGmBeekgUXoye1U41dEJNOKbq+gcnYG1NpV12iN1hB78uJ+uhde0x4d7dn5w7x5vy8Rawbi3jiuzzLKndjWisdvxG8wzmPKhavmOJ2r9QTmTV15iytVHOeuylPtMRQRCUew3T0DvRD3LRqAeErl4VgOx+Ppp58G8cw45uXb3v46ow0//+mdED/6yGMQLz7uZIjPP2ENxDtGd0I88vATEM/VcF4oOKabadWp+BvlOtbYjg5c0y8ke/dg/fEF+zzXjucGNRt9dG7Q9I1mWnEdvHwlOjDHJ3AbxToe92efx/WVo/yKmQ51TtMg/0MR3GZrG7YpGUe3WD6H9WNqHPPdqylXqFoP5Gqmu3BDZSnE1Tasi3YXupHjUdzv2SzWhQP7cT+dKtaJerWBJ7+IawzH0S4/c75YCAZXozMwUsFx4+SxXo2OZiHe8qzpi7V9PEbVHK7pLEf59JXLbeQ3yosexu05av7o6DYddrPKYZfw0InZ1bIK4p5e/Hw8gvut63ZNOTgLyp0sIlLL4XlnYZfyeE5g/anlMW/KgmO6YwXWaVvNP9EufJaCiIiVwfldO7hD9u8nT+Rf2BFCCCGEEEIIIYQQ0kTwgh0hhBBCCCGEEEIIIU0EL9gRQgghhBBCCCGEENJE8IIdIYQQQgghhBBCCCFNxCE/dKIzg2LQVAileVEliLYDKAuMxUwRdt1BmaYpzkV5YM3BbbpK1uz5GPtKeu8HUXgsIpKvocTYdXE/Sq6SQao4X8TfHJ3B7YVs/HxLwZRQ18dQxl+eQ1nk4o5lEHd1oeTYSqEssjqLQspCAds0lzflnFNzKHPctVfJVbW5eYGIKHFvPYCy03IMhY8jStS7/qFfG9ucmUYx+Oj+cYhDAS2IxGNYdTCv9EM/ejuxrybGUK4qItISwVzMZ1GOunVkBLfZi5LYUAh/o3cA5Z19Kt4zhvJcEZEtG/C1rl4U0e/aox4SUVfSaiWad4M4nrXQNRLEYykiUq7gd1pa1ANWgkdGCvvqRj/QAY/B6L59EI/swXjvdhRRd6RwDC7qQGn+gT1m/m/4DcqrTzk3A3Fcid0buPtftdjqQUU1JVN21YMOHF2fKjh/iIgE1RNickrobCn5v68exjB64ADE6STW4biaW3NVnD9ETBF+OKrE70r0Xlf7aamHUHl6/RDAOBI2641KfSmV8TfCEZTHh9WDeeJRTMSIquNz6gFFc1mzH5JRzG1LPRDEyP0FoqwfHBLSc75an7lqvSWmgN1Sx0Q/c6umhOt19ZOpONaWvBJp5/SDSDxTeh8O4zFKhbERgQC+X3QwJwKeevjZFB7TbBbXE4mkudbt7cWHRA0PoZA9qedK1eZ6XY0NtZu+YA55vtkPevzp51LoB1ksFOEEHvSlKZSZDymZejqsHlIwh/OTiEg8g/1ZDGPeeCHMy1NOwgcjdHdhG3Zu3w7x3j34YBI7YNYa38HcjqqHB7z2dPzNSVW2f33/fRBv2bIYYresvpAwxf/ZIuZyQT08bvsBPFcoephHRQc/P5HF7VWjOD6XL8G8FhHJdGPuT07jb55//mrjOwuFU8Xjlp3AtXy9pB5ClMBB0tqDD3MQEfEjKMLvWoZ9lPOwXhTK+JsxwW1OT2MepcI4P/QtyhhtqAs+NGrOw20U1QPgogHcpnr+kKRacDw5YeyXiaL5AIKf/wj3y/P3Qzwcxu8EfMy9qf14TlSrqLqtHmxVqZvzj6+eEpVMqbnXPzILyzdeejbExV14vB79BT4cJlDFc/iSenCViIjrqgfhqMVOOo65nlA1sD2Aa59MXK1D9ENB6+aDE+xRPGbrf/owxLvXb4T43DecCfFxxwyqNuJvhOdwbFlTZj9M78G1bWUzrl2LY/gQiop6OOn+XBbbvA3Pk4Pt2C/xxWbdPfb1x0MciquHGrnm/Hwo8C/sCCGEEEIIIYQQQghpInjBjhBCCCGEEEIIIYSQJoIX7AghhBBCCCGEEEIIaSIOWUzW14leopYw3kucjKNzw/L1/eSmIMNSno2qcjLYypnSru4/TyTQZZGbw/vy08qHla+Y97jvHsXvFKrqnml1q3F/HLssGFLut+ksxFV1X35IS1xEJN2CPqAzjz0F4twB5RcqqXvTO/De9GoJ21go4HXZSMj0bQz0YBu6urohHs+Z3ruFIB7HdkxkMe+278X7yzc+/xzEtuHhEXGrmAflPPoBAsoJVa7iffnZPMb5Ijopdu3bBHEihn0rIrJyeCW+oLx4Dz94H8RLhoYgXrFyBcTt6r76iPJDpVtMF5ztoIunWMU8KZfQV1LO5iF2XeVoiWFeFXL4+ZYUjscX2onjo6a8lKWS6eM6cmjvwEv5L34PP4avQ/2CaoNydFiH9G8w+B3PwzGlXWL5Eh7nfePoiBhXseuim2RRl9mmzU+gW7KrpxfiFaeepr6B+Wwr94hRVtVPNlKV6PnnJbEW5t+3LHXMw2Hcd+2icpRLrFpRAhoRaY3h/B2ysUOCNo7dSk3NgxGca2tV5ZfNYQ0NN/B4aZeYpfwkrnKHxaK4jbqqDamWDMTRKLbRsky/Sb6AtbpeU4415azT2xTlyamqGunWMEfCQfQXiYi0tKGjqF7H8ZcrHpmaV1auxKryXVmq1ui+aaRA0+POUwNVx0U1l0Zjyhmoc6auPEZVM/cdC8e5r34zbCsXjzHM8fNB5fLR28uXcB9EROa24ZpgahrXnSnlNVzUj57i1lb05IQjenypmu44onFUuXPUjrq+OV4WgkINa086gLWqPoW+rL1Z9MeddeIxxjbLyk3dr/Y9GsdjdkYGf/PYTnQGlzz8/FQE60RpDtsoIqIU2hKs4XpoyR70FMfU2ratMwNx/bmnIdbevEc3Yo6JiGzZj96wiqqxo8pPOzGNfqfTXnMGtjkzAPE//b+3Q1wrjxltePIJzPXx8R0Qn3yBefwWioilHNllrIGtPeiCHh1H33WugrkoIuLbWyE+8Thcq7/2QtxmIoznB/USxlu3Yk3LzeIxisXMtb0bxrG8L7cH4vYUzmN9rcrz2Yb1JaxqRVH55HfsMz3FOx/C84taHo+7NYDvlybwvKp3CTrVYhnloLfxWNkB01EfV962mvIFhmz8jYXiuJP6Id6uXLpzs7gGaI9jTjgNfH1TeVyH96r+WpbBbQSVtzhk4TqztQXn97BaQ7oNzjWias2WSOC8NDeBbdzy03shzoydAHFXK54zOsoX79XMhX2ojLkZUbW7lFVudjU3uOoZAtkprNvxSZxb6uq8WESk+hp0eQYGsW9d8/AdEvwLO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpqIQ3bYtaXw3uRgLQtxRLnC4hG8N7xaNm/arSt3UiaDng7t6qm5eH2xXsd72ONJ9MXsn8T7wnfsxnvmRUQm89iGklJ/LImhr+TSs0+CeFEv/ub3n9wJ8aPb0engeEpsISJBWzlQsugoKBVwP1Ip5aBztVsG3w8rT1jcMh12jos7vnigD39zxrxPeyHItKFLZPte9EMc2IUekHhIuQCKplukkJuA2PLwJvZsHh00WeW1CEaw/zq60dkVU67F/sETjTYMqGMy8syjEAcszJO6i76ByalpiI8/fhXEy5bjPfQDvZ1GG5JnvAbiZzej56JaQYdBNYT95An6BTwfc2hsDP0p4Yjp2ki3dqlX0A9QLptOoiNHI0vTi336EBx2epOq5uka6Av2seGsM5x2Zhte6pXFg4MQx5V7MFdUx0S53Z7bi+MrFjSPe1C5KJ5/5H6I2/vRXdm6CPPZUg4VS8mydN97tnnsGrz0oli/h5Lw98G2sT995eCIJXAurihHVziBrhEREbeIdVGUr6SnG/vbmVadoxybiTAe06qqmeke9LSJvLSPsqMba1S1gL8ZUPNWSPvmlNerUjZdYpEwfsYO4/w9p/qpXse6G1DzZEV7cT2s6zHtwBORoHL5Veq4n5NTOP8vFDXldLRcVe/VPOnZhzAgImpcBjC3PRv7M6hWpPUa1ppwEPszGcO+LNVM166jamZVpXZV1ZKIjY0IiHLWqZqr17GOmC44PabHZrBG7q/ifL59N87Fncqp1teHLrFkEv1E0YiZd75y9dV95bBzj4zDrjOAbe1X/d2iHM/rZ9G7Nls11/VLlBP1sgl0AIeUc7N9G24zsuMAxK6H43xQpX7INceCrXLVVfWr+uunIE4rv5zXoZxRWkKYw+PVEjB9mdUi7meb0jXGfeVHG0MXWf8q9K+llDf8tGF0cU3Mmec3YwWs+6USeqx2bttmfGehyM/iHNHSgbVgOod5EE3icS4UTVdk3cHjsnkjnqMcGMWxnUphn3Z349juGlQ1bjce072T6IYTEYmlMFfaO3EN19qi/G825n8wrPxlNp7TODWsR169wVzg4bnXquNxnB4zhHEqjvnf2on7UCrheKjVsF/y0+gXFBFxa7iNWFg569yXuQh8hUinsRZMqfO5kI37mlQ1ctZrcF7k4zENqzXx4hRuMxZR/nB1KlFVc29eud3CDdzsfgh/M25hu7s6MG/CQeWX24vXSw5M4FrIUWJQ2zZdyaKeGxBUaxDtZ6zmMO/iau6cKSjXonJ2p1NmG5IWrk1dtc6p/Z5px7+wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIk4ZIddV1s7xOUZdQ+8cuIUSuh8KNfMe/2DFt5rXFK+GH01saxcL5lWvC+/pu5H37kPHVozOdPR4QfxPviAcqy0RPE7XUF0uUVn8P7n5S09EB9ow+2NZ9FdIiJSLeF+Pb0VPW22clfUE7jfkkb/kCgHSzqN9+2nPPMG6koNj5dfy0E82Gl6kRaCHTt+DfHmHdsh3n8A/Q1uHv0OqbTZ7pXLByE+btVxEB+YxHv3d0/iNjt7sL+XDKMfJdWOXrbxWfy+iIg/hV6LPcpZM5lFp8GqY/H7r1+BzrpiAdvsqVT3a6Zb5PnH0Ju3fOVJEHf3ZyB+7NcPQDw2jjlSryu/Uxl/c3bW9CDGkvgbnvIoFUtm3x05Xt6/b1iH4CnQjjpRY9Pz8UDWlUssrHxYlvGjplvEaJaqw62t6Jk465xzId6wfjPEu0bQe+Mqh8v2AHopRESig+jIdLegx2bD/Q9DfPpb0G8Wi6OvRyuEtG+ukW3LeQknofb/HfJk+QcyOonODJ0jiSqOkaSqcZWaOc9pB0p/L/piI3Hc14BSf7bGMc8ycdxeqgdzptpAELhVOS0zGZzHqso3WlFC2ZDah3pO1ZuqckCpvBYRCYTwtUIBa5Kj1DB6TdGZwbm0rQX7cVseHbbtrfi+iDHcpEU5Cb266YZZCBxVezWucrVVVN8FtYBOzHEZtLF++doFFtJjTm1TefR0kU2GG/h5Vdn2VFxX2zQ8OcrR6av1mKucdW6gQV3R87H6iKX8Zk4dfyO3H8fG7gO7II4o51Q8rlxNIhJVPsWImjtCId13JxjbOBwck8K2JqanIA7Y2BcrFi2COD/ewPmoEqtf5Uk8rOqd8qpZah7Wq6eqchJK2PS0htRBDqq8Cdm45q6nlCuxhPXMUfJFV81P3ba5xjs/prxfFh5ztw/XstFduyAu4cdFlE9w9THLIO4tmW3oVevCFcM49y/rMN17C4XlYR/aQeWoK2ch7la+6oCg201EZP9+PK45H8ddbhb7KBjF/J0uYpxO4RwSTeJ80dKO40FEJBbButnd2qve13OjykV1Ll6v4/mIH8L8z82ajuwWdZp67uvxGkJE8Fy4twfzIKzauHUDjp+ZWXSqVXKm181Xa9G0yjW9Vl0oYqpeWKod+dksxLZa+wQt85kAvproHAf3tV7H+p6Iq3qkrn3k1bl0OIp5l0qantRQGI9Zsag8wi7mZVtGrV3VGk5rVetVdcyLWLdFRPJ5/Ew8gUWsVT3rYCKH4zEaxfnI93Cdo6+V7N1jnt8M7cUx3DWIY9T1lFP6EOFf2BFCCCGEEEIIIYQQ0kTwgh0hhBBCCCGEEEIIIU0EL9gRQgghhBBCCCGEENJEHLKWp7UD71FvVffR2zbeH53NoXOjru9lFhFb3aDsCd5T7YeweUl1z3RdMN60E91vxSregx2Nmp6JaBh/I5bA+5dbA+hfeHL7OMRODb9fTaPDrrMV22iJurFfROoO+gBLNbwXv1hSPg0H22Qpt58WNoVsfMG3TbdPSPlnHHUvue8egpDrMPDYA3dBHOxeCfHwquMhjtUwh1Ydu9zY5soV6n7yinKH2Kr/BZ0qwRAe00AgA3HdwTwr5s377NPK6eio/t0zgeMnmhzF7yt30tLhQYh9dS2+nMX7+kVENj++Hr9Txr477sI3Qnz8CUtxm79Bh92O7bsgjivPWDqDDosXwBqQU3WjWjXbfcTQwqVGYjT4vDlmfOVN05twfMyLbdvR7VYuY007ZhW6DCPK+2FrmVsDPB+/46lp4czXnQ3xnhHMxa995WsQO8pduGcya/xmJI5jZLlyfW558DcQdy7C3DvmdadBXBLlO1OiqnCDfpgpoSuuWlP+DOUVGepGV+XhoqpcRzMzWD/iJZwv2lT9DzWY1qNJ5Qop4dgtKF+cTsyAmnOqeeyrzhSO9S3b0NEpIpJUbpBkDNcQ1SrW3dbeNmySqzxfyvEUVbudr5h+mkgEa/fYOHr1xMM2JdMZiCtlrEdOHX0msSiOpVRCS6BEZvK4FqpU8XimkkfG6VRVeWSpMeMpr5d2KzpV0yFUVvU7pBxzAeWHiwTxfd/CsWDpWqX8c76Wt4qhBZWSi7lcU+tOW62PaqofQr5eTynHsN3AlazaYAfUGsxSTmj1T+l6JvFUfauVMadyxQZuJuXmkyp+Rx9vkXeb2zgMzOxH72PVwXaUA9i/pTSOj1jJ9DlVNim3cQD7w0lgsbAD2DcRVYMtda7hqBxwtVtRRHzlBNTHUMfBLpzjUlk8xhWljKotwTVgq2OeYyUquF9OFnO/MIFzYGk/umMP/OYZiFtWr4B4egxdTbU41mwR0wtamsY1Xi5keu8WikIe/VSBIvZ5Sp2D1ktYz2wx16exCM5LtqV8r60ZiF11jlmuYZ+WxrF/hvpXQ5yOmf44qWN21edwzLSq81xRx6BUUe7oILbRC2C/7NxuukNbu3GNd/IaXP/HBM/N6q6aF4s4xpw6nnvXynjsIgHz/D6WwNeMsmu/uLf1sKG8jiFVrkPq/C2TRndk3DP9cXtzeMyqyhen10OhEOZuMIJ95aj1wKIBPG9Ot5tjfWoaXYd1tQ1HrdHqyq0eCeF6qVJWa3K1/irlTBdcbgbXtr6j1nSdWDe1e71QxPmkVNUecRxblSnTzT6ydS/EHa9Fb2cwZF6DORT4F3aEEEIIIYQQQgghhDQRvGBHCCGEEEIIIYQQQkgTwQt2hBBCCCGEEEIIIYQ0EYfssBPlqLNC5j3rv00kiu/HJWF8JqiuF9pK3FFXbpFILA3x1BjeO1yaQjfC0ja8z1upYkREJKru5V853I9tUl9yArhf2rkVDKATIhXG/W5vHTbaMLx8McQje56AePNWdEaFg8ov5+O9/466UdwO4n3h2iMjYrpgPCUxsqwjc213Yi/6415z4pshjkTQ39Cmbg3v7TOdgTNZzJu929ERVfPwXn7bwnvYA0HsK9dX99Gr/ncbuH18F7eRTHdAPF1AH4Gt8sgz/GgqVmqGZNTsh8G+AYijAdyGLZhXxx+HDq9MJgPxj8u/hHjsAI6N/i68j19ExFXunpByhuRy6CM4kug+t1SXa6eTr1xJIiLGMFLeoL2jeyD+yc9/CnEuh/XlzKkJiM9bez7EkYjp9dD7oS0ejs7NFPozLv7TiyHevgXdoXf/Ar2TubrZD5tHxyButdAzEa1gRz12B+ZWsB2dLHZ3BuJiFvsp1MBtdSC3D+K5PH6nUsHcHHrT1cY2DgddbdjfTgXHYSqJx9R30AMSCJq1OhbDOUCXj5LyDtYc5RZTgrhVK5dBPDaGfplq1fQ3dnRirXZcdIV4otYMyrtXK2FeBmI4dgLKHVacweMpIjKnvIXpFqyLBeWLdT1sY0Ste+rK7de/GGuqnkdFRGZzeDz13Jtpa+AkWgBKKt+DWqTmqeWiane5iDkgIhIOY3+2daMHJ6aGpa1qZkDnrY3HY24WnTnlgjlfLBlC722+jnk1O4s5EYngmlB7eCzlXTXmYrPcGZ/RSuCw4H7Zymvl1LUzTR0bNbH4yt8sIuJl0aszPYruOPGPzBpvupCFeG9Rrbk97IuwhZ7oeCuunUREppXfqkf5rWJqfnFz2P/VmvLideBvJFZg/as08McVpjAXI56qV8oTXZ1ULqQIupasDM55QbUA8XLmCU5sNXrxJIzbiE8oX/MonmtkN2/H39iDYzyl5qqZjOkEmx7DvjkwgfPuULjX+M5CEYgo13MFj3thNx6T6hT2V1efOc8lYphrc+UsxCl1/tbWjSctk5PKu+biMXOr+PlKwfToRSyscbbybM9MKX9ZAmvatHLUlgsqv4O4vb2j5qWE3kVYV6NJHA9B5Vcsl7Hu+lX8jUX9+Pm0Oncf223WvERSbdNWtfzFL2McNnLK41hUcWscx1U0jDlRq5reTi+Ix7BkYa7OVpWfsQV3PqTORVoSuCbPpLEvU0nTzzuXVXmkzlcCgrncqeqHplJR59Y15fOvmfWmUMA6WFDPT4hEsN2ucvxPKa/lrGpDpe6p2PTo7R/F6xb6eHnB3++ZAPwLO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpqIQ3bY6Xv7rbr2cqFnoljE+9VrdfPaoGOjY65QwnuHcyruH8Dm+g6+v6QD70Ue7sN7tEsV0yfTv+JEiMM+3v88O4f7Hcu04wam0Scw0IM+hmwR76tfesxyow0trXEVr8I2KLfF7JzyMym/me3j/e515W/yzNu+xVWeKXVbt+HnWijiyTaIQ6oZ2Sw6vCJtGYhLjrmzStUjsVa8j167RqSC/eerUVOpow8iGlMOQQu9CSIino2fSbaj3y3so1cvEEOfiR/GvPMsbIPlaoeFOdRDCbyXP6acBE4V8256FP0l7Ql0Lf3pmy6E+DfP7IK4UDb7oVKdhLhaxrqSSWWM7xw5lHBJeYNmlU9pbhaPoYiIFcDcGpvE/H30N7+G+Mnnn4E4N5OFuKr8SquPPw7irk7T7xNQuZDLY+5ks/gbg4vQO9W3qAviK9//3yDeO7oD4sefedZoQ7WI+bttHzrt4j34/vRzz0Fc+iFub/h1J0M8W1B+05LptqpaWYhrykXheUem5iUjuO+rhtFxGovjfKHH9tjeA8Y2HQf3LZHEY5hV3o+AhbXAUi62/Bz27+QEOjvqpmJFRDnqCsqL4/n4pVIJ586CcjS1KM9LTXnAfMuUiQWUl61F+RljcezLYBCPRSqFa5aAreqwmlxH9qA3TETEUk7ZcAC3kS81kO0uAK7y8WktamsEnTYtyiFUjjdYTqq5L1TA+h5VrsSuLszLSgz7u+ao9VgU2xCIYxtFROLKU5hJ4Bqtp0OPe+WoUWufknp/bBLnxXoxa7QhpHI76Kjx5mE/1es4voIB3E9PsF/0ekKUw01EJLd/F8TVWWx3oWC6eBaCWbUgGythXajnsA50dOO6wx/AnBERieg1XQ5zO7gf1x015QErKLOrm8S8Ci3Bmhy0TEdqIoPbrG9FP21defIqys+YOudYiEtZrLGyZTPGToO/vziA36l6WYhDPbju7Fl7BsSRGNamma04t2dK+H56ienM3aP8pjHlSg6FTBfWQmH5mBe+Wut3tuD6KVBWbsl8Ax94BMdirYJjcWoK89kP4dyaCOHavVO5n7vasU2dGTP/pY7HJRQIq7dxjOWKOB72jY9APLYPj+GM0pU61ROMJqQyuM2xqY0Qpy2safEw5ntX3wqI+/pxTFsO1sD8KrP215Rb0lXnSaUGfvGFwFNjv67W4G1J3Ne5LK5fJ8umn7djCZ4jtiYwN8fUGrulgvNgJIifb1fn0sk49ncwYJ5bt7TgZ/bvwdpeLGKu67m2oOpwpYSxmiZltoG3M5vHD3k+xsExrInhFI63gnKmzql1UdXHfajq6wUiUvFw/DnqXMKtm+fChwL/wo4QQgghhBBCCCGEkCaCF+wIIYQQQgghhBBCCGkieMGOEEIIIYQQQgghhJAm4pAddq5yNPiuuvdfeT5iUbyfPJnC+9VFRPZP4v3jI/vwnvegEpaFx/dDXBnHzy/vwnuwLzgXfXE7Rk2nVKoffRgd7T0QTyg/SSaj3GAe/mZYOW0mJkchDkazRhsms+gcGj2A992HQth3mRa877tcxn7yg3gd1rL1feOmb8O28DOWcv24R0bnJL2LhyDW7apU8N7+8RymdDhjOrzqjvIzhfAYlpVbqe7jbwaD6OlwAhhrZ05Xe9Zogz+DuV9TDkHLw9+MxXA8qTQTT7k4XBePsR1SXxARP4C/USiia8NSfoGI6vucGhuxOPoGz3ktei227NhttOG5jehVKChfTTiEToSFRbuNtMMOw7kcuhEefOQhY4u79++DeCqXhXhWHQNbeQajVaw/E9P6Nx+EeHBwwGhDJIL5Oqrqbr2GfoVyCdtYyGMcUrPIqlOXQrx++wajDbU8FpR9ytERD2MbF6UxD0Z+8xTEgQjmpt2HuTjnoAtDRMQYET72dbV6ZJxOSeWnTMTxmIfCWK/SGdzXmKnUkNlp9Cs+v2krxI6qN5FwEuK2BPpR9o/ivDY9hXlYccxxm1PeO+2A9JUSJZudhVhrP2pVfCEex35ra08bbbDUb1Ydta5RrpFyBeu0r2qCo/0mKmfcBnNtTB1PTfBIOZ0c7M+0cgRmlKNu9AA6ucph019VVetEawzngKF29C91DfRDvHk/rvl85YuJF/H4pBNm3m3Yix7QZA/OMckIjqeRrehaclXuZ5bjvJbsWwZxcfcmow2BAta3Fh/XGKVCFuM8uk3DIRyPuQrmeiyD69j2BkWgoByPev7Sa6uFYmAAHan2CNaWmNJMuTUcoxHL9IjNKof2I3tx3u1TXrFjBH+kqhxTZVXvak9hjpS18FFErH7M5coKPLcoObiuP2EYHV5FG495WTkIw3Pob3JazLpR26O8eeOY+6EuzLNSN47HUBvW0NYL0BWbVb7UTIe5zjw5uQTiux7Cuh5Rubug1LEPw8rjlVQ1LeRiDXRqZn23IrjNeBS3MT2BueUqDdeqpbhm62/Hc6CgcqBWimb+hwTPF7Q7uaDG0JYRzJMDWYztuvKgZ/E323zTBbeiFeuJo9ystaDywdZxDaHrUTiG3+/uwPP7jhb0SoqI5IqYa1XlKU4ElZN+gQiqv5UKWcp7WMZ25vI4X5R9UxJ81uvPhHj1seioe+g7P4d4ahSPWW8az1vTKaw/tRr2f1U7b0XEc7FdVbVGExcXedMz6pqMh/vtq/VTsYDfz86ZDjvXwvFmqzE9No1zQ28G91uUBzfv4VxRVWtlxzJrXiCOfefqudb6/S6o8C/sCCGEEEIIIYQQQghpInjBjhBCCCGEEEIIIYSQJoIX7AghhBBCCCGEEEIIaSJ4wY4QQgghhBBCCCGEkCbikB86kcmgRM8JonCwUED5n68klXP5OWObu/egtL6gZP+xKF5PPDCCssDuKMo3+/tRbprpQ1lnKK+s1iIiURQSLjrxNHx7TAlwHRS0u4L7XSxi3BtHoWrNNdtgJbBvFyX6IE5lUFabn0ZR/8Q4CsXrSsJbqSl5um0KDxMRFIDWyurBF2FTbLoQ+EroWFcPZyjlUQgZUQ9nyOfMB43UKtgfpRxuI6QEkakESiw7W1Hy3tKGEvHODLbBDZry83IE92NmCR7zqosyX6mjNN9VgnBPybhdG/PMavDQiUwbyrQ9V/2G6ut0GvcrrMSZWfUwAr+OOXTSKsxjEZFMCvv2pz/9JcST4yiiXUie34Sy8qCSl+qHM8xmsxBnC2bN23MA60m6C6W3baqP2zuwfkzuwLzY9Bw+0OGuu+/C7bfg9kREAkHMhaoSENeqWMPuuBPjkPpnnr5FKKqOd2A/nXjSMUYbnn5oC8QlwXzdOq0eaOLiGGt1UIi//bEnIc52Yj2bsc26G6rhZxxdW0rqQRV/aWzisLCoB/tTP7igNYPjNqBqZKgD3xcR6enEPPvVvfdD7Hm4jUwK68nYASV8bsW+y6RxDstOmBLqqQmctzKtKPtNqAespNX7qQTW3VQa62oiiXnnlM027NyODz0IKIF3SUmSa2qM16p4LALqwT2WyuNY1HwQg6vm53odRc31qilSXghsJYzuSeIxHZ9FQX1d5UgwhWNSRMRWuenUUQK+5OTVEM+q/qu1opg/oOTcdgvmYVbN5SIiefXgEE89RKdaUfOc2uZetS4tTuJ6a0kmA3HfSnwohYhIdqNaJ45iHs6OY5wr4m+4DubZXBn7PtaK80RqwBT5OyVcP1eU2NzWT7JaIHr6uiHOj+KcH2/Vxm71IADbfMDGgSnsv6898zzEK9sxtz8SxfklruY4v4g5MLMBHzox02mu8XZW8QEPNfVgir4VuOZb3IrbqB3AOTCpHvBgeUronjf7IWLj/J8rqzXezp0Q+/uxRs+q9VliJT4gpG9oGOLKGLZZRKRTPWTnNcfhQ1oGhnCbC0lLGutLNIH95QexTxP6PNg1H0zlOHjcC3PY54GCemhKUK3Ryupcq4wPzrOCOLZdB9skIhJRD6mpq9o+h2VY/NwqiGN19SArH9sUCeADVcayvzHaMBjEdcyi6HHYJls92KWEY2yuhvnuzeB62vKwnmUSGIuIeDbmbz6H83c4Ya6VFoKIj3nX04nj6EkXx9GsYA71rca+FRE581x8aM0xq7C+tKuHRt3xH7+COJdVD0Iq4ridmcL+rdXN3NcPvMxX9cNO8Ji3qjkoInh8XPVgi2we+6HmmNcyQmGcvytqfTVbwTVGSJ3/lAPqYT+i6zh+v+Rgv4mIBFTdjKuHYbk+HzpBCCGEEEIIIYQQQsgfPbxgRwghhBBCCCGEEEJIE8ELdoQQQgghhBBCCCGENBGH7LDLZ9EJEaxp75e69qd0GMGA6ccoKcdTawrvmc6o+37Ls3gPdVcfenn6T1gL8XP70PGwdbtyPojImb14r342i5/pHj4RYlvdS16rotMu4+P9zbkJ7LeYuodbRKS3TbXBVY6OE/A++3IW7+1/+Oc/hnjfXmxTwPDPma6Lsrqluq6u5dp1s90LgnK1BZW3I40pIgNp3LdjlmaMTSaj6IwIqNwt5rIQV0qYp7EE9sXK5Xj8Bpagk8MOoVtRRKSgfGcDvb24zRH0BbW04Y62Kb9TULmYPHU8/QZ6mmgCPQqOcvlo1WHIxn6qCPoH2jvw3v+CcoAVs+hHERHp70Qfx6VveQPEt//sbuM7C8Ujv34E4nIOXQYJ5b25+OI/hdjxTX/Vkxs2Q5xOqbHtoeuorwv9PvVx9DHNFbGPS9vQDdcaMf9NJpHGdieV/yiawBqWzmDypFsw91pa8LjHkphX555/utGGuSkcU889hy4dt47jeE9WefRCWNOCY5i7+VmMnZTp8rNj6IYZVY6gnDreC4Wv5pCIqt/am1YvYjsjAbO++0rM6Xqqvtv4G0bWeFjzlixBP2yHGseLDphej0gEf6NF5WFAtXtiAn2PZ56OftmePnS0OD7mSG4a50ERkdkplPdMZ7HvggEsep0d6JXyVGH1XHSupJX3bXbOdKr5yrlVK2O7tTt0oWhrQQddRxLj7Ax6ddqU/zei5a9ieiG7hldCvLR3AOLn92AdyERwXnPqOP939WQgtjtMn1NReXXsFG5zdhLnpSVdOH+XwspV6mLOzMxintm9i402LDr2DIhH9+E8UFFusZAaC76LeRdQ47GaxfXCpJh556j52FZ1RKXygjHn4pgM+jg3hIJ4mlJTYzTrmK7KGbWgdXzcRi6E88FoCOesjI95W7Mx9n1c+8x5yncqIvsmME9abFzDzaop6cejuI5f2Y+esGG1BmyPoBO4uAvrpYiIW8Y2+C7ux6zKXZ1nNeXgrM+hX7D27DaI42K6maqqTiw5Fr2V9f3ob1xIAlVsr2th/9R9HGcltXulgrlGCIXxQy0W5lZEuSLDjnK5BvB8IVBFv5lXxjVhLJQx2iCucquqwd2bwt/oyWB9KrtYP4ozOMZGJvCYtQbRESkiklaetsVduB+bxnZAbFu4Fg5Z2PfaH1spY1xOPm60wQ0rh2MFx1BenUvL8W82tnE4KOVw3+wI5kBV1Ya+JThPvvHP8HiJiCxbievZcAzzcPVZ6Lhz1NWfh776E4jX78C52KriF1ynwTMBwpjbM8pR16bcx8EYzsVl5aDNzyl/rLqEEwiYl7Cq6prBXAXXVyU1/jaNYg3cM4Xfz6vnDnjKP1dtcD2lRa0bk+pce6ZB3TgU+Bd2hBBCCCGEEEIIIYQ0EbxgRwghhBBCCCGEEEJIE8ELdoQQQgghhBBCCCGENBGH7LDTWhy3jPcW++o+XlvQBeBapkRrVmnRcjm8N9iv4r3Evcp5c+p550G8aCXe1/3D2/4d4p6E6TcJ1PDe/NGdeF99z1K87zvavgzihI/3XJdm0CUS8/C+/FrZdF1M5fG1TCf6gdp7BiEuF/B+dxtDccN4z7alnDn1uunysxz0AVg+xo6+4X2BWPvaNRAvPRadgvtH0dvR34c+uRXL0ZsgItLT2QVxwMf+yeezEFfreHx0fyYTygmWxPv0A2HTnxVSLr5yEe+jP/k4dEwMrhiEuK4cNr669u54yrnSwGsVCOExrVeUn0n5h2zlArKiapvq/aryHgYD2qUo4tayEHcqB9FZZ59qfGeh2LkLHQ5zE+jaWT60HOJYDPNg/36sBSIiu0f2QJxMYG4YuZbD+lTOKr+VysVlw0shHu5El4KISEr5DycmlEu0DY9j7wDuVz6HbQwrlUXUw1rf0qANr38j1u4Z5Scd34d9N1XFH4nPKZ+p8uoFLczl/hTWBRGRRDc6gEZ37YK4VjI9UAvBnr37INb1JZ9H/4X2fNXE9I26QRx78RT6yWpl5RrrxHkrYmMeDi9Fv1JEtcEOmTUvrBx2sZjy5qlc9svY/9UcrjnqaWxTey/mmd3AbbVkAP1kkSjmUa6YxTaHsUYGLYwdVeMCQcx9t2rOtQHlvvQd9LwkE2auLgRLevB333bR+RDv3jkIcb6Cx6NaMffVqWJeDfah381XTkC/A8fknFqrFEv4m4s6cC53fNOrUyjieshXXq6kj7ke8HDt053GXC5O4FxdGMV6WK+abUh0Y971rT4bYq+ONXhiP65DSwVVi1QbWxKYd0Exc19p3KRewm3oNfxCEVbHLKjWNh3Kr1kLYE4FG6xnSxXcpnblLhpCJ9RoQfWX8hSFlYfNUuvhmodjWESktx2dUkE1deeUO9GfwTzaP411fi6ONXZxVXmwpkyHnai6bju2eht/o+RiX/rKuxcvY44cGMW5Km6ZOVR0sA0ZVRM6TlhhfGeh8CbUmjeGeVOzsXaElXMrHEKPuoiIXcNt+Mqp5anc6eo7CeKQi57Pyf1Yf7TT0YmZzlO3hvlYLmMbojE8rraqDekMOrXDLcpN1on7GFaOLhGRXAXXy+Pl5yBO9mAuRl2sw9UKngsEXHTW6no1NvO00YZICNc5bW0nQGzXzWsCC8G+aRz7j2xAX3bnMK5l1l39NoiXHou1RUTECmINq1ZxbNdqWO+PW7MK4t1P4Zxz93/eA3G4huuWetWUnnrK/ZlW54gDvbhuFLVOL6i8nVV1PFvFubvRX5yFQrjNfAi3Gcpgru7dh88ZGMvj5zsW4xpj/z6c/526eW3LtrBO5GZx/q445nxxKPAv7AghhBBCCCGEEEIIaSJ4wY4QQgghhBBCCCGEkCaCF+wIIYQQQgghhBBCCGkiDllMpm41Fle5Wywbr/0pnZX4ZdOrYynVR1s73lvcE8f7oU8+BV0Hq85EZ93sBPpNIg56QZYuQo+IiIinGtHTha4Lp4JtKGXRBVBTfoZ6GbvUFbxHfodyPoiIbHjuNxCfeQb+RnsPehJyefQ7hZQ+oGMQ7zX31LFxa+a9545y7cxNZiGu5k1HwUKw5oRjIF79GnTYlY9DR10ijS4r0yYj4ivPhq3cam0J9Oj4Kpf1VW7Pw19xlPtN6mbuV6vKCbUM3T6xMB7DchFz2dfSCeVW8tWA9ZSTRUTEVf3gKZ9QrYxtdD1skx3U3krsmfw0Oll2j+w12vC6s14DcamO9/rHtSdvASnOYZ+XKtgfkTh6QOby+Pnde3cZ28yo/HSVX8mqoNvgwNh2jPdP4edt/Py6t6PrwivMGG2456H7sJ3PovumPY3+hbFteAz6lYdqrj6OPxDC+tTW3m204fiVx0FcuxTz99//7VsQl/PYT/uzWOsliG2uKo9MYQo9FSIifepYhJVTraMrY3xnISiV8Zh6ytVSU77Rtk50j3me6bSpVLAGDQygw2njc1sgDqmx3duD82KnctwF1DwaMnWVEo7gMY6r8RPQns0y1uFyDn1zM5OYZ77yDcUa1A79my0prHm5Eo4X38V+i0XRJ2SpvNN+2JaYOW+6qm9blJsqZCpRFoSWAPbfa0/GcX7aavTP5EuYp3U9UYpI3cH+dUrKyanq3VANf6OkPDmFIn4/pDyssypHRESiQ9i/5Sr+pp9BH9Do2AGItynv6LGt6LTZM6lqrGceQDeKLqXkkpMhPnt4EOKZvegT2vLUkxBPjOF4TVjoixLlLxIRqbjYLkutW4JHKPFiZRwj+x30N3Wpcd1azkIcnMDjJSLi5LE/Vh2LXujFK9E/O/MM9mevdm4rL1JI5XqsYPZ3UPA78TjWjq07dkHcUcRtLh3Eur4vjLVofDvudyxvzvWWGn+WyoGK8gHW1LlCrYjvz7hqfRbHOTRfM91MxSq2YWYU1wvBxVjnF5JjF6Ej242jI8tVE1mvqhVRtYYQEbE8rO+Tk1g/ZlSfBqLoRa9UMhCX65j/0RiuM2s1fF9EpFzEtXexiPnpuq6KsU0tynEbS2LujqqaVwmY89wB5eVOTmMeBFpxm/XcLojjNtbt1tggxMEw9rNTxc+LiCQieO68qAfHfUiUU22B6BnGaxFOEtcNJ52C57nLTsQx4vpq/SsidRfzoKbWLvpBBOEkzp2Lj8e+KfzoXoiDdbVWKppjPawu/Jx0DDq1B4cwnivifhQncH4fK6maV8I5KxAwr2UEglijkj1Y8173pjNxmz/5NcT76/sh/tM//xOIH7jnUYgfu3+30YZR5bmrV3EtZTV4psOhwL+wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIk4ZIedp7w55SreSxxOoKstGMR7/wM23qMtIrKsBz040RhePxxcgp6dE886D+LelSdAvP7R2yBePIDb71l9vNGGcCc60IJx9GeUKniPdTmH90eP70cv1+w4OurcOroEYil06IiIdHRgX+3d/zTE3b14n71Twjb5ynlkFdHf4fp4X7j2m4mIxCLYhnAPxrnIkXGJxRLoTUtG0TGRiKsUDuK94Z65q2Jph512ufmY215dxcoHp/2NjjLn2Q26zrfwO8kM+kocF7fhai+O8mT4guPT1j/qmo1w1Rj1lXNFHByzloe/EVFtCrm4T4kKvu+PYx6KiEzuRJ/JopXodpiyTVfDQlFTnsGS8gJtH0G/3I9u/wHED91/v7FNy8fjMJ7D/ZvcjfUkpCSMdXUMwj1Yrx5+4EGIqzl03omIbNy2FeLiOPpLspP4G5l2rFmTY/j53Bz2S2sG3SQ1F39PROS++56CONaCrpHWDvRETdXRQVeqYhtGlePOV/UqPmc6hgLKgZZpx74MBA55enxF0U7NagXHYcTw9WH9j0TNf4ezVQ1za5jb+dksxKUCusCGFuM8GVP9m4yj8yat/DQiInUHfSSui/sVCGC7OzpwmxPKb3JAeXSefO5ZiJcpL6iIyMQk7tf+A+gacQT7MtOCbQip2h6J4Nhw1PxTrZh+IVW6Jd6WgThXODI1rzCD64Z9I89BvKgfPWD9veimDKocEBHxlFs1N4X1KJvF32xvwzpQVO7jUhlzpqjcYfkCjmERkZXD6M3RPqeKcrV2xnCNEapiG9acjg6cGeXZ2TWGjikRkZqNeeKWVV60oiOy7wTs684TXg+xM4vz5symxyEeee4Jow1TO7AO22HsBzvYyPh7+JkrYv/dN4e13cGUkNd5mAOxiTFjm1G17n7NmvMh7htAb9hPfr0B21TF4+MGsY115SCK+eb6qrIP2xVowzXe0lb0oVVczJtgAuv8CWedBvGMUkjNPInzmYhIVS2AvSDmdlm1O5FQnR1TLuWwWl+34zlWRUw305iq03NZrAGzm7dBfLGxhcPHCSeeC7GdxhpmJ3H/M1F0tQUi2J8iIgHB+fv5Legon96DY3dkDHM1FFQu1iT2aVh5nv266W4rzmFNc3xMlnAY21gq4DZ37kKHZjKKv+F6WNcLdfP8fjKPa7bh+iDEM6M4pvbs2gRxqIb7nUliv/UNYq2fc0yHo5fB49UWUl69iDlnLQSZXqwFV/33KyEOq2shdRuPjy2mu81Wl3NiMdw338fvOB7mRN8S9OStWIVOu30bsO9813TYBUJq7R/EeW/9DvS9TWSx5o1NqvOhOcyrnKq7dsA8p0xGMa9OP+9siE+76HSIH31mBOLSdjwHS2Qw99/ytnMg3vr8j4w2rP8Nrp3OfQv2Zc8g1s1DhX9hRwghhBBCCCGEEEJIE8ELdoQQQgghhBBCCCGENBG8YEcIIYQQQgghhBBCSBNxyJKekPL5zObxvnu3gi6EWBzvZQ7Ypkysqx3vL997IAvx8MlvhHjR8RiL4H3A9Tw6OdIpvMe9c8VJRhuKQbyX/Pmn0f1RLeM2czls49ToHogDyssTjWK/9Q+hj05E5IQV6NNwAuhNCAUyGIfxHu2g8uSUdo9CrP2DToPLtIUA3hseb8c2dPcpt8UCkUrj8fGV36lUxf72q3hffbVquhW096am/AtV5axxHHS71OvKZ6K+Xyrh2CgV0T8gIuJ4uM1UG+ZqKp2BOJNC30k0rJ0Saj8t9MDYgrGISEr5FKcncBuVMvoEPA/HmyXYBk85DVpS6PdYshidRyIi5RIeC9/DdqZTmIcLSVodk7oaNznl+dq4fj3E4yPoRhAxPRNx5REM29infg2PiS1YZxcpv2VbCo/RbMl0PCwdXAnxbhc9UtkZdI+4kQzE40VVb0pYX7Iz6BqxAqbXpmKp3yyhM8UO4/zhBVS/KJdOSbnFXDVmE2HTqZZMY19ph5rnm56QhaCnA10ikRC2Kx7BvojFMScc16x5IeUyaoniOBvux7GZUfN3X1cG4mQE+78lgbWkYpv9Hfaw3Tnlqoom8DuhOI4N7TfZO4N1dst2zLuxCdMfl5vDbdTrGB+7qhfiZBTb4JaUt0V5PH3lN40qV5CIiKvmY0utrRzXrNULQUb5qvLT6OA6oOasjh7Mu3QD52MilcEXlCMqYOFcmlJpk04qD4+qj46aezdt3Gy0obMT/XDxOLoNS2o9cOIg1tS1p5wMcdnBY1xSh2v5gFk3xqexDu8fQ9/S2Ah6c/a4+BsV5QeMZdD1mjkO18YnrXyt0Yb+EXQ8PvvIzyGeHDPnq4WgltsP8fZpHMdl5ejKLMK10IkhzCERkVQQD8rQAPqwW5K4rqyqmlktYRwO4TGt+Op92/SIhWvYhvIMHnM7iOPFC+AxH1fjb3bTRojjUaw9+Sh6xEVE8jE8x6qq8aR9jvEO7JeZGtbQvKpddl15RcdM/6YdxbqSU2M2kTOdjwvFshNOhdgPKdekchcGA9hfAdd0klsxtTZ5DvtsdC+ur2YqGKeSeBydMWxDPILvd7Wh71dEpL0F164Ftc6uqeNaV57cQhbXthW1LrfV+UahgvVLRKSgvpPz8DzIUtcEQhauQTZuxzVhugO/PxtUftmEWQcKyvc3PYv5OdR9CsRruv+bsY3DQbGK7Uq0YR55gvui/XNWwDyJd9RzBXxffwb7u1bHHMh0Y3++5e0XQfz/jf0Y4lK2kfMUc39aPbugo0vlpYNjv1rH7wcTWL9iAcyprk7znPL01x4L8Rl/sgZiK4P90jeENc/zcM22fTvOi295M7pEV67ENaOIyJNPbYF4364DEC9Z1md851DgX9gRQgghhBBCCCGEENJE8IIdIYQQQgghhBBCCCFNBC/YEUIIIYQQQgghhBDSRByyw65axvud4xH8qqV8CiEb7zX2G3hZYkn8ziV/dgnEZ150AcQtHXi/8vjOTRAH1G9m83h/9OQuvK9YRGR/Hu8Nv+/22yFOxvB+5koV74Hv6cZ7sluUc2tkH97bX7PNfmjrG4R4xfF4z7W46AKbye6DuKT8gbNl/A3Lx2NVKZv3nheUe8cv4PFelTG+siDc/uNfQOyGHoR4dhZ9J4W5KYgbqBMNr934OG7DVb6ntk50RLR2oM8votw9xZksxFu3YZ6KiOQKmEcDQ0sgDoQw71pS+JtDQ+jhWTSA3quhpcptFsEcERFJKT+Tl27BDyj3WF2N4UAQr/cH1G90DyrvXgvmsYhIXbkZlKpM2tpUmxaQpHLYBdXYrk2jF2RqK471gSR+X0TEUq6bvKqrFVUfrBi6LSIWHpPJcfTiPPn4MxB3p9BLISIyPZuFeK6MHpqCKg/lKfSZiPLoBdVBi4WUf6lmOtUms9gG11YOzSDKrCwbc82Oai+earSPDpBi0XT55XL4Wmt7Rm3SHDMLga/2Nao8RCE17kIRjCt55VkTkXodx1k6hePqpJNwrOpjGArhMQ4GtUNT9b9t+uMiYayTyaTyN6r64Xv4+ZDql42bcT4vlpTDxsXxKWL6ScPKiWrbWKN8C9vk2diPOTV28iXcbz02RERqym3lVPE7tap5/BaCXlXvrBr21cz4BMTPPLsd4qefM9dX3f3oDjt77TkQ93fib1Zm0UsYUHVAbJ2HmCOL+9BLKSISU/NcJIx51BLG8SUp/I26i9vMl7Ffyi7myKZtu4w2zFYnIT55KXr1Cl24HyMH0F+2aTe6+Z7ZiX2fV57Rjha1TyJybDeuCU455/UQP/3oXcZ3FoI3LMF5dXIGHV1PjGBO3LUL1/WxpabnNp7EcZwKYH/U8zjmXAvHdVGNyaha47naIWWZf/vgqXo1U8Q1n1/BOhBWbth6VvmZd6AvO67+3qIWN9dKGxysJbumcAxHVdkOe1jPQsrBbdUx1ytZXH8UfXO9EVR13g3hNpa0ZozvLBTxNNYfx8M+dfUSIITHzPNLoomq89p6Ecf++DZ0EfpJzN/OntUQb9+CjseypdZGRXO+CPbj/G0pf9mBPbsgLpZwjVcqYa4GXOVQ89XcGs0abfDVOczeMVwft6ZxvwcWo5ezWsX9LNewTTV1Lp5qM32xFeV1qylfYkTQkyfHGZs4LDgOjm3P0M1hfweV283xzRNbX13O8dV5f93B+uLb2DdOCPNo4IRBiGM9WF/mNqErX0TEUk7ugdOHIL5k3RsgPjCObreJiSzE+aLyySs3e38vrltFRBYvxvP1mvJQzpbRGbloCTrsgjbm5c6tuJ+Jy7HfTjkZn0EgIvL0U9sgLhfxeLv1Rv6/l4Z/YUcIIYQQQgghhBBCSBPBC3aEEEIIIYQQQgghhDQRvGBHCCGEEEIIIYQQQkgTccgOO89XHiJP3dPuqPuhlUPIssx7rqMR5dFZg+62iLoHfuP6pyGe3Y/3n1eVdyI/i36FvdvRHSAiUvDxPvmQi9tIBvHe8Zao8g20ogPhwDi6R5w69kMpj/fdi4jsHdmjXnke21jIQxwNYl86Ebxne9rBfo0pD1Y8pbwwIhILovMjr5wGjme69xaCu+59BOLMopUQ+y7259OP3AvxkkXoRRAR6WhHH9zoPnXMVG7H2zIQ19S9/+PKU3jBaa+F+KQT0EkhIlJSuWqHlMNmz26It27DXN/wHI6FTBq9L2+/7K0Qv271CqMNYR+v1y/qRd9QTTnsLFv5nJRHoS7Yb3YQ40gG81BEJKY8L14A64xppVg4POU68pXQJKw8NiHlCVvcgm4EERFHudryyoEVaMHjaIexz8rj6OCoZtGhkp/GWjFlyDFEslX8zuDJJ0A8NomOh+ws/mZSOVcqJfSZ1EPY5krVrB1l5XCwVW5F1X77FtZRVznrAsplZTuYm552rInIxGQWYgcPnwTDR8ZhV6tjf+WLeLzsFPqYylk85nVHudxEJB5Dt1BAucCy0yqvlMNuroB5qr1evjrGoaDZdyGV+yVXuXdU/9fK+L725o6Nof+k6mPOVANmP4SVey+gXIilEjbCUf7FSBi/P1fBfhmbnoXYF+1aFBEf+8ZS/qxY5JCXZa8ozz79BMT+NM5B6Xb0rj35PHrVNjdwt73uPPQQf/s734L4LRecBXFrFPMuqvI2GFK5X8Gx0dmOayERES+C9Wr2JRyBlqrrdfXv2paqb9t3o1P45n+82djm1ASuRU8/A/f74svfDXFXD/Z1wsE863Mwh57PYn3zGriSJ9SaYvlidEIvXXms8Z2FYEUf5vt74+jnHYigQ+ieLbjm+9Uuc5yftKQP4sKOEYiz6pgG1PyQram8imMeur7ylHlmGyZ93OZUHOf2ShCPUcrCfkik8Tc95b6UaVyjRyKmy2+fqk/TLo6vHnWOFU9gG1MJ3KavnLtTNdx+MGA63QIz+NpxPtbQZN7su4VCTUmGa71ex/rvqPNDL2zWEk/tj1XA9ZRTQGd2ayd6vqqT+H5xAs8vHOXWrRe0Y1hkWm0jEMEdLZfzKsZt5EvY5oCt5qQA9sOiIXPO6urF89C4Ulj76vyhWMfzsKFBrANBFx2cpRqeJ9tBrMMiIjUXz3UTSTwfbDBsFwRLeaD1dYKguu6gl6+lkpl32lmnvc6uWheGlNu1pk4VYhlsQ7IvA/FYEXNIRCStPOhdw7hOTA9ifYn2obt9mYVxvYzjr1DB/fYaPBvBtrVvEfshEsBE7OjE6wGpFpzfwyGsgfEUXvM58bTlRhtaf3Q/tlPl2e+7xuNf2BFCCCGEEEIIIYQQ0kTwgh0hhBBCCCGEEEIIIU0EL9gRQgghhBBCCCGEENJE8IIdIYQQQgghhBBCCCFNxMsw3ymprYMyQC0DdpXBuyamHLA7jULCO3/8U4jbulEq2aWl+CUUZYdCKBNMJlCAGNSGURFJKOlqTxcKCMt5lEjHlLBwenIK4noN9zsVRellrWA+dGLb07+B+MDmrRBXlXBYQrgfrtqvxCIln03gsbIjKAwVEYmqh0q0CrZ71WoUoy4Ul7/zLyCOdKHgsZRHUem2Dc9A3NuDOSMiYqsHHcSimCc1D/t7xXH4m629KLYudWAeX3zRn0Dc6CEfRfXQCeWRFUeJMisOfn5CSax3j+zH34zjPo3tQ4msiMiu57dBbFfwN3aOTUB82htOgXjJIIqd60oAakdRLiwhZZUXEUs/zEQJ2MOW+bCAhSKrZP7VEo6jRA3HXWcP9sf0buw/EZHtu1D8PVnHPm9rwwdV2Kp+FD2sR25dyWuVjLZSNfvcUQ8AmhzDGlYsoCTar+Pn4xGs9TUlorYiWCOdiinIDWuZtavyvYp97dnYhpqafyIhzLVwVM0FSvgtIhJTr9XVfuo6sVBMzWYh7lNzkn4IheOpHGo3H3aSz6nvOBhX1cMVPPWMqM3bUdpuq3GpH8CyWNUGERE7icekUsTcdFUbHCU0j6jf0A9D2TqKY2uos9doQ5sSBgfbsE4Wi2gHnnXwN4JhXDLlVe7PqtjzzRyy1LIrZGENLDYQSi8Ek+oBNptDkxAHJnAO2XMAH/pxzgXnGtv85P/vUxDf8s9fhvhnP/kxxMf0Y66Hwmptk8Lj5bqYQ21pM/c72/DhCkH1gJqwepCIreT/BTWv1YJ4TP/lK7dBvHHzBqMNuj796Mffg3jRyuMhPn45PiQqFkERdouPbepT5c0JmnlXVA9N8muYZ0v6UfK+UFTVAx7aotjO167ogHiqiLXnyVEcoyIim8ZxnlyuHr5QU+PYVw9nyqs5y6/i8QtF9ffNh+rpIqqPYd7HWpFTDwFpX30MxAG1FNpwJ4rNBxrMs4ta8eEloubVaBA3OlfHfipO47HpUXNmXweO17B+OIGIhGbw+CxRD94byGSM7ywU5Roeg1oZ60lFzUGuj7Hj4DpcRMQR7OPSHK4j7QjmdzCBfZadwgdATB3AhynUVN44rvmgj2QG5z6noh5ioMZcqYy1vuLi2tUK43lyUD2UqmOROdcuW4HnjGPT+CCMMJZysWx8v1bEvu1pxRopNq4x/KT58I0tm7EO9HbiGEuotexCUa5h/wXU2ias5ihH8PMlNY5FRMoVlWfG+hW3kQjgWHYt/LxtY55levE81wmYjwS01TWYtjb8jj5HrAmut2wHa5il3hf1QIla3ewHSz3Uy1f7HQ6oh960YA1r7cD96u3HPHNtPHdpX2zW/sXDuE39wMKg9fs90I5/YUcIIYQQQgghhBBCSBPBC3aEEEIIIYQQQgghhDQRvGBHCCGEEEIIIYQQQkgTccgOO09JtsJBvCdeuxDEVvcRB5RXTUS8Gt6fPDWFPrLCJMaxOt6j7gm2oa0V7xvO9KG/wXFNx8PofvwNfb+zrZwMNQfvwQ5YeL9zIor3xDuqWwL6BRER5ZRya+h8sFXf50p4X34tgl6FVB/uZzGWhTjvmfd9V4p47ba9ZSnEHcqjtFBEwtiurZufgzg3p46fj31Zr5n7WigUIbbU/eTRCB7TegndAHOT+Bvje/ZC/Is7fwHxbB6/LyIyV8BjnGpBoUO6FV08iRZ0A+zbh866ro5+iKMt6Nl78GfYJhGRmW3PQuyq8bh9DJ0S+4q4H8tXodsv3YK5n25FX1Qsjg4XEZF0Avs6FMUxHY/jfi8oZeVoUOXDsdCFUFSKzAOW6cw8oMZ/oabqwTTmRSCkXCMeft5XtaGs6pPvmw67sPIpjSoPp6N8cpbgb0zOYv0RNX585ZUKxUyHY4vyRmnnqR7HAeVkigkeG1s5QEJqHy31eyIivupLS21Du6wWir37cWyHlLNUu90GBnogbuRAyxW0w071r/KglpQjcNP2nRBrH+z+vegz61DuEhGRdDoD8bZt2yHWc+8lb34txBEfa2RrJgVxLIf1azqbNdrgqfGm+zZXwBpWrOJcUVJ9b4eVl6+uc8rMIU/l3ayaCzoaOE8Xgv7BZRC7gvW+rnyb4QQ6cHoHcA4SEfHV2magbxHEd//XDyDOj2HexGPYvxGjlmDtiQRNr472V8ZjeIx1PYyG8Td85cOcLGO/PL9pI8R/8icXGG048aQTIf7q19B79+gDOD8v7clgG+OYp1NjuO55Zht6j0MJM4e6W3CbrvJ1xcJH5t/v9RixlMeoN4PrhjOHcF2Rq5lO5l3Kx1gKYJ50DaDbOBDGnKio+lhRa7hgXbl2Q2Z/p1XsjKMnrEX5nKrKMzqjakmmFcdGRjmnQhXTZdavXLFh9TcaVgJz2wrh5+0CzgPdQewnpRsUu4Ezt6T6Lh3Adg4vNteFC4Wr1k9aRRgN4xxTV/NBLYvznojITD0Lcbw9A/HaN5wN8X51Prd3ZhTizmE8Rp467m7dPO41QU9gogU9XBNqvq7UMDeXn6RcoDHsmOk59JlmuhrMWercuFzAvm7rxFxzfOyHjm4cQZ2d2rGGbsts2fTRdWbwO5EAfmZiv/LDLxAVrWZTa4K68iDW68rtZpnetHDkxdfUnkpu7YmuqLVRXS1dUmmcRwNh8/wmpJzbkRAeo2oJf8Oxcb+8KuZy0FPuRVVefDFdcE4d62qprHzNNvbTzAyO6bLyO8bVXDqlnJxO3ax5CeVKLipfc6mkEuAQ4V/YEUIIIYQQQgghhBDSRPCCHSGEEEIIIYQQQgghTQQv2BFCCCGEEEIIIYQQ0kQcsqTHtvA++mhEeT4E7xtOKE9IIoX3MouIlJQTpT2F9xYH1TZrc+jU8tS9yKUQ3h/d3T2En2/gM1t5AjpVHrn3V/ibPt7PHFK+prJyA7Wk0LMTDmIXByzTYVeoYD+MHMB7+bNZ5bqw8J7rzhV43bU/g8em5mM/zU6ZzoNwRbn4+tFZVy6Z92kvBPlpdLXc818/g3jv2D6I7To6CZ59Fr2HImI4txzl/RJ1jO766T0Qh0M4Fk56zckQ15T3Ilc1+3vnngmIp6c34TYq2Ib9Y7sgHtmFnz/lNWsg/sgH/xriXz/2qNEGR3koclX0CZSVU2rnb9DV9+CT6MFIBPG+/JByHAQipo8upRx2i5YMQvynb38HxLiXh5egcnDUlVetUMb+mslhrs3UTJeYE8J64DvYR5Uy1gJLeSbqPuaFrVxiiTTWn0DA9EwEVE3y1T/bGP44tQ0d28pXaqvtefoFEbH1NpUD1VWyCl//htEG5eZRY1wssw2e+g1dBoy6sEA4vvbFoDOjRbkgtZ9OH18R0/daVF4PfYh8T3lRY/j9iRn8/voNuyFOxNCJIyJS1eIWwWMeVv7KTdtwm91xXEPo2tHTg+9P78a5Q0TECmJeTExiOxctwnlPO46qym1VUl5PR33e9UxHTqoFXTA15ZYpaq/lAuEIjgdXtSscUWs6LDVGHoqIjE9g/07N4Npm3xjOQb6DOaLXmXXli9Emn0jIzP2EctIGlH85FsXxFFUeYk/5z/ZM4jpUfHz/0re+1WjDmWeeCfHevbhu+dGPfwLx088sgdit4DwwO441oTaN3qugi2sQEZGSg16rnbM4n8cjpudzIfBV//mqLoc9nEePbcNjPNmL40lEpKjWMo6aVzva0W8dTaJzKKtyv678vo6KqwHTo2crh22LqrHa3FbL4TEVdV7gj+GacZHyN4UC5nyVKuM2uwI4nmaV6y+SQk+eV8dGO6UsxHpt20BhJ57yvvUei37locV4LBaSWk37epVP0VMHzcX3Q1FzTRtVbtVkEeP8Thx3p6zG/R9erdZsdje2uYxteuIB3J6IyNQU1rxYCttQKmMtSLfh5084FevPyMQW/IEU5l7fYvToioi0tvZCnEygR6/sYB3NK/eu52Ob9k2hv7wto/1o2hopko5hPteVt7NaMdfoC0GxhmPVqWN9D4bwGOfzWYhTCdP72NmOaxc/hDVMr+vLak4pl3Ct4gb0mhzbbIdNf1y2gOdAu0dwvm/txTwMxDAPfRfrqlfHsZCvYBsrDc6xDI99XdVu1S97lM9xLo/7YKtjkStgm23fnDfLFfyNbdtxfp7L0WFHCCGEEEIIIYQQQsgfPbxgRwghhBBCCCGEEEJIE8ELdoQQQgghhBBCCCGENBGH7LALB/HaXkk5IgLRBMReAO/tL9VNl0tA3UscCaNfIRTCbYbjeI96ugXfH1NukVI/+um6BpYZbRidmIJ49amvg7gwuR/inVufh7hYyEIcDOB+ppVTyhLTT3NgFH9jz270TtgR3M+WbnSsdLap31DuC2sGv986ax72/q42iBdlsO+2b0Qf0HmmpuWw0NuNHoTlg+gl9FV/Bm2MA9plJSJ2AHPZ164elcsSQl9AX18/xOdeeCHEqTgen3QUPQoiIhufewbirdt3QNzTPwhxRYnGAsoR+dzWzbj9rVshjg+uMtqwfz+2qzWDcVcY782PJ3F8zoyhY2p6dDvEk1M4HiuuNg6J1JXz6UAWc/PMC8zjt1AU8ugqyOXQxVIs4FgvFtW4a9D0lgyO1UjMdKDANpRcLBbEYxIK4/e1Xy7UwOmkHWeuh2NGOyC0KUq/HdACNAs/4Lqm2Eb74QzvhHrfVW3QHqqg9vKp7UWjpvND+660OynSwLm4ELS2o5ulRc1zUdXumRx61GKqNoiI1Gu4bzUHY+1MCSufVU25RSZm8DcrDn6/LZUx2rBoKe5XvY7HOKc8Lbv2of8s3IlOG9vH7yfj2Gary6y7LTEcf4Us+kp27d4F8fCKxRDXlG+r5ip3lZreteNORGSxmq9jUWx3tWy6dheCqSz65OoO7ltQjXNf5dDTz6JjSETk+BPXqM9swN9Q/2ZcCyr/rnLYHDiA67VKFduoncEiIiGlhNJlORTGvNI101Xe0ILy6LR1oGOqQ7mERETyym/a04vOp5lZzPVf/vLnEFcKOPdMT+PcVFSOzmCDeSWgcre1G91ZXd2mh2oh8FTbXeXbFOU1TCsP5WsGTD/2dH4G4to4eorqRezPcALzrqLaVFfrL9vDNrl1c46zXOVKVtushXQmYj2z1PhyA8qVpLyubgPnqq/OBaIu5rqv3Flj0SzEdTUPeCqtQsojWiqZtSusxk+n8p1Fg0fGnSgi4qp50VX9FQziOsIKKrdrC+aNiIhbzkI8ugd909uew3VyKnoMxJU2PNcqq2PUHsM5yfZMf2Jn6wqIIzFcQ1TreEzSHRmI6w7+Zj6Pdbd/EdYOS8+DInL/PY9DHIrjb3YtVq5Kdc1gbD/WxJqL89NMAZ14bVE8LxMRSSdxrnXUdQzHOzK+2LzyoIVDOAYiQRxXYbXOty1znrPUa7UaHpNSCX2T2gerhbD6LKCu1luBqPn3XtksOut+9vO7IW5pfxPEg0vRP+qK8s25+Jsl5Q3X/Shinlvo+d32MD4wjnllrI0jwRd9323kKld5tX8PXuPR8/ehwr+wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIk4ZIddd6dyOkzjfb9lF+/ZVYoI8W3T8aC9Qy0t6P4Ih/Be43IRPSAx7WeqYfybRx6BeOlKdGqJiOzbh74AW3kh4hFsQ0DdZx9TbgDttSqXMXYc0/GQVL6RM1+D/oFoSt2HH1B+pzrem17ei/eu23n0N3XFU0YbXrNiNX4mg16WJw+MGN9ZCGYm0UVyxulnQnzm2rUQRyLKbRUwr0nbysXjKcdGQDlUtP+pXMP+nt6HfTNTwfvwZ6ZwH0REdipn3f4JzMNkF/oZJILH0Aqjp6rm4H30d93/EMRLho832jDQhs6HqI3jJx7CvKxW0Me0M4c+x6TKU1c5D8Zmzfv2OzoGIS4pt8Y99/8a4qve/xfGNg4XU6rG6TyoVHAs12oYh6JYO154DV0Vuj5ov6JtK5+Pin3lJdLOBzto5n8sjsdVe/K0pE477jSWkvVZhiXKRPs0tOcuqP1yqi7rNus2mB6+Bm1SH4lG0UdzpBx2edU3nvIl9XV3QRxWzrpS1ZxjEnHlOQ1if1sB7IxQGI+5pRx1pbLyz8SwPiXb0U0iIlK3MTedIMbRDO6Hpzwu+QL2y/KlS3B7Y1hfnKLpzZ0rYC1evmw5xPv2bsM2K1+JpZZMhZw6VurfQJNx0yeoXXvFIm4j0GB+XghcSx1z5cwqqLwsK3/M2CTWSxGRL93yzxDv3o7e04KqqdtH0Vuk/bK6TtTVutNyTZ9MQB0TXZ8slcu+pVxieoOqtsQS+JvT02Y/RJQPNjeHa9lqFX9z16592AaVh2qaFD+KeWbaYk1PUiKCY7RUNNfoC0FYraEDal9qWcwz7Yvry5hj7Pg5XANvyuLaf2z/HohzZTweBTXnVdR8E1J56fhm39k+1oqimqNKau4Oqjz1qp6KlSNXzYnimUe9ouq8p/xORfWdSkSNH3XeFlVrQs/FuSbhmeNvWTfWs9Yw/mZpOgvxQla/UAjn1rqaY4JhXG9VXHS57R9/1tjm5t+gpzMVwHGWqONcuem+9RBHBvG4TiuvXnw4A/HgIjP/943jcXBreNyDqh51K5+c5+OY80rKZ21jHoxswXlTROSRx7GGLToWx4OXUmPKwfN/J4e/2daJ3981gudQm+fM86w3nHc2xD2LcI1XdMxavRDElBsyqs4LwsopHG1Ff3+kgfexXMY8mcvOqfcxt5PK76cdznqNrv+8K5E28+41p54M8S61nvrq//kWxGvPOQ3iY04YgDjdjXnm+/r83nRTW4L74ajcn5zLQrx9xy7cgNpPfR7rKu96uWaut2NJldt5NRf8np5i/oUdIYQQQgghhBBCCCFNBC/YEUIIIYQQQgghhBDSRPCCHSGEEEIIIYQQQgghTcQhO+wWD+A902kL7x3evhfvdx6fRE9BzTV9QMmkuq+3hPdcux7eR69dJDPKmZIv4L3GlTpuL+BjLCKSSrZCPD6G98HvK+J94Z7yTnR34n33lvINzWZnIY4kzH7IpNHaEFYeq6ryvIhy+xSr+PlaAd9PePj+soEeow19Pbgfe/eh82N6Ut3PvkAklG9rOofH4+lnn4S4qwuPZ3dXh7HNel0do9ksfkA5I4LqmPYPoV9uoBWP3+jWAxAXC6bXo6sbj0G8PQNxIIp+gZLyE/T2LoZ4bD/6IqamMdd7+5RUUkQs5eIpVHE/JYh9X1eOg4hyz0SUo6U2jT4isU2nW3f/IH5H+bcMFdkCUq8rz4CP4yioxqFWnkVi6MsQEUOIZKkKHAigo0FraVxVf7TTKaAcdwHlYBERsZUfI6z2Q/vf9G+YfjhEpYnhjBQRyWQyEOsxWVVeCNfC33wpZ52jXD2Oo3JbRMTVr734fi8U8QS6QVzlPa2qvgqG8BiHQqbfROeV/rc6PTSDoRf3FlZVTbSCuP142mxDPo8OzJgaH5PKVxoMKvdRDNscz2CNTEbRWdfdid4XEZEpH+fjeBx3vKsL58F8Dt1WeirWGqmWdAbiVItZA3LKoTI1hV4k3zb9fwtBW3ubegWPabmAc0g1ge20LXOcZ9Xc2t6J/sV0WyfEjip4no+579SVm0mN83rdHLNe/cXHdVXNOZ6ub8pxa6uxk1U58vAjDxttOO+88yB+fuMm1Sb8fE31g/bqeqqvtcvP1XO5iEgNt7l39178jciRcSdqL6tl4ZgMqiFUsXHfQmFzPlrcizV0ZJ/yzVYxl10P38+qmjulJuqUqqd6LSVizlFzqqSOqWKix0/Af3EXrB5tITHn+nFVp+eU36mg2tSvClpGjafADNbw7iCeB65pcG4xPIAHMF7G87qq8uAtZBbO1nEM1Ko4hyi9qIxn0U+3f/Z+Y5tTY1mIe0LoB2+38Djlyvj50BjOa+Ey1rh97laIV56PLlcRkWkPtzm7H/O3sxeP6wmnKmdaAo/r1BSeb+i5OpE0j9qqVYsgblmEnem72NduHds4NopjtDiD79eU0zFbMM/vR1fh+V8ihfPPgSnTQbgQhNQ4tNUYiAZwzPhqbeo38Ep7Ln4morznYeUt1P79fF65Ql08XtE4bs8RzEsRkeGVmIsrjkcX/s/+E8fLj/5fnCvfUEQH3ikX4PY85Vl3Gsz3lqqj2vM9MaGvG2EeDSxZrN7Hmjc2gee1Qdu8jJZux9fsEOZdQT/k4RDhX9gRQgghhBBCCCGEENJE8IIdIYQQQgghhBBCCCFNBC/YEUIIIYQQQgghhBDSRByyw66lFb0SZeU0a+1S/gTl4ZkaNz1eFeUpCobx3n31tnjqfuW6i9ucK6OfJhFDqVSlhPcqi4iUK+iPqanfcOva34T7WchhP7QoZ01LC3p0ymXTBTc1je1OJvHecks5oCwH71UPK8mHunVdwspjNbhs0GhDuYTbfOCBjRA/u3XC+M5CEFEupWolC/Ejj/wKYr+Ox7glbjqE6nXlOiyjSyGormMvGRyA+LgzjoV4eDE67bJ70Sc3Nos5JiISVrk53I7uj8lJ9Akcv/I4iFcfvxLi/+/b34Q4KOgrqBfN3K/V8DXfUT6AKPZTQEnaBoeWQjyxdwt+X7lpYg38jatWrYC4UsL9HujFe/8XkvZ29FnZgjXQVc6IuqM8QpbptalUMNesAPoVtH/BU66KmnIVBTzTWwPvG+4yEc9XdVS129KiPYVS84jnaX8cbl+7NUREAsp5pp1zdR17GNvaIfQSTrtG/WC/hLNO9/1CEY3h2LUtjMs1nPciKgdiEdMfZynfSFh570TlYUsafWaVHPphakE1d0ewr8o1s94EAqomqSVBrYzH44Cam9v6+/H7B3BOiqnxFk2Zx7wzjfVkanoP/kYa1yBa7ldwsNEre7H2e2p9UCqZLrFSEV9rU967uqmGWRBcwWOo8z+o8ioSwTVeMGguJ1tblUNW1wZVO/S4dmq4XvKU68d1X7zNIqYH1VEdXCgqp1YVj7F2mbqOduDh53/6s58ZbXhuI66nfvPkUxBbKs9cVYMd7RVVXj1f1XDPNZNIv2Kr+TnqN/DeLQTKsVxVa2TtcrOUZ82vme1OJnAN3dGCx3BmEmtHfgzjOeWRfkS54FpVTrVYpp83oeakuo1fyql1fEV5rfQsHFDnAWE1VuIN5238TNDCPImrNnlqbNRc3GZMtTGdVFlVR5+jiEhhFn8z14J9ZSm/rGmdPnzMFpRvOjcGsVtG11S2sANiT63nRETScezT0tx2iBNteEzsJM45oSi6QVvqeA5pd2Pdbe1UJ3wi0pLG47ZnSxZiS+XFzLgagw7Ovd096KPbO4pjdHrKdHL5IRxzXaqZkYhe+2JcrWLeHNiKuZUI4QZXnDRktKGgvHZTs3hsQpEj4yl21PrIUX5RtTyWuDqPbegpVi61sPqMXhNXKzhvedqp6eI4darqvEEv4ERkZhb9cK89ZxXEp591CsSP3f88xCO78dy5Zy+eM0aSODbSae3dFamp+TqXw9zMFzB3lx87DHEmg+fiLa14MLJzmIfaGy4isng5rlUrJRxfpRoddoQQQgghhBBCCCGE/NHDC3aEEEIIIYQQQgghhDQRvGBHCCGEEEIIIYQQQkgTccgOu2AUPxptwfuj25J47S9YxvubQzHTLZKbVT/v4jZiUfTNuMpn5lazEIfjuL1QENsYCOC9/yIiVeUC0fc/+9qfodwVvroX3VXqnlBQuS3CpscrO4sOu7JycqQz6DgIKpeFrfazpGwl41N5iGcLpt8kX8R7/e++bzNuw1TvLQgl7fxT+37hRRdD7Kl7wwMNhECe8t74ygUSUP0ZVT7GsSx6K/LZrRDPlPE3rajpmNiyfifE049OQrx0CB11py5bDnGtjIkWU3nl1zGHSmXTKWUHcLx4SoFS1g4j5cVZsggddpUC+guObUGPzK+ffNpow/7d6L0rF/H4+SUcGwtJSwuOO0/5XMRX3g81bnPKxyciElTusICKtUdNKWMkpPLf8bS7SDmi/AaODuXJs3wtpTOdc/i28t7o8aT+HcjzzdpfK2Odrat89ZRfTrS3SLfJ023AT8QbjMGwEoXYyqHSyMm1EISVPykex/qjcySgkiQQMF1Grov96zhqnlO/mc9j35RzytuhfjOq1ge1BnW3rupiaQ7XCNrFmmrL4AZUjauXsA4Hwsrt2sDl54ewnSnlnI2onMi0deL3czMQWzb2QyWP9atcMsdfVB1P7e4xpGsLhGXhvodCqk7ovFL1MBQyPV56oPpqXyPaLaneD6shaAmOY+2jcxt5J/0X9+S1d6AHRztufVW/TG8eHuNi0VwsjY2PQzw4iL6lfFHP19qNpTyhL+W0a9APer9tvY60X9xderhw1Xzjq9hStSms1md+uYF7T+VdVwK/89SG5yCe3o/rL8fCxJtUfricqp9x1+zvuOrOiNoPP6xcpdpVbcxHynOojnnONftB+2R1Lof1n2yo3PcC+lxDzf2Cv5ktZI02BHzcZsROQWx5R2aeFREp59FZZwUwD0IpXDen1UGt7jTPKVOd2Cf1DjVnhLDe9LWhn3rfKLZpbhuemx3bjw7tZNKcLwYWYX5O78c27NyI3ynn1Lo0jjUsHMN61N2H+zC2z/R0Vz3l6VI1y1LO1JYMzu9Dw60QT27fC7FTx7kgN2M61cYO4Lql6mYhbu/IGN9ZCIrKbVt3dIzjrlbDvIvHzGNunDuodX1Ane+5yllXV3W0pK4TjI/i+V13p2mbbFU+3pLy3C05HtdTsxWMw0Hc74JSYtZt5WKOmetMV7lBg8q1292PPsbBpZh3tZo6f1c1slbHsTKn/M4iIokkritjUdWmeIO10iHAv7AjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmohDtn0WCkqSF0hCmEygnDOkpIiJiCn9TqdROlnIlVWMot6CEjjXKxinwu0QR5UE2amaUsqgkhxqCWsogoJBSxkI40nsQlv1qONqSaLZ5S0ZlCLOzOBDIvJKFNvShvtZUgLcbbtQDrl5A8o6u9tQpi8i0r1IyVNt/M2ONIpiF4pEEsW8aeXaTHWugLiqjnG0wTXpsKWkxTElHo/j+14FHx6QzysBexz7s2s4A/Fw3BSybhvZgS9o4XccRZijB/ZA3N7R+qJxrYzC12rVFGMWizhmq+ohCfUqimeDUSXv7ENh6O4DOF7H9+A+VgpmG3Y8vx7i9nYleW9Fue1CYomWQGPy1ZRQtVLF+lVXD7ARMcXf+gEyvpJX1xysH1UlkbaUKNzSInEttBdTbu0pSavW2eotaL22Fslr8btvNRCgB5WwPvDiElb9XAxfS9ddJcPWO9HgwRe2tsmqzzj1Bg/sWAAS6uEKQXUEdEWLqgdqFArmw04CKu/CEfyNmHqwjvG++tHyXBbi7q7FEFf001JEJJPAdoY6VR1Wh6guOL70XBpL4kNtQqpuG4krInWVqx2duI4JKwF6QIneI2od4/vYxngctxfTbRIRUceirB4woOOFwvexXb56CpGlOlSXFv3gF5EGD6II6vWUym29UfX5gKpdITXQ9cNrRBrIuHUtUdsIWGrdqPJOPydDPwgolsoYbehfrNYU6jfLWgCu5f+qb/WDGHQ9bHQsdA3Q/aLXTguFrXIkpGq3ftCbFdAPqzNrjVvEGtibwvrWHsLvhCo45lpU7lcsPa+qhz8Fzf4uqmNQ1nOSekhEwNFSfjU29IOC1DFvNM/qEhjS60zVlzG1X+pZgpKwVL8ZXW8ei6pai6pDI3HbfHDDQlGewYfrBSI4BqqqT8MprP+9q/uMbdbVusGJqPXWHJ4v5CZwnV3IYlw+gLm54Ql8yF17i3lOaYdwHjrjXOzjwaFuiNs6cb9butT83477bds9EE+N4kN0REQmZrZD7EXwHEbqam7wsEaG1dxpqec1ppL64T943iwiUlAPTnDUQwuiUTz3Wyiycy8+x7sujvVSWa37PfNhC1VVw/RDJiJqnRhW68xCCc8H66oepdrwGsBr164x2rB4sBdiO4TtTLXhmu2kU/EBKvEw5ql+8F9V1D7qCy4iYqlrOhFbTdiqDlfUg0P1GiKqrg+kUtgPeq0sIhJQT8uqqbm10XcOBf6FHSGEEEIIIYQQQgghTQQv2BFCCCGEEEIIIYQQ0kTwgh0hhBBCCCGEEEIIIU3EITvs9u3GuJrF+6FTnere8BjeB5zGW+pFRKStDX++UMR797PqXv7Z6bCKcXsBD+9V9gzPUQMnkYev6SuY2hEVCGKby65yiahby0Me9oNTmjGa4JZxP13lzckW8H2lO5EZ5f7btR07JjuNDola0eyHnjQ6CVYt6Yc4d2S0OlLKo69BPOWwsTCxxsfRk7Zt4y5jm9Eg3pMeTmcg7uhCH1xfRxpi7R1rT6NTUGnIpFKeNdrQ1YX35vf3oavtwNgYxFu3boJ4sIbOCO2fyeexH0ol9MuJiOTm0MWnHXZuTfkCIugfeP65DohrVfQudHWhJ6P/hOOMNnR14mc6OjEPo+o3FxLtAaqq/dOOuppyIej+EBGpaTeREndpb432DkWV+8BWjidXOe+050akgQ9JOR4Md47K97CWOCkqFewHxzF9G9pFpfdTt1vnd6mEualdWNrrpn9PRMSp4Ta1lyga/f08E38oIbXvtvagKjfJSx0vEfOYh7Xf1dHOLDWfq22mU1h31TQp0bDpJfLUxBVP4mfqarxU1Lyo/Y1x5QkJKSdLsYTfFxGJprDulmu4n2XVhpCP/RRQY8UOYJ6p5YCUyqZXKpvF+UD3fTjcwHu3ANSUE1iPKaVNM9xtDb1par1kqXrlK6GMp2LtDLaVXy4Uw9gPmA67iG64Ae6nrj36+NRrmCO6hjeqd6UafkavRSsOtlv3vQRUG9X3fT2+G+RQMPjiy/14/Mi4xGzVroD/4m5RMRx2pv80qApS0sJjdo5yj82V8P2n96B3eKqKx7SiHITVBsJMT7XTU2cXrtqGbencx+3ZtjmX/zYB7WQVkaD6Skw5n+I29l1KuWVTymXdrro+rhoZEjP3w6rdvprPKpUjdHIhIj3KKV6K4P4ERTlLtfO81Wx7bRYdV6UJfH92E56fhQs4l7ZU8XzCCeFvVn1Vf1xz3M6O4xosr9aqS4dw7V5V69KZvdhGu4A7EVVyw6GhE402dPfjedZsBefnyUl0znk1tWYL47E48fRBfN/FedQTc74vO2qdqI6n9RJj6nDhCdbnkDrnFzUuC0XcD7dm+kaLBTzPD6hcbc0oH2xQPVdAnVtE49iGHrXeSnSYruRYStc4jIOe8jO34m8k1PleSM0N9bJas7tm3dXu6Zw6F66qvtPOu6DaTz39RNR5QVB7ekWkWFLttJUvMI/j81DhX9gRQgghhBBCCCGEENJE8IIdIYQQQgghhBBCCCFNBC/YEUIIIYQQQgghhBDSRByyw84N4T3v9fApEFc9dc+ugw6IaNq81zjTifdQt9p4H31bCW8ezs7gPfHZKbwnu1zE3XEd5fHQbgwR8Rz8jUoZ7y3WLpCAcrDkK/j9cgG/H1K+gZSNfgMREc9Gl1i9jvsRSeB99tEQ3g+dCSs/gWQgPv5EvC985Qmmb2Bw2TKITzsDfQD79pv3qy8EnvKC2eoac7COx6MlhMfjycfuN7Y5No65aan+PO20NRCf9VrM9bk5vCf+2aceh7ioHF5b9+w12rBz1y6Iy8q35PvKydXSCXEuh/6H/CzuUzGHfgdz9IkElRcnnUIXRt8QevJa23sh7upD31zfa46HuK0F866R+0y7y8RScYMxu1DU63UV4zgzXEXKfdTQGWT44hDdH9pH5is3T121Qf9mI2+npTxRgQA6GGzdRuvFHU8v5U9q5FR7Kc9dSHkhXqpf9H4aXrAGPrp4BPNdHwvDI7VAxMK473rffOVd1cevpQU9bSINvIVq37RXzVcOu3QM596k4flQc3G1Qd4pZ5NXx5qVSqDLR+sX9RaLykUSqmM/lMum58Wx0QUzNYd1tDCNc3Emg+ue6SL2UzSmxqeP/TI7Y3p18qrWx1Tf6nih0HOOHhGucgiKhXEkYo4xXUNdF+OQynWdp0FRY0G5lhyVIw2dnare2aqG6rFgqdoSiij3Twjrm/5+o5qr96uunHW2Gm+ermcqDqhj5R2Cu7TRa9CGBnV6QQgrl5LyoFm63WqOcxzTW+ipUxvtTetV2q+LT0Rnc7daR24fx7owXsTfnHXMuaKiamJV7YZjqWOmfY1qztNzoP7FkGce36DyLyWUVy+ifjNi4RdaAph3rcpxl1B+yGjIXPOoUyajJpSsBm7xBaLDQV91tRfnzol9WRWjC9qJm3NMsIbOa3sU9y86o9aNym8lDrYhsQyTtX1Yrd/U773Q0CyEYzux3e4szkFdQ6rNKndjVVz7z8yhLy3k7jGa0N6NfuqetmOxDZVRiPeOYhtjynHb2on95FSwbgRDDdZrU8o1OYfHol4xnYsLQa2uPKlqTJTLGBeV3z8SMh2lgWBCxfi+r86ttBO4quTr9RoeY1+twCIt5lh3LOXxVl5ct6q84EUcP7WAcggrt9/UDLoU21ozRhv0swumDkxCXFEO2o5ePI911Xw+o86lRa8ndEeLyIH9yq+oarPr/X41j39hRwghhBBCCCGEEEJIE8ELdoQQQgghhBBCCCGENBG8YEcIIYQQQgghhBBCSBNh+S8ltiCEEEIIIYQQQgghhCwY/As7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wI4QQQgghhBBCCCGkieAFO0IIIYQQQgghhBBCmghesCOEEEIIIYQQQgghpIngBTtCCCGEEEIIIYQQQpoIXrAjhBBCCCGEEEIIIaSJ4AU7QgghhBBCCCGEEEKaCF6wa8C5554rxx133Et+bteuXWJZlnz9618//I0ihJBXgBtuuEEsyzrSzSCvEg7m09TU1JFuCjmKYN6RZuRQ83JwcFCuvPLKP+i3zj33XDn33HP/oG0Q8nJh7SVHgqM973jBjpA/cvbv3y833HCDrF+//kg3hRBCCCGEEHIYeOSRR+SGG26QbDZ7pJtCjiKYd0cWXrD7A1iyZImUy2V597vffaSbQo5i9u/fLzfeeCMv2BFCCCGENDlbtmyRr371q0e6GeSPkEceeURuvPFGXjghCwrz7sjCC3Z/AJZlSTQalUAgcKSbQgghTUuxWDzSTSB/pPi+L+Vy+Ug3gxxlMO/I4SQSiUgoFHrRz3DeJH8InudJpVI50s0gRxnMu8PDUXnBLp/Py3XXXSeDg4MSiUSkq6tLXv/618tTTz0Fn9u4caOcd955Eo/Hpb+/X/7+7/8e3m/ksLvyyislmUzKzp075cILL5REIiF9fX3ymc98RnzfX4jdI39EjI6Oyvve9z7p6+uTSCQiQ0ND8pd/+ZdSq9VkZmZGPvaxj8nxxx8vyWRSWlpa5KKLLpJnnnlm/vv33XefnHrqqSIi8p73vEcsy6JXkczz0EMPyamnnirRaFSGh4flX//1Xxt+7tvf/rasWbNGYrGYtLW1yTve8Q7Zu3ev8bnHH39c3vjGN0o6nZZ4PC5r166Vhx9+GD5z0DOxceNGede73iWtra1y1llnHZb9I81DNpuVK6+8UjKZjKTTaXnPe94jpVJp/n3HceSzn/2sDA8PSyQSkcHBQfnkJz8p1WoVtjM4OCgXX3yx3HnnnXLKKadILBabz9u77rpLzjrrLMlkMpJMJmXlypXyyU9+Er5frVbl+uuvl2XLlkkkEpGBgQH5m7/5G+N3yKsD5h1pRqampmTdunXS0tIi7e3t8ld/9VdwEqsddl//+tfFsiy5//775dprr5Wuri5ZtGjR/Pu33nqrDA8PSywWk9NOO00efPDBhdwd0iTccMMN8vGPf1xERIaGhubX/AfPRz/0oQ/Jd77zHVm9erVEIhG544475L777hPLsuS+++6Dbf0uD/vmzZtl3bp10tnZKbFYTFauXCmf+tSnXrRdu3fvlmXLlslxxx0n4+Pjr+QukyaAeXfkCR7pBhwJPvCBD8j3v/99+dCHPiTHHnusTE9Py0MPPSSbNm2Sk08+WUREZmdn5Y1vfKO87W1vk3Xr1sn3v/99+X/+n/9Hjj/+eLnoootedPuu68ob3/hGOeOMM+Tv//7v5Y477pDrr79eHMeRz3zmMwuxi+SPgP3798tpp50m2WxWrr76ajnmmGNkdHRUvv/970upVJKdO3fK7bffLpdffrkMDQ3J+Pi4/Ou//qusXbtWNm7cKH19fbJq1Sr5zGc+I5/+9Kfl6quvlrPPPltERM4888wjvHfkSLNhwwZ5wxveIJ2dnXLDDTeI4zhy/fXXS3d3N3zu85//vPzt3/6trFu3Tq666iqZnJyUW265Rc455xx5+umnJZPJiIjIPffcIxdddJGsWbNGrr/+erFtW2677TY5//zz5cEHH5TTTjsNtnv55ZfL8uXL5Qtf+AL/seIoYN26dTI0NCQ33XSTPPXUU/K1r31Nurq65O/+7u9EROSqq66Sb3zjG3LZZZfJRz/6UXn88cflpptukk2bNsmPfvQj2NaWLVvkne98p1xzzTXy/ve/X1auXCnPP/+8XHzxxXLCCSfIZz7zGYlEIrJ9+3a4YOx5nlxyySXy0EMPydVXXy2rVq2SDRs2yM033yxbt26V22+/fSG7hCwAzDvSjKxbt04GBwflpptukscee0z+6Z/+SWZnZ+Wb3/zmi37v2muvlc7OTvn0pz89/xd2//Zv/ybXXHONnHnmmXLdddfJzp075ZJLLpG2tjYZGBhYiN0hTcLb3vY22bp1q/zHf/yH3HzzzdLR0SEiIp2dnSLywjrtu9/9rnzoQx+Sjo4OGRwcfFm3MD777LNy9tlnSygUkquvvloGBwdlx44d8pOf/EQ+//nPN/zOjh075Pzzz5e2tja566675ttEXj0w75oA/ygknU77H/zgB3/n+2vXrvVFxP/mN785/1q1WvV7enr8t7/97fOvjYyM+CLi33bbbfOvXXHFFb6I+B/+8IfnX/M8z3/zm9/sh8Nhf3Jy8pXdGfJHy1/8xV/4tm37TzzxhPGe53l+pVLxXdeF10dGRvxIJOJ/5jOfmX/tiSeeMPKQkEsvvdSPRqP+7t2751/buHGjHwgE/IOlf9euXX4gEPA///nPw3c3bNjgB4PB+dc9z/OXL1/uX3jhhb7nefOfK5VK/tDQkP/6179+/rXrr7/eFxH/ne985+HcPdIkHDze733ve+H1t771rX57e7vv+76/fv16X0T8q666Cj7zsY99zBcR/5577pl/bcmSJb6I+HfccQd89uabb/ZF5EXn0G9961u+bdv+gw8+CK9/5Stf8UXEf/jhh3+vfSTNB/OONCMH8/KSSy6B16+99lpfRPxnnnnG9/0X8u2KK66Yf/+2227zRcQ/66yzfMdx5l+v1Wp+V1eXf9JJJ/nVanX+9VtvvdUXEX/t2rWHdX9I8/HFL37RFxF/ZGQEXhcR37Zt//nnn4fX7733Xl9E/HvvvRdeb3QOe8455/ipVArWjb7vw7rvYI5PTk76mzZt8vv6+vxTTz3Vn5mZeUX2jzQnzLsjy1F5S2wmk5HHH39c9u/f/zs/k0wm5b/9t/82H4fDYTnttNNk586dh/QbH/rQh+b/++Cfi9ZqNbn77rt//4aTVw2e58ntt98ub3nLW+SUU04x3rcsSyKRiNj2C0PUdV2Znp6evx1H375NyG/juq7ceeedcumll8rixYvnX1+1apVceOGF8/EPf/hD8TxP1q1bJ1NTU/P/6+npkeXLl8u9994rIiLr16+Xbdu2ybve9S6Znp6e/1yxWJQLLrhAHnjgAfE8D9rwgQ98YGF2ljQF+nifffbZMj09LblcTn7+85+LiMhf//Vfw2c++tGPiojIz372M3h9aGgI8lRE5v/S87/+67+MXDvI9773PVm1apUcc8wxkM/nn3++iMh8PpNXD8w70ox88IMfhPjDH/6wiMh8Tv4u3v/+94MX+zf///b+PcqyqzzvRt912/ddtevW1fd769YSrRsQQLIA2cY2vmBMMCFxZDzygT/IOCPnJDnjOB7+EmyHbzgkTkZwGBzHie0TM85nTIwvwYAMlhEgBJKQELp1t7q7+t5dVV21q2rXvq7L+UMHDZ5nLnqXZHVVAc9vDI2hd++115prrjnfOdfqmr/16KM2Oztrv/zLv2yFQuHFz3/xF3/RRkdHX8ESi+8H7rnnHrvpppte1m/n5ubswQcftF/6pV+CeaPZC/ckzFNPPWX33HOP7d271z7/+c/b2NjYyzqu+N5H7e7a8wP5wO7f/bt/Z0899ZTt2rXLXvOa19i/+Tf/xnkQt3PnTqehjI2N2eLi4tD9+75v+/fvh8+uu+46M3th7bYQc3Nztry8bDfffPN33SZNU/uP//E/2qFDh6xYLNrk5KRNTU3Zk08+aUtLS+tYWvG9xtzcnHU6HTt06JDz3fXXX//i/x8/ftyyLLNDhw7Z1NQU/Pfss8/a7Ozsi9uZmd13333Odr/3e79nvV7PaZP79u27hmcoNhs80fr2JGpxcdFOnz5tvu/bwYMHYZutW7dao9Gw06dPw+d5befnf/7n7Q1veIP9k3/yT2x6etre9a532Sc+8Ql4iHL8+HF7+umnnTb67fH32+1ZfP+gdic2Izz2HjhwwHzfH3oPwG3w222U9xdFkXOfIcTfZd717fvgq92XfCc/9VM/ZfV63T73uc/ZyMjIyz6u+N5H7e7a8wPpsHvnO99pd999t33qU5+y+++/3z784Q/bb/3Wb9mf/umfvuin+25vfs3kYhLrxIc+9CH7tV/7NfulX/ol+43f+A0bHx833/ftn/2zf/Zd/6VfiJdCmqbmeZ595jOfyc15tVrtxe3MzD784Q/brbfemruvb2/7bcrl8itbWLGpWcuYmfevpXnktZ1yuWwPPvigPfDAA/bpT3/aPvvZz9of//Ef25vf/Ga7//77LQgCS9PUbrnlFvvt3/7t3P3K9/T9h9qd+F7g79IGhVgree3nu7W9JEn+Tsf6uZ/7OfvDP/xD+/jHP27ve9/7/k77Et/bqN1de34gH9iZmW3bts3e//732/vf/36bnZ2122+/3f7tv/23Q18osRbSNLWTJ0+++K+rZmbHjh0zsxfeDCXE1NSUjYyM2FNPPfVdt/nkJz9pb3rTm+y//bf/Bp83m02Qa651Iih+cPj2W5a+/Zdx38nRo0df/P8DBw5YlmW2b98+yFfMgQMHzMxsZGTEfviHf/iVL7D4vmbPnj2WpqkdP37cbrzxxhc/v3z5sjWbTduzZ8+a9uP7vt17771277332m//9m/bhz70IfvVX/1Ve+CBB+yHf/iH7cCBA/bNb37T7r33XuVFoXYnNozjx4/DX508//zzlqbpS74H+HYbPX78+ItLrM3MBoOBnTp1yo4cOfKKlFd87/BSc8y3/+qYXwLAf2H87b/YvNp9yXfy4Q9/2MIwtPe///1Wr9ft3e9+90sql/jeQu1uY/mBWxKbJImzdGvLli22fft26/V6r9hxfud3fufF/8+yzH7nd37Hoiiye++99xU7hvjexfd9e9vb3mZ/+Zd/aY8++qjzfZZlFgSB8xedf/Inf2Lnz5+Hz6rVqpm5SVH84BIEgb3lLW+xP/uzP7MzZ868+Pmzzz5rn/vc516M3/72t1sQBPbBD37QaWtZltmVK1fMzOyOO+6wAwcO2L//9//eWq2Wc7y5ublrdCbi+4Gf+ImfMDOz//Sf/hN8/u2/SHrrW986dB8LCwvOZ9/+a89vj93vfOc77fz58/Zf/+t/dbbtdDovvnVR/GCgdic2iv/yX/4LxB/5yEfMzF7yHwXceeedNjU1ZR/72Mes3++/+Pkf/MEfaM73A8pLnfPv2bPHgiCwBx98ED7/6Ec/CvHU1JT90A/9kP33//7fYd5olr+6zPM8+93f/V17xzveYffdd5/9xV/8xUs4C/G9htrdxvID9xd2KysrtnPnTnvHO95hR44csVqtZp///OftkUcesf/wH/7DK3KMUqlkn/3sZ+2+++6z1772tfaZz3zGPv3pT9u/+lf/6sVXIAvxoQ99yO6//36755577L3vfa/deOONdvHiRfuTP/kT+/KXv2w/+ZM/ab/+679u73nPe+z1r3+9fetb37KPf/zjjrfkwIED1mg07GMf+5jV63WrVqv22te+Vg6xH3A++MEP2mc/+1m7++677f3vf7/FcWwf+chH7PDhw/bkk0+a2Qtt5zd/8zftV37lV2xmZsbe9ra3Wb1et1OnTtmnPvUpe+9732v/4l/8C/N9337v937PfvzHf9wOHz5s73nPe2zHjh12/vx5e+CBB2xkZMT+8i//coPPWGxWjhw5Yvfdd5/97u/+rjWbTbvnnnvs61//uv3hH/6hve1tb7M3velNQ/fx67/+6/bggw/aW9/6VtuzZ4/Nzs7aRz/6Udu5c6fdddddZmb2C7/wC/aJT3zCfvmXf9keeOABe8Mb3mBJkthzzz1nn/jEJ+xzn/tc7kt+xPcnandiozh16pT99E//tP3Yj/2YffWrX7U/+qM/sne/+90v+S/ioiiy3/zN37T3ve999uY3v9l+/ud/3k6dOmW///u/L4fdDyh33HGHmZn96q/+qr3rXe+yKIrsp37qp77r9qOjo/b3//7ft4985CPmeZ4dOHDA/tf/+l+5bs3//J//s9111112++2323vf+17bt2+fzczM2Kc//Wl74oknnO1937c/+qM/sre97W32zne+0/7qr/4K/hJUfP+gdrfBbMzLaTeOXq+X/ct/+S+zI0eOZPV6PatWq9mRI0eyj370oy9uc88992SHDx92fnvfffdle/bseTHOezXxfffdl1Wr1ezEiRPZj/7oj2aVSiWbnp7O/vW//tdZkiTX8tTE9yCnT5/O/vE//sfZ1NRUViwWs/3792cf+MAHsl6vl3W73eyf//N/nm3bti0rl8vZG97whuyrX/1qds8992T33HMP7OfP//zPs5tuuikLw9Bpk+IHly9+8YvZHXfckRUKhWz//v3Zxz72sRdfjf6d/M//+T+zu+66K6tWq1m1Ws1uuOGG7AMf+EB29OhR2O7xxx/P3v72t2cTExNZsVjM9uzZk73zne/MvvCFL7y4zXe+el18//Pdrvfv//7vZ2aWnTp1KsuyLBsMBtkHP/jBbN++fVkURdmuXbuyX/mVX8m63S78bs+ePdlb3/pW5zhf+MIXsp/5mZ/Jtm/fnhUKhWz79u3ZP/gH/yA7duwYbNfv97Pf+q3fyg4fPpwVi8VsbGwsu+OOO7IPfvCD2dLS0it78mLDULsTm5Fvt8tnnnkme8c73pHV6/VsbGws+6f/9J9mnU7nxe327NmT3XfffS/G3263jzzySO5+P/rRj2b79u3LisViduedd2YPPvhg7lxQ/GDwG7/xG9mOHTsy3/dfzHdmln3gAx/I3X5ubi77uZ/7uaxSqWRjY2PZ+973vuypp57KvV946qmnsp/92Z/NGo1GViqVsuuvvz77tV/7tRe/z8u97XY7u+eee7JarZY9/PDD1+ScxcajdrdxeFmmtyi8kvziL/6iffKTn8xdNiaEEEIIIYQQQgghxDB+4Bx2QgghhBBCCCGEEEJsZvTATggh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", + "image/png": "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y2233Sbnn3++PPjgg3LaaafBdi+//HJZvny5fOELXzD+YY0sDE888YQ88sgj8o53vEMWLVoku3btkn/5l3+Rc889VzZu3CjxePxlbe9LX/qSfPjDH5ZkMjn/DwQH82l8fFzOPPNMKZVK8pGPfETa29vlG9/4hlxyySXy/e9/X9761rfCtm666SaJxWLyiU98QrZv3y633HKLhEIhsW1bZmdn5YYbbpDHHntMvv71r8vQ0JB8+tOfnv/uVVddJd/4xjfksssuk49+9KPy+OOPy0033SSbNm2SH/3oR/A727Ztkz/7sz+TD3zgA3LFFVfIbbfdJpdffrnccccd8vrXv/5l7f8111wjX//61+U973mPfOQjH5GRkRH553/+Z3n66afl4Ycffsm/mjmaYO4x945W1q1bJ4ODg3LTTTfJY489Jv/0T/8ks7Oz8s1vfvNFv3fttddKZ2enfPrTn57/C7t/+7d/k2uuuUbOPPNMue6662Tnzp1yySWXSFtbmwwMDCzE7pAmYt26dTI0NCQ33XSTPPXUU/K1r31Nurq65O/+7u9E5OXVpy1btsg73/lOueaaa+T973+/rFy5Up5//nm5+OKL5YQTTpDPfOYzEolEZPv27fAPs57nySWXXCIPPfSQXH311bJq1SrZsGGD3HzzzbJ161a5/fbbF7JLFhb/KOTee+/1RcT/3ve+N//aFVdc4YuI/4lPfAI+e/vtt/si4n/uc5+D1y+77DLfsix/+/btvu/7/pNPPumLiH/dddfB56688kpfRPzrr7/+8OwMaUq++MUv+iLij4yMwOsi4tu27T///PPw+sGcvPfee+H1kZERX0T82267bf61c845x0+lUv7u3bvhs57nzf/39ddf74uIPzk56W/atMnv6+vzTz31VH9mZuYV2T/SvDD3yJHm0ksv9aPRKOTJxo0b/UAg4B9cduzatcsPBAL+5z//efjuhg0b/GAwOP+653n+8uXL/QsvvBDyrFQq+UNDQ/7rX//6+dcO5t473/nOw7l75BAolUrGa48++qgvIv43v/nN+dcOHjPNbbfdZtSx1atX+2vXrjU+e9111/ki4j/44IPzr+XzeX9oaMgfHBz0Xdf1ff//1rrjjjvOr9Vq85995zvf6VuW5V900UWw3de+9rX+kiVL5uP169f7IuJfddVV8LmPfexjvoj499xzz/xr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zs7aRz/6Udu5c6fdddddZmb2C7/wC/aJT3zCfvmXf9keeOABe8Mb3mBJkthzzz1nn/jEJ+xzn/tc7kt+xPcnandiozh16pT99E//tP3Yj/2YffWrX7U/+qM/sne/+90v+S/ioiiy3/zN37T3ve999uY3v9l+/ud/3k6dOmW///u/L4fdDyh33HGHmZn96q/+qr3rXe+yKIrsp37qp77r9qOjo/b3//7ft4985CPmeZ4dOHDA/tf/+l+5bs3//J//s9111112++2323vf+17bt2+fzczM2Kc//Wl74oknnO1937c/+qM/sre97W32zne+0/7qr/4K/hJUfP+gdrfBbMzLaTeOXq+X/ct/+S+zI0eOZPV6PatWq9mRI0eyj370oy9uc88992SHDx92fnvfffdle/bseTHOezXxfffdl1Wr1ezEiRPZj/7oj2aVSiWbnp7O/vW//tdZkiTX8tTE9yCnT5/O/vE//sfZ1NRUViwWs/3792cf+MAHsl6vl3W73eyf//N/nm3bti0rl8vZG97whuyrX/1qds8992T33HMP7OfP//zPs5tuuikLw9Bpk+IHly9+8YvZHXfckRUKhWz//v3Zxz72sRdfjf6d/M//+T+zu+66K6tWq1m1Ws1uuOGG7AMf+EB29OhR2O7xxx/P3v72t2cTExNZsVjM9uzZk73zne/MvvCFL7y4zXe+el18//Pdrvfv//7vZ2aWnTp1KsuyLBsMBtkHP/jBbN++fVkURdmuXbuyX/mVX8m63S78bs+ePdlb3/pW5zhf+MIXsp/5mZ/Jtm/fnhUKhWz79u3ZP/gH/yA7duwYbNfv97Pf+q3fyg4fPpwVi8VsbGwsu+OOO7IPfvCD2dLS0it78mLDULsTm5Fvt8tnnnkme8c73pHV6/VsbGws+6f/9J9mnU7nxe327NmT3XfffS/G3263jzzySO5+P/rRj2b79u3LisViduedd2YPPvhg7lxQ/GDwG7/xG9mOHTsy3/dfzHdmln3gAx/I3X5ubi77uZ/7uaxSqWRjY2PZ+973vuypp57KvV946qmnsp/92Z/NGo1GViqVsuuvvz77tV/7tRe/z8u97XY7u+eee7JarZY9/PDD1+ScxcajdrdxeFmmtyi8kvziL/6iffKTn8xdNiaEEEIIIYQQQgghxDB+4Bx2QgghhBBCCCGEEEJsZvTATggh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\n", "text/plain": [ "
" ] @@ -423,6 +710,7 @@ ], "source": [ "import numpy as np\n", + "\n", "import matplotlib.pyplot as plt\n", "import mindspore.dataset as ds\n", "from mindspore import load_checkpoint, load_param_into_net\n", @@ -456,7 +744,7 @@ "# 推理效果展示(上方为预测的结果,下方为推理效果图片)\n", "plt.figure(figsize=(16, 5))\n", "predict_data = next(dataset_predict.create_dict_iterator())\n", - "output = model.predict(ms.Tensor(predict_data['image']))\n", + "output = model.predict(ms.Tensor(predict_data['image'],dtype=mstype.float16))\n", "pred = np.argmax(output.asnumpy(), axis=1)\n", "index = 0\n", "for image in show_images_lst:\n", @@ -467,13 +755,6 @@ " plt.axis(\"off\")\n", "plt.show()\n" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] } ], "metadata": { @@ -492,7 +773,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.9.23" + "version": "3.9.2" }, "vscode": { "interpreter": { diff --git a/Online/inference/README.md b/Online/inference/README.md index 12f52d2..4d6096c 100644 --- a/Online/inference/README.md +++ b/Online/inference/README.md @@ -1,430 +1,430 @@ -# 昇思MindSpore香橙派能力介绍 -- 开发友好:动态图易用性提升,类huggingface风格降低开发调试门槛 -- 性能提升:mindspore.jit编译成图,一行代码实现推理性能提升一倍 -- 全流程支持:在香橙派上支持模型训推全流程 - -# 最新动态 - -目前我们在镜像中预装了Jupyter Lab软件。已实现[OrangePi AIpro(香橙派)开发板的系统镜像](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)预置和[昇思MindSpore AI框架](https://www.mindspore.cn/install/),并在后续版本迭代中持续演进,当前已支持MindSpore官网教程涵盖的全部网络模型。 - -# 支持的模型和版本兼容 - -| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | -| :----- |:----- |:----- |:-----| -| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 8.1.RC1 | 2.6.0| 8T8G | -|[ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT)| 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN)| 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet)| 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD)|8.1.RC1 | 2.6.0| 8T8G | -|[RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN)|8.1.RC1 | 2.6.0| 8T8G | -|[LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN)|8.1.RC1 | 2.6.0| 8T8G | -|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama)|8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) |8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) |8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0| 20T24G | -|[DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0| 20T24G | -|[MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 8.0.0beta1 | 2.5.0| 20T24G | - - - -# 指导文档 -## 环境搭建指南 - -[![查看源文件](https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/website-images/master/resource/_static/logo_source.svg)](https://gitee.com/mindspore/docs/blob/master/docs/mindspore/source_zh_cn/orange_pi/environment_setup.md) - -本章节将介绍如何在OrangePi AIpro上烧录镜像,自定义安装CANN和MindSpore,并配置运行环境。 - -### 1. 镜像烧录(以Windows系统为例) - -镜像烧录可以在任何操作系统内执行,这里将以在Windows系统为例,演示使用相应版本的balenaEtcher工具,快速烧录镜像至您的Micro SD卡。 - -#### 1.1 制卡前准备 - -步骤1 将Micro SD卡插入读卡器,并将读卡器插入PC。 - -![environment-setup-1-1](./images/environment_setup_1-1.jpg) - -#### 1.2 下载Ubuntu镜像 - -步骤1 点击[此链接](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)进入镜像下载页面。 - -> 此处仅做示意,不同算力开发板镜像下载地址不同,详细请查看[此链接](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html)。 - -步骤2 点击图片中箭头图标跳转百度网盘下载页面。 - -![environment-setup-1-2](./images/environment_setup_1-2.png) - -步骤3 选择桌面版本下载,建议下载0318版本环境。 - -![environment-setup-1-3](./images/environment_setup_1-3.png) - -步骤4 备选下载方式。 - -如果百度网盘下载过慢,可以使用[此链接](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/OrangePi/20240318/opiaipro_ubuntu22.04_desktop_aarch64_20240318.img.xz)直接下载。 - -#### 1.3 下载制卡工具 - -有两种制卡工具balenaEtcher、Rufus,可根据自己电脑情况任选一种工具进行烧录。 - -- balenaEtcher制卡工具: - - 步骤1 下载balenaEtcher。 - - 点击[此链接](https://etcher.balena.io/)可跳转到软件官网,点击绿色的下载按钮会跳到软件下载的地方。 - - ![environment-setup-1-4](./images/environment_setup_1-4.png) - - 步骤2 选择下载 Portable版本。 - - Portable版本无需安装,双击打开即可使用。 - - ![environment-setup-1-5](./images/environment_setup_1-5.png) - - 步骤3 备选下载方式。 - - 如果官方网站下载过慢,可以使用以[此链接](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/OrangePi/balenaEtcher/balenaEtcher-Setup-1.18.4.exe )直接下载balenaEtcher-Setup-1.18.4软件。 - - 步骤4 打开balenaEtcher。 - - ![environment-setup-1-6](./images/environment_setup_1-6.png) - - ![environment-setup-1-7](./images/environment_setup_1-7.png) - -- Rufus制卡工具: - - 步骤1 Rufus下载。 - - 点击[此链接](https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe),进行下载、安装。 - -#### 1.4 选择和烧录镜像 - -这里介绍balenaEtcher、Rufus两种制卡工具烧录镜像,您可按对应工具进行烧录。 - -- balenaEtcher烧录镜像: - - 步骤1 选择镜像、TF卡,启动烧录。 - - 1. 选择要烧录的镜像文件(上文1.2下载Ubuntu镜像的保存路径)。 - - 2. 选择TF卡的盘符。 - - 3. 点击开始烧录,如下图: - - ![environment-setup-1-8](./images/environment_setup_1-8.png) - - 烧录和验证大概需要20分钟左右,请耐心等待: - - ![environment-setup-1-9](./images/environment_setup_1-9.png) - - ![environment-setup-1-10](./images/environment_setup_1-10.png) - - 步骤2 烧录完成。 - - 烧录完成后,balenaEtcher的显示界面如下图所示,如果显示绿色的指示图标说明镜像烧录成功,此时就可以退出balenaEtcher,拔出TF卡,插入到开发板的TF卡槽中使用: - - ![environment-setup-1-11](./images/environment_setup_1-11.png) - -- Rufus烧录镜像: - - 步骤1 选择镜像、TF卡,烧录镜像。 - - sd卡插入读卡器,读卡器插入电脑、选择镜像与sd卡,点击“开始”。 - - ![environment-setup-1-12](./images/environment_setup_1-12.png) - - 步骤2 烧录完成。 - - 等待结束后直接拔出读卡器。 - - ![environment-setup-1-13](./images/environment_setup_1-13.png) - -### 2. CANN升级 - -#### 2.1 Toolkit升级 - -步骤1 打开终端,切换root用户。 - -使用`CTRL+ALT+T`快捷键或点击页面下方带有`$_`的图标打开终端。 - -![environment-setup-1-14](./images/environment_setup_1-14.png) - -切换root用户,root用户密码:Mind@123。 - -```bash - -# 打开开发板的一个终端,运行如下命令 - -(base) HwHiAiUser@orangepiaipro:~$ su – root - Password: -(base) root@orangepiaipro: ~# - -``` - -步骤2 删除镜像中已安装CANN包释放磁盘空间,防止安装新的CANN包时报错磁盘空间不足。 - -```bash - -(base) root@orangepiaipro: ~# cd /usr/local/Ascend/ascend-toolkit -(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit # rm -rf * - -``` - -步骤3 打开昇腾CANN官网访问社区版资源[下载地址](https://www.hiascend.com/developer/download/community/result?module=cann),下载所需版本的toolkit包,该处以8.0.RC3.alpha002版本aarch64架构为例(14和15两个案例仅在此版本上验证通过),如下图: - -![environment-setup-1-15](./images/environment_setup_1-15.png) - -步骤4 进入Toolkit包下载目录。 - -```bash -(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads -``` - -> Orange Pi AI Pro浏览器文件默认下载目录:/home/HwHiAiUser/Downloads,用户在更换保存路径时请同步修改上述命令中的路径。 - -步骤5 给CANN包添加执行权限。 - -```bash -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads# chmod +x ./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run -``` - -步骤6 执行以下命令升级软件。 - -```bash -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads#./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run --install --quiet -``` - -升级完成后,若显示如下信息,则说明软件升级成功: - -```bash -xxx install success - -``` - -- xxx表示升级的实际软件包名。 - -- 安装升级后的路径(以root用户默认安装升级路径为例):“/usr/local/Ascend/ ascend-toolkit/ - -步骤7 配置并加载环境变量。 - -```bash - -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # echo “source /usr/local/Ascend/ascend-toolkit/set_env.sh” >> ~/.bashrc -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # source ~/.bashrc - -``` - -#### 2.2 Kernels升级 - -> 二进制算子包Kernels依赖CANN软件包Toolkit,执行升级时,当前环境需已安装配套版本的Toolkit,并使用同一用户安装。 - -步骤1 打开终端,并切换root用户。 - -root用户密码:Mind@123。 - -```bash - -# 打开开发板的一个终端,运行如下命令 - -(base) HwHiAiUser@orangepiaipro:~$ su – root - Password: -(base) root@orangepiaipro: ~# - -``` - -步骤2 执行如下命令,获取开发板NPU型号。 - -```bash -npu-smi info -``` - -步骤3 打开昇腾CANN官网访问社区版资源[下载地址](https://www.hiascend.com/developer/download/community/result?module=cann),下载与CANN包版本一致,并且匹配NPU型号的kernel包,如下图: - -![environment-setup-1-18](./images/environment_setup_1-18.png) - -步骤4 进入Kernels包下载目录。 - -```bash -(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads -``` - -> Orange Pi AI Pro浏览器文件默认下载目录:/home/HwHiAiUser/Downloads - -步骤5 给kernels包添加执行权限。 - -```bash -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads# chmod +x ./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run -``` - -步骤6 执行以下命令升级软件。 - -```bash -(base) root@orangepiaipro: /home/HwHiAiUser/Downloads#./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run --install -``` - -升级完成后,若显示如下信息,则说明软件升级成功: - -```bash -xxx install success -``` - -- xxx表示升级的实际软件包名。 - -- 安装升级后的路径(以root用户默认安装升级路径为例):“/usr/local/Ascend/ ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/kernel”。 - -### 3. MindSpore升级 - -#### 3.1 安装官网正式版(以MindSpore2.4.0为例) -当前2.3.1版本存在可用内存必须大于总内存的50%才能启动推理程序的限制,这一限制在2.4.0版本中被移除。 - -参考[昇思MindSpore官网安装教程](https://www.mindspore.cn/install) 安装。 - -```bash - -pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/2.3.1/MindSpore/unified/aarch64/mindspore-2.3.1-cp39-cp39-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple - -# 注意确认操作系统和编程语言,香橙派开发板默认环境下是linux-aarch64和python3.9 - -``` - -#### 3.2 安装MindSpore daily包(以9月11日daily包为例) - -香橙派开发板支持自定义安装MindSpore daily包,可从[此链接](https://repo.mindspore.cn/mindspore/mindspore/version/)获取到对应日期的软件包。 - -- 目标 daily whl包具体查找过程如下: - - 1. 进入以master为前缀的目录。若是出现多个目录前缀是master时,推荐进入日期更靠后的目录。 - - 2. 进入unified目录。 - - 3. 根据实际操作系统信息,进入对应目录。由于香橙派开发板默认操作系统为linux-aarch64,所以进入aarch64目录。 - - 4. 根据实际python版本信息,找到对应daily whl包。由于香橙派开发板默认为python3.9,所以目标daily包为mindspore-2.4.0-cp39-cp39-linux_aarch64.whl。 - - ![environment-setup-1-19](./images/environment_setup_1-19.png) - -> 本教程旨在让开发者体验到最新的版本特定,但由于daily包并不是正式发布版本,在运行中可能会出现一些问题,开发者可通过[社区](https://gitee.com/mindspore/mindspore)提交issue,或可自行修改并提交PR。 - -- 下载whl包进行安装,终端运行如下命令。 - -```bash - -# wget下载whl包 -wget https://repo.mindspore.cn/mindspore/mindspore/version/202409/20240911/master_20240911160029_917adc670d5f93049d35d6c3ab4ac6aa2339a74b_newest/unified/aarch64/mindspore-2.4.0-cp39-cp39-linux_aarch64.whl - -# 在终端进入到whl包所在路径,再运行pip install命令进行安装 -pip install mindspore-2.4.0-cp39-cp39-linux_aarch64.whl - -``` -**注:目前镜像(预计于24年第四季度发布)已内置MindSpore2.4版本,部分案例仅支持MindSpore 2.4版本运行,推荐开发者使用最新镜像。** - -## 模型在线推理 - -本章节将介绍如何在OrangePi AIpro(下称:香橙派开发板)下载昇思MindSpore在线推理案例,并启动Jupyter Lab界面执行推理。 - -### 1. 下载案例 - -步骤1 下载案例代码。 - -```bash -# 打开开发板的一个终端,运行如下命令 -cd samples/notebooks/ -git clone https://github.com/mindspore-courses/orange-pi-mindspore.git -``` - -步骤2 进入案例目录。 - -下载的代码包在香橙派开发板的如下目录中:/home/HwHiAiUser/samples/notebooks。 - -项目目录如下: - -```bash -/home/HwHiAiUser/samples/notebooks/orange-pi-mindspore/Online/inference -01-quick_start -02-ResNet50 -03-ViT -04-FCN -05-Shufflenet -06-SSD -07-RNN -08-LSTM+CRF -09-GAN -10-DCGAN -11-Pix2Pix -12-Diffusion -13-ResNet50_transfer -14-qwen1.5-0.5b -15-tinyllama -16-DctNet -17-DeepSeek-R1-Distill-Qwen-1.5B -18-DeepSeek-Janus-Pro-1B -19-MiniCPM3 -``` - -### 2. 推理执行(案例01-13) - -步骤1 启动Jupyter Lab界面。 - -```bash -cd /home/HwHiAiUser/orange-pi-mindspore/ -./start_notebook.sh -``` - -在执行该脚本后,终端会出现如下打印信息,在打印信息中会有登录Jupyter Lab的网址链接。 - -![model-infer1](./images/model_infer1.png) - -然后打开浏览器。 - -![model-infer2](./images/model_infer2.png) - -再在浏览器中输入上面看到的网址链接,就可以登录Jupyter Lab软件了。 - -![model-infer3](./images/model_infer3.png) - -步骤2 在Jupyter Lab界面双击下图所示的案例目录,此处以“04-FCN”为例,即可进入到该案例的目录中。 - -![model-infer4](./images/model_infer4.png) - -步骤3 在该目录下有运行该示例的所有资源,其中mindspore_fcn8s.ipynb是在Jupyter Lab中运行该样例的文件,双击打开mindspore_fcn8s.ipynb,在右侧窗口中会显示。mindspore_fcn8s.ipynb文件中的内容,如下图所示: - -![model-infer5](./images/model_infer5.png) - -步骤4 单击⏩按钮运行样例,在弹出的对话框中单击“Restart”按钮,此时该样例开始运行。 - -![model-infer6](./images/model_infer6.png) - -**注:如遇报错“线程同步失败”,请尝试关闭swap。执行sudo swapoff /swapfile命令。** - -### 3. 推理执行(案例14、15) -**注:此处推荐使用aipro20T 24G版本,aipro8T 16G也可运行,但请注意剩余内存。暂不支持小于16G内存的aipro运行这两个案例。** - -步骤1 进入案例目录,以14-qwen1.5-0.5b为例,15号案例类似。 - -```bash -cd /home/HwHiAiUser/orange-pi-mindspore/Online/inference/14-qwen1.5-0.5b -``` - -**注:首次启动时会自动从镜像站下载模型,如遇网络原因无法下载,可以通过电脑下载后上传到案例目录下的.mindnlp文件夹内的对应目录下。** - -步骤2 将模型路径修改为本地模型存放的路径(可选) - -```bash -vim qwen1.5-0.5b.py -# 找到以下两行 -tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) -model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) -# 修改为 -tokenizer = AutoTokenizer.from_pretrained("/home/HwHiAiUser/orange-pi-mindspore-master/Online/inference/14-qwen1.5-0.5b/.mindnlp/model/Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) -model = AutoModelForCausalLM.from_pretrained("/home/HwHiAiUser/orange-pi-mindspore-master/Online/inference/14-qwen1.5-0.5b/.mindnlp/model/Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) -``` - -步骤3 启动推理程序 - -```bash -python3 qwen1.5-0.5b.py -``` +# 昇思MindSpore香橙派能力介绍 +- 开发友好:动态图易用性提升,类huggingface风格降低开发调试门槛 +- 性能提升:mindspore.jit编译成图,一行代码实现推理性能提升一倍 +- 全流程支持:在香橙派上支持模型训推全流程 + +# 最新动态 + +目前我们在镜像中预装了Jupyter Lab软件。已实现[OrangePi AIpro(香橙派)开发板的系统镜像](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)预置和[昇思MindSpore AI框架](https://www.mindspore.cn/install/),并在后续版本迭代中持续演进,当前已支持MindSpore官网教程涵盖的全部网络模型。 + +# 支持的模型和版本兼容 + +| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | +| :----- |:----- |:----- |:-----| +| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 8.1.RC1 | 2.6.0| 8T8G | +|[ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT)| 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN)| 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet)| 8.1.RC1 | 2.6.0 | 8T16G | +|[SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD)|8.1.RC1 | 2.6.0| 8T8G | +|[RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN)|8.1.RC1 | 2.6.0| 8T8G | +|[LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN)|8.1.RC1 | 2.6.0| 8T8G | +|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama)|8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) |8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) |8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0| 20T24G | +|[DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0| 20T24G | +|[MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 8.0.0beta1 | 2.5.0| 20T24G | + + + +# 指导文档 +## 环境搭建指南 + +[![查看源文件](https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/website-images/master/resource/_static/logo_source.svg)](https://gitee.com/mindspore/docs/blob/master/docs/mindspore/source_zh_cn/orange_pi/environment_setup.md) + +本章节将介绍如何在OrangePi AIpro上烧录镜像,自定义安装CANN和MindSpore,并配置运行环境。 + +### 1. 镜像烧录(以Windows系统为例) + +镜像烧录可以在任何操作系统内执行,这里将以在Windows系统为例,演示使用相应版本的balenaEtcher工具,快速烧录镜像至您的Micro SD卡。 + +#### 1.1 制卡前准备 + +步骤1 将Micro SD卡插入读卡器,并将读卡器插入PC。 + +![environment-setup-1-1](./images/environment_setup_1-1.jpg) + +#### 1.2 下载Ubuntu镜像 + +步骤1 点击[此链接](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)进入镜像下载页面。 + +> 此处仅做示意,不同算力开发板镜像下载地址不同,详细请查看[此链接](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html)。 + +步骤2 点击图片中箭头图标跳转百度网盘下载页面。 + +![environment-setup-1-2](./images/environment_setup_1-2.png) + +步骤3 选择桌面版本下载,建议下载0318版本环境。 + +![environment-setup-1-3](./images/environment_setup_1-3.png) + +步骤4 备选下载方式。 + +如果百度网盘下载过慢,可以使用[此链接](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/OrangePi/20240318/opiaipro_ubuntu22.04_desktop_aarch64_20240318.img.xz)直接下载。 + +#### 1.3 下载制卡工具 + +有两种制卡工具balenaEtcher、Rufus,可根据自己电脑情况任选一种工具进行烧录。 + +- balenaEtcher制卡工具: + + 步骤1 下载balenaEtcher。 + + 点击[此链接](https://etcher.balena.io/)可跳转到软件官网,点击绿色的下载按钮会跳到软件下载的地方。 + + ![environment-setup-1-4](./images/environment_setup_1-4.png) + + 步骤2 选择下载 Portable版本。 + + Portable版本无需安装,双击打开即可使用。 + + ![environment-setup-1-5](./images/environment_setup_1-5.png) + + 步骤3 备选下载方式。 + + 如果官方网站下载过慢,可以使用以[此链接](https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/OrangePi/balenaEtcher/balenaEtcher-Setup-1.18.4.exe )直接下载balenaEtcher-Setup-1.18.4软件。 + + 步骤4 打开balenaEtcher。 + + ![environment-setup-1-6](./images/environment_setup_1-6.png) + + ![environment-setup-1-7](./images/environment_setup_1-7.png) + +- Rufus制卡工具: + + 步骤1 Rufus下载。 + + 点击[此链接](https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe),进行下载、安装。 + +#### 1.4 选择和烧录镜像 + +这里介绍balenaEtcher、Rufus两种制卡工具烧录镜像,您可按对应工具进行烧录。 + +- balenaEtcher烧录镜像: + + 步骤1 选择镜像、TF卡,启动烧录。 + + 1. 选择要烧录的镜像文件(上文1.2下载Ubuntu镜像的保存路径)。 + + 2. 选择TF卡的盘符。 + + 3. 点击开始烧录,如下图: + + ![environment-setup-1-8](./images/environment_setup_1-8.png) + + 烧录和验证大概需要20分钟左右,请耐心等待: + + ![environment-setup-1-9](./images/environment_setup_1-9.png) + + ![environment-setup-1-10](./images/environment_setup_1-10.png) + + 步骤2 烧录完成。 + + 烧录完成后,balenaEtcher的显示界面如下图所示,如果显示绿色的指示图标说明镜像烧录成功,此时就可以退出balenaEtcher,拔出TF卡,插入到开发板的TF卡槽中使用: + + ![environment-setup-1-11](./images/environment_setup_1-11.png) + +- Rufus烧录镜像: + + 步骤1 选择镜像、TF卡,烧录镜像。 + + sd卡插入读卡器,读卡器插入电脑、选择镜像与sd卡,点击“开始”。 + + ![environment-setup-1-12](./images/environment_setup_1-12.png) + + 步骤2 烧录完成。 + + 等待结束后直接拔出读卡器。 + + ![environment-setup-1-13](./images/environment_setup_1-13.png) + +### 2. CANN升级 + +#### 2.1 Toolkit升级 + +步骤1 打开终端,切换root用户。 + +使用`CTRL+ALT+T`快捷键或点击页面下方带有`$_`的图标打开终端。 + +![environment-setup-1-14](./images/environment_setup_1-14.png) + +切换root用户,root用户密码:Mind@123。 + +```bash + +# 打开开发板的一个终端,运行如下命令 + +(base) HwHiAiUser@orangepiaipro:~$ su – root + Password: +(base) root@orangepiaipro: ~# + +``` + +步骤2 删除镜像中已安装CANN包释放磁盘空间,防止安装新的CANN包时报错磁盘空间不足。 + +```bash + +(base) root@orangepiaipro: ~# cd /usr/local/Ascend/ascend-toolkit +(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit # rm -rf * + +``` + +步骤3 打开昇腾CANN官网访问社区版资源[下载地址](https://www.hiascend.com/developer/download/community/result?module=cann),下载所需版本的toolkit包,该处以8.0.RC3.alpha002版本aarch64架构为例(14和15两个案例仅在此版本上验证通过),如下图: + +![environment-setup-1-15](./images/environment_setup_1-15.png) + +步骤4 进入Toolkit包下载目录。 + +```bash +(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads +``` + +> Orange Pi AI Pro浏览器文件默认下载目录:/home/HwHiAiUser/Downloads,用户在更换保存路径时请同步修改上述命令中的路径。 + +步骤5 给CANN包添加执行权限。 + +```bash +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads# chmod +x ./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run +``` + +步骤6 执行以下命令升级软件。 + +```bash +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads#./Ascend-cann-toolkit_8.0.RC3.alpha002_linux-aarch64.run --install --quiet +``` + +升级完成后,若显示如下信息,则说明软件升级成功: + +```bash +xxx install success + +``` + +- xxx表示升级的实际软件包名。 + +- 安装升级后的路径(以root用户默认安装升级路径为例):“/usr/local/Ascend/ ascend-toolkit/ + +步骤7 配置并加载环境变量。 + +```bash + +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # echo “source /usr/local/Ascend/ascend-toolkit/set_env.sh” >> ~/.bashrc +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads # source ~/.bashrc + +``` + +#### 2.2 Kernels升级 + +> 二进制算子包Kernels依赖CANN软件包Toolkit,执行升级时,当前环境需已安装配套版本的Toolkit,并使用同一用户安装。 + +步骤1 打开终端,并切换root用户。 + +root用户密码:Mind@123。 + +```bash + +# 打开开发板的一个终端,运行如下命令 + +(base) HwHiAiUser@orangepiaipro:~$ su – root + Password: +(base) root@orangepiaipro: ~# + +``` + +步骤2 执行如下命令,获取开发板NPU型号。 + +```bash +npu-smi info +``` + +步骤3 打开昇腾CANN官网访问社区版资源[下载地址](https://www.hiascend.com/developer/download/community/result?module=cann),下载与CANN包版本一致,并且匹配NPU型号的kernel包,如下图: + +![environment-setup-1-18](./images/environment_setup_1-18.png) + +步骤4 进入Kernels包下载目录。 + +```bash +(base) root@orangepiaipro: /usr/local/Ascend/ascend-toolkit# cd /home/HwHiAiUser/Downloads +``` + +> Orange Pi AI Pro浏览器文件默认下载目录:/home/HwHiAiUser/Downloads + +步骤5 给kernels包添加执行权限。 + +```bash +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads# chmod +x ./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run +``` + +步骤6 执行以下命令升级软件。 + +```bash +(base) root@orangepiaipro: /home/HwHiAiUser/Downloads#./Ascend-cann-kernels-310b_8.0.RC3.alpha002_linux.run --install +``` + +升级完成后,若显示如下信息,则说明软件升级成功: + +```bash +xxx install success +``` + +- xxx表示升级的实际软件包名。 + +- 安装升级后的路径(以root用户默认安装升级路径为例):“/usr/local/Ascend/ ascend-toolkit/latest/opp/built-in/op_impl/ai_core/tbe/kernel”。 + +### 3. MindSpore升级 + +#### 3.1 安装官网正式版(以MindSpore2.4.0为例) +当前2.3.1版本存在可用内存必须大于总内存的50%才能启动推理程序的限制,这一限制在2.4.0版本中被移除。 + +参考[昇思MindSpore官网安装教程](https://www.mindspore.cn/install) 安装。 + +```bash + +pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/2.3.1/MindSpore/unified/aarch64/mindspore-2.3.1-cp39-cp39-linux_aarch64.whl --trusted-host ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple + +# 注意确认操作系统和编程语言,香橙派开发板默认环境下是linux-aarch64和python3.9 + +``` + +#### 3.2 安装MindSpore daily包(以9月11日daily包为例) + +香橙派开发板支持自定义安装MindSpore daily包,可从[此链接](https://repo.mindspore.cn/mindspore/mindspore/version/)获取到对应日期的软件包。 + +- 目标 daily whl包具体查找过程如下: + + 1. 进入以master为前缀的目录。若是出现多个目录前缀是master时,推荐进入日期更靠后的目录。 + + 2. 进入unified目录。 + + 3. 根据实际操作系统信息,进入对应目录。由于香橙派开发板默认操作系统为linux-aarch64,所以进入aarch64目录。 + + 4. 根据实际python版本信息,找到对应daily whl包。由于香橙派开发板默认为python3.9,所以目标daily包为mindspore-2.4.0-cp39-cp39-linux_aarch64.whl。 + + ![environment-setup-1-19](./images/environment_setup_1-19.png) + +> 本教程旨在让开发者体验到最新的版本特定,但由于daily包并不是正式发布版本,在运行中可能会出现一些问题,开发者可通过[社区](https://gitee.com/mindspore/mindspore)提交issue,或可自行修改并提交PR。 + +- 下载whl包进行安装,终端运行如下命令。 + +```bash + +# wget下载whl包 +wget https://repo.mindspore.cn/mindspore/mindspore/version/202409/20240911/master_20240911160029_917adc670d5f93049d35d6c3ab4ac6aa2339a74b_newest/unified/aarch64/mindspore-2.4.0-cp39-cp39-linux_aarch64.whl + +# 在终端进入到whl包所在路径,再运行pip install命令进行安装 +pip install mindspore-2.4.0-cp39-cp39-linux_aarch64.whl + +``` +**注:目前镜像(预计于24年第四季度发布)已内置MindSpore2.4版本,部分案例仅支持MindSpore 2.4版本运行,推荐开发者使用最新镜像。** + +## 模型在线推理 + +本章节将介绍如何在OrangePi AIpro(下称:香橙派开发板)下载昇思MindSpore在线推理案例,并启动Jupyter Lab界面执行推理。 + +### 1. 下载案例 + +步骤1 下载案例代码。 + +```bash +# 打开开发板的一个终端,运行如下命令 +cd samples/notebooks/ +git clone https://github.com/mindspore-courses/orange-pi-mindspore.git +``` + +步骤2 进入案例目录。 + +下载的代码包在香橙派开发板的如下目录中:/home/HwHiAiUser/samples/notebooks。 + +项目目录如下: + +```bash +/home/HwHiAiUser/samples/notebooks/orange-pi-mindspore/Online/inference +01-quick_start +02-ResNet50 +03-ViT +04-FCN +05-Shufflenet +06-SSD +07-RNN +08-LSTM+CRF +09-GAN +10-DCGAN +11-Pix2Pix +12-Diffusion +13-ResNet50_transfer +14-qwen1.5-0.5b +15-tinyllama +16-DctNet +17-DeepSeek-R1-Distill-Qwen-1.5B +18-DeepSeek-Janus-Pro-1B +19-MiniCPM3 +``` + +### 2. 推理执行(案例01-13) + +步骤1 启动Jupyter Lab界面。 + +```bash +cd /home/HwHiAiUser/orange-pi-mindspore/ +./start_notebook.sh +``` + +在执行该脚本后,终端会出现如下打印信息,在打印信息中会有登录Jupyter Lab的网址链接。 + +![model-infer1](./images/model_infer1.png) + +然后打开浏览器。 + +![model-infer2](./images/model_infer2.png) + +再在浏览器中输入上面看到的网址链接,就可以登录Jupyter Lab软件了。 + +![model-infer3](./images/model_infer3.png) + +步骤2 在Jupyter Lab界面双击下图所示的案例目录,此处以“04-FCN”为例,即可进入到该案例的目录中。 + +![model-infer4](./images/model_infer4.png) + +步骤3 在该目录下有运行该示例的所有资源,其中mindspore_fcn8s.ipynb是在Jupyter Lab中运行该样例的文件,双击打开mindspore_fcn8s.ipynb,在右侧窗口中会显示。mindspore_fcn8s.ipynb文件中的内容,如下图所示: + +![model-infer5](./images/model_infer5.png) + +步骤4 单击⏩按钮运行样例,在弹出的对话框中单击“Restart”按钮,此时该样例开始运行。 + +![model-infer6](./images/model_infer6.png) + +**注:如遇报错“线程同步失败”,请尝试关闭swap。执行sudo swapoff /swapfile命令。** + +### 3. 推理执行(案例14、15) +**注:此处推荐使用aipro20T 24G版本,aipro8T 16G也可运行,但请注意剩余内存。暂不支持小于16G内存的aipro运行这两个案例。** + +步骤1 进入案例目录,以14-qwen1.5-0.5b为例,15号案例类似。 + +```bash +cd /home/HwHiAiUser/orange-pi-mindspore/Online/inference/14-qwen1.5-0.5b +``` + +**注:首次启动时会自动从镜像站下载模型,如遇网络原因无法下载,可以通过电脑下载后上传到案例目录下的.mindnlp文件夹内的对应目录下。** + +步骤2 将模型路径修改为本地模型存放的路径(可选) + +```bash +vim qwen1.5-0.5b.py +# 找到以下两行 +tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) +model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) +# 修改为 +tokenizer = AutoTokenizer.from_pretrained("/home/HwHiAiUser/orange-pi-mindspore-master/Online/inference/14-qwen1.5-0.5b/.mindnlp/model/Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) +model = AutoModelForCausalLM.from_pretrained("/home/HwHiAiUser/orange-pi-mindspore-master/Online/inference/14-qwen1.5-0.5b/.mindnlp/model/Qwen/Qwen1.5-0.5B-Chat", ms_dtype=mindspore.float16) +``` + +步骤3 启动推理程序 + +```bash +python3 qwen1.5-0.5b.py +``` diff --git a/README.md b/README.md index 7dc424b..9f1390e 100644 --- a/README.md +++ b/README.md @@ -1,134 +1,134 @@ -# orange-pi-mindspore - -本代码仓为基于昇思MindSpore+香橙派开发板案例仓,内包含带框架(Online,推荐)开发和离线(Offline)推理案例。 - -## 目录 - -- [orange-pi-mindspore](#orange-pi-mindspore) - - [目录](#目录) - - [昇思MindSpore香橙派能力介绍](#昇思mindspore香橙派能力介绍) - - [最新动态](#最新动态) - - [代码仓分支和版本兼容](#代码仓分支和版本兼容) - - [案例与模型清单](#案例与模型清单) - - [基于MindSpore开发(Online)](#基于mindspore开发online) - - [官方案例(inference+training)](#官方案例inferencetraining) - - [第三方应用案例(community)](#第三方应用案例community) - - [离线推理(Offline)](#离线推理offline) - - [官方案例(inference)](#官方案例inference) - - [第三方应用案例(community)](#第三方应用案例community-1) - - [学习资源](#学习资源) - - [贡献指南](#贡献指南) - - [问题答疑](#问题答疑) -## 昇思MindSpore香橙派能力介绍 - -- 开发友好:动态图易用性提升,类huggingface风格降低开发调试门槛 -- 性能提升:mindspore.jit编译成图,一行代码实现推理性能提升一倍 -- 全流程支持:在香橙派上支持模型训推全流程 - -## 最新动态 - -[《昇思+昇腾开发板:软硬结合玩转DeepSeek开发实战》](https://www.hiascend.com/developer/courses/detail/1925362775376744449)课程已上线,以DeepSeek蒸馏模型为例,讲解如何基于昇思MindSpore,在香橙派开发板上完成该模型的开发、微调、推理、性能提升,以及分享一些在开发板上实践的经验供大家参考。 - -欢迎开发者访问学习交流,如对课程有任何建议,或希望新增哪些内容的讲解,欢迎在课程评论区留下你宝贵的评论,或在本代码仓中提交`issue`。 - - -## 代码仓分支和版本兼容 - -| branch | Online/Offline | CANN toolkit/kernel | MindSpore | -| :----- |:----- |:----- |:----- | -| r1.0 | Online | 8.0.0beta1 | 2.5.0 | -| r1.0 | Online | 8.0.RC3.alpha002 | 2.4.10 | -| r1.0 | Offline | 8.0.RC3.alpha002 | 2.2.14 | - -## 案例与模型清单 -### 基于MindSpore开发(Online) -#### 官方案例(inference+training) -| 模型 | 训练/推理 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | -| :----- |:----- |:----- |:-----|:-----| -| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 推理 | 8.1.RC1 | 2.6.0| 8T8G | -|[ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD)| 推理 | 8.1.RC1 | 2.6.0| 8T8G | -|[RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN)| 推理 | 8.1.RC1 | 2.6.0| 8T8G | -|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) | 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | -|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) | 推理 | 8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0| 20T24G | -|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/01-DeepSeek-R1-Distill-Qwen-1.5B) | 训练 | 8.0.0.beta1/8.1.RC1.beta1 | 2.5.0/2.6.0 | 20T24G | -|[DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 推理 | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0| 20T24G | -|[MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 推理 | 8.0.0beta1 | 2.5.0| 20T24G | - - -#### 第三方应用案例(community) -| 模型 | 训练/推理 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | -| :----- |:----- |:----- |:-----|:-----| -| [TokenClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TokenClassification) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [SentenceSimilarity](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/SentenceSimilarity) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [ImageToText](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageToText) | 推理 | 8.0.0.beta1 | 2.6.0 | 8T16G | -| [TextRanking](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextRanking) | 推理 | 8.0.0.beta1 | 2.6.0 | 8T16G | -| [FeatureExtraction](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/FeatureExtraction) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [TableQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TableQuestionAnswering) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [ImageClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageClassification) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | -| [TextClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextClassification) | 推理 | 8.0.0.beta1 |2.6.0 |20T24G | -| [Summarization](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Summarization) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | -| [Translation](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Translation) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | -| [ObjectDetection](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ObjectDetection) | 推理 | 8.0.0.beta1 |2.6.0 |8T16G | -| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 推理 | 8.0.0.beta1 | 2.6.0 |8T16G | -| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | -| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | - -> 注:在线案例指导请参考Online文件夹中的README文档 - -### 离线推理(Offline) -#### 官方案例(inference) -| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | -| ---- | ---- | ---- | ---- | -| [CNNCTC](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/01-CNNCTC) | 8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/02-ResNet50)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[HDR](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/03-HDR)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[CycleGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/04-CycleGAN)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[Shufflenet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/05-Shufflenet)|8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/06-FCN)|8.0.RC2.alpha003 | 2.2.14| 8T16G | -|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/07-Pix2Pix)|8.0.RC2.alpha003 | 2.2.14| 8T16G | -| - -#### 第三方应用案例(community) -| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | -| ---- | ---- | ---- | ---- | -[RingMoE](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/community/RingMoE-Classification)|8.0.0.beta1 | 2.6.0 | 20T24G | -> 注:离线案例指导请参考Offline文件夹中的README文档 - -## 学习资源 - -| 阶段 | 描述 | 链接 | -| :----- |:----- |:----- | -| 镜像获取 | 香橙派官网-官方镜像 | [8T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)
[20T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html) | -| 环境搭建 | 昇思官网香橙派开发教程 | [香橙派开发](https://www.mindspore.cn/tutorials/zh-CN/r2.6.0/orange_pi/overview.html) | -| 精品课程 | 《昇思+昇腾开发板:
软硬结合玩转DeepSeek开发实战》课程 | [课程链接](https://www.hiascend.com/developer/courses/detail/1925362775376744449) | -| 案例分享 | 昇腾开发板专区-案例分享 | [昇腾开发板专区](https://www.hiascend.com/developer/devboard) | - - -## 贡献指南 - -欢迎各位开发者贡献基于昇思MindSpore+香橙派开发板的应用案例!开发者可通过向`Online/community`路径下提交`pull request`进行贡献,由工程师进行校验和合入。 - -案例贡献要求: - -1. 保证应用案例在指定MindSpore版本要求下的香橙派环境中跑通,且输出达到预期。 -2. 贡献需包含 - - **代码(必选)**:python文件或jupyter notebook文件均可,如仅单一文件建议携程jupyter notebook格式 - - **README(必选)**:需包含对版本、案例、模型、算法、如何启动运行、预期输出结果 - - **数据集(可选)**:如涉及数据集,欢迎提供数据集获取方式,数据集可开源至[魔乐社区](https://modelers.cn/)或[大模型平台](https://xihe.mindspore.cn/) -3. 在`Online`和`Online/community`路径下README文档中的`模型案例清单和版本兼容-第三方应用案例`中,新增案例信息 -4. 对代码、README的详细要求,请见`Online`路径下README文档中`贡献指南` - -## 问题答疑 - -如在基于昇思MindSpore+香橙派开发板开发过程中遇到任何问题,欢迎在本代码仓中提交`issue`,定期会有工程师进行答疑。 +# orange-pi-mindspore + +本代码仓为基于昇思MindSpore+香橙派开发板案例仓,内包含带框架(Online,推荐)开发和离线(Offline)推理案例。 + +## 目录 + +- [orange-pi-mindspore](#orange-pi-mindspore) + - [目录](#目录) + - [昇思MindSpore香橙派能力介绍](#昇思mindspore香橙派能力介绍) + - [最新动态](#最新动态) + - [代码仓分支和版本兼容](#代码仓分支和版本兼容) + - [案例与模型清单](#案例与模型清单) + - [基于MindSpore开发(Online)](#基于mindspore开发online) + - [官方案例(inference+training)](#官方案例inferencetraining) + - [第三方应用案例(community)](#第三方应用案例community) + - [离线推理(Offline)](#离线推理offline) + - [官方案例(inference)](#官方案例inference) + - [第三方应用案例(community)](#第三方应用案例community-1) + - [学习资源](#学习资源) + - [贡献指南](#贡献指南) + - [问题答疑](#问题答疑) +## 昇思MindSpore香橙派能力介绍 + +- 开发友好:动态图易用性提升,类huggingface风格降低开发调试门槛 +- 性能提升:mindspore.jit编译成图,一行代码实现推理性能提升一倍 +- 全流程支持:在香橙派上支持模型训推全流程 + +## 最新动态 + +[《昇思+昇腾开发板:软硬结合玩转DeepSeek开发实战》](https://www.hiascend.com/developer/courses/detail/1925362775376744449)课程已上线,以DeepSeek蒸馏模型为例,讲解如何基于昇思MindSpore,在香橙派开发板上完成该模型的开发、微调、推理、性能提升,以及分享一些在开发板上实践的经验供大家参考。 + +欢迎开发者访问学习交流,如对课程有任何建议,或希望新增哪些内容的讲解,欢迎在课程评论区留下你宝贵的评论,或在本代码仓中提交`issue`。 + + +## 代码仓分支和版本兼容 + +| branch | Online/Offline | CANN toolkit/kernel | MindSpore | +| :----- |:----- |:----- |:----- | +| r1.0 | Online | 8.0.0beta1 | 2.5.0 | +| r1.0 | Online | 8.0.RC3.alpha002 | 2.4.10 | +| r1.0 | Offline | 8.0.RC3.alpha002 | 2.2.14 | + +## 案例与模型清单 +### 基于MindSpore开发(Online) +#### 官方案例(inference+training) +| 模型 | 训练/推理 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | +| :----- |:----- |:----- |:-----|:-----| +| [ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/02-ResNet50) | 推理 | 8.1.RC1 | 2.6.0| 8T8G | +|[ViT](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/03-ViT)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/04-FCN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[ShuffleNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/05-ShuffleNet)| 推理 | 8.1.RC1 | 2.6.0 | 8T16G | +|[SSD](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/06-SSD)| 推理 | 8.1.RC1 | 2.6.0| 8T8G | +|[RNN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/07-RNN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[LSTM+CRF](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/08-LSTM%2BCRF)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[GAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/09-GAN)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DCGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/10-DCGAN)| 推理 | 8.1.RC1 | 2.6.0| 8T8G | +|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/11-Pix2Pix)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[Diffusion](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/12-Diffusion)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[ResNet50_transfer](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/13-ResNet50_transfer)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[Qwen1.5-0.5b](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/14-qwen1.5-0.5b)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[TinyLlama-1.1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/15-tinyllama)| 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DctNet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/16-DctNet) | 推理 | 8.0.RC3.alpha002 | 2.4.10| 8T16G | +|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/17-DeepSeek-R1-Distill-Qwen-1.5B) | 推理 | 8.0.RC3.alpha002/8.0.0.beta1/8.1.RC1.beta1 | 2.4.10/2.5.0/2.6.0| 20T24G | +|[DeepSeek-R1-Distill-Qwen-1.5B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/training/01-DeepSeek-R1-Distill-Qwen-1.5B) | 训练 | 8.0.0.beta1/8.1.RC1.beta1 | 2.5.0/2.6.0 | 20T24G | +|[DeepSeek-Janus-Pro-1B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/18-DeepSeek-Janus-Pro-1B) | 推理 | 8.0.RC3.alpha002/8.0.0beta1 | 2.4.10/2.5.0| 20T24G | +|[MiniCPM3-4B](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/inference/19-MiniCPM3) | 推理 | 8.0.0beta1 | 2.5.0| 20T24G | + + +#### 第三方应用案例(community) +| 模型 | 训练/推理 | CANN版本 | Mindspore版本 | 香橙派开发板型号 | +| :----- |:----- |:----- |:-----|:-----| +| [TokenClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TokenClassification) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [SentenceSimilarity](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/SentenceSimilarity) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [ImageToText](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageToText) | 推理 | 8.0.0.beta1 | 2.6.0 | 8T16G | +| [TextRanking](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextRanking) | 推理 | 8.0.0.beta1 | 2.6.0 | 8T16G | +| [FeatureExtraction](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/FeatureExtraction) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [TableQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TableQuestionAnswering) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [ImageClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ImageClassification) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | +| [TextClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/TextClassification) | 推理 | 8.0.0.beta1 |2.6.0 |20T24G | +| [Summarization](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Summarization) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | +| [Translation](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/Translation) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | +| [ObjectDetection](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/ObjectDetection) | 推理 | 8.0.0.beta1 |2.6.0 |8T16G | +| [VideoClassification](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/VideoClassification) | 推理 | 8.0.0.beta1 | 2.6.0 |8T16G | +| [MaskGeneration](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/MaskGeneration) | 推理 | 8.1.RC1 | 2.6.0 | 8T16G | +| [DocumentQuestionAnswering](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Online/community/DocumentQuestionAnswering) | 推理 | 8.0.0.beta1 | 2.6.0 | 20T24G | + +> 注:在线案例指导请参考Online文件夹中的README文档 + +### 离线推理(Offline) +#### 官方案例(inference) +| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | +| ---- | ---- | ---- | ---- | +| [CNNCTC](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/01-CNNCTC) | 8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[ResNet50](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/02-ResNet50)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[HDR](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/03-HDR)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[CycleGAN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/04-CycleGAN)| 8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[Shufflenet](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/05-Shufflenet)|8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[FCN](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/06-FCN)|8.0.RC2.alpha003 | 2.2.14| 8T16G | +|[Pix2Pix](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/07-Pix2Pix)|8.0.RC2.alpha003 | 2.2.14| 8T16G | +| + +#### 第三方应用案例(community) +| 模型名 | 支持CANN版本 | 支持Mindspore版本 | 支持的香橙派开发板型号 | +| ---- | ---- | ---- | ---- | +[RingMoE](https://github.com/mindspore-courses/orange-pi-mindspore/tree/master/Offline/community/RingMoE-Classification)|8.0.0.beta1 | 2.6.0 | 20T24G | +> 注:离线案例指导请参考Offline文件夹中的README文档 + +## 学习资源 + +| 阶段 | 描述 | 链接 | +| :----- |:----- |:----- | +| 镜像获取 | 香橙派官网-官方镜像 | [8T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/service-and-support/Orange-Pi-AIpro.html)
[20T](http://www.orangepi.cn/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-AIpro(20T).html) | +| 环境搭建 | 昇思官网香橙派开发教程 | [香橙派开发](https://www.mindspore.cn/tutorials/zh-CN/r2.6.0/orange_pi/overview.html) | +| 精品课程 | 《昇思+昇腾开发板:
软硬结合玩转DeepSeek开发实战》课程 | [课程链接](https://www.hiascend.com/developer/courses/detail/1925362775376744449) | +| 案例分享 | 昇腾开发板专区-案例分享 | [昇腾开发板专区](https://www.hiascend.com/developer/devboard) | + + +## 贡献指南 + +欢迎各位开发者贡献基于昇思MindSpore+香橙派开发板的应用案例!开发者可通过向`Online/community`路径下提交`pull request`进行贡献,由工程师进行校验和合入。 + +案例贡献要求: + +1. 保证应用案例在指定MindSpore版本要求下的香橙派环境中跑通,且输出达到预期。 +2. 贡献需包含 + - **代码(必选)**:python文件或jupyter notebook文件均可,如仅单一文件建议携程jupyter notebook格式 + - **README(必选)**:需包含对版本、案例、模型、算法、如何启动运行、预期输出结果 + - **数据集(可选)**:如涉及数据集,欢迎提供数据集获取方式,数据集可开源至[魔乐社区](https://modelers.cn/)或[大模型平台](https://xihe.mindspore.cn/) +3. 在`Online`和`Online/community`路径下README文档中的`模型案例清单和版本兼容-第三方应用案例`中,新增案例信息 +4. 对代码、README的详细要求,请见`Online`路径下README文档中`贡献指南` + +## 问题答疑 + +如在基于昇思MindSpore+香橙派开发板开发过程中遇到任何问题,欢迎在本代码仓中提交`issue`,定期会有工程师进行答疑。