diff --git a/.gitignore b/.gitignore
index 70dcaea..7ab43ef 100644
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@ Samples/*
# Exclude temporary Python version file in the GUI interface
/Interface/GUI/Data/Python Ver.tmp
+/venv_2
\ No newline at end of file
diff --git a/.idea/Pneumonia AI Dev.iml b/.idea/Pneumonia AI Dev.iml
index 269e1a8..58a6887 100644
--- a/.idea/Pneumonia AI Dev.iml
+++ b/.idea/Pneumonia AI Dev.iml
@@ -3,8 +3,9 @@
+
-
+
diff --git a/BETA_E_Model_T&T.ipynb b/BETA_E_Model_T&T.ipynb
index 73b7d4c..6a14532 100644
--- a/BETA_E_Model_T&T.ipynb
+++ b/BETA_E_Model_T&T.ipynb
@@ -22,7 +22,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 1,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:27:44.939427800Z",
@@ -46,7 +46,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 2,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:27:47.128539500Z",
@@ -134,7 +134,7 @@
"tf.get_logger().setLevel('ERROR')\n",
"physical_devices = tf.config.list_physical_devices('GPU')\n",
"for gpu_instance in physical_devices:\n",
- " tf.config.experimental.set_memory_growth(gpu_instance, True)"
+ " tf.config.experimental.set_memory_growth(gpu_instance, True)\n"
]
},
{
@@ -153,7 +153,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 3,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:27:47.139048Z",
@@ -199,7 +199,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 4,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:27:48.287855100Z",
@@ -209,7 +209,15 @@
"groupValue": "12"
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\n"
+ ]
+ }
+ ],
"source": [
"SAVE_TYPE = 'H5'\n",
"Use_mixed_float16 = False\n",
@@ -231,7 +239,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 5,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:31:27.059139500Z",
@@ -241,7 +249,29 @@
"groupValue": "12"
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[0;33mUsing Def IDG...\u001b[0m\n",
+ "Found 23681 images belonging to 2 classes.\n",
+ "\u001b[0;33mLoading all images and labels into memory...\u001b[0m\n",
+ "\u001b[0;33mMaking categorical data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mGenerating augmented data \u001b[0m\u001b[0;36m[\u001b[0m\u001b[0;32mADBD: \u001b[0m\u001b[0;31m0\u001b[0m\u001b[0;36m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mNormalizing image data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0mData type: \u001b[0m\u001b[0;32mfloat32\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0mRGB Range: \u001b[0m\u001b[0;34mMin = 0.0\u001b[0m\u001b[0m | \u001b[0m\u001b[0;31mMax = 1.0\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0mLabel ratio: \u001b[0m\u001b[0;31m49.35% PNEUMONIA \u001b[0m\u001b[0;35m| \u001b[0m\u001b[0;32m50.65% NORMAL\u001b[0m\n",
+ "\u001b[0;33mSetting LNTS...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0mOriginal num_samples: \u001b[0m\u001b[0;32m23681\u001b[0m\n",
+ "\u001b[0;33mshuffling data...\u001b[0m\n",
+ "\u001b[0;33mSaving TS...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0mSample dir: \u001b[0m\u001b[0;32mSamples/TSR400_y2024_m01_d19-h00_m10_s16\u001b[0m\n",
+ "\u001b[0;32mDone.\u001b[0m\n"
+ ]
+ }
+ ],
"source": [
"#Z_SCORE_normalize\n",
"def Z_SCORE_normalize(arr):\n",
@@ -648,7 +678,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 6,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:31:27.380088800Z",
@@ -848,7 +878,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 17,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-27T17:34:12.077394600Z",
@@ -858,7 +888,2164 @@
"groupValue": ""
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating the model...\n",
+ "Total layers in the base model: 806\n",
+ "Freezing 0 layers in the base model...\n",
+ "Percentage of the base model that is frozen: 0.00%\n",
+ "Total model layers: 814\n",
+ "Model: \"model\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " stem_conv (Conv2D) (None, 112, 112, 64 1728 ['input_1[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_bn (BatchNormalization) (None, 112, 112, 64 256 ['stem_conv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_activation (Activation) (None, 112, 112, 64 0 ['stem_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 64 576 ['stem_activation[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1a_bn (BatchNormalization (None, 112, 112, 64 256 ['block1a_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_activation (Activation (None, 112, 112, 64 0 ['block1a_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_se_squeeze (GlobalAver (None, 64) 0 ['block1a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1a_se_reshape (Reshape) (None, 1, 1, 64) 0 ['block1a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1a_se_reduce (Conv2D) (None, 1, 1, 16) 1040 ['block1a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1a_se_expand (Conv2D) (None, 1, 1, 64) 1088 ['block1a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1a_se_excite (Multiply) (None, 112, 112, 64 0 ['block1a_activation[0][0]', Y \n",
+ " ) 'block1a_se_expand[0][0]'] \n",
+ " \n",
+ " block1a_project_conv (Conv2D) (None, 112, 112, 32 2048 ['block1a_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1a_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1a_project_bn[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1b_bn (BatchNormalization (None, 112, 112, 32 128 ['block1b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_activation (Activation (None, 112, 112, 32 0 ['block1b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_se_squeeze (GlobalAver (None, 32) 0 ['block1b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1b_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1b_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1b_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1b_se_excite (Multiply) (None, 112, 112, 32 0 ['block1b_activation[0][0]', Y \n",
+ " ) 'block1b_se_expand[0][0]'] \n",
+ " \n",
+ " block1b_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1b_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1b_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_drop (FixedDropout) (None, 112, 112, 32 0 ['block1b_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_add (Add) (None, 112, 112, 32 0 ['block1b_drop[0][0]', Y \n",
+ " ) 'block1a_project_bn[0][0]'] \n",
+ " \n",
+ " block1c_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1b_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1c_bn (BatchNormalization (None, 112, 112, 32 128 ['block1c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_activation (Activation (None, 112, 112, 32 0 ['block1c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_se_squeeze (GlobalAver (None, 32) 0 ['block1c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1c_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1c_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1c_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1c_se_excite (Multiply) (None, 112, 112, 32 0 ['block1c_activation[0][0]', Y \n",
+ " ) 'block1c_se_expand[0][0]'] \n",
+ " \n",
+ " block1c_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1c_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1c_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1c_drop (FixedDropout) (None, 112, 112, 32 0 ['block1c_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_add (Add) (None, 112, 112, 32 0 ['block1c_drop[0][0]', Y \n",
+ " ) 'block1b_add[0][0]'] \n",
+ " \n",
+ " block1d_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1c_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1d_bn (BatchNormalization (None, 112, 112, 32 128 ['block1d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_activation (Activation (None, 112, 112, 32 0 ['block1d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_se_squeeze (GlobalAver (None, 32) 0 ['block1d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1d_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1d_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1d_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1d_se_excite (Multiply) (None, 112, 112, 32 0 ['block1d_activation[0][0]', Y \n",
+ " ) 'block1d_se_expand[0][0]'] \n",
+ " \n",
+ " block1d_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1d_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1d_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1d_drop (FixedDropout) (None, 112, 112, 32 0 ['block1d_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_add (Add) (None, 112, 112, 32 0 ['block1d_drop[0][0]', Y \n",
+ " ) 'block1c_add[0][0]'] \n",
+ " \n",
+ " block2a_expand_conv (Conv2D) (None, 112, 112, 19 6144 ['block1d_add[0][0]'] Y \n",
+ " 2) \n",
+ " \n",
+ " block2a_expand_bn (BatchNormal (None, 112, 112, 19 768 ['block2a_expand_conv[0][0]'] Y \n",
+ " ization) 2) \n",
+ " \n",
+ " block2a_expand_activation (Act (None, 112, 112, 19 0 ['block2a_expand_bn[0][0]'] Y \n",
+ " ivation) 2) \n",
+ " \n",
+ " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2a_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_activation (Activation (None, 56, 56, 192) 0 ['block2a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_se_squeeze (GlobalAver (None, 192) 0 ['block2a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2a_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2a_activation[0][0]', Y \n",
+ " 'block2a_se_expand[0][0]'] \n",
+ " \n",
+ " block2a_project_conv (Conv2D) (None, 56, 56, 48) 9216 ['block2a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2a_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2b_expand_activation (Act (None, 56, 56, 288) 0 ['block2b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2b_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_activation (Activation (None, 56, 56, 288) 0 ['block2b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_se_squeeze (GlobalAver (None, 288) 0 ['block2b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2b_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2b_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2b_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2b_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2b_activation[0][0]', Y \n",
+ " 'block2b_se_expand[0][0]'] \n",
+ " \n",
+ " block2b_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2b_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_add (Add) (None, 56, 56, 48) 0 ['block2b_drop[0][0]', Y \n",
+ " 'block2a_project_bn[0][0]'] \n",
+ " \n",
+ " block2c_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2b_add[0][0]'] Y \n",
+ " \n",
+ " block2c_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2c_expand_activation (Act (None, 56, 56, 288) 0 ['block2c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2c_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_activation (Activation (None, 56, 56, 288) 0 ['block2c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_se_squeeze (GlobalAver (None, 288) 0 ['block2c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2c_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2c_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2c_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2c_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2c_activation[0][0]', Y \n",
+ " 'block2c_se_expand[0][0]'] \n",
+ " \n",
+ " block2c_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2c_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2c_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2c_add (Add) (None, 56, 56, 48) 0 ['block2c_drop[0][0]', Y \n",
+ " 'block2b_add[0][0]'] \n",
+ " \n",
+ " block2d_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2c_add[0][0]'] Y \n",
+ " \n",
+ " block2d_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2d_expand_activation (Act (None, 56, 56, 288) 0 ['block2d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2d_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_activation (Activation (None, 56, 56, 288) 0 ['block2d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_se_squeeze (GlobalAver (None, 288) 0 ['block2d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2d_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2d_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2d_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2d_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2d_activation[0][0]', Y \n",
+ " 'block2d_se_expand[0][0]'] \n",
+ " \n",
+ " block2d_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2d_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2d_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2d_add (Add) (None, 56, 56, 48) 0 ['block2d_drop[0][0]', Y \n",
+ " 'block2c_add[0][0]'] \n",
+ " \n",
+ " block2e_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2d_add[0][0]'] Y \n",
+ " \n",
+ " block2e_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2e_expand_activation (Act (None, 56, 56, 288) 0 ['block2e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2e_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2e_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_activation (Activation (None, 56, 56, 288) 0 ['block2e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_se_squeeze (GlobalAver (None, 288) 0 ['block2e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2e_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2e_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2e_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2e_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2e_activation[0][0]', Y \n",
+ " 'block2e_se_expand[0][0]'] \n",
+ " \n",
+ " block2e_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2e_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2e_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2e_add (Add) (None, 56, 56, 48) 0 ['block2e_drop[0][0]', Y \n",
+ " 'block2d_add[0][0]'] \n",
+ " \n",
+ " block2f_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2e_add[0][0]'] Y \n",
+ " \n",
+ " block2f_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2f_expand_activation (Act (None, 56, 56, 288) 0 ['block2f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2f_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2f_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_activation (Activation (None, 56, 56, 288) 0 ['block2f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_se_squeeze (GlobalAver (None, 288) 0 ['block2f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2f_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2f_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2f_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2f_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2f_activation[0][0]', Y \n",
+ " 'block2f_se_expand[0][0]'] \n",
+ " \n",
+ " block2f_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2f_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2f_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2f_add (Add) (None, 56, 56, 48) 0 ['block2f_drop[0][0]', Y \n",
+ " 'block2e_add[0][0]'] \n",
+ " \n",
+ " block2g_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2f_add[0][0]'] Y \n",
+ " \n",
+ " block2g_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2g_expand_activation (Act (None, 56, 56, 288) 0 ['block2g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2g_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2g_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_activation (Activation (None, 56, 56, 288) 0 ['block2g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_se_squeeze (GlobalAver (None, 288) 0 ['block2g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2g_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2g_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2g_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2g_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2g_activation[0][0]', Y \n",
+ " 'block2g_se_expand[0][0]'] \n",
+ " \n",
+ " block2g_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2g_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2g_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2g_add (Add) (None, 56, 56, 48) 0 ['block2g_drop[0][0]', Y \n",
+ " 'block2f_add[0][0]'] \n",
+ " \n",
+ " block3a_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2g_add[0][0]'] Y \n",
+ " \n",
+ " block3a_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block3a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3a_expand_activation (Act (None, 56, 56, 288) 0 ['block3a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 288) 7200 ['block3a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3a_bn (BatchNormalization (None, 28, 28, 288) 1152 ['block3a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_activation (Activation (None, 28, 28, 288) 0 ['block3a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_se_squeeze (GlobalAver (None, 288) 0 ['block3a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3a_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block3a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3a_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block3a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3a_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block3a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3a_se_excite (Multiply) (None, 28, 28, 288) 0 ['block3a_activation[0][0]', Y \n",
+ " 'block3a_se_expand[0][0]'] \n",
+ " \n",
+ " block3a_project_conv (Conv2D) (None, 28, 28, 80) 23040 ['block3a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3a_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3b_expand_activation (Act (None, 28, 28, 480) 0 ['block3b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3b_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_activation (Activation (None, 28, 28, 480) 0 ['block3b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_se_squeeze (GlobalAver (None, 480) 0 ['block3b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3b_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3b_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3b_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3b_activation[0][0]', Y \n",
+ " 'block3b_se_expand[0][0]'] \n",
+ " \n",
+ " block3b_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3b_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_add (Add) (None, 28, 28, 80) 0 ['block3b_drop[0][0]', Y \n",
+ " 'block3a_project_bn[0][0]'] \n",
+ " \n",
+ " block3c_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3b_add[0][0]'] Y \n",
+ " \n",
+ " block3c_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3c_expand_activation (Act (None, 28, 28, 480) 0 ['block3c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3c_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_activation (Activation (None, 28, 28, 480) 0 ['block3c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_se_squeeze (GlobalAver (None, 480) 0 ['block3c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3c_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3c_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3c_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3c_activation[0][0]', Y \n",
+ " 'block3c_se_expand[0][0]'] \n",
+ " \n",
+ " block3c_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3c_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3c_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3c_add (Add) (None, 28, 28, 80) 0 ['block3c_drop[0][0]', Y \n",
+ " 'block3b_add[0][0]'] \n",
+ " \n",
+ " block3d_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3c_add[0][0]'] Y \n",
+ " \n",
+ " block3d_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3d_expand_activation (Act (None, 28, 28, 480) 0 ['block3d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3d_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_activation (Activation (None, 28, 28, 480) 0 ['block3d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_se_squeeze (GlobalAver (None, 480) 0 ['block3d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3d_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3d_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3d_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3d_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3d_activation[0][0]', Y \n",
+ " 'block3d_se_expand[0][0]'] \n",
+ " \n",
+ " block3d_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3d_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3d_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3d_add (Add) (None, 28, 28, 80) 0 ['block3d_drop[0][0]', Y \n",
+ " 'block3c_add[0][0]'] \n",
+ " \n",
+ " block3e_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3d_add[0][0]'] Y \n",
+ " \n",
+ " block3e_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3e_expand_activation (Act (None, 28, 28, 480) 0 ['block3e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3e_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3e_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_activation (Activation (None, 28, 28, 480) 0 ['block3e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_se_squeeze (GlobalAver (None, 480) 0 ['block3e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3e_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3e_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3e_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3e_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3e_activation[0][0]', Y \n",
+ " 'block3e_se_expand[0][0]'] \n",
+ " \n",
+ " block3e_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3e_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3e_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3e_add (Add) (None, 28, 28, 80) 0 ['block3e_drop[0][0]', Y \n",
+ " 'block3d_add[0][0]'] \n",
+ " \n",
+ " block3f_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3e_add[0][0]'] Y \n",
+ " \n",
+ " block3f_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3f_expand_activation (Act (None, 28, 28, 480) 0 ['block3f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3f_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3f_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_activation (Activation (None, 28, 28, 480) 0 ['block3f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_se_squeeze (GlobalAver (None, 480) 0 ['block3f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3f_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3f_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3f_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3f_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3f_activation[0][0]', Y \n",
+ " 'block3f_se_expand[0][0]'] \n",
+ " \n",
+ " block3f_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3f_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3f_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3f_add (Add) (None, 28, 28, 80) 0 ['block3f_drop[0][0]', Y \n",
+ " 'block3e_add[0][0]'] \n",
+ " \n",
+ " block3g_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3f_add[0][0]'] Y \n",
+ " \n",
+ " block3g_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3g_expand_activation (Act (None, 28, 28, 480) 0 ['block3g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3g_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3g_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_activation (Activation (None, 28, 28, 480) 0 ['block3g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_se_squeeze (GlobalAver (None, 480) 0 ['block3g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3g_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3g_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3g_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3g_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3g_activation[0][0]', Y \n",
+ " 'block3g_se_expand[0][0]'] \n",
+ " \n",
+ " block3g_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3g_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3g_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3g_add (Add) (None, 28, 28, 80) 0 ['block3g_drop[0][0]', Y \n",
+ " 'block3f_add[0][0]'] \n",
+ " \n",
+ " block4a_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3g_add[0][0]'] Y \n",
+ " \n",
+ " block4a_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block4a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4a_expand_activation (Act (None, 28, 28, 480) 0 ['block4a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4a_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_activation (Activation (None, 14, 14, 480) 0 ['block4a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_se_squeeze (GlobalAver (None, 480) 0 ['block4a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4a_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4a_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4a_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4a_activation[0][0]', Y \n",
+ " 'block4a_se_expand[0][0]'] \n",
+ " \n",
+ " block4a_project_conv (Conv2D) (None, 14, 14, 160) 76800 ['block4a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4b_expand_activation (Act (None, 14, 14, 960) 0 ['block4b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_activation (Activation (None, 14, 14, 960) 0 ['block4b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_se_squeeze (GlobalAver (None, 960) 0 ['block4b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4b_activation[0][0]', Y \n",
+ " 'block4b_se_expand[0][0]'] \n",
+ " \n",
+ " block4b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_add (Add) (None, 14, 14, 160) 0 ['block4b_drop[0][0]', Y \n",
+ " 'block4a_project_bn[0][0]'] \n",
+ " \n",
+ " block4c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4b_add[0][0]'] Y \n",
+ " \n",
+ " block4c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4c_expand_activation (Act (None, 14, 14, 960) 0 ['block4c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_activation (Activation (None, 14, 14, 960) 0 ['block4c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_se_squeeze (GlobalAver (None, 960) 0 ['block4c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4c_activation[0][0]', Y \n",
+ " 'block4c_se_expand[0][0]'] \n",
+ " \n",
+ " block4c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4c_add (Add) (None, 14, 14, 160) 0 ['block4c_drop[0][0]', Y \n",
+ " 'block4b_add[0][0]'] \n",
+ " \n",
+ " block4d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4c_add[0][0]'] Y \n",
+ " \n",
+ " block4d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4d_expand_activation (Act (None, 14, 14, 960) 0 ['block4d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_activation (Activation (None, 14, 14, 960) 0 ['block4d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_se_squeeze (GlobalAver (None, 960) 0 ['block4d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4d_activation[0][0]', Y \n",
+ " 'block4d_se_expand[0][0]'] \n",
+ " \n",
+ " block4d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4d_add (Add) (None, 14, 14, 160) 0 ['block4d_drop[0][0]', Y \n",
+ " 'block4c_add[0][0]'] \n",
+ " \n",
+ " block4e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4d_add[0][0]'] Y \n",
+ " \n",
+ " block4e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4e_expand_activation (Act (None, 14, 14, 960) 0 ['block4e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_activation (Activation (None, 14, 14, 960) 0 ['block4e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_se_squeeze (GlobalAver (None, 960) 0 ['block4e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4e_activation[0][0]', Y \n",
+ " 'block4e_se_expand[0][0]'] \n",
+ " \n",
+ " block4e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4e_add (Add) (None, 14, 14, 160) 0 ['block4e_drop[0][0]', Y \n",
+ " 'block4d_add[0][0]'] \n",
+ " \n",
+ " block4f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4e_add[0][0]'] Y \n",
+ " \n",
+ " block4f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4f_expand_activation (Act (None, 14, 14, 960) 0 ['block4f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_activation (Activation (None, 14, 14, 960) 0 ['block4f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_se_squeeze (GlobalAver (None, 960) 0 ['block4f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4f_activation[0][0]', Y \n",
+ " 'block4f_se_expand[0][0]'] \n",
+ " \n",
+ " block4f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4f_add (Add) (None, 14, 14, 160) 0 ['block4f_drop[0][0]', Y \n",
+ " 'block4e_add[0][0]'] \n",
+ " \n",
+ " block4g_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4f_add[0][0]'] Y \n",
+ " \n",
+ " block4g_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4g_expand_activation (Act (None, 14, 14, 960) 0 ['block4g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4g_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4g_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_activation (Activation (None, 14, 14, 960) 0 ['block4g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_se_squeeze (GlobalAver (None, 960) 0 ['block4g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4g_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4g_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4g_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4g_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4g_activation[0][0]', Y \n",
+ " 'block4g_se_expand[0][0]'] \n",
+ " \n",
+ " block4g_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4g_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4g_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4g_add (Add) (None, 14, 14, 160) 0 ['block4g_drop[0][0]', Y \n",
+ " 'block4f_add[0][0]'] \n",
+ " \n",
+ " block4h_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4g_add[0][0]'] Y \n",
+ " \n",
+ " block4h_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4h_expand_activation (Act (None, 14, 14, 960) 0 ['block4h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4h_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4h_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_activation (Activation (None, 14, 14, 960) 0 ['block4h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_se_squeeze (GlobalAver (None, 960) 0 ['block4h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4h_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4h_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4h_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4h_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4h_activation[0][0]', Y \n",
+ " 'block4h_se_expand[0][0]'] \n",
+ " \n",
+ " block4h_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4h_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4h_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4h_add (Add) (None, 14, 14, 160) 0 ['block4h_drop[0][0]', Y \n",
+ " 'block4g_add[0][0]'] \n",
+ " \n",
+ " block4i_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4h_add[0][0]'] Y \n",
+ " \n",
+ " block4i_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4i_expand_activation (Act (None, 14, 14, 960) 0 ['block4i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4i_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4i_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_activation (Activation (None, 14, 14, 960) 0 ['block4i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_se_squeeze (GlobalAver (None, 960) 0 ['block4i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4i_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4i_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4i_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4i_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4i_activation[0][0]', Y \n",
+ " 'block4i_se_expand[0][0]'] \n",
+ " \n",
+ " block4i_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4i_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4i_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4i_add (Add) (None, 14, 14, 160) 0 ['block4i_drop[0][0]', Y \n",
+ " 'block4h_add[0][0]'] \n",
+ " \n",
+ " block4j_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4i_add[0][0]'] Y \n",
+ " \n",
+ " block4j_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4j_expand_activation (Act (None, 14, 14, 960) 0 ['block4j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4j_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4j_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_activation (Activation (None, 14, 14, 960) 0 ['block4j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_se_squeeze (GlobalAver (None, 960) 0 ['block4j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4j_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4j_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4j_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4j_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4j_activation[0][0]', Y \n",
+ " 'block4j_se_expand[0][0]'] \n",
+ " \n",
+ " block4j_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4j_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4j_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4j_add (Add) (None, 14, 14, 160) 0 ['block4j_drop[0][0]', Y \n",
+ " 'block4i_add[0][0]'] \n",
+ " \n",
+ " block5a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4j_add[0][0]'] Y \n",
+ " \n",
+ " block5a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5a_expand_activation (Act (None, 14, 14, 960) 0 ['block5a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5a_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_activation (Activation (None, 14, 14, 960) 0 ['block5a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_se_squeeze (GlobalAver (None, 960) 0 ['block5a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5a_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5a_activation[0][0]', Y \n",
+ " 'block5a_se_expand[0][0]'] \n",
+ " \n",
+ " block5a_project_conv (Conv2D) (None, 14, 14, 224) 215040 ['block5a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5a_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5a_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5b_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5b_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5b_expand_activation (Act (None, 14, 14, 1344 0 ['block5b_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5b_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5b_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_activation (Activation (None, 14, 14, 1344 0 ['block5b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_se_squeeze (GlobalAver (None, 1344) 0 ['block5b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5b_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5b_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5b_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5b_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5b_activation[0][0]', Y \n",
+ " ) 'block5b_se_expand[0][0]'] \n",
+ " \n",
+ " block5b_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5b_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5b_add (Add) (None, 14, 14, 224) 0 ['block5b_drop[0][0]', Y \n",
+ " 'block5a_project_bn[0][0]'] \n",
+ " \n",
+ " block5c_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5b_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5c_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5c_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5c_expand_activation (Act (None, 14, 14, 1344 0 ['block5c_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5c_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5c_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_activation (Activation (None, 14, 14, 1344 0 ['block5c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_se_squeeze (GlobalAver (None, 1344) 0 ['block5c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5c_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5c_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5c_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5c_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5c_activation[0][0]', Y \n",
+ " ) 'block5c_se_expand[0][0]'] \n",
+ " \n",
+ " block5c_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5c_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5c_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5c_add (Add) (None, 14, 14, 224) 0 ['block5c_drop[0][0]', Y \n",
+ " 'block5b_add[0][0]'] \n",
+ " \n",
+ " block5d_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5c_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5d_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5d_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5d_expand_activation (Act (None, 14, 14, 1344 0 ['block5d_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5d_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5d_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_activation (Activation (None, 14, 14, 1344 0 ['block5d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_se_squeeze (GlobalAver (None, 1344) 0 ['block5d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5d_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5d_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5d_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5d_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5d_activation[0][0]', Y \n",
+ " ) 'block5d_se_expand[0][0]'] \n",
+ " \n",
+ " block5d_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5d_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5d_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5d_add (Add) (None, 14, 14, 224) 0 ['block5d_drop[0][0]', Y \n",
+ " 'block5c_add[0][0]'] \n",
+ " \n",
+ " block5e_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5d_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5e_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5e_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5e_expand_activation (Act (None, 14, 14, 1344 0 ['block5e_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5e_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5e_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5e_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_activation (Activation (None, 14, 14, 1344 0 ['block5e_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_se_squeeze (GlobalAver (None, 1344) 0 ['block5e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5e_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5e_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5e_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5e_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5e_activation[0][0]', Y \n",
+ " ) 'block5e_se_expand[0][0]'] \n",
+ " \n",
+ " block5e_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5e_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5e_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5e_add (Add) (None, 14, 14, 224) 0 ['block5e_drop[0][0]', Y \n",
+ " 'block5d_add[0][0]'] \n",
+ " \n",
+ " block5f_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5e_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5f_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5f_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5f_expand_activation (Act (None, 14, 14, 1344 0 ['block5f_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5f_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5f_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5f_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_activation (Activation (None, 14, 14, 1344 0 ['block5f_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_se_squeeze (GlobalAver (None, 1344) 0 ['block5f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5f_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5f_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5f_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5f_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5f_activation[0][0]', Y \n",
+ " ) 'block5f_se_expand[0][0]'] \n",
+ " \n",
+ " block5f_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5f_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5f_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5f_add (Add) (None, 14, 14, 224) 0 ['block5f_drop[0][0]', Y \n",
+ " 'block5e_add[0][0]'] \n",
+ " \n",
+ " block5g_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5f_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5g_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5g_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5g_expand_activation (Act (None, 14, 14, 1344 0 ['block5g_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5g_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5g_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5g_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5g_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_activation (Activation (None, 14, 14, 1344 0 ['block5g_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_se_squeeze (GlobalAver (None, 1344) 0 ['block5g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5g_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5g_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5g_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5g_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5g_activation[0][0]', Y \n",
+ " ) 'block5g_se_expand[0][0]'] \n",
+ " \n",
+ " block5g_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5g_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5g_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5g_add (Add) (None, 14, 14, 224) 0 ['block5g_drop[0][0]', Y \n",
+ " 'block5f_add[0][0]'] \n",
+ " \n",
+ " block5h_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5g_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5h_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5h_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5h_expand_activation (Act (None, 14, 14, 1344 0 ['block5h_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5h_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5h_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5h_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5h_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_activation (Activation (None, 14, 14, 1344 0 ['block5h_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_se_squeeze (GlobalAver (None, 1344) 0 ['block5h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5h_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5h_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5h_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5h_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5h_activation[0][0]', Y \n",
+ " ) 'block5h_se_expand[0][0]'] \n",
+ " \n",
+ " block5h_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5h_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5h_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5h_add (Add) (None, 14, 14, 224) 0 ['block5h_drop[0][0]', Y \n",
+ " 'block5g_add[0][0]'] \n",
+ " \n",
+ " block5i_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5h_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5i_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5i_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5i_expand_activation (Act (None, 14, 14, 1344 0 ['block5i_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5i_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5i_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5i_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5i_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_activation (Activation (None, 14, 14, 1344 0 ['block5i_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_se_squeeze (GlobalAver (None, 1344) 0 ['block5i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5i_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5i_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5i_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5i_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5i_activation[0][0]', Y \n",
+ " ) 'block5i_se_expand[0][0]'] \n",
+ " \n",
+ " block5i_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5i_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5i_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5i_add (Add) (None, 14, 14, 224) 0 ['block5i_drop[0][0]', Y \n",
+ " 'block5h_add[0][0]'] \n",
+ " \n",
+ " block5j_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5i_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5j_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5j_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5j_expand_activation (Act (None, 14, 14, 1344 0 ['block5j_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5j_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5j_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5j_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5j_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_activation (Activation (None, 14, 14, 1344 0 ['block5j_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_se_squeeze (GlobalAver (None, 1344) 0 ['block5j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5j_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5j_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5j_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5j_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5j_activation[0][0]', Y \n",
+ " ) 'block5j_se_expand[0][0]'] \n",
+ " \n",
+ " block5j_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5j_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5j_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5j_add (Add) (None, 14, 14, 224) 0 ['block5j_drop[0][0]', Y \n",
+ " 'block5i_add[0][0]'] \n",
+ " \n",
+ " block6a_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5j_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block6a_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block6a_expand_activation (Act (None, 14, 14, 1344 0 ['block6a_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 1344) 33600 ['block6a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6a_bn (BatchNormalization (None, 7, 7, 1344) 5376 ['block6a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_activation (Activation (None, 7, 7, 1344) 0 ['block6a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_se_squeeze (GlobalAver (None, 1344) 0 ['block6a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6a_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block6a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6a_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block6a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6a_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block6a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6a_se_excite (Multiply) (None, 7, 7, 1344) 0 ['block6a_activation[0][0]', Y \n",
+ " 'block6a_se_expand[0][0]'] \n",
+ " \n",
+ " block6a_project_conv (Conv2D) (None, 7, 7, 384) 516096 ['block6a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6a_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6b_expand_activation (Act (None, 7, 7, 2304) 0 ['block6b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6b_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_activation (Activation (None, 7, 7, 2304) 0 ['block6b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_se_squeeze (GlobalAver (None, 2304) 0 ['block6b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6b_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6b_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6b_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6b_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6b_activation[0][0]', Y \n",
+ " 'block6b_se_expand[0][0]'] \n",
+ " \n",
+ " block6b_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6b_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_add (Add) (None, 7, 7, 384) 0 ['block6b_drop[0][0]', Y \n",
+ " 'block6a_project_bn[0][0]'] \n",
+ " \n",
+ " block6c_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6b_add[0][0]'] Y \n",
+ " \n",
+ " block6c_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6c_expand_activation (Act (None, 7, 7, 2304) 0 ['block6c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6c_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_activation (Activation (None, 7, 7, 2304) 0 ['block6c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_se_squeeze (GlobalAver (None, 2304) 0 ['block6c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6c_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6c_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6c_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6c_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6c_activation[0][0]', Y \n",
+ " 'block6c_se_expand[0][0]'] \n",
+ " \n",
+ " block6c_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6c_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6c_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6c_add (Add) (None, 7, 7, 384) 0 ['block6c_drop[0][0]', Y \n",
+ " 'block6b_add[0][0]'] \n",
+ " \n",
+ " block6d_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6c_add[0][0]'] Y \n",
+ " \n",
+ " block6d_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6d_expand_activation (Act (None, 7, 7, 2304) 0 ['block6d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6d_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_activation (Activation (None, 7, 7, 2304) 0 ['block6d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_se_squeeze (GlobalAver (None, 2304) 0 ['block6d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6d_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6d_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6d_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6d_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6d_activation[0][0]', Y \n",
+ " 'block6d_se_expand[0][0]'] \n",
+ " \n",
+ " block6d_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6d_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6d_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6d_add (Add) (None, 7, 7, 384) 0 ['block6d_drop[0][0]', Y \n",
+ " 'block6c_add[0][0]'] \n",
+ " \n",
+ " block6e_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6d_add[0][0]'] Y \n",
+ " \n",
+ " block6e_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6e_expand_activation (Act (None, 7, 7, 2304) 0 ['block6e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6e_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_activation (Activation (None, 7, 7, 2304) 0 ['block6e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_se_squeeze (GlobalAver (None, 2304) 0 ['block6e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6e_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6e_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6e_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6e_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6e_activation[0][0]', Y \n",
+ " 'block6e_se_expand[0][0]'] \n",
+ " \n",
+ " block6e_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6e_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6e_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6e_add (Add) (None, 7, 7, 384) 0 ['block6e_drop[0][0]', Y \n",
+ " 'block6d_add[0][0]'] \n",
+ " \n",
+ " block6f_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6e_add[0][0]'] Y \n",
+ " \n",
+ " block6f_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6f_expand_activation (Act (None, 7, 7, 2304) 0 ['block6f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6f_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_activation (Activation (None, 7, 7, 2304) 0 ['block6f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_se_squeeze (GlobalAver (None, 2304) 0 ['block6f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6f_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6f_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6f_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6f_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6f_activation[0][0]', Y \n",
+ " 'block6f_se_expand[0][0]'] \n",
+ " \n",
+ " block6f_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6f_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6f_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6f_add (Add) (None, 7, 7, 384) 0 ['block6f_drop[0][0]', Y \n",
+ " 'block6e_add[0][0]'] \n",
+ " \n",
+ " block6g_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6f_add[0][0]'] Y \n",
+ " \n",
+ " block6g_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6g_expand_activation (Act (None, 7, 7, 2304) 0 ['block6g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6g_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_activation (Activation (None, 7, 7, 2304) 0 ['block6g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_se_squeeze (GlobalAver (None, 2304) 0 ['block6g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6g_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6g_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6g_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6g_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6g_activation[0][0]', Y \n",
+ " 'block6g_se_expand[0][0]'] \n",
+ " \n",
+ " block6g_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6g_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6g_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6g_add (Add) (None, 7, 7, 384) 0 ['block6g_drop[0][0]', Y \n",
+ " 'block6f_add[0][0]'] \n",
+ " \n",
+ " block6h_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6g_add[0][0]'] Y \n",
+ " \n",
+ " block6h_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6h_expand_activation (Act (None, 7, 7, 2304) 0 ['block6h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6h_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_activation (Activation (None, 7, 7, 2304) 0 ['block6h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_se_squeeze (GlobalAver (None, 2304) 0 ['block6h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6h_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6h_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6h_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6h_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6h_activation[0][0]', Y \n",
+ " 'block6h_se_expand[0][0]'] \n",
+ " \n",
+ " block6h_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6h_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6h_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6h_add (Add) (None, 7, 7, 384) 0 ['block6h_drop[0][0]', Y \n",
+ " 'block6g_add[0][0]'] \n",
+ " \n",
+ " block6i_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6h_add[0][0]'] Y \n",
+ " \n",
+ " block6i_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6i_expand_activation (Act (None, 7, 7, 2304) 0 ['block6i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6i_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6i_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_activation (Activation (None, 7, 7, 2304) 0 ['block6i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_se_squeeze (GlobalAver (None, 2304) 0 ['block6i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6i_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6i_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6i_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6i_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6i_activation[0][0]', Y \n",
+ " 'block6i_se_expand[0][0]'] \n",
+ " \n",
+ " block6i_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6i_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6i_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6i_add (Add) (None, 7, 7, 384) 0 ['block6i_drop[0][0]', Y \n",
+ " 'block6h_add[0][0]'] \n",
+ " \n",
+ " block6j_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6i_add[0][0]'] Y \n",
+ " \n",
+ " block6j_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6j_expand_activation (Act (None, 7, 7, 2304) 0 ['block6j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6j_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6j_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_activation (Activation (None, 7, 7, 2304) 0 ['block6j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_se_squeeze (GlobalAver (None, 2304) 0 ['block6j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6j_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6j_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6j_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6j_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6j_activation[0][0]', Y \n",
+ " 'block6j_se_expand[0][0]'] \n",
+ " \n",
+ " block6j_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6j_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6j_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6j_add (Add) (None, 7, 7, 384) 0 ['block6j_drop[0][0]', Y \n",
+ " 'block6i_add[0][0]'] \n",
+ " \n",
+ " block6k_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6j_add[0][0]'] Y \n",
+ " \n",
+ " block6k_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6k_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6k_expand_activation (Act (None, 7, 7, 2304) 0 ['block6k_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6k_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6k_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6k_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6k_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_activation (Activation (None, 7, 7, 2304) 0 ['block6k_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_se_squeeze (GlobalAver (None, 2304) 0 ['block6k_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6k_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6k_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6k_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6k_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6k_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6k_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6k_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6k_activation[0][0]', Y \n",
+ " 'block6k_se_expand[0][0]'] \n",
+ " \n",
+ " block6k_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6k_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6k_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6k_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6k_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6k_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6k_add (Add) (None, 7, 7, 384) 0 ['block6k_drop[0][0]', Y \n",
+ " 'block6j_add[0][0]'] \n",
+ " \n",
+ " block6l_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6k_add[0][0]'] Y \n",
+ " \n",
+ " block6l_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6l_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6l_expand_activation (Act (None, 7, 7, 2304) 0 ['block6l_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6l_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6l_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6l_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6l_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_activation (Activation (None, 7, 7, 2304) 0 ['block6l_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_se_squeeze (GlobalAver (None, 2304) 0 ['block6l_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6l_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6l_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6l_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6l_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6l_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6l_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6l_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6l_activation[0][0]', Y \n",
+ " 'block6l_se_expand[0][0]'] \n",
+ " \n",
+ " block6l_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6l_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6l_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6l_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6l_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6l_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6l_add (Add) (None, 7, 7, 384) 0 ['block6l_drop[0][0]', Y \n",
+ " 'block6k_add[0][0]'] \n",
+ " \n",
+ " block6m_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6l_add[0][0]'] Y \n",
+ " \n",
+ " block6m_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6m_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6m_expand_activation (Act (None, 7, 7, 2304) 0 ['block6m_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6m_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6m_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6m_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6m_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_activation (Activation (None, 7, 7, 2304) 0 ['block6m_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_se_squeeze (GlobalAver (None, 2304) 0 ['block6m_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6m_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6m_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6m_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6m_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6m_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6m_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6m_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6m_activation[0][0]', Y \n",
+ " 'block6m_se_expand[0][0]'] \n",
+ " \n",
+ " block6m_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6m_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6m_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6m_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6m_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6m_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6m_add (Add) (None, 7, 7, 384) 0 ['block6m_drop[0][0]', Y \n",
+ " 'block6l_add[0][0]'] \n",
+ " \n",
+ " block7a_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6m_add[0][0]'] Y \n",
+ " \n",
+ " block7a_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block7a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7a_expand_activation (Act (None, 7, 7, 2304) 0 ['block7a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 20736 ['block7a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7a_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block7a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_activation (Activation (None, 7, 7, 2304) 0 ['block7a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_se_squeeze (GlobalAver (None, 2304) 0 ['block7a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7a_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block7a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7a_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block7a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7a_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block7a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7a_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block7a_activation[0][0]', Y \n",
+ " 'block7a_se_expand[0][0]'] \n",
+ " \n",
+ " block7a_project_conv (Conv2D) (None, 7, 7, 640) 1474560 ['block7a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7a_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7b_expand_activation (Act (None, 7, 7, 3840) 0 ['block7b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7b_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_activation (Activation (None, 7, 7, 3840) 0 ['block7b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_se_squeeze (GlobalAver (None, 3840) 0 ['block7b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7b_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7b_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7b_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7b_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7b_activation[0][0]', Y \n",
+ " 'block7b_se_expand[0][0]'] \n",
+ " \n",
+ " block7b_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7b_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_add (Add) (None, 7, 7, 640) 0 ['block7b_drop[0][0]', Y \n",
+ " 'block7a_project_bn[0][0]'] \n",
+ " \n",
+ " block7c_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7b_add[0][0]'] Y \n",
+ " \n",
+ " block7c_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7c_expand_activation (Act (None, 7, 7, 3840) 0 ['block7c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7c_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7c_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_activation (Activation (None, 7, 7, 3840) 0 ['block7c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_se_squeeze (GlobalAver (None, 3840) 0 ['block7c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7c_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7c_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7c_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7c_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7c_activation[0][0]', Y \n",
+ " 'block7c_se_expand[0][0]'] \n",
+ " \n",
+ " block7c_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7c_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7c_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7c_add (Add) (None, 7, 7, 640) 0 ['block7c_drop[0][0]', Y \n",
+ " 'block7b_add[0][0]'] \n",
+ " \n",
+ " block7d_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7c_add[0][0]'] Y \n",
+ " \n",
+ " block7d_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7d_expand_activation (Act (None, 7, 7, 3840) 0 ['block7d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7d_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7d_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_activation (Activation (None, 7, 7, 3840) 0 ['block7d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_se_squeeze (GlobalAver (None, 3840) 0 ['block7d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7d_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7d_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7d_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7d_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7d_activation[0][0]', Y \n",
+ " 'block7d_se_expand[0][0]'] \n",
+ " \n",
+ " block7d_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7d_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7d_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7d_add (Add) (None, 7, 7, 640) 0 ['block7d_drop[0][0]', Y \n",
+ " 'block7c_add[0][0]'] \n",
+ " \n",
+ " top_conv (Conv2D) (None, 7, 7, 2560) 1638400 ['block7d_add[0][0]'] Y \n",
+ " \n",
+ " top_bn (BatchNormalization) (None, 7, 7, 2560) 10240 ['top_conv[0][0]'] Y \n",
+ " \n",
+ " top_activation (Activation) (None, 7, 7, 2560) 0 ['top_bn[0][0]'] Y \n",
+ " \n",
+ " FC_INPUT_Avg-Pooling (GlobalAv (None, 2560) 0 ['top_activation[0][0]'] Y \n",
+ " eragePooling2D) \n",
+ " \n",
+ " FC_C_Dense-L1-1024 (Dense) (None, 512) 1311232 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n",
+ " \n",
+ " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-1024[0][0]'] Y \n",
+ " \n",
+ " FC_C_Avg-BatchNormalization-L1 (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n",
+ " (BatchNormalization) \n",
+ " \n",
+ " FC_C_Dense-L2-512 (Dense) (None, 512) 262656 ['FC_C_Avg-BatchNormalization-L Y \n",
+ " 1[0][0]'] \n",
+ " \n",
+ " FC_C_Avg-BatchNormalization-L2 (None, 512) 2048 ['FC_C_Dense-L2-512[0][0]'] Y \n",
+ " (BatchNormalization) \n",
+ " \n",
+ " FC_C_Dense-L3-128 (Dense) (None, 128) 65664 ['FC_C_Avg-BatchNormalization-L Y \n",
+ " 2[0][0]'] \n",
+ " \n",
+ " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 65,741,586\n",
+ "Trainable params: 65,428,818\n",
+ "Non-trainable params: 312,768\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from efficientnet.keras import EfficientNetB7 as KENB7\n",
"# FUNC\n",
@@ -884,20 +3071,20 @@
" #GlobalAveragePooling2D\n",
" base_model_FT = GlobalAveragePooling2D(name='FC_INPUT_Avg-Pooling')(base_model.output)\n",
" #Dense\n",
- " Dense_L1 = Dense(512, activation='relu',\n",
- " kernel_regularizer=l2(0.02),\n",
- " name='FC_C_Dense-L1-512'\n",
+ " Dense_L1 = Dense(512, activation='swish',\n",
+ " kernel_regularizer=l2(0.008),\n",
+ " name='FC_C_Dense-L1-1024'\n",
" )(base_model_FT)\n",
" #Dropout\n",
- " Dropout_L1 = Dropout(0.1,\n",
+ " Dropout_L1 = Dropout(0.125,\n",
" name='FC_C_Dropout-L1-0.1'\n",
" )(Dense_L1)\n",
" #BatchNormalization\n",
" BatchNorm_L2 = BatchNormalization(name='FC_C_Avg-BatchNormalization-L1'\n",
" )(Dropout_L1)\n",
" #Dense\n",
- " Dense_L2 = Dense(512, activation='relu',\n",
- " kernel_regularizer=l2(0.01),\n",
+ " Dense_L2 = Dense(512, activation='swish',\n",
+ " kernel_regularizer=l2(0.004),\n",
" name='FC_C_Dense-L2-512'\n",
" )(BatchNorm_L2)\n",
" #BatchNormalization\n",
@@ -952,9 +3139,2471 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 7,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating the model...\n",
+ "Total base_model1 layers: 806\n",
+ "Total base_model2 layers: 132\n",
+ "Total model layers: 15\n",
+ "Model: \"model\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " efficientnet-b7 (Functional) (None, 7, 7, 2560) 64097680 ['input_1[0][0]'] Y \n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| input_2 (InputLayer) [(None, 224, 224, 3 0 [] Y |\n",
+ "| )] |\n",
+ "| |\n",
+ "| stem_conv (Conv2D) (None, 112, 112, 64 1728 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| stem_bn (BatchNormalization) (None, 112, 112, 64 256 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| stem_activation (Activation) (None, 112, 112, 64 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1a_dwconv (DepthwiseConv2 (None, 112, 112, 64 576 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block1a_bn (BatchNormalization (None, 112, 112, 64 256 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1a_activation (Activation (None, 112, 112, 64 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1a_se_squeeze (GlobalAver (None, 64) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block1a_se_reshape (Reshape) (None, 1, 1, 64) 0 [] Y |\n",
+ "| |\n",
+ "| block1a_se_reduce (Conv2D) (None, 1, 1, 16) 1040 [] Y |\n",
+ "| |\n",
+ "| block1a_se_expand (Conv2D) (None, 1, 1, 64) 1088 [] Y |\n",
+ "| |\n",
+ "| block1a_se_excite (Multiply) (None, 112, 112, 64 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1a_project_conv (Conv2D) (None, 112, 112, 32 2048 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1a_project_bn (BatchNorma (None, 112, 112, 32 128 [] Y |\n",
+ "| lization) ) |\n",
+ "| |\n",
+ "| block1b_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block1b_bn (BatchNormalization (None, 112, 112, 32 128 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1b_activation (Activation (None, 112, 112, 32 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1b_se_squeeze (GlobalAver (None, 32) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block1b_se_reshape (Reshape) (None, 1, 1, 32) 0 [] Y |\n",
+ "| |\n",
+ "| block1b_se_reduce (Conv2D) (None, 1, 1, 8) 264 [] Y |\n",
+ "| |\n",
+ "| block1b_se_expand (Conv2D) (None, 1, 1, 32) 288 [] Y |\n",
+ "| |\n",
+ "| block1b_se_excite (Multiply) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1b_project_conv (Conv2D) (None, 112, 112, 32 1024 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1b_project_bn (BatchNorma (None, 112, 112, 32 128 [] Y |\n",
+ "| lization) ) |\n",
+ "| |\n",
+ "| block1b_drop (FixedDropout) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1b_add (Add) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1c_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block1c_bn (BatchNormalization (None, 112, 112, 32 128 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1c_activation (Activation (None, 112, 112, 32 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1c_se_squeeze (GlobalAver (None, 32) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block1c_se_reshape (Reshape) (None, 1, 1, 32) 0 [] Y |\n",
+ "| |\n",
+ "| block1c_se_reduce (Conv2D) (None, 1, 1, 8) 264 [] Y |\n",
+ "| |\n",
+ "| block1c_se_expand (Conv2D) (None, 1, 1, 32) 288 [] Y |\n",
+ "| |\n",
+ "| block1c_se_excite (Multiply) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1c_project_conv (Conv2D) (None, 112, 112, 32 1024 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1c_project_bn (BatchNorma (None, 112, 112, 32 128 [] Y |\n",
+ "| lization) ) |\n",
+ "| |\n",
+ "| block1c_drop (FixedDropout) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1c_add (Add) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1d_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block1d_bn (BatchNormalization (None, 112, 112, 32 128 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1d_activation (Activation (None, 112, 112, 32 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block1d_se_squeeze (GlobalAver (None, 32) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block1d_se_reshape (Reshape) (None, 1, 1, 32) 0 [] Y |\n",
+ "| |\n",
+ "| block1d_se_reduce (Conv2D) (None, 1, 1, 8) 264 [] Y |\n",
+ "| |\n",
+ "| block1d_se_expand (Conv2D) (None, 1, 1, 32) 288 [] Y |\n",
+ "| |\n",
+ "| block1d_se_excite (Multiply) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1d_project_conv (Conv2D) (None, 112, 112, 32 1024 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1d_project_bn (BatchNorma (None, 112, 112, 32 128 [] Y |\n",
+ "| lization) ) |\n",
+ "| |\n",
+ "| block1d_drop (FixedDropout) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1d_add (Add) (None, 112, 112, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2a_expand_conv (Conv2D) (None, 112, 112, 19 6144 [] Y |\n",
+ "| 2) |\n",
+ "| |\n",
+ "| block2a_expand_bn (BatchNormal (None, 112, 112, 19 768 [] Y |\n",
+ "| ization) 2) |\n",
+ "| |\n",
+ "| block2a_expand_activation (Act (None, 112, 112, 19 0 [] Y |\n",
+ "| ivation) 2) |\n",
+ "| |\n",
+ "| block2a_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2a_bn (BatchNormalization (None, 56, 56, 192) 768 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2a_activation (Activation (None, 56, 56, 192) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2a_se_squeeze (GlobalAver (None, 192) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2a_se_reshape (Reshape) (None, 1, 1, 192) 0 [] Y |\n",
+ "| |\n",
+ "| block2a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 [] Y |\n",
+ "| |\n",
+ "| block2a_se_expand (Conv2D) (None, 1, 1, 192) 1728 [] Y |\n",
+ "| |\n",
+ "| block2a_se_excite (Multiply) (None, 56, 56, 192) 0 [] Y |\n",
+ "| |\n",
+ "| block2a_project_conv (Conv2D) (None, 56, 56, 48) 9216 [] Y |\n",
+ "| |\n",
+ "| block2a_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2b_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2b_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2b_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2b_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2b_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2b_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2b_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2b_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2b_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2b_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2b_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2b_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2b_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2b_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2b_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2c_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2c_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2c_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2c_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2c_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2c_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2c_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2c_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2c_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2c_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2c_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2c_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2c_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2c_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2c_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2d_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2d_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2d_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2d_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2d_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2d_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2d_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2d_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2d_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2d_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2d_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2d_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2d_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2d_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2d_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2e_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2e_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2e_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2e_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2e_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2e_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2e_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2e_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2e_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2e_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2e_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2e_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2e_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2e_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2e_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2f_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2f_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2f_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2f_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2f_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2f_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2f_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2f_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2f_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2f_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2f_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2f_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2f_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2f_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2f_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2g_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block2g_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block2g_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block2g_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block2g_bn (BatchNormalization (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2g_activation (Activation (None, 56, 56, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2g_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block2g_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2g_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block2g_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block2g_se_excite (Multiply) (None, 56, 56, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block2g_project_conv (Conv2D) (None, 56, 56, 48) 13824 [] Y |\n",
+ "| |\n",
+ "| block2g_project_bn (BatchNorma (None, 56, 56, 48) 192 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block2g_drop (FixedDropout) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block2g_add (Add) (None, 56, 56, 48) 0 [] Y |\n",
+ "| |\n",
+ "| block3a_expand_conv (Conv2D) (None, 56, 56, 288) 13824 [] Y |\n",
+ "| |\n",
+ "| block3a_expand_bn (BatchNormal (None, 56, 56, 288) 1152 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3a_expand_activation (Act (None, 56, 56, 288) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3a_dwconv (DepthwiseConv2 (None, 28, 28, 288) 7200 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3a_bn (BatchNormalization (None, 28, 28, 288) 1152 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3a_activation (Activation (None, 28, 28, 288) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3a_se_squeeze (GlobalAver (None, 288) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3a_se_reshape (Reshape) (None, 1, 1, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block3a_se_reduce (Conv2D) (None, 1, 1, 12) 3468 [] Y |\n",
+ "| |\n",
+ "| block3a_se_expand (Conv2D) (None, 1, 1, 288) 3744 [] Y |\n",
+ "| |\n",
+ "| block3a_se_excite (Multiply) (None, 28, 28, 288) 0 [] Y |\n",
+ "| |\n",
+ "| block3a_project_conv (Conv2D) (None, 28, 28, 80) 23040 [] Y |\n",
+ "| |\n",
+ "| block3a_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3b_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3b_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3b_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3b_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3b_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3b_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3b_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3b_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3b_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3b_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3b_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3b_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3b_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3b_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3c_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3c_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3c_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3c_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3c_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3c_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3c_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3c_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3c_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3c_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3c_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3c_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3c_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3c_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3d_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3d_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3d_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3d_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3d_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3d_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3d_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3d_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3d_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3d_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3d_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3d_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3d_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3d_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3d_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3e_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3e_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3e_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3e_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3e_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3e_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3e_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3e_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3e_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3e_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3e_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3e_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3e_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3e_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3e_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3f_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3f_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3f_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3f_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3f_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3f_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3f_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3f_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3f_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3f_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3f_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3f_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3f_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3f_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3f_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3g_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block3g_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block3g_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block3g_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block3g_bn (BatchNormalization (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3g_activation (Activation (None, 28, 28, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block3g_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block3g_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3g_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block3g_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block3g_se_excite (Multiply) (None, 28, 28, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block3g_project_conv (Conv2D) (None, 28, 28, 80) 38400 [] Y |\n",
+ "| |\n",
+ "| block3g_project_bn (BatchNorma (None, 28, 28, 80) 320 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3g_drop (FixedDropout) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block3g_add (Add) (None, 28, 28, 80) 0 [] Y |\n",
+ "| |\n",
+ "| block4a_expand_conv (Conv2D) (None, 28, 28, 480) 38400 [] Y |\n",
+ "| |\n",
+ "| block4a_expand_bn (BatchNormal (None, 28, 28, 480) 1920 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4a_expand_activation (Act (None, 28, 28, 480) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4a_bn (BatchNormalization (None, 14, 14, 480) 1920 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4a_activation (Activation (None, 14, 14, 480) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4a_se_squeeze (GlobalAver (None, 480) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4a_se_reshape (Reshape) (None, 1, 1, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block4a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 [] Y |\n",
+ "| |\n",
+ "| block4a_se_expand (Conv2D) (None, 1, 1, 480) 10080 [] Y |\n",
+ "| |\n",
+ "| block4a_se_excite (Multiply) (None, 14, 14, 480) 0 [] Y |\n",
+ "| |\n",
+ "| block4a_project_conv (Conv2D) (None, 14, 14, 160) 76800 [] Y |\n",
+ "| |\n",
+ "| block4a_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4b_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4b_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4b_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4b_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4b_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4b_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4b_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4b_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4b_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4b_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4b_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4c_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4c_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4c_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4c_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4c_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4c_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4c_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4c_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4c_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4c_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4c_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4d_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4d_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4d_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4d_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4d_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4d_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4d_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4d_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4d_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4d_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4d_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4e_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4e_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4e_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4e_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4e_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4e_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4e_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4e_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4e_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4e_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4e_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4f_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4f_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4f_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4f_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4f_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4f_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4f_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4f_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4f_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4f_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4f_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4g_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4g_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4g_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4g_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4g_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4g_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4g_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4g_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4g_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4g_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4g_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4g_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4g_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4g_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4g_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4h_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4h_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4h_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4h_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4h_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4h_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4h_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4h_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4h_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4h_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4h_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4h_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4h_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4h_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4h_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4i_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4i_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4i_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4i_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4i_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4i_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4i_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4i_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4i_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4i_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4i_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4i_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4i_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4i_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4i_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4j_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block4j_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block4j_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block4j_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block4j_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4j_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block4j_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block4j_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4j_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block4j_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block4j_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block4j_project_conv (Conv2D) (None, 14, 14, 160) 153600 [] Y |\n",
+ "| |\n",
+ "| block4j_project_bn (BatchNorma (None, 14, 14, 160) 640 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4j_drop (FixedDropout) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block4j_add (Add) (None, 14, 14, 160) 0 [] Y |\n",
+ "| |\n",
+ "| block5a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 [] Y |\n",
+ "| |\n",
+ "| block5a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block5a_expand_activation (Act (None, 14, 14, 960) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block5a_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block5a_bn (BatchNormalization (None, 14, 14, 960) 3840 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5a_activation (Activation (None, 14, 14, 960) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5a_se_squeeze (GlobalAver (None, 960) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5a_se_reshape (Reshape) (None, 1, 1, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block5a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 [] Y |\n",
+ "| |\n",
+ "| block5a_se_expand (Conv2D) (None, 1, 1, 960) 39360 [] Y |\n",
+ "| |\n",
+ "| block5a_se_excite (Multiply) (None, 14, 14, 960) 0 [] Y |\n",
+ "| |\n",
+ "| block5a_project_conv (Conv2D) (None, 14, 14, 224) 215040 [] Y |\n",
+ "| |\n",
+ "| block5a_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5b_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5b_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5b_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5b_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5b_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5b_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5b_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5b_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5b_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5b_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5b_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5b_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5b_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5b_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5b_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5c_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5c_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5c_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5c_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5c_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5c_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5c_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5c_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5c_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5c_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5c_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5c_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5c_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5c_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5c_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5d_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5d_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5d_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5d_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5d_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5d_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5d_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5d_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5d_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5d_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5d_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5d_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5d_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5d_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5d_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5e_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5e_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5e_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5e_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5e_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5e_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5e_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5e_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5e_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5e_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5e_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5e_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5e_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5e_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5e_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5f_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5f_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5f_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5f_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5f_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5f_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5f_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5f_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5f_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5f_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5f_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5f_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5f_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5f_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5f_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5g_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5g_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5g_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5g_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5g_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5g_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5g_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5g_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5g_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5g_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5g_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5g_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5g_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5g_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5g_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5h_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5h_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5h_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5h_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5h_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5h_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5h_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5h_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5h_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5h_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5h_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5h_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5h_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5h_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5h_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5i_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5i_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5i_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5i_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5i_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5i_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5i_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5i_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5i_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5i_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5i_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5i_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5i_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5i_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5i_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5j_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5j_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block5j_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block5j_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 [] Y |\n",
+ "| D) ) |\n",
+ "| |\n",
+ "| block5j_bn (BatchNormalization (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5j_activation (Activation (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) ) |\n",
+ "| |\n",
+ "| block5j_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block5j_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block5j_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block5j_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block5j_se_excite (Multiply) (None, 14, 14, 1344 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block5j_project_conv (Conv2D) (None, 14, 14, 224) 301056 [] Y |\n",
+ "| |\n",
+ "| block5j_project_bn (BatchNorma (None, 14, 14, 224) 896 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5j_drop (FixedDropout) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block5j_add (Add) (None, 14, 14, 224) 0 [] Y |\n",
+ "| |\n",
+ "| block6a_expand_conv (Conv2D) (None, 14, 14, 1344 301056 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6a_expand_bn (BatchNormal (None, 14, 14, 1344 5376 [] Y |\n",
+ "| ization) ) |\n",
+ "| |\n",
+ "| block6a_expand_activation (Act (None, 14, 14, 1344 0 [] Y |\n",
+ "| ivation) ) |\n",
+ "| |\n",
+ "| block6a_dwconv (DepthwiseConv2 (None, 7, 7, 1344) 33600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6a_bn (BatchNormalization (None, 7, 7, 1344) 5376 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6a_activation (Activation (None, 7, 7, 1344) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6a_se_squeeze (GlobalAver (None, 1344) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6a_se_reshape (Reshape) (None, 1, 1, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block6a_se_reduce (Conv2D) (None, 1, 1, 56) 75320 [] Y |\n",
+ "| |\n",
+ "| block6a_se_expand (Conv2D) (None, 1, 1, 1344) 76608 [] Y |\n",
+ "| |\n",
+ "| block6a_se_excite (Multiply) (None, 7, 7, 1344) 0 [] Y |\n",
+ "| |\n",
+ "| block6a_project_conv (Conv2D) (None, 7, 7, 384) 516096 [] Y |\n",
+ "| |\n",
+ "| block6a_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6b_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6b_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6b_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6b_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6b_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6b_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6b_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6b_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6b_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6b_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6b_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6b_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6b_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6b_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6b_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6c_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6c_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6c_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6c_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6c_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6c_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6c_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6c_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6c_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6c_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6c_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6c_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6c_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6c_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6c_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6d_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6d_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6d_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6d_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6d_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6d_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6d_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6d_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6d_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6d_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6d_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6d_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6d_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6d_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6d_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6e_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6e_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6e_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6e_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6e_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6e_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6e_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6e_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6e_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6e_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6e_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6e_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6e_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6e_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6e_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6f_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6f_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6f_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6f_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6f_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6f_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6f_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6f_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6f_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6f_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6f_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6f_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6f_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6f_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6f_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6g_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6g_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6g_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6g_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6g_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6g_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6g_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6g_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6g_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6g_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6g_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6g_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6g_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6g_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6g_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6h_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6h_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6h_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6h_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6h_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6h_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6h_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6h_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6h_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6h_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6h_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6h_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6h_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6h_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6h_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6i_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6i_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6i_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6i_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6i_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6i_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6i_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6i_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6i_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6i_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6i_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6i_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6i_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6i_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6i_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6j_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6j_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6j_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6j_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6j_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6j_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6j_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6j_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6j_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6j_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6j_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6j_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6j_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6j_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6j_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6k_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6k_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6k_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6k_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6k_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6k_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6k_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6k_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6k_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6k_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6k_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6k_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6k_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6k_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6k_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6l_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6l_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6l_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6l_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6l_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6l_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6l_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6l_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6l_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6l_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6l_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6l_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6l_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6l_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6l_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6m_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block6m_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block6m_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block6m_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block6m_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6m_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block6m_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block6m_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6m_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block6m_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block6m_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block6m_project_conv (Conv2D) (None, 7, 7, 384) 884736 [] Y |\n",
+ "| |\n",
+ "| block6m_project_bn (BatchNorma (None, 7, 7, 384) 1536 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6m_drop (FixedDropout) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block6m_add (Add) (None, 7, 7, 384) 0 [] Y |\n",
+ "| |\n",
+ "| block7a_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 [] Y |\n",
+ "| |\n",
+ "| block7a_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block7a_expand_activation (Act (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block7a_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 20736 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block7a_bn (BatchNormalization (None, 7, 7, 2304) 9216 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7a_activation (Activation (None, 7, 7, 2304) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7a_se_squeeze (GlobalAver (None, 2304) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block7a_se_reshape (Reshape) (None, 1, 1, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block7a_se_reduce (Conv2D) (None, 1, 1, 96) 221280 [] Y |\n",
+ "| |\n",
+ "| block7a_se_expand (Conv2D) (None, 1, 1, 2304) 223488 [] Y |\n",
+ "| |\n",
+ "| block7a_se_excite (Multiply) (None, 7, 7, 2304) 0 [] Y |\n",
+ "| |\n",
+ "| block7a_project_conv (Conv2D) (None, 7, 7, 640) 1474560 [] Y |\n",
+ "| |\n",
+ "| block7a_project_bn (BatchNorma (None, 7, 7, 640) 2560 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7b_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7b_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block7b_expand_activation (Act (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block7b_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block7b_bn (BatchNormalization (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7b_activation (Activation (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7b_se_squeeze (GlobalAver (None, 3840) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block7b_se_reshape (Reshape) (None, 1, 1, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7b_se_reduce (Conv2D) (None, 1, 1, 160) 614560 [] Y |\n",
+ "| |\n",
+ "| block7b_se_expand (Conv2D) (None, 1, 1, 3840) 618240 [] Y |\n",
+ "| |\n",
+ "| block7b_se_excite (Multiply) (None, 7, 7, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7b_project_conv (Conv2D) (None, 7, 7, 640) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7b_project_bn (BatchNorma (None, 7, 7, 640) 2560 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7b_drop (FixedDropout) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| block7b_add (Add) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| block7c_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7c_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block7c_expand_activation (Act (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block7c_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block7c_bn (BatchNormalization (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7c_activation (Activation (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7c_se_squeeze (GlobalAver (None, 3840) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block7c_se_reshape (Reshape) (None, 1, 1, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7c_se_reduce (Conv2D) (None, 1, 1, 160) 614560 [] Y |\n",
+ "| |\n",
+ "| block7c_se_expand (Conv2D) (None, 1, 1, 3840) 618240 [] Y |\n",
+ "| |\n",
+ "| block7c_se_excite (Multiply) (None, 7, 7, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7c_project_conv (Conv2D) (None, 7, 7, 640) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7c_project_bn (BatchNorma (None, 7, 7, 640) 2560 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7c_drop (FixedDropout) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| block7c_add (Add) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| block7d_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7d_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| block7d_expand_activation (Act (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ivation) |\n",
+ "| |\n",
+ "| block7d_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 [] Y |\n",
+ "| D) |\n",
+ "| |\n",
+ "| block7d_bn (BatchNormalization (None, 7, 7, 3840) 15360 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7d_activation (Activation (None, 7, 7, 3840) 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block7d_se_squeeze (GlobalAver (None, 3840) 0 [] Y |\n",
+ "| agePooling2D) |\n",
+ "| |\n",
+ "| block7d_se_reshape (Reshape) (None, 1, 1, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7d_se_reduce (Conv2D) (None, 1, 1, 160) 614560 [] Y |\n",
+ "| |\n",
+ "| block7d_se_expand (Conv2D) (None, 1, 1, 3840) 618240 [] Y |\n",
+ "| |\n",
+ "| block7d_se_excite (Multiply) (None, 7, 7, 3840) 0 [] Y |\n",
+ "| |\n",
+ "| block7d_project_conv (Conv2D) (None, 7, 7, 640) 2457600 [] Y |\n",
+ "| |\n",
+ "| block7d_project_bn (BatchNorma (None, 7, 7, 640) 2560 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7d_drop (FixedDropout) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| block7d_add (Add) (None, 7, 7, 640) 0 [] Y |\n",
+ "| |\n",
+ "| top_conv (Conv2D) (None, 7, 7, 2560) 1638400 [] Y |\n",
+ "| |\n",
+ "| top_bn (BatchNormalization) (None, 7, 7, 2560) 10240 [] Y |\n",
+ "| |\n",
+ "| top_activation (Activation) (None, 7, 7, 2560) 0 [] Y |\n",
+ "¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\n",
+ " xception (Functional) (None, 7, 7, 2048) 20861480 ['input_1[0][0]'] Y \n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| input_3 (InputLayer) [(None, 224, 224, 3 0 [] Y |\n",
+ "| )] |\n",
+ "| |\n",
+ "| block1_conv1 (Conv2D) (None, 111, 111, 32 864 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1_conv1_bn (BatchNormaliz (None, 111, 111, 32 128 [] Y |\n",
+ "| ation) ) |\n",
+ "| |\n",
+ "| block1_conv1_act (Activation) (None, 111, 111, 32 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1_conv2 (Conv2D) (None, 109, 109, 64 18432 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block1_conv2_bn (BatchNormaliz (None, 109, 109, 64 256 [] Y |\n",
+ "| ation) ) |\n",
+ "| |\n",
+ "| block1_conv2_act (Activation) (None, 109, 109, 64 0 [] Y |\n",
+ "| ) |\n",
+ "| |\n",
+ "| block2_sepconv1 (SeparableConv (None, 109, 109, 12 8768 [] Y |\n",
+ "| 2D) 8) |\n",
+ "| |\n",
+ "| block2_sepconv1_bn (BatchNorma (None, 109, 109, 12 512 [] Y |\n",
+ "| lization) 8) |\n",
+ "| |\n",
+ "| block2_sepconv2_act (Activatio (None, 109, 109, 12 0 [] Y |\n",
+ "| n) 8) |\n",
+ "| |\n",
+ "| block2_sepconv2 (SeparableConv (None, 109, 109, 12 17536 [] Y |\n",
+ "| 2D) 8) |\n",
+ "| |\n",
+ "| block2_sepconv2_bn (BatchNorma (None, 109, 109, 12 512 [] Y |\n",
+ "| lization) 8) |\n",
+ "| |\n",
+ "| conv2d (Conv2D) (None, 55, 55, 128) 8192 [] Y |\n",
+ "| |\n",
+ "| block2_pool (MaxPooling2D) (None, 55, 55, 128) 0 [] Y |\n",
+ "| |\n",
+ "| batch_normalization (BatchNorm (None, 55, 55, 128) 512 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| add (Add) (None, 55, 55, 128) 0 [] Y |\n",
+ "| |\n",
+ "| block3_sepconv1_act (Activatio (None, 55, 55, 128) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block3_sepconv1 (SeparableConv (None, 55, 55, 256) 33920 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block3_sepconv1_bn (BatchNorma (None, 55, 55, 256) 1024 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block3_sepconv2_act (Activatio (None, 55, 55, 256) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block3_sepconv2 (SeparableConv (None, 55, 55, 256) 67840 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block3_sepconv2_bn (BatchNorma (None, 55, 55, 256) 1024 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| conv2d_1 (Conv2D) (None, 28, 28, 256) 32768 [] Y |\n",
+ "| |\n",
+ "| block3_pool (MaxPooling2D) (None, 28, 28, 256) 0 [] Y |\n",
+ "| |\n",
+ "| batch_normalization_1 (BatchNo (None, 28, 28, 256) 1024 [] Y |\n",
+ "| rmalization) |\n",
+ "| |\n",
+ "| add_1 (Add) (None, 28, 28, 256) 0 [] Y |\n",
+ "| |\n",
+ "| block4_sepconv1_act (Activatio (None, 28, 28, 256) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block4_sepconv1 (SeparableConv (None, 28, 28, 728) 188672 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block4_sepconv1_bn (BatchNorma (None, 28, 28, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block4_sepconv2_act (Activatio (None, 28, 28, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block4_sepconv2 (SeparableConv (None, 28, 28, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block4_sepconv2_bn (BatchNorma (None, 28, 28, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| conv2d_2 (Conv2D) (None, 14, 14, 728) 186368 [] Y |\n",
+ "| |\n",
+ "| block4_pool (MaxPooling2D) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| batch_normalization_2 (BatchNo (None, 14, 14, 728) 2912 [] Y |\n",
+ "| rmalization) |\n",
+ "| |\n",
+ "| add_2 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block5_sepconv1_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block5_sepconv1 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block5_sepconv1_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5_sepconv2_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block5_sepconv2 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block5_sepconv2_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block5_sepconv3_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block5_sepconv3 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block5_sepconv3_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| add_3 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block6_sepconv1_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block6_sepconv1 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block6_sepconv1_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6_sepconv2_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block6_sepconv2 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block6_sepconv2_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block6_sepconv3_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block6_sepconv3 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block6_sepconv3_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| add_4 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block7_sepconv1_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block7_sepconv1 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block7_sepconv1_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7_sepconv2_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block7_sepconv2 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block7_sepconv2_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block7_sepconv3_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block7_sepconv3 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block7_sepconv3_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| add_5 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block8_sepconv1_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block8_sepconv1 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block8_sepconv1_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block8_sepconv2_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block8_sepconv2 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block8_sepconv2_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block8_sepconv3_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block8_sepconv3 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block8_sepconv3_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| add_6 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block9_sepconv1_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block9_sepconv1 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block9_sepconv1_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block9_sepconv2_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block9_sepconv2 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block9_sepconv2_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| block9_sepconv3_act (Activatio (None, 14, 14, 728) 0 [] Y |\n",
+ "| n) |\n",
+ "| |\n",
+ "| block9_sepconv3 (SeparableConv (None, 14, 14, 728) 536536 [] Y |\n",
+ "| 2D) |\n",
+ "| |\n",
+ "| block9_sepconv3_bn (BatchNorma (None, 14, 14, 728) 2912 [] Y |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| add_7 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block10_sepconv1_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block10_sepconv1 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block10_sepconv1_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block10_sepconv2_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block10_sepconv2 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block10_sepconv2_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block10_sepconv3_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block10_sepconv3 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block10_sepconv3_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| add_8 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block11_sepconv1_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block11_sepconv1 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block11_sepconv1_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block11_sepconv2_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block11_sepconv2 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block11_sepconv2_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block11_sepconv3_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block11_sepconv3 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block11_sepconv3_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| add_9 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block12_sepconv1_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block12_sepconv1 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block12_sepconv1_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block12_sepconv2_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block12_sepconv2 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block12_sepconv2_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block12_sepconv3_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block12_sepconv3 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block12_sepconv3_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| add_10 (Add) (None, 14, 14, 728) 0 [] Y |\n",
+ "| |\n",
+ "| block13_sepconv1_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block13_sepconv1 (SeparableCon (None, 14, 14, 728) 536536 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block13_sepconv1_bn (BatchNorm (None, 14, 14, 728) 2912 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block13_sepconv2_act (Activati (None, 14, 14, 728) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block13_sepconv2 (SeparableCon (None, 14, 14, 1024 752024 [] Y |\n",
+ "| v2D) ) |\n",
+ "| |\n",
+ "| block13_sepconv2_bn (BatchNorm (None, 14, 14, 1024 4096 [] Y |\n",
+ "| alization) ) |\n",
+ "| |\n",
+ "| conv2d_3 (Conv2D) (None, 7, 7, 1024) 745472 [] Y |\n",
+ "| |\n",
+ "| block13_pool (MaxPooling2D) (None, 7, 7, 1024) 0 [] Y |\n",
+ "| |\n",
+ "| batch_normalization_3 (BatchNo (None, 7, 7, 1024) 4096 [] Y |\n",
+ "| rmalization) |\n",
+ "| |\n",
+ "| add_11 (Add) (None, 7, 7, 1024) 0 [] Y |\n",
+ "| |\n",
+ "| block14_sepconv1 (SeparableCon (None, 7, 7, 1536) 1582080 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block14_sepconv1_bn (BatchNorm (None, 7, 7, 1536) 6144 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block14_sepconv1_act (Activati (None, 7, 7, 1536) 0 [] Y |\n",
+ "| on) |\n",
+ "| |\n",
+ "| block14_sepconv2 (SeparableCon (None, 7, 7, 2048) 3159552 [] Y |\n",
+ "| v2D) |\n",
+ "| |\n",
+ "| block14_sepconv2_bn (BatchNorm (None, 7, 7, 2048) 8192 [] Y |\n",
+ "| alization) |\n",
+ "| |\n",
+ "| block14_sepconv2_act (Activati (None, 7, 7, 2048) 0 [] Y |\n",
+ "| on) |\n",
+ "¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\n",
+ " global_average_pooling2d (Glob (None, 2560) 0 ['efficientnet-b7[0][0]'] Y \n",
+ " alAveragePooling2D) \n",
+ " \n",
+ " global_average_pooling2d_1 (Gl (None, 2048) 0 ['xception[0][0]'] Y \n",
+ " obalAveragePooling2D) \n",
+ " \n",
+ " dense (Dense) (None, 512) 1311232 ['global_average_pooling2d[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " dense_1 (Dense) (None, 512) 1049088 ['global_average_pooling2d_1[0] Y \n",
+ " [0]'] \n",
+ " \n",
+ " concatenate (Concatenate) (None, 1024) 0 ['dense[0][0]', Y \n",
+ " 'dense_1[0][0]'] \n",
+ " \n",
+ " dense_2 (Dense) (None, 1024) 1049600 ['concatenate[0][0]'] Y \n",
+ " \n",
+ " dropout (Dropout) (None, 1024) 0 ['dense_2[0][0]'] Y \n",
+ " \n",
+ " batch_normalization_4 (BatchNo (None, 1024) 4096 ['dropout[0][0]'] Y \n",
+ " rmalization) \n",
+ " \n",
+ " dense_3 (Dense) (None, 512) 524800 ['batch_normalization_4[0][0]'] Y \n",
+ " \n",
+ " batch_normalization_5 (BatchNo (None, 512) 2048 ['dense_3[0][0]'] Y \n",
+ " rmalization) \n",
+ " \n",
+ " dense_4 (Dense) (None, 128) 65664 ['batch_normalization_5[0][0]'] Y \n",
+ " \n",
+ " dense_5 (Dense) (None, 2) 258 ['dense_4[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 88,965,946\n",
+ "Trainable params: 88,597,626\n",
+ "Non-trainable params: 368,320\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from efficientnet.keras import EfficientNetB7 as KENB7\n",
"from keras.applications.xception import Xception\n",
@@ -1043,9 +5692,4150 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 11,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ ">>>> Load pretrained from: C:\\Users\\aydin\\.keras\\models/efficientnetv2\\efficientnetv2-xl-21k-ft1k.h5\n",
+ "Model: \"model\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " stem_conv (Conv2D) (None, 112, 112, 32 864 ['input_1[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_bn (BatchNormalization) (None, 112, 112, 32 128 ['stem_conv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_swish (Activation) (None, 112, 112, 32 0 ['stem_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stack_0_block0_fu_conv (Conv2D (None, 112, 112, 32 9216 ['stem_swish[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " stack_0_block0_fu_bn (BatchNor (None, 112, 112, 32 128 ['stack_0_block0_fu_conv[0][0]' Y \n",
+ " malization) ) ] \n",
+ " \n",
+ " stack_0_block0_fu_swish (Activ (None, 112, 112, 32 0 ['stack_0_block0_fu_bn[0][0]'] Y \n",
+ " ation) ) \n",
+ " \n",
+ " add (Add) (None, 112, 112, 32 0 ['stem_swish[0][0]', Y \n",
+ " ) 'stack_0_block0_fu_swish[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_0_block1_fu_conv (Conv2D (None, 112, 112, 32 9216 ['add[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " stack_0_block1_fu_bn (BatchNor (None, 112, 112, 32 128 ['stack_0_block1_fu_conv[0][0]' Y \n",
+ " malization) ) ] \n",
+ " \n",
+ " stack_0_block1_fu_swish (Activ (None, 112, 112, 32 0 ['stack_0_block1_fu_bn[0][0]'] Y \n",
+ " ation) ) \n",
+ " \n",
+ " add_1 (Add) (None, 112, 112, 32 0 ['add[0][0]', Y \n",
+ " ) 'stack_0_block1_fu_swish[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_0_block2_fu_conv (Conv2D (None, 112, 112, 32 9216 ['add_1[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " stack_0_block2_fu_bn (BatchNor (None, 112, 112, 32 128 ['stack_0_block2_fu_conv[0][0]' Y \n",
+ " malization) ) ] \n",
+ " \n",
+ " stack_0_block2_fu_swish (Activ (None, 112, 112, 32 0 ['stack_0_block2_fu_bn[0][0]'] Y \n",
+ " ation) ) \n",
+ " \n",
+ " add_2 (Add) (None, 112, 112, 32 0 ['add_1[0][0]', Y \n",
+ " ) 'stack_0_block2_fu_swish[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_0_block3_fu_conv (Conv2D (None, 112, 112, 32 9216 ['add_2[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " stack_0_block3_fu_bn (BatchNor (None, 112, 112, 32 128 ['stack_0_block3_fu_conv[0][0]' Y \n",
+ " malization) ) ] \n",
+ " \n",
+ " stack_0_block3_fu_swish (Activ (None, 112, 112, 32 0 ['stack_0_block3_fu_bn[0][0]'] Y \n",
+ " ation) ) \n",
+ " \n",
+ " add_3 (Add) (None, 112, 112, 32 0 ['add_2[0][0]', Y \n",
+ " ) 'stack_0_block3_fu_swish[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block0_sortcut_conv (C (None, 56, 56, 128) 36864 ['add_3[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block0_sortcut_bn (Bat (None, 56, 56, 128) 512 ['stack_1_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block0_sortcut_swish ( (None, 56, 56, 128) 0 ['stack_1_block0_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block0_MB_pw_conv (Con (None, 56, 56, 64) 8192 ['stack_1_block0_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block0_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_1_block1_sortcut_conv (C (None, 56, 56, 256) 147456 ['stack_1_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) '] \n",
+ " \n",
+ " stack_1_block1_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block1_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block1_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block1_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block1_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block1_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_4 (Add) (None, 56, 56, 64) 0 ['stack_1_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_1_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block2_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_4[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block2_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block2_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block2_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block2_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block2_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block2_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_5 (Add) (None, 56, 56, 64) 0 ['add_4[0][0]', Y \n",
+ " 'stack_1_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block3_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_5[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block3_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block3_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block3_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block3_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block3_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block3_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_6 (Add) (None, 56, 56, 64) 0 ['add_5[0][0]', Y \n",
+ " 'stack_1_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block4_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_6[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block4_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block4_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block4_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block4_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block4_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block4_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_7 (Add) (None, 56, 56, 64) 0 ['add_6[0][0]', Y \n",
+ " 'stack_1_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block5_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_7[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block5_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block5_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block5_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block5_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block5_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block5_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_8 (Add) (None, 56, 56, 64) 0 ['add_7[0][0]', Y \n",
+ " 'stack_1_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block6_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_8[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block6_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block6_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block6_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block6_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block6_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block6_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_9 (Add) (None, 56, 56, 64) 0 ['add_8[0][0]', Y \n",
+ " 'stack_1_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_1_block7_sortcut_conv (C (None, 56, 56, 256) 147456 ['add_9[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_1_block7_sortcut_bn (Bat (None, 56, 56, 256) 1024 ['stack_1_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_1_block7_sortcut_swish ( (None, 56, 56, 256) 0 ['stack_1_block7_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_1_block7_MB_pw_conv (Con (None, 56, 56, 64) 16384 ['stack_1_block7_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_1_block7_MB_pw_bn (Batch (None, 56, 56, 64) 256 ['stack_1_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_10 (Add) (None, 56, 56, 64) 0 ['add_9[0][0]', Y \n",
+ " 'stack_1_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block0_sortcut_conv (C (None, 28, 28, 256) 147456 ['add_10[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block0_sortcut_bn (Bat (None, 28, 28, 256) 1024 ['stack_2_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block0_sortcut_swish ( (None, 28, 28, 256) 0 ['stack_2_block0_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block0_MB_pw_conv (Con (None, 28, 28, 96) 24576 ['stack_2_block0_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block0_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_2_block1_sortcut_conv (C (None, 28, 28, 384) 331776 ['stack_2_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) '] \n",
+ " \n",
+ " stack_2_block1_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block1_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block1_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block1_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block1_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block1_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_11 (Add) (None, 28, 28, 96) 0 ['stack_2_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_2_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block2_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_11[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block2_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block2_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block2_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block2_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block2_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block2_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_12 (Add) (None, 28, 28, 96) 0 ['add_11[0][0]', Y \n",
+ " 'stack_2_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block3_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_12[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block3_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block3_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block3_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block3_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block3_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block3_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_13 (Add) (None, 28, 28, 96) 0 ['add_12[0][0]', Y \n",
+ " 'stack_2_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block4_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_13[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block4_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block4_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block4_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block4_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block4_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block4_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_14 (Add) (None, 28, 28, 96) 0 ['add_13[0][0]', Y \n",
+ " 'stack_2_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block5_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_14[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block5_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block5_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block5_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block5_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block5_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block5_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_15 (Add) (None, 28, 28, 96) 0 ['add_14[0][0]', Y \n",
+ " 'stack_2_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block6_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_15[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block6_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block6_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block6_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block6_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block6_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block6_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_16 (Add) (None, 28, 28, 96) 0 ['add_15[0][0]', Y \n",
+ " 'stack_2_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_2_block7_sortcut_conv (C (None, 28, 28, 384) 331776 ['add_16[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_2_block7_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_2_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_2_block7_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_2_block7_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_2_block7_MB_pw_conv (Con (None, 28, 28, 96) 36864 ['stack_2_block7_sortcut_swish[ Y \n",
+ " v2D) 0][0]'] \n",
+ " \n",
+ " stack_2_block7_MB_pw_bn (Batch (None, 28, 28, 96) 384 ['stack_2_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_17 (Add) (None, 28, 28, 96) 0 ['add_16[0][0]', Y \n",
+ " 'stack_2_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block0_sortcut_conv (C (None, 28, 28, 384) 36864 ['add_17[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block0_sortcut_bn (Bat (None, 28, 28, 384) 1536 ['stack_3_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block0_sortcut_swish ( (None, 28, 28, 384) 0 ['stack_3_block0_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block0_MB_dw_ (Depthwi (None, 14, 14, 384) 3456 ['stack_3_block0_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block0_MB_dw_bn (Batch (None, 14, 14, 384) 1536 ['stack_3_block0_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block0_MB_dw_swish (Ac (None, 14, 14, 384) 0 ['stack_3_block0_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean (TFOpLambd (None, 1, 1, 384) 0 ['stack_3_block0_MB_dw_swish[0] Y \n",
+ " a) [0]'] \n",
+ " \n",
+ " stack_3_block0_se_1_conv (Conv (None, 1, 1, 24) 9240 ['tf.math.reduce_mean[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation (Activation) (None, 1, 1, 24) 0 ['stack_3_block0_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block0_se_2_conv (Conv (None, 1, 1, 384) 9600 ['activation[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_1 (Activation) (None, 1, 1, 384) 0 ['stack_3_block0_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply (Multiply) (None, 14, 14, 384) 0 ['stack_3_block0_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_1[0][0]'] \n",
+ " \n",
+ " stack_3_block0_MB_pw_conv (Con (None, 14, 14, 192) 73728 ['multiply[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block0_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_3_block1_sortcut_conv (C (None, 14, 14, 768) 147456 ['stack_3_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) '] \n",
+ " \n",
+ " stack_3_block1_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block1_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block1_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block1_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block1_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block1_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block1_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block1_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block1_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_1 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block1_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block1_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_1[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_2 (Activation) (None, 1, 1, 48) 0 ['stack_3_block1_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block1_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_2[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_3 (Activation) (None, 1, 1, 768) 0 ['stack_3_block1_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_1 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block1_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_3[0][0]'] \n",
+ " \n",
+ " stack_3_block1_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_1[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block1_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_18 (Add) (None, 14, 14, 192) 0 ['stack_3_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_3_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block2_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_18[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block2_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block2_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block2_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block2_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block2_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block2_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block2_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block2_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block2_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_2 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block2_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block2_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_2[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_4 (Activation) (None, 1, 1, 48) 0 ['stack_3_block2_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block2_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_4[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_5 (Activation) (None, 1, 1, 768) 0 ['stack_3_block2_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_2 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block2_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_5[0][0]'] \n",
+ " \n",
+ " stack_3_block2_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_2[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block2_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_19 (Add) (None, 14, 14, 192) 0 ['add_18[0][0]', Y \n",
+ " 'stack_3_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block3_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_19[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block3_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block3_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block3_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block3_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block3_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block3_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block3_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block3_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block3_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_3 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block3_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block3_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_3[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_6 (Activation) (None, 1, 1, 48) 0 ['stack_3_block3_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block3_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_6[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_7 (Activation) (None, 1, 1, 768) 0 ['stack_3_block3_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_3 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block3_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_7[0][0]'] \n",
+ " \n",
+ " stack_3_block3_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_3[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block3_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_20 (Add) (None, 14, 14, 192) 0 ['add_19[0][0]', Y \n",
+ " 'stack_3_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block4_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_20[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block4_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block4_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block4_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block4_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block4_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block4_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block4_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block4_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block4_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_4 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block4_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block4_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_4[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_8 (Activation) (None, 1, 1, 48) 0 ['stack_3_block4_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block4_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_8[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_9 (Activation) (None, 1, 1, 768) 0 ['stack_3_block4_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_4 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block4_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_9[0][0]'] \n",
+ " \n",
+ " stack_3_block4_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_4[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block4_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_21 (Add) (None, 14, 14, 192) 0 ['add_20[0][0]', Y \n",
+ " 'stack_3_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block5_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_21[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block5_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block5_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block5_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block5_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block5_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block5_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block5_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block5_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block5_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_5 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block5_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block5_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_5[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_10 (Activation) (None, 1, 1, 48) 0 ['stack_3_block5_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block5_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_10[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_11 (Activation) (None, 1, 1, 768) 0 ['stack_3_block5_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_5 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block5_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_11[0][0]'] \n",
+ " \n",
+ " stack_3_block5_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_5[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block5_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_22 (Add) (None, 14, 14, 192) 0 ['add_21[0][0]', Y \n",
+ " 'stack_3_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block6_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_22[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block6_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block6_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block6_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block6_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block6_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block6_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block6_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block6_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block6_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_6 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block6_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block6_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_6[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_12 (Activation) (None, 1, 1, 48) 0 ['stack_3_block6_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block6_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_12[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_13 (Activation) (None, 1, 1, 768) 0 ['stack_3_block6_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_6 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block6_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_13[0][0]'] \n",
+ " \n",
+ " stack_3_block6_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_6[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block6_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_23 (Add) (None, 14, 14, 192) 0 ['add_22[0][0]', Y \n",
+ " 'stack_3_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block7_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_23[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block7_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block7_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block7_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block7_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block7_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block7_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block7_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block7_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block7_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_7 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block7_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block7_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_7[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_14 (Activation) (None, 1, 1, 48) 0 ['stack_3_block7_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block7_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_14[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_15 (Activation) (None, 1, 1, 768) 0 ['stack_3_block7_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_7 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block7_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_15[0][0]'] \n",
+ " \n",
+ " stack_3_block7_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_7[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block7_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_24 (Add) (None, 14, 14, 192) 0 ['add_23[0][0]', Y \n",
+ " 'stack_3_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block8_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_24[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block8_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block8_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block8_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block8_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block8_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block8_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block8_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block8_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block8_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block8_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_8 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block8_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block8_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_8[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_16 (Activation) (None, 1, 1, 48) 0 ['stack_3_block8_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block8_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_16[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_17 (Activation) (None, 1, 1, 768) 0 ['stack_3_block8_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_8 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block8_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_17[0][0]'] \n",
+ " \n",
+ " stack_3_block8_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_8[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block8_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block8_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_25 (Add) (None, 14, 14, 192) 0 ['add_24[0][0]', Y \n",
+ " 'stack_3_block8_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block9_sortcut_conv (C (None, 14, 14, 768) 147456 ['add_25[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_3_block9_sortcut_bn (Bat (None, 14, 14, 768) 3072 ['stack_3_block9_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_3_block9_sortcut_swish ( (None, 14, 14, 768) 0 ['stack_3_block9_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_3_block9_MB_dw_ (Depthwi (None, 14, 14, 768) 6912 ['stack_3_block9_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_3_block9_MB_dw_bn (Batch (None, 14, 14, 768) 3072 ['stack_3_block9_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_3_block9_MB_dw_swish (Ac (None, 14, 14, 768) 0 ['stack_3_block9_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_9 (TFOpLam (None, 1, 1, 768) 0 ['stack_3_block9_MB_dw_swish[0] Y \n",
+ " bda) [0]'] \n",
+ " \n",
+ " stack_3_block9_se_1_conv (Conv (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_9[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_18 (Activation) (None, 1, 1, 48) 0 ['stack_3_block9_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block9_se_2_conv (Conv (None, 1, 1, 768) 37632 ['activation_18[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_19 (Activation) (None, 1, 1, 768) 0 ['stack_3_block9_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_9 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block9_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_19[0][0]'] \n",
+ " \n",
+ " stack_3_block9_MB_pw_conv (Con (None, 14, 14, 192) 147456 ['multiply_9[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_3_block9_MB_pw_bn (Batch (None, 14, 14, 192) 768 ['stack_3_block9_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_26 (Add) (None, 14, 14, 192) 0 ['add_25[0][0]', Y \n",
+ " 'stack_3_block9_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_3_block10_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_26[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block10_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block10_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block10_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block10_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block10_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block10_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block10_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block10_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block10_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block10_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_10 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block10_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block10_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_10[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_20 (Activation) (None, 1, 1, 48) 0 ['stack_3_block10_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block10_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_20[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_21 (Activation) (None, 1, 1, 768) 0 ['stack_3_block10_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_10 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block10_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_21[0][0]'] \n",
+ " \n",
+ " stack_3_block10_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_10[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block10_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block10_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_27 (Add) (None, 14, 14, 192) 0 ['add_26[0][0]', Y \n",
+ " 'stack_3_block10_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block11_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_27[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block11_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block11_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block11_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block11_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block11_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block11_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block11_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block11_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block11_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block11_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_11 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block11_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block11_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_11[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_22 (Activation) (None, 1, 1, 48) 0 ['stack_3_block11_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block11_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_22[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_23 (Activation) (None, 1, 1, 768) 0 ['stack_3_block11_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_11 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block11_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_23[0][0]'] \n",
+ " \n",
+ " stack_3_block11_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_11[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block11_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block11_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_28 (Add) (None, 14, 14, 192) 0 ['add_27[0][0]', Y \n",
+ " 'stack_3_block11_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block12_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_28[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block12_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block12_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block12_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block12_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block12_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block12_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block12_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block12_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block12_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block12_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_12 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block12_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block12_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_12[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_24 (Activation) (None, 1, 1, 48) 0 ['stack_3_block12_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block12_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_24[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_25 (Activation) (None, 1, 1, 768) 0 ['stack_3_block12_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_12 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block12_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_25[0][0]'] \n",
+ " \n",
+ " stack_3_block12_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_12[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block12_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block12_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_29 (Add) (None, 14, 14, 192) 0 ['add_28[0][0]', Y \n",
+ " 'stack_3_block12_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block13_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_29[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block13_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block13_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block13_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block13_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block13_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block13_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block13_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block13_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block13_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block13_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_13 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block13_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block13_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_13[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_26 (Activation) (None, 1, 1, 48) 0 ['stack_3_block13_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block13_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_26[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_27 (Activation) (None, 1, 1, 768) 0 ['stack_3_block13_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_13 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block13_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_27[0][0]'] \n",
+ " \n",
+ " stack_3_block13_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_13[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block13_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block13_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_30 (Add) (None, 14, 14, 192) 0 ['add_29[0][0]', Y \n",
+ " 'stack_3_block13_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block14_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_30[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block14_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block14_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block14_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block14_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block14_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block14_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block14_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block14_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block14_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block14_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_14 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block14_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block14_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_14[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_28 (Activation) (None, 1, 1, 48) 0 ['stack_3_block14_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block14_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_28[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_29 (Activation) (None, 1, 1, 768) 0 ['stack_3_block14_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_14 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block14_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_29[0][0]'] \n",
+ " \n",
+ " stack_3_block14_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_14[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block14_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block14_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_31 (Add) (None, 14, 14, 192) 0 ['add_30[0][0]', Y \n",
+ " 'stack_3_block14_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_3_block15_sortcut_conv ( (None, 14, 14, 768) 147456 ['add_31[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_3_block15_sortcut_bn (Ba (None, 14, 14, 768) 3072 ['stack_3_block15_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_3_block15_sortcut_swish (None, 14, 14, 768) 0 ['stack_3_block15_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_3_block15_MB_dw_ (Depthw (None, 14, 14, 768) 6912 ['stack_3_block15_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_3_block15_MB_dw_bn (Batc (None, 14, 14, 768) 3072 ['stack_3_block15_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_3_block15_MB_dw_swish (A (None, 14, 14, 768) 0 ['stack_3_block15_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_15 (TFOpLa (None, 1, 1, 768) 0 ['stack_3_block15_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_3_block15_se_1_conv (Con (None, 1, 1, 48) 36912 ['tf.math.reduce_mean_15[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_30 (Activation) (None, 1, 1, 48) 0 ['stack_3_block15_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_3_block15_se_2_conv (Con (None, 1, 1, 768) 37632 ['activation_30[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_31 (Activation) (None, 1, 1, 768) 0 ['stack_3_block15_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_15 (Multiply) (None, 14, 14, 768) 0 ['stack_3_block15_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_31[0][0]'] \n",
+ " \n",
+ " stack_3_block15_MB_pw_conv (Co (None, 14, 14, 192) 147456 ['multiply_15[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_3_block15_MB_pw_bn (Batc (None, 14, 14, 192) 768 ['stack_3_block15_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_32 (Add) (None, 14, 14, 192) 0 ['add_31[0][0]', Y \n",
+ " 'stack_3_block15_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block0_sortcut_conv (C (None, 14, 14, 1152 221184 ['add_32[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block0_sortcut_bn (Bat (None, 14, 14, 1152 4608 ['stack_4_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block0_sortcut_swish ( (None, 14, 14, 1152 0 ['stack_4_block0_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block0_MB_dw_ (Depthwi (None, 14, 14, 1152 10368 ['stack_4_block0_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block0_MB_dw_bn (Batch (None, 14, 14, 1152 4608 ['stack_4_block0_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block0_MB_dw_swish (Ac (None, 14, 14, 1152 0 ['stack_4_block0_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_16 (TFOpLa (None, 1, 1, 1152) 0 ['stack_4_block0_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block0_se_1_conv (Conv (None, 1, 1, 48) 55344 ['tf.math.reduce_mean_16[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_32 (Activation) (None, 1, 1, 48) 0 ['stack_4_block0_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block0_se_2_conv (Conv (None, 1, 1, 1152) 56448 ['activation_32[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_33 (Activation) (None, 1, 1, 1152) 0 ['stack_4_block0_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_16 (Multiply) (None, 14, 14, 1152 0 ['stack_4_block0_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_33[0][0]'] \n",
+ " \n",
+ " stack_4_block0_MB_pw_conv (Con (None, 14, 14, 256) 294912 ['multiply_16[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block0_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_4_block1_sortcut_conv (C (None, 14, 14, 1536 393216 ['stack_4_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) ) '] \n",
+ " \n",
+ " stack_4_block1_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block1_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block1_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block1_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block1_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block1_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block1_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block1_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block1_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_17 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block1_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block1_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_17[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_34 (Activation) (None, 1, 1, 64) 0 ['stack_4_block1_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block1_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_34[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_35 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block1_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_17 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block1_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_35[0][0]'] \n",
+ " \n",
+ " stack_4_block1_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_17[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block1_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_33 (Add) (None, 14, 14, 256) 0 ['stack_4_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_4_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block2_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_33[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block2_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block2_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block2_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block2_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block2_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block2_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block2_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block2_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block2_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_18 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block2_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block2_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_18[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_36 (Activation) (None, 1, 1, 64) 0 ['stack_4_block2_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block2_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_36[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_37 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block2_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_18 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block2_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_37[0][0]'] \n",
+ " \n",
+ " stack_4_block2_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_18[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block2_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_34 (Add) (None, 14, 14, 256) 0 ['add_33[0][0]', Y \n",
+ " 'stack_4_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block3_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_34[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block3_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block3_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block3_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block3_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block3_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block3_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block3_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block3_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block3_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_19 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block3_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block3_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_19[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_38 (Activation) (None, 1, 1, 64) 0 ['stack_4_block3_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block3_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_38[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_39 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block3_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_19 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block3_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_39[0][0]'] \n",
+ " \n",
+ " stack_4_block3_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_19[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block3_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_35 (Add) (None, 14, 14, 256) 0 ['add_34[0][0]', Y \n",
+ " 'stack_4_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block4_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_35[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block4_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block4_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block4_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block4_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block4_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block4_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block4_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block4_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block4_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_20 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block4_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block4_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_20[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_40 (Activation) (None, 1, 1, 64) 0 ['stack_4_block4_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block4_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_40[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_41 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block4_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_20 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block4_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_41[0][0]'] \n",
+ " \n",
+ " stack_4_block4_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_20[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block4_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_36 (Add) (None, 14, 14, 256) 0 ['add_35[0][0]', Y \n",
+ " 'stack_4_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block5_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_36[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block5_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block5_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block5_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block5_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block5_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block5_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block5_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block5_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block5_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_21 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block5_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block5_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_21[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_42 (Activation) (None, 1, 1, 64) 0 ['stack_4_block5_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block5_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_42[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_43 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block5_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_21 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block5_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_43[0][0]'] \n",
+ " \n",
+ " stack_4_block5_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_21[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block5_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_37 (Add) (None, 14, 14, 256) 0 ['add_36[0][0]', Y \n",
+ " 'stack_4_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block6_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_37[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block6_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block6_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block6_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block6_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block6_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block6_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block6_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block6_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block6_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_22 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block6_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block6_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_22[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_44 (Activation) (None, 1, 1, 64) 0 ['stack_4_block6_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block6_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_44[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_45 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block6_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_22 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block6_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_45[0][0]'] \n",
+ " \n",
+ " stack_4_block6_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_22[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block6_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_38 (Add) (None, 14, 14, 256) 0 ['add_37[0][0]', Y \n",
+ " 'stack_4_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block7_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_38[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block7_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block7_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block7_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block7_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block7_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block7_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block7_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block7_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block7_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_23 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block7_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block7_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_23[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_46 (Activation) (None, 1, 1, 64) 0 ['stack_4_block7_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block7_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_46[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_47 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block7_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_23 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block7_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_47[0][0]'] \n",
+ " \n",
+ " stack_4_block7_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_23[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block7_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_39 (Add) (None, 14, 14, 256) 0 ['add_38[0][0]', Y \n",
+ " 'stack_4_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block8_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_39[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block8_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block8_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block8_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block8_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block8_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block8_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block8_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block8_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block8_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block8_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_24 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block8_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block8_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_24[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_48 (Activation) (None, 1, 1, 64) 0 ['stack_4_block8_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block8_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_48[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_49 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block8_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_24 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block8_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_49[0][0]'] \n",
+ " \n",
+ " stack_4_block8_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_24[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block8_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block8_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_40 (Add) (None, 14, 14, 256) 0 ['add_39[0][0]', Y \n",
+ " 'stack_4_block8_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block9_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_40[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_4_block9_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_4_block9_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_4_block9_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_4_block9_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_4_block9_MB_dw_ (Depthwi (None, 14, 14, 1536 13824 ['stack_4_block9_sortcut_swish[ Y \n",
+ " seConv2D) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block9_MB_dw_bn (Batch (None, 14, 14, 1536 6144 ['stack_4_block9_MB_dw_[0][0]'] Y \n",
+ " Normalization) ) \n",
+ " \n",
+ " stack_4_block9_MB_dw_swish (Ac (None, 14, 14, 1536 0 ['stack_4_block9_MB_dw_bn[0][0] Y \n",
+ " tivation) ) '] \n",
+ " \n",
+ " tf.math.reduce_mean_25 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block9_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_4_block9_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_25[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_50 (Activation) (None, 1, 1, 64) 0 ['stack_4_block9_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block9_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_50[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_51 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block9_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_25 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block9_MB_dw_swish[0] Y \n",
+ " ) [0]', \n",
+ " 'activation_51[0][0]'] \n",
+ " \n",
+ " stack_4_block9_MB_pw_conv (Con (None, 14, 14, 256) 393216 ['multiply_25[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_4_block9_MB_pw_bn (Batch (None, 14, 14, 256) 1024 ['stack_4_block9_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_41 (Add) (None, 14, 14, 256) 0 ['add_40[0][0]', Y \n",
+ " 'stack_4_block9_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_4_block10_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_41[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block10_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block10_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block10_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block10_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block10_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block10_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block10_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block10_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block10_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block10_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_26 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block10_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block10_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_26[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_52 (Activation) (None, 1, 1, 64) 0 ['stack_4_block10_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block10_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_52[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_53 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block10_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_26 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block10_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_53[0][0]'] \n",
+ " \n",
+ " stack_4_block10_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_26[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block10_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block10_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_42 (Add) (None, 14, 14, 256) 0 ['add_41[0][0]', Y \n",
+ " 'stack_4_block10_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block11_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_42[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block11_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block11_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block11_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block11_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block11_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block11_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block11_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block11_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block11_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block11_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_27 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block11_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block11_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_27[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_54 (Activation) (None, 1, 1, 64) 0 ['stack_4_block11_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block11_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_54[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_55 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block11_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_27 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block11_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_55[0][0]'] \n",
+ " \n",
+ " stack_4_block11_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_27[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block11_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block11_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_43 (Add) (None, 14, 14, 256) 0 ['add_42[0][0]', Y \n",
+ " 'stack_4_block11_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block12_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_43[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block12_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block12_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block12_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block12_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block12_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block12_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block12_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block12_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block12_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block12_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_28 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block12_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block12_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_28[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_56 (Activation) (None, 1, 1, 64) 0 ['stack_4_block12_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block12_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_56[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_57 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block12_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_28 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block12_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_57[0][0]'] \n",
+ " \n",
+ " stack_4_block12_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_28[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block12_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block12_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_44 (Add) (None, 14, 14, 256) 0 ['add_43[0][0]', Y \n",
+ " 'stack_4_block12_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block13_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_44[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block13_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block13_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block13_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block13_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block13_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block13_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block13_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block13_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block13_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block13_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_29 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block13_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block13_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_29[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_58 (Activation) (None, 1, 1, 64) 0 ['stack_4_block13_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block13_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_58[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_59 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block13_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_29 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block13_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_59[0][0]'] \n",
+ " \n",
+ " stack_4_block13_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_29[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block13_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block13_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_45 (Add) (None, 14, 14, 256) 0 ['add_44[0][0]', Y \n",
+ " 'stack_4_block13_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block14_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_45[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block14_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block14_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block14_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block14_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block14_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block14_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block14_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block14_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block14_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block14_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_30 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block14_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block14_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_30[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_60 (Activation) (None, 1, 1, 64) 0 ['stack_4_block14_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block14_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_60[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_61 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block14_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_30 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block14_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_61[0][0]'] \n",
+ " \n",
+ " stack_4_block14_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_30[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block14_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block14_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_46 (Add) (None, 14, 14, 256) 0 ['add_45[0][0]', Y \n",
+ " 'stack_4_block14_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block15_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_46[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block15_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block15_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block15_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block15_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block15_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block15_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block15_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block15_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block15_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block15_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_31 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block15_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block15_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_31[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_62 (Activation) (None, 1, 1, 64) 0 ['stack_4_block15_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block15_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_62[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_63 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block15_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_31 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block15_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_63[0][0]'] \n",
+ " \n",
+ " stack_4_block15_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_31[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block15_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block15_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_47 (Add) (None, 14, 14, 256) 0 ['add_46[0][0]', Y \n",
+ " 'stack_4_block15_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block16_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_47[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block16_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block16_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block16_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block16_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block16_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block16_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block16_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block16_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block16_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block16_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_32 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block16_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block16_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_32[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_64 (Activation) (None, 1, 1, 64) 0 ['stack_4_block16_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block16_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_64[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_65 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block16_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_32 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block16_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_65[0][0]'] \n",
+ " \n",
+ " stack_4_block16_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_32[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block16_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block16_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_48 (Add) (None, 14, 14, 256) 0 ['add_47[0][0]', Y \n",
+ " 'stack_4_block16_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block17_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_48[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block17_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block17_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block17_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block17_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block17_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block17_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block17_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block17_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block17_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block17_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_33 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block17_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block17_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_33[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_66 (Activation) (None, 1, 1, 64) 0 ['stack_4_block17_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block17_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_66[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_67 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block17_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_33 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block17_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_67[0][0]'] \n",
+ " \n",
+ " stack_4_block17_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_33[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block17_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block17_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_49 (Add) (None, 14, 14, 256) 0 ['add_48[0][0]', Y \n",
+ " 'stack_4_block17_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block18_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_49[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block18_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block18_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block18_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block18_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block18_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block18_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block18_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block18_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block18_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block18_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_34 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block18_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block18_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_34[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_68 (Activation) (None, 1, 1, 64) 0 ['stack_4_block18_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block18_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_68[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_69 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block18_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_34 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block18_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_69[0][0]'] \n",
+ " \n",
+ " stack_4_block18_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_34[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block18_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block18_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_50 (Add) (None, 14, 14, 256) 0 ['add_49[0][0]', Y \n",
+ " 'stack_4_block18_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block19_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_50[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block19_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block19_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block19_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block19_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block19_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block19_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block19_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block19_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block19_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block19_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_35 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block19_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block19_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_35[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_70 (Activation) (None, 1, 1, 64) 0 ['stack_4_block19_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block19_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_70[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_71 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block19_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_35 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block19_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_71[0][0]'] \n",
+ " \n",
+ " stack_4_block19_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_35[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block19_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block19_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_51 (Add) (None, 14, 14, 256) 0 ['add_50[0][0]', Y \n",
+ " 'stack_4_block19_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block20_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_51[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block20_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block20_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block20_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block20_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block20_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block20_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block20_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block20_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block20_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block20_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_36 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block20_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block20_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_36[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_72 (Activation) (None, 1, 1, 64) 0 ['stack_4_block20_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block20_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_72[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_73 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block20_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_36 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block20_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_73[0][0]'] \n",
+ " \n",
+ " stack_4_block20_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_36[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block20_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block20_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_52 (Add) (None, 14, 14, 256) 0 ['add_51[0][0]', Y \n",
+ " 'stack_4_block20_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block21_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_52[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block21_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block21_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block21_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block21_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block21_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block21_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block21_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block21_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block21_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block21_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_37 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block21_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block21_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_37[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_74 (Activation) (None, 1, 1, 64) 0 ['stack_4_block21_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block21_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_74[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_75 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block21_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_37 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block21_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_75[0][0]'] \n",
+ " \n",
+ " stack_4_block21_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_37[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block21_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block21_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_53 (Add) (None, 14, 14, 256) 0 ['add_52[0][0]', Y \n",
+ " 'stack_4_block21_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block22_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_53[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block22_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block22_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block22_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block22_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block22_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block22_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block22_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block22_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block22_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block22_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_38 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block22_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block22_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_38[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_76 (Activation) (None, 1, 1, 64) 0 ['stack_4_block22_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block22_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_76[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_77 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block22_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_38 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block22_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_77[0][0]'] \n",
+ " \n",
+ " stack_4_block22_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_38[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block22_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block22_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_54 (Add) (None, 14, 14, 256) 0 ['add_53[0][0]', Y \n",
+ " 'stack_4_block22_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_4_block23_sortcut_conv ( (None, 14, 14, 1536 393216 ['add_54[0][0]'] Y \n",
+ " Conv2D) ) \n",
+ " \n",
+ " stack_4_block23_sortcut_bn (Ba (None, 14, 14, 1536 6144 ['stack_4_block23_sortcut_conv[ Y \n",
+ " tchNormalization) ) 0][0]'] \n",
+ " \n",
+ " stack_4_block23_sortcut_swish (None, 14, 14, 1536 0 ['stack_4_block23_sortcut_bn[0] Y \n",
+ " (Activation) ) [0]'] \n",
+ " \n",
+ " stack_4_block23_MB_dw_ (Depthw (None, 14, 14, 1536 13824 ['stack_4_block23_sortcut_swish Y \n",
+ " iseConv2D) ) [0][0]'] \n",
+ " \n",
+ " stack_4_block23_MB_dw_bn (Batc (None, 14, 14, 1536 6144 ['stack_4_block23_MB_dw_[0][0]' Y \n",
+ " hNormalization) ) ] \n",
+ " \n",
+ " stack_4_block23_MB_dw_swish (A (None, 14, 14, 1536 0 ['stack_4_block23_MB_dw_bn[0][0 Y \n",
+ " ctivation) ) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_39 (TFOpLa (None, 1, 1, 1536) 0 ['stack_4_block23_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_4_block23_se_1_conv (Con (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_39[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_78 (Activation) (None, 1, 1, 64) 0 ['stack_4_block23_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_4_block23_se_2_conv (Con (None, 1, 1, 1536) 99840 ['activation_78[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_79 (Activation) (None, 1, 1, 1536) 0 ['stack_4_block23_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_39 (Multiply) (None, 14, 14, 1536 0 ['stack_4_block23_MB_dw_swish[0 Y \n",
+ " ) ][0]', \n",
+ " 'activation_79[0][0]'] \n",
+ " \n",
+ " stack_4_block23_MB_pw_conv (Co (None, 14, 14, 256) 393216 ['multiply_39[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_4_block23_MB_pw_bn (Batc (None, 14, 14, 256) 1024 ['stack_4_block23_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_55 (Add) (None, 14, 14, 256) 0 ['add_54[0][0]', Y \n",
+ " 'stack_4_block23_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block0_sortcut_conv (C (None, 14, 14, 1536 393216 ['add_55[0][0]'] Y \n",
+ " onv2D) ) \n",
+ " \n",
+ " stack_5_block0_sortcut_bn (Bat (None, 14, 14, 1536 6144 ['stack_5_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ) ][0]'] \n",
+ " \n",
+ " stack_5_block0_sortcut_swish ( (None, 14, 14, 1536 0 ['stack_5_block0_sortcut_bn[0][ Y \n",
+ " Activation) ) 0]'] \n",
+ " \n",
+ " stack_5_block0_MB_dw_ (Depthwi (None, 7, 7, 1536) 13824 ['stack_5_block0_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block0_MB_dw_bn (Batch (None, 7, 7, 1536) 6144 ['stack_5_block0_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block0_MB_dw_swish (Ac (None, 7, 7, 1536) 0 ['stack_5_block0_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_40 (TFOpLa (None, 1, 1, 1536) 0 ['stack_5_block0_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block0_se_1_conv (Conv (None, 1, 1, 64) 98368 ['tf.math.reduce_mean_40[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_80 (Activation) (None, 1, 1, 64) 0 ['stack_5_block0_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block0_se_2_conv (Conv (None, 1, 1, 1536) 99840 ['activation_80[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_81 (Activation) (None, 1, 1, 1536) 0 ['stack_5_block0_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_40 (Multiply) (None, 7, 7, 1536) 0 ['stack_5_block0_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_81[0][0]'] \n",
+ " \n",
+ " stack_5_block0_MB_pw_conv (Con (None, 7, 7, 512) 786432 ['multiply_40[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block0_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_5_block1_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['stack_5_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) '] \n",
+ " \n",
+ " stack_5_block1_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block1_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block1_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block1_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block1_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block1_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block1_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block1_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block1_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_41 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block1_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block1_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_41[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_82 (Activation) (None, 1, 1, 128) 0 ['stack_5_block1_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block1_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_82[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_83 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block1_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_41 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block1_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_83[0][0]'] \n",
+ " \n",
+ " stack_5_block1_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_41[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block1_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_56 (Add) (None, 7, 7, 512) 0 ['stack_5_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_5_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block2_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_56[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block2_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block2_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block2_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block2_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block2_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block2_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block2_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block2_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block2_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_42 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block2_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block2_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_42[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_84 (Activation) (None, 1, 1, 128) 0 ['stack_5_block2_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block2_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_84[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_85 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block2_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_42 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block2_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_85[0][0]'] \n",
+ " \n",
+ " stack_5_block2_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_42[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block2_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_57 (Add) (None, 7, 7, 512) 0 ['add_56[0][0]', Y \n",
+ " 'stack_5_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block3_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_57[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block3_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block3_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block3_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block3_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block3_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block3_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block3_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block3_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block3_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_43 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block3_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block3_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_43[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_86 (Activation) (None, 1, 1, 128) 0 ['stack_5_block3_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block3_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_86[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_87 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block3_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_43 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block3_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_87[0][0]'] \n",
+ " \n",
+ " stack_5_block3_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_43[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block3_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_58 (Add) (None, 7, 7, 512) 0 ['add_57[0][0]', Y \n",
+ " 'stack_5_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block4_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_58[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block4_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block4_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block4_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block4_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block4_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block4_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block4_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block4_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block4_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_44 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block4_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block4_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_44[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_88 (Activation) (None, 1, 1, 128) 0 ['stack_5_block4_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block4_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_88[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_89 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block4_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_44 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block4_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_89[0][0]'] \n",
+ " \n",
+ " stack_5_block4_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_44[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block4_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_59 (Add) (None, 7, 7, 512) 0 ['add_58[0][0]', Y \n",
+ " 'stack_5_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block5_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_59[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block5_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block5_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block5_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block5_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block5_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block5_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block5_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block5_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block5_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_45 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block5_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block5_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_45[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_90 (Activation) (None, 1, 1, 128) 0 ['stack_5_block5_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block5_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_90[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_91 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block5_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_45 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block5_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_91[0][0]'] \n",
+ " \n",
+ " stack_5_block5_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_45[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block5_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_60 (Add) (None, 7, 7, 512) 0 ['add_59[0][0]', Y \n",
+ " 'stack_5_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block6_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_60[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block6_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block6_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block6_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block6_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block6_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block6_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block6_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block6_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block6_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_46 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block6_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block6_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_46[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_92 (Activation) (None, 1, 1, 128) 0 ['stack_5_block6_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block6_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_92[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_93 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block6_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_46 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block6_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_93[0][0]'] \n",
+ " \n",
+ " stack_5_block6_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_46[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block6_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_61 (Add) (None, 7, 7, 512) 0 ['add_60[0][0]', Y \n",
+ " 'stack_5_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block7_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_61[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block7_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block7_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block7_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block7_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block7_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block7_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block7_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block7_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block7_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_47 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block7_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block7_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_47[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_94 (Activation) (None, 1, 1, 128) 0 ['stack_5_block7_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block7_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_94[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_95 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block7_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_47 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block7_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_95[0][0]'] \n",
+ " \n",
+ " stack_5_block7_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_47[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block7_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_62 (Add) (None, 7, 7, 512) 0 ['add_61[0][0]', Y \n",
+ " 'stack_5_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block8_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_62[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block8_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block8_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block8_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block8_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block8_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block8_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block8_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block8_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block8_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block8_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_48 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block8_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block8_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_48[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_96 (Activation) (None, 1, 1, 128) 0 ['stack_5_block8_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block8_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_96[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_97 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block8_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_48 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block8_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_97[0][0]'] \n",
+ " \n",
+ " stack_5_block8_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_48[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block8_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block8_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_63 (Add) (None, 7, 7, 512) 0 ['add_62[0][0]', Y \n",
+ " 'stack_5_block8_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block9_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_63[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_5_block9_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_5_block9_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_5_block9_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_5_block9_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_5_block9_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_5_block9_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_5_block9_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_5_block9_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_5_block9_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_5_block9_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_49 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block9_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_5_block9_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_49[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_98 (Activation) (None, 1, 1, 128) 0 ['stack_5_block9_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block9_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_98[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_99 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block9_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_49 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block9_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_99[0][0]'] \n",
+ " \n",
+ " stack_5_block9_MB_pw_conv (Con (None, 7, 7, 512) 1572864 ['multiply_49[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_5_block9_MB_pw_bn (Batch (None, 7, 7, 512) 2048 ['stack_5_block9_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_64 (Add) (None, 7, 7, 512) 0 ['add_63[0][0]', Y \n",
+ " 'stack_5_block9_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_5_block10_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_64[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block10_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block10_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block10_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block10_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block10_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block10_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block10_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block10_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block10_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block10_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_50 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block10_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block10_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_50[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_100 (Activation) (None, 1, 1, 128) 0 ['stack_5_block10_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block10_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_100[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_101 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block10_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_50 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block10_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_101[0][0]'] \n",
+ " \n",
+ " stack_5_block10_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_50[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block10_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block10_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_65 (Add) (None, 7, 7, 512) 0 ['add_64[0][0]', Y \n",
+ " 'stack_5_block10_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block11_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_65[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block11_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block11_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block11_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block11_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block11_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block11_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block11_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block11_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block11_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block11_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_51 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block11_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block11_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_51[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_102 (Activation) (None, 1, 1, 128) 0 ['stack_5_block11_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block11_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_102[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_103 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block11_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_51 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block11_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_103[0][0]'] \n",
+ " \n",
+ " stack_5_block11_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_51[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block11_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block11_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_66 (Add) (None, 7, 7, 512) 0 ['add_65[0][0]', Y \n",
+ " 'stack_5_block11_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block12_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_66[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block12_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block12_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block12_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block12_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block12_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block12_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block12_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block12_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block12_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block12_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_52 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block12_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block12_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_52[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_104 (Activation) (None, 1, 1, 128) 0 ['stack_5_block12_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block12_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_104[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_105 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block12_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_52 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block12_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_105[0][0]'] \n",
+ " \n",
+ " stack_5_block12_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_52[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block12_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block12_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_67 (Add) (None, 7, 7, 512) 0 ['add_66[0][0]', Y \n",
+ " 'stack_5_block12_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block13_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_67[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block13_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block13_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block13_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block13_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block13_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block13_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block13_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block13_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block13_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block13_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_53 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block13_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block13_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_53[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_106 (Activation) (None, 1, 1, 128) 0 ['stack_5_block13_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block13_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_106[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_107 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block13_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_53 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block13_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_107[0][0]'] \n",
+ " \n",
+ " stack_5_block13_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_53[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block13_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block13_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_68 (Add) (None, 7, 7, 512) 0 ['add_67[0][0]', Y \n",
+ " 'stack_5_block13_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block14_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_68[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block14_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block14_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block14_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block14_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block14_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block14_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block14_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block14_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block14_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block14_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_54 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block14_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block14_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_54[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_108 (Activation) (None, 1, 1, 128) 0 ['stack_5_block14_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block14_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_108[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_109 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block14_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_54 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block14_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_109[0][0]'] \n",
+ " \n",
+ " stack_5_block14_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_54[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block14_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block14_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_69 (Add) (None, 7, 7, 512) 0 ['add_68[0][0]', Y \n",
+ " 'stack_5_block14_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block15_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_69[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block15_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block15_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block15_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block15_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block15_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block15_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block15_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block15_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block15_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block15_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_55 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block15_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block15_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_55[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_110 (Activation) (None, 1, 1, 128) 0 ['stack_5_block15_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block15_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_110[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_111 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block15_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_55 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block15_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_111[0][0]'] \n",
+ " \n",
+ " stack_5_block15_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_55[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block15_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block15_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_70 (Add) (None, 7, 7, 512) 0 ['add_69[0][0]', Y \n",
+ " 'stack_5_block15_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block16_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_70[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block16_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block16_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block16_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block16_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block16_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block16_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block16_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block16_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block16_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block16_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_56 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block16_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block16_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_56[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_112 (Activation) (None, 1, 1, 128) 0 ['stack_5_block16_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block16_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_112[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_113 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block16_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_56 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block16_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_113[0][0]'] \n",
+ " \n",
+ " stack_5_block16_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_56[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block16_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block16_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_71 (Add) (None, 7, 7, 512) 0 ['add_70[0][0]', Y \n",
+ " 'stack_5_block16_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block17_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_71[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block17_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block17_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block17_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block17_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block17_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block17_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block17_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block17_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block17_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block17_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_57 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block17_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block17_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_57[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_114 (Activation) (None, 1, 1, 128) 0 ['stack_5_block17_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block17_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_114[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_115 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block17_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_57 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block17_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_115[0][0]'] \n",
+ " \n",
+ " stack_5_block17_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_57[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block17_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block17_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_72 (Add) (None, 7, 7, 512) 0 ['add_71[0][0]', Y \n",
+ " 'stack_5_block17_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block18_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_72[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block18_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block18_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block18_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block18_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block18_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block18_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block18_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block18_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block18_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block18_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_58 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block18_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block18_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_58[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_116 (Activation) (None, 1, 1, 128) 0 ['stack_5_block18_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block18_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_116[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_117 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block18_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_58 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block18_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_117[0][0]'] \n",
+ " \n",
+ " stack_5_block18_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_58[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block18_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block18_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_73 (Add) (None, 7, 7, 512) 0 ['add_72[0][0]', Y \n",
+ " 'stack_5_block18_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block19_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_73[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block19_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block19_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block19_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block19_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block19_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block19_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block19_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block19_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block19_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block19_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_59 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block19_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block19_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_59[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_118 (Activation) (None, 1, 1, 128) 0 ['stack_5_block19_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block19_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_118[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_119 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block19_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_59 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block19_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_119[0][0]'] \n",
+ " \n",
+ " stack_5_block19_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_59[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block19_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block19_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_74 (Add) (None, 7, 7, 512) 0 ['add_73[0][0]', Y \n",
+ " 'stack_5_block19_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block20_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_74[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block20_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block20_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block20_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block20_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block20_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block20_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block20_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block20_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block20_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block20_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_60 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block20_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block20_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_60[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_120 (Activation) (None, 1, 1, 128) 0 ['stack_5_block20_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block20_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_120[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_121 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block20_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_60 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block20_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_121[0][0]'] \n",
+ " \n",
+ " stack_5_block20_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_60[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block20_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block20_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_75 (Add) (None, 7, 7, 512) 0 ['add_74[0][0]', Y \n",
+ " 'stack_5_block20_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block21_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_75[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block21_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block21_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block21_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block21_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block21_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block21_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block21_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block21_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block21_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block21_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_61 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block21_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block21_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_61[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_122 (Activation) (None, 1, 1, 128) 0 ['stack_5_block21_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block21_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_122[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_123 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block21_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_61 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block21_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_123[0][0]'] \n",
+ " \n",
+ " stack_5_block21_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_61[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block21_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block21_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_76 (Add) (None, 7, 7, 512) 0 ['add_75[0][0]', Y \n",
+ " 'stack_5_block21_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block22_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_76[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block22_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block22_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block22_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block22_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block22_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block22_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block22_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block22_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block22_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block22_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_62 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block22_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block22_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_62[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_124 (Activation) (None, 1, 1, 128) 0 ['stack_5_block22_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block22_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_124[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_125 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block22_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_62 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block22_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_125[0][0]'] \n",
+ " \n",
+ " stack_5_block22_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_62[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block22_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block22_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_77 (Add) (None, 7, 7, 512) 0 ['add_76[0][0]', Y \n",
+ " 'stack_5_block22_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block23_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_77[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block23_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block23_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block23_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block23_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block23_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block23_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block23_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block23_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block23_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block23_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_63 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block23_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block23_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_63[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_126 (Activation) (None, 1, 1, 128) 0 ['stack_5_block23_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block23_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_126[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_127 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block23_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_63 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block23_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_127[0][0]'] \n",
+ " \n",
+ " stack_5_block23_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_63[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block23_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block23_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_78 (Add) (None, 7, 7, 512) 0 ['add_77[0][0]', Y \n",
+ " 'stack_5_block23_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block24_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_78[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block24_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block24_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block24_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block24_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block24_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block24_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block24_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block24_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block24_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block24_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_64 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block24_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block24_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_64[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_128 (Activation) (None, 1, 1, 128) 0 ['stack_5_block24_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block24_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_128[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_129 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block24_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_64 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block24_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_129[0][0]'] \n",
+ " \n",
+ " stack_5_block24_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_64[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block24_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block24_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_79 (Add) (None, 7, 7, 512) 0 ['add_78[0][0]', Y \n",
+ " 'stack_5_block24_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block25_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_79[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block25_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block25_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block25_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block25_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block25_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block25_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block25_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block25_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block25_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block25_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_65 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block25_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block25_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_65[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_130 (Activation) (None, 1, 1, 128) 0 ['stack_5_block25_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block25_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_130[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_131 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block25_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_65 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block25_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_131[0][0]'] \n",
+ " \n",
+ " stack_5_block25_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_65[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block25_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block25_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_80 (Add) (None, 7, 7, 512) 0 ['add_79[0][0]', Y \n",
+ " 'stack_5_block25_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block26_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_80[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block26_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block26_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block26_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block26_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block26_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block26_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block26_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block26_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block26_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block26_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_66 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block26_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block26_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_66[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_132 (Activation) (None, 1, 1, 128) 0 ['stack_5_block26_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block26_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_132[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_133 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block26_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_66 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block26_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_133[0][0]'] \n",
+ " \n",
+ " stack_5_block26_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_66[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block26_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block26_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_81 (Add) (None, 7, 7, 512) 0 ['add_80[0][0]', Y \n",
+ " 'stack_5_block26_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block27_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_81[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block27_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block27_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block27_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block27_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block27_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block27_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block27_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block27_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block27_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block27_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_67 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block27_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block27_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_67[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_134 (Activation) (None, 1, 1, 128) 0 ['stack_5_block27_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block27_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_134[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_135 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block27_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_67 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block27_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_135[0][0]'] \n",
+ " \n",
+ " stack_5_block27_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_67[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block27_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block27_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_82 (Add) (None, 7, 7, 512) 0 ['add_81[0][0]', Y \n",
+ " 'stack_5_block27_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block28_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_82[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block28_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block28_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block28_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block28_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block28_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block28_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block28_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block28_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block28_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block28_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_68 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block28_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block28_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_68[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_136 (Activation) (None, 1, 1, 128) 0 ['stack_5_block28_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block28_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_136[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_137 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block28_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_68 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block28_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_137[0][0]'] \n",
+ " \n",
+ " stack_5_block28_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_68[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block28_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block28_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_83 (Add) (None, 7, 7, 512) 0 ['add_82[0][0]', Y \n",
+ " 'stack_5_block28_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block29_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_83[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block29_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block29_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block29_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block29_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block29_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block29_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block29_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block29_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block29_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block29_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_69 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block29_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block29_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_69[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_138 (Activation) (None, 1, 1, 128) 0 ['stack_5_block29_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block29_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_138[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_139 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block29_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_69 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block29_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_139[0][0]'] \n",
+ " \n",
+ " stack_5_block29_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_69[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block29_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block29_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_84 (Add) (None, 7, 7, 512) 0 ['add_83[0][0]', Y \n",
+ " 'stack_5_block29_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block30_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_84[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block30_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block30_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block30_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block30_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block30_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block30_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block30_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block30_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block30_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block30_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_70 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block30_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block30_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_70[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_140 (Activation) (None, 1, 1, 128) 0 ['stack_5_block30_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block30_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_140[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_141 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block30_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_70 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block30_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_141[0][0]'] \n",
+ " \n",
+ " stack_5_block30_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_70[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block30_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block30_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_85 (Add) (None, 7, 7, 512) 0 ['add_84[0][0]', Y \n",
+ " 'stack_5_block30_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_5_block31_sortcut_conv ( (None, 7, 7, 3072) 1572864 ['add_85[0][0]'] Y \n",
+ " Conv2D) \n",
+ " \n",
+ " stack_5_block31_sortcut_bn (Ba (None, 7, 7, 3072) 12288 ['stack_5_block31_sortcut_conv[ Y \n",
+ " tchNormalization) 0][0]'] \n",
+ " \n",
+ " stack_5_block31_sortcut_swish (None, 7, 7, 3072) 0 ['stack_5_block31_sortcut_bn[0] Y \n",
+ " (Activation) [0]'] \n",
+ " \n",
+ " stack_5_block31_MB_dw_ (Depthw (None, 7, 7, 3072) 27648 ['stack_5_block31_sortcut_swish Y \n",
+ " iseConv2D) [0][0]'] \n",
+ " \n",
+ " stack_5_block31_MB_dw_bn (Batc (None, 7, 7, 3072) 12288 ['stack_5_block31_MB_dw_[0][0]' Y \n",
+ " hNormalization) ] \n",
+ " \n",
+ " stack_5_block31_MB_dw_swish (A (None, 7, 7, 3072) 0 ['stack_5_block31_MB_dw_bn[0][0 Y \n",
+ " ctivation) ]'] \n",
+ " \n",
+ " tf.math.reduce_mean_71 (TFOpLa (None, 1, 1, 3072) 0 ['stack_5_block31_MB_dw_swish[0 Y \n",
+ " mbda) ][0]'] \n",
+ " \n",
+ " stack_5_block31_se_1_conv (Con (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_71[0][0]' Y \n",
+ " v2D) ] \n",
+ " \n",
+ " activation_142 (Activation) (None, 1, 1, 128) 0 ['stack_5_block31_se_1_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " stack_5_block31_se_2_conv (Con (None, 1, 1, 3072) 396288 ['activation_142[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " activation_143 (Activation) (None, 1, 1, 3072) 0 ['stack_5_block31_se_2_conv[0][ Y \n",
+ " 0]'] \n",
+ " \n",
+ " multiply_71 (Multiply) (None, 7, 7, 3072) 0 ['stack_5_block31_MB_dw_swish[0 Y \n",
+ " ][0]', \n",
+ " 'activation_143[0][0]'] \n",
+ " \n",
+ " stack_5_block31_MB_pw_conv (Co (None, 7, 7, 512) 1572864 ['multiply_71[0][0]'] Y \n",
+ " nv2D) \n",
+ " \n",
+ " stack_5_block31_MB_pw_bn (Batc (None, 7, 7, 512) 2048 ['stack_5_block31_MB_pw_conv[0] Y \n",
+ " hNormalization) [0]'] \n",
+ " \n",
+ " add_86 (Add) (None, 7, 7, 512) 0 ['add_85[0][0]', Y \n",
+ " 'stack_5_block31_MB_pw_bn[0][0 \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block0_sortcut_conv (C (None, 7, 7, 3072) 1572864 ['add_86[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block0_sortcut_bn (Bat (None, 7, 7, 3072) 12288 ['stack_6_block0_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block0_sortcut_swish ( (None, 7, 7, 3072) 0 ['stack_6_block0_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block0_MB_dw_ (Depthwi (None, 7, 7, 3072) 27648 ['stack_6_block0_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block0_MB_dw_bn (Batch (None, 7, 7, 3072) 12288 ['stack_6_block0_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block0_MB_dw_swish (Ac (None, 7, 7, 3072) 0 ['stack_6_block0_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_72 (TFOpLa (None, 1, 1, 3072) 0 ['stack_6_block0_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block0_se_1_conv (Conv (None, 1, 1, 128) 393344 ['tf.math.reduce_mean_72[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_144 (Activation) (None, 1, 1, 128) 0 ['stack_6_block0_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block0_se_2_conv (Conv (None, 1, 1, 3072) 396288 ['activation_144[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_145 (Activation) (None, 1, 1, 3072) 0 ['stack_6_block0_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_72 (Multiply) (None, 7, 7, 3072) 0 ['stack_6_block0_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_145[0][0]'] \n",
+ " \n",
+ " stack_6_block0_MB_pw_conv (Con (None, 7, 7, 640) 1966080 ['multiply_72[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block0_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block0_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " stack_6_block1_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['stack_6_block0_MB_pw_bn[0][0] Y \n",
+ " onv2D) '] \n",
+ " \n",
+ " stack_6_block1_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block1_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block1_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block1_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block1_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block1_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block1_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block1_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block1_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block1_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_73 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block1_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block1_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_73[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_146 (Activation) (None, 1, 1, 160) 0 ['stack_6_block1_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block1_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_146[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_147 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block1_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_73 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block1_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_147[0][0]'] \n",
+ " \n",
+ " stack_6_block1_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_73[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block1_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block1_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_87 (Add) (None, 7, 7, 640) 0 ['stack_6_block0_MB_pw_bn[0][0] Y \n",
+ " ', \n",
+ " 'stack_6_block1_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block2_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_87[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block2_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block2_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block2_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block2_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block2_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block2_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block2_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block2_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block2_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block2_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_74 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block2_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block2_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_74[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_148 (Activation) (None, 1, 1, 160) 0 ['stack_6_block2_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block2_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_148[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_149 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block2_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_74 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block2_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_149[0][0]'] \n",
+ " \n",
+ " stack_6_block2_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_74[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block2_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block2_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_88 (Add) (None, 7, 7, 640) 0 ['add_87[0][0]', Y \n",
+ " 'stack_6_block2_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block3_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_88[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block3_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block3_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block3_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block3_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block3_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block3_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block3_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block3_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block3_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block3_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_75 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block3_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block3_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_75[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_150 (Activation) (None, 1, 1, 160) 0 ['stack_6_block3_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block3_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_150[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_151 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block3_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_75 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block3_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_151[0][0]'] \n",
+ " \n",
+ " stack_6_block3_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_75[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block3_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block3_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_89 (Add) (None, 7, 7, 640) 0 ['add_88[0][0]', Y \n",
+ " 'stack_6_block3_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block4_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_89[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block4_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block4_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block4_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block4_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block4_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block4_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block4_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block4_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block4_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block4_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_76 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block4_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block4_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_76[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_152 (Activation) (None, 1, 1, 160) 0 ['stack_6_block4_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block4_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_152[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_153 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block4_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_76 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block4_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_153[0][0]'] \n",
+ " \n",
+ " stack_6_block4_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_76[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block4_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block4_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_90 (Add) (None, 7, 7, 640) 0 ['add_89[0][0]', Y \n",
+ " 'stack_6_block4_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block5_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_90[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block5_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block5_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block5_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block5_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block5_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block5_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block5_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block5_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block5_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block5_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_77 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block5_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block5_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_77[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_154 (Activation) (None, 1, 1, 160) 0 ['stack_6_block5_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block5_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_154[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_155 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block5_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_77 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block5_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_155[0][0]'] \n",
+ " \n",
+ " stack_6_block5_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_77[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block5_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block5_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_91 (Add) (None, 7, 7, 640) 0 ['add_90[0][0]', Y \n",
+ " 'stack_6_block5_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block6_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_91[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block6_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block6_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block6_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block6_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block6_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block6_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block6_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block6_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block6_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block6_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_78 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block6_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block6_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_78[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_156 (Activation) (None, 1, 1, 160) 0 ['stack_6_block6_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block6_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_156[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_157 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block6_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_78 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block6_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_157[0][0]'] \n",
+ " \n",
+ " stack_6_block6_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_78[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block6_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block6_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_92 (Add) (None, 7, 7, 640) 0 ['add_91[0][0]', Y \n",
+ " 'stack_6_block6_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " stack_6_block7_sortcut_conv (C (None, 7, 7, 3840) 2457600 ['add_92[0][0]'] Y \n",
+ " onv2D) \n",
+ " \n",
+ " stack_6_block7_sortcut_bn (Bat (None, 7, 7, 3840) 15360 ['stack_6_block7_sortcut_conv[0 Y \n",
+ " chNormalization) ][0]'] \n",
+ " \n",
+ " stack_6_block7_sortcut_swish ( (None, 7, 7, 3840) 0 ['stack_6_block7_sortcut_bn[0][ Y \n",
+ " Activation) 0]'] \n",
+ " \n",
+ " stack_6_block7_MB_dw_ (Depthwi (None, 7, 7, 3840) 34560 ['stack_6_block7_sortcut_swish[ Y \n",
+ " seConv2D) 0][0]'] \n",
+ " \n",
+ " stack_6_block7_MB_dw_bn (Batch (None, 7, 7, 3840) 15360 ['stack_6_block7_MB_dw_[0][0]'] Y \n",
+ " Normalization) \n",
+ " \n",
+ " stack_6_block7_MB_dw_swish (Ac (None, 7, 7, 3840) 0 ['stack_6_block7_MB_dw_bn[0][0] Y \n",
+ " tivation) '] \n",
+ " \n",
+ " tf.math.reduce_mean_79 (TFOpLa (None, 1, 1, 3840) 0 ['stack_6_block7_MB_dw_swish[0] Y \n",
+ " mbda) [0]'] \n",
+ " \n",
+ " stack_6_block7_se_1_conv (Conv (None, 1, 1, 160) 614560 ['tf.math.reduce_mean_79[0][0]' Y \n",
+ " 2D) ] \n",
+ " \n",
+ " activation_158 (Activation) (None, 1, 1, 160) 0 ['stack_6_block7_se_1_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " stack_6_block7_se_2_conv (Conv (None, 1, 1, 3840) 618240 ['activation_158[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " activation_159 (Activation) (None, 1, 1, 3840) 0 ['stack_6_block7_se_2_conv[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " multiply_79 (Multiply) (None, 7, 7, 3840) 0 ['stack_6_block7_MB_dw_swish[0] Y \n",
+ " [0]', \n",
+ " 'activation_159[0][0]'] \n",
+ " \n",
+ " stack_6_block7_MB_pw_conv (Con (None, 7, 7, 640) 2457600 ['multiply_79[0][0]'] Y \n",
+ " v2D) \n",
+ " \n",
+ " stack_6_block7_MB_pw_bn (Batch (None, 7, 7, 640) 2560 ['stack_6_block7_MB_pw_conv[0][ Y \n",
+ " Normalization) 0]'] \n",
+ " \n",
+ " add_93 (Add) (None, 7, 7, 640) 0 ['add_92[0][0]', Y \n",
+ " 'stack_6_block7_MB_pw_bn[0][0] \n",
+ " '] \n",
+ " \n",
+ " post_conv (Conv2D) (None, 7, 7, 1280) 819200 ['add_93[0][0]'] Y \n",
+ " \n",
+ " post_bn (BatchNormalization) (None, 7, 7, 1280) 5120 ['post_conv[0][0]'] Y \n",
+ " \n",
+ " post_swish (Activation) (None, 7, 7, 1280) 0 ['post_bn[0][0]'] Y \n",
+ " \n",
+ " avg_pool (GlobalAveragePooling (None, 1280) 0 ['post_swish[0][0]'] Y \n",
+ " 2D) \n",
+ " \n",
+ " dropout (Dropout) (None, 1280) 0 ['avg_pool[0][0]'] Y \n",
+ " \n",
+ " predictions (Dense) (None, 2) 2562 ['dropout[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 207,618,394\n",
+ "Trainable params: 206,841,370\n",
+ "Non-trainable params: 777,024\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from keras_efficientnet_v2 import EfficientNetV2XL\n",
"\n",
@@ -1082,9 +9872,1276 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 8,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating the model...\n"
+ ]
+ },
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Total layers in the base model: 467\n",
+ "Freezing 0 layers in the base model...\n",
+ "Percentage of the base model that is frozen: 0.00%\n",
+ "Total model layers: 475\n",
+ "Model: \"model_1\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_2 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " stem_conv (Conv2D) (None, 112, 112, 48 1296 ['input_2[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_bn (BatchNormalization) (None, 112, 112, 48 192 ['stem_conv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_activation (Activation) (None, 112, 112, 48 0 ['stem_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 48 432 ['stem_activation[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1a_bn (BatchNormalization (None, 112, 112, 48 192 ['block1a_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_activation (Activation (None, 112, 112, 48 0 ['block1a_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_se_squeeze (GlobalAver (None, 48) 0 ['block1a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1a_se_reshape (Reshape) (None, 1, 1, 48) 0 ['block1a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1a_se_reduce (Conv2D) (None, 1, 1, 12) 588 ['block1a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1a_se_expand (Conv2D) (None, 1, 1, 48) 624 ['block1a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1a_se_excite (Multiply) (None, 112, 112, 48 0 ['block1a_activation[0][0]', Y \n",
+ " ) 'block1a_se_expand[0][0]'] \n",
+ " \n",
+ " block1a_project_conv (Conv2D) (None, 112, 112, 24 1152 ['block1a_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1a_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 24 216 ['block1a_project_bn[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1b_bn (BatchNormalization (None, 112, 112, 24 96 ['block1b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_activation (Activation (None, 112, 112, 24 0 ['block1b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_se_squeeze (GlobalAver (None, 24) 0 ['block1b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1b_se_reshape (Reshape) (None, 1, 1, 24) 0 ['block1b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1b_se_reduce (Conv2D) (None, 1, 1, 6) 150 ['block1b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1b_se_expand (Conv2D) (None, 1, 1, 24) 168 ['block1b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1b_se_excite (Multiply) (None, 112, 112, 24 0 ['block1b_activation[0][0]', Y \n",
+ " ) 'block1b_se_expand[0][0]'] \n",
+ " \n",
+ " block1b_project_conv (Conv2D) (None, 112, 112, 24 576 ['block1b_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_project_bn (BatchNorma (None, 112, 112, 24 96 ['block1b_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_drop (FixedDropout) (None, 112, 112, 24 0 ['block1b_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_add (Add) (None, 112, 112, 24 0 ['block1b_drop[0][0]', Y \n",
+ " ) 'block1a_project_bn[0][0]'] \n",
+ " \n",
+ " block2a_expand_conv (Conv2D) (None, 112, 112, 14 3456 ['block1b_add[0][0]'] Y \n",
+ " 4) \n",
+ " \n",
+ " block2a_expand_bn (BatchNormal (None, 112, 112, 14 576 ['block2a_expand_conv[0][0]'] Y \n",
+ " ization) 4) \n",
+ " \n",
+ " block2a_expand_activation (Act (None, 112, 112, 14 0 ['block2a_expand_bn[0][0]'] Y \n",
+ " ivation) 4) \n",
+ " \n",
+ " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 144) 1296 ['block2a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2a_bn (BatchNormalization (None, 56, 56, 144) 576 ['block2a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_activation (Activation (None, 56, 56, 144) 0 ['block2a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_se_squeeze (GlobalAver (None, 144) 0 ['block2a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2a_se_reshape (Reshape) (None, 1, 1, 144) 0 ['block2a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2a_se_reduce (Conv2D) (None, 1, 1, 6) 870 ['block2a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2a_se_expand (Conv2D) (None, 1, 1, 144) 1008 ['block2a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2a_se_excite (Multiply) (None, 56, 56, 144) 0 ['block2a_activation[0][0]', Y \n",
+ " 'block2a_se_expand[0][0]'] \n",
+ " \n",
+ " block2a_project_conv (Conv2D) (None, 56, 56, 32) 4608 ['block2a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2a_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2b_expand_activation (Act (None, 56, 56, 192) 0 ['block2b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2b_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_activation (Activation (None, 56, 56, 192) 0 ['block2b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_se_squeeze (GlobalAver (None, 192) 0 ['block2b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2b_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2b_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2b_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2b_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2b_activation[0][0]', Y \n",
+ " 'block2b_se_expand[0][0]'] \n",
+ " \n",
+ " block2b_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2b_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_add (Add) (None, 56, 56, 32) 0 ['block2b_drop[0][0]', Y \n",
+ " 'block2a_project_bn[0][0]'] \n",
+ " \n",
+ " block2c_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2b_add[0][0]'] Y \n",
+ " \n",
+ " block2c_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2c_expand_activation (Act (None, 56, 56, 192) 0 ['block2c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2c_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_activation (Activation (None, 56, 56, 192) 0 ['block2c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_se_squeeze (GlobalAver (None, 192) 0 ['block2c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2c_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2c_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2c_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2c_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2c_activation[0][0]', Y \n",
+ " 'block2c_se_expand[0][0]'] \n",
+ " \n",
+ " block2c_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2c_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2c_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2c_add (Add) (None, 56, 56, 32) 0 ['block2c_drop[0][0]', Y \n",
+ " 'block2b_add[0][0]'] \n",
+ " \n",
+ " block2d_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2c_add[0][0]'] Y \n",
+ " \n",
+ " block2d_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block2d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2d_expand_activation (Act (None, 56, 56, 192) 0 ['block2d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2d_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_activation (Activation (None, 56, 56, 192) 0 ['block2d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_se_squeeze (GlobalAver (None, 192) 0 ['block2d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2d_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2d_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2d_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2d_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2d_activation[0][0]', Y \n",
+ " 'block2d_se_expand[0][0]'] \n",
+ " \n",
+ " block2d_project_conv (Conv2D) (None, 56, 56, 32) 6144 ['block2d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2d_project_bn (BatchNorma (None, 56, 56, 32) 128 ['block2d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2d_drop (FixedDropout) (None, 56, 56, 32) 0 ['block2d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2d_add (Add) (None, 56, 56, 32) 0 ['block2d_drop[0][0]', Y \n",
+ " 'block2c_add[0][0]'] \n",
+ " \n",
+ " block3a_expand_conv (Conv2D) (None, 56, 56, 192) 6144 ['block2d_add[0][0]'] Y \n",
+ " \n",
+ " block3a_expand_bn (BatchNormal (None, 56, 56, 192) 768 ['block3a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3a_expand_activation (Act (None, 56, 56, 192) 0 ['block3a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 192) 4800 ['block3a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3a_bn (BatchNormalization (None, 28, 28, 192) 768 ['block3a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_activation (Activation (None, 28, 28, 192) 0 ['block3a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_se_squeeze (GlobalAver (None, 192) 0 ['block3a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block3a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block3a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block3a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3a_se_excite (Multiply) (None, 28, 28, 192) 0 ['block3a_activation[0][0]', Y \n",
+ " 'block3a_se_expand[0][0]'] \n",
+ " \n",
+ " block3a_project_conv (Conv2D) (None, 28, 28, 56) 10752 ['block3a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3a_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3b_expand_activation (Act (None, 28, 28, 336) 0 ['block3b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3b_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_activation (Activation (None, 28, 28, 336) 0 ['block3b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_se_squeeze (GlobalAver (None, 336) 0 ['block3b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3b_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3b_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3b_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3b_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3b_activation[0][0]', Y \n",
+ " 'block3b_se_expand[0][0]'] \n",
+ " \n",
+ " block3b_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3b_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_add (Add) (None, 28, 28, 56) 0 ['block3b_drop[0][0]', Y \n",
+ " 'block3a_project_bn[0][0]'] \n",
+ " \n",
+ " block3c_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3b_add[0][0]'] Y \n",
+ " \n",
+ " block3c_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3c_expand_activation (Act (None, 28, 28, 336) 0 ['block3c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3c_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_activation (Activation (None, 28, 28, 336) 0 ['block3c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_se_squeeze (GlobalAver (None, 336) 0 ['block3c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3c_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3c_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3c_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3c_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3c_activation[0][0]', Y \n",
+ " 'block3c_se_expand[0][0]'] \n",
+ " \n",
+ " block3c_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3c_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3c_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3c_add (Add) (None, 28, 28, 56) 0 ['block3c_drop[0][0]', Y \n",
+ " 'block3b_add[0][0]'] \n",
+ " \n",
+ " block3d_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3c_add[0][0]'] Y \n",
+ " \n",
+ " block3d_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block3d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3d_expand_activation (Act (None, 28, 28, 336) 0 ['block3d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 336) 8400 ['block3d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3d_bn (BatchNormalization (None, 28, 28, 336) 1344 ['block3d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_activation (Activation (None, 28, 28, 336) 0 ['block3d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_se_squeeze (GlobalAver (None, 336) 0 ['block3d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3d_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block3d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3d_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block3d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3d_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block3d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3d_se_excite (Multiply) (None, 28, 28, 336) 0 ['block3d_activation[0][0]', Y \n",
+ " 'block3d_se_expand[0][0]'] \n",
+ " \n",
+ " block3d_project_conv (Conv2D) (None, 28, 28, 56) 18816 ['block3d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3d_project_bn (BatchNorma (None, 28, 28, 56) 224 ['block3d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3d_drop (FixedDropout) (None, 28, 28, 56) 0 ['block3d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3d_add (Add) (None, 28, 28, 56) 0 ['block3d_drop[0][0]', Y \n",
+ " 'block3c_add[0][0]'] \n",
+ " \n",
+ " block4a_expand_conv (Conv2D) (None, 28, 28, 336) 18816 ['block3d_add[0][0]'] Y \n",
+ " \n",
+ " block4a_expand_bn (BatchNormal (None, 28, 28, 336) 1344 ['block4a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4a_expand_activation (Act (None, 28, 28, 336) 0 ['block4a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 336) 3024 ['block4a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4a_bn (BatchNormalization (None, 14, 14, 336) 1344 ['block4a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_activation (Activation (None, 14, 14, 336) 0 ['block4a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_se_squeeze (GlobalAver (None, 336) 0 ['block4a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4a_se_reshape (Reshape) (None, 1, 1, 336) 0 ['block4a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4a_se_reduce (Conv2D) (None, 1, 1, 14) 4718 ['block4a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4a_se_expand (Conv2D) (None, 1, 1, 336) 5040 ['block4a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4a_se_excite (Multiply) (None, 14, 14, 336) 0 ['block4a_activation[0][0]', Y \n",
+ " 'block4a_se_expand[0][0]'] \n",
+ " \n",
+ " block4a_project_conv (Conv2D) (None, 14, 14, 112) 37632 ['block4a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4a_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4b_expand_activation (Act (None, 14, 14, 672) 0 ['block4b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4b_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_activation (Activation (None, 14, 14, 672) 0 ['block4b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_se_squeeze (GlobalAver (None, 672) 0 ['block4b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4b_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4b_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4b_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4b_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4b_activation[0][0]', Y \n",
+ " 'block4b_se_expand[0][0]'] \n",
+ " \n",
+ " block4b_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4b_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_add (Add) (None, 14, 14, 112) 0 ['block4b_drop[0][0]', Y \n",
+ " 'block4a_project_bn[0][0]'] \n",
+ " \n",
+ " block4c_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4b_add[0][0]'] Y \n",
+ " \n",
+ " block4c_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4c_expand_activation (Act (None, 14, 14, 672) 0 ['block4c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4c_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_activation (Activation (None, 14, 14, 672) 0 ['block4c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_se_squeeze (GlobalAver (None, 672) 0 ['block4c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4c_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4c_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4c_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4c_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4c_activation[0][0]', Y \n",
+ " 'block4c_se_expand[0][0]'] \n",
+ " \n",
+ " block4c_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4c_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4c_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4c_add (Add) (None, 14, 14, 112) 0 ['block4c_drop[0][0]', Y \n",
+ " 'block4b_add[0][0]'] \n",
+ " \n",
+ " block4d_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4c_add[0][0]'] Y \n",
+ " \n",
+ " block4d_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4d_expand_activation (Act (None, 14, 14, 672) 0 ['block4d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4d_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_activation (Activation (None, 14, 14, 672) 0 ['block4d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_se_squeeze (GlobalAver (None, 672) 0 ['block4d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4d_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4d_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4d_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4d_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4d_activation[0][0]', Y \n",
+ " 'block4d_se_expand[0][0]'] \n",
+ " \n",
+ " block4d_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4d_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4d_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4d_add (Add) (None, 14, 14, 112) 0 ['block4d_drop[0][0]', Y \n",
+ " 'block4c_add[0][0]'] \n",
+ " \n",
+ " block4e_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4d_add[0][0]'] Y \n",
+ " \n",
+ " block4e_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4e_expand_activation (Act (None, 14, 14, 672) 0 ['block4e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4e_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_activation (Activation (None, 14, 14, 672) 0 ['block4e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_se_squeeze (GlobalAver (None, 672) 0 ['block4e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4e_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4e_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4e_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4e_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4e_activation[0][0]', Y \n",
+ " 'block4e_se_expand[0][0]'] \n",
+ " \n",
+ " block4e_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4e_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4e_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4e_add (Add) (None, 14, 14, 112) 0 ['block4e_drop[0][0]', Y \n",
+ " 'block4d_add[0][0]'] \n",
+ " \n",
+ " block4f_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4e_add[0][0]'] Y \n",
+ " \n",
+ " block4f_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block4f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4f_expand_activation (Act (None, 14, 14, 672) 0 ['block4f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 672) 6048 ['block4f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4f_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block4f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_activation (Activation (None, 14, 14, 672) 0 ['block4f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_se_squeeze (GlobalAver (None, 672) 0 ['block4f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4f_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block4f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4f_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block4f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4f_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block4f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4f_se_excite (Multiply) (None, 14, 14, 672) 0 ['block4f_activation[0][0]', Y \n",
+ " 'block4f_se_expand[0][0]'] \n",
+ " \n",
+ " block4f_project_conv (Conv2D) (None, 14, 14, 112) 75264 ['block4f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4f_project_bn (BatchNorma (None, 14, 14, 112) 448 ['block4f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4f_drop (FixedDropout) (None, 14, 14, 112) 0 ['block4f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4f_add (Add) (None, 14, 14, 112) 0 ['block4f_drop[0][0]', Y \n",
+ " 'block4e_add[0][0]'] \n",
+ " \n",
+ " block5a_expand_conv (Conv2D) (None, 14, 14, 672) 75264 ['block4f_add[0][0]'] Y \n",
+ " \n",
+ " block5a_expand_bn (BatchNormal (None, 14, 14, 672) 2688 ['block5a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5a_expand_activation (Act (None, 14, 14, 672) 0 ['block5a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 672) 16800 ['block5a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5a_bn (BatchNormalization (None, 14, 14, 672) 2688 ['block5a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_activation (Activation (None, 14, 14, 672) 0 ['block5a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_se_squeeze (GlobalAver (None, 672) 0 ['block5a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5a_se_reshape (Reshape) (None, 1, 1, 672) 0 ['block5a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5a_se_reduce (Conv2D) (None, 1, 1, 28) 18844 ['block5a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5a_se_expand (Conv2D) (None, 1, 1, 672) 19488 ['block5a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5a_se_excite (Multiply) (None, 14, 14, 672) 0 ['block5a_activation[0][0]', Y \n",
+ " 'block5a_se_expand[0][0]'] \n",
+ " \n",
+ " block5a_project_conv (Conv2D) (None, 14, 14, 160) 107520 ['block5a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5b_expand_activation (Act (None, 14, 14, 960) 0 ['block5b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5b_activation (Activation (None, 14, 14, 960) 0 ['block5b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5b_se_squeeze (GlobalAver (None, 960) 0 ['block5b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5b_activation[0][0]', Y \n",
+ " 'block5b_se_expand[0][0]'] \n",
+ " \n",
+ " block5b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5b_add (Add) (None, 14, 14, 160) 0 ['block5b_drop[0][0]', Y \n",
+ " 'block5a_project_bn[0][0]'] \n",
+ " \n",
+ " block5c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5b_add[0][0]'] Y \n",
+ " \n",
+ " block5c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5c_expand_activation (Act (None, 14, 14, 960) 0 ['block5c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5c_activation (Activation (None, 14, 14, 960) 0 ['block5c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5c_se_squeeze (GlobalAver (None, 960) 0 ['block5c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5c_activation[0][0]', Y \n",
+ " 'block5c_se_expand[0][0]'] \n",
+ " \n",
+ " block5c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5c_add (Add) (None, 14, 14, 160) 0 ['block5c_drop[0][0]', Y \n",
+ " 'block5b_add[0][0]'] \n",
+ " \n",
+ " block5d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5c_add[0][0]'] Y \n",
+ " \n",
+ " block5d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5d_expand_activation (Act (None, 14, 14, 960) 0 ['block5d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5d_activation (Activation (None, 14, 14, 960) 0 ['block5d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5d_se_squeeze (GlobalAver (None, 960) 0 ['block5d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5d_activation[0][0]', Y \n",
+ " 'block5d_se_expand[0][0]'] \n",
+ " \n",
+ " block5d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5d_add (Add) (None, 14, 14, 160) 0 ['block5d_drop[0][0]', Y \n",
+ " 'block5c_add[0][0]'] \n",
+ " \n",
+ " block5e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5d_add[0][0]'] Y \n",
+ " \n",
+ " block5e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5e_expand_activation (Act (None, 14, 14, 960) 0 ['block5e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5e_activation (Activation (None, 14, 14, 960) 0 ['block5e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5e_se_squeeze (GlobalAver (None, 960) 0 ['block5e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5e_activation[0][0]', Y \n",
+ " 'block5e_se_expand[0][0]'] \n",
+ " \n",
+ " block5e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5e_add (Add) (None, 14, 14, 160) 0 ['block5e_drop[0][0]', Y \n",
+ " 'block5d_add[0][0]'] \n",
+ " \n",
+ " block5f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5e_add[0][0]'] Y \n",
+ " \n",
+ " block5f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5f_expand_activation (Act (None, 14, 14, 960) 0 ['block5f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5f_activation (Activation (None, 14, 14, 960) 0 ['block5f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5f_se_squeeze (GlobalAver (None, 960) 0 ['block5f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5f_activation[0][0]', Y \n",
+ " 'block5f_se_expand[0][0]'] \n",
+ " \n",
+ " block5f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block5f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block5f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block5f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5f_add (Add) (None, 14, 14, 160) 0 ['block5f_drop[0][0]', Y \n",
+ " 'block5e_add[0][0]'] \n",
+ " \n",
+ " block6a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block5f_add[0][0]'] Y \n",
+ " \n",
+ " block6a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block6a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6a_expand_activation (Act (None, 14, 14, 960) 0 ['block6a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 960) 24000 ['block6a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6a_bn (BatchNormalization (None, 7, 7, 960) 3840 ['block6a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_activation (Activation (None, 7, 7, 960) 0 ['block6a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_se_squeeze (GlobalAver (None, 960) 0 ['block6a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block6a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block6a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block6a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6a_se_excite (Multiply) (None, 7, 7, 960) 0 ['block6a_activation[0][0]', Y \n",
+ " 'block6a_se_expand[0][0]'] \n",
+ " \n",
+ " block6a_project_conv (Conv2D) (None, 7, 7, 272) 261120 ['block6a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6a_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6b_expand_activation (Act (None, 7, 7, 1632) 0 ['block6b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6b_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_activation (Activation (None, 7, 7, 1632) 0 ['block6b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_se_squeeze (GlobalAver (None, 1632) 0 ['block6b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6b_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6b_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6b_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6b_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6b_activation[0][0]', Y \n",
+ " 'block6b_se_expand[0][0]'] \n",
+ " \n",
+ " block6b_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6b_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_add (Add) (None, 7, 7, 272) 0 ['block6b_drop[0][0]', Y \n",
+ " 'block6a_project_bn[0][0]'] \n",
+ " \n",
+ " block6c_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6b_add[0][0]'] Y \n",
+ " \n",
+ " block6c_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6c_expand_activation (Act (None, 7, 7, 1632) 0 ['block6c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6c_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_activation (Activation (None, 7, 7, 1632) 0 ['block6c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_se_squeeze (GlobalAver (None, 1632) 0 ['block6c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6c_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6c_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6c_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6c_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6c_activation[0][0]', Y \n",
+ " 'block6c_se_expand[0][0]'] \n",
+ " \n",
+ " block6c_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6c_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6c_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6c_add (Add) (None, 7, 7, 272) 0 ['block6c_drop[0][0]', Y \n",
+ " 'block6b_add[0][0]'] \n",
+ " \n",
+ " block6d_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6c_add[0][0]'] Y \n",
+ " \n",
+ " block6d_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6d_expand_activation (Act (None, 7, 7, 1632) 0 ['block6d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6d_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_activation (Activation (None, 7, 7, 1632) 0 ['block6d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_se_squeeze (GlobalAver (None, 1632) 0 ['block6d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6d_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6d_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6d_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6d_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6d_activation[0][0]', Y \n",
+ " 'block6d_se_expand[0][0]'] \n",
+ " \n",
+ " block6d_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6d_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6d_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6d_add (Add) (None, 7, 7, 272) 0 ['block6d_drop[0][0]', Y \n",
+ " 'block6c_add[0][0]'] \n",
+ " \n",
+ " block6e_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6d_add[0][0]'] Y \n",
+ " \n",
+ " block6e_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6e_expand_activation (Act (None, 7, 7, 1632) 0 ['block6e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6e_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_activation (Activation (None, 7, 7, 1632) 0 ['block6e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_se_squeeze (GlobalAver (None, 1632) 0 ['block6e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6e_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6e_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6e_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6e_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6e_activation[0][0]', Y \n",
+ " 'block6e_se_expand[0][0]'] \n",
+ " \n",
+ " block6e_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6e_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6e_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6e_add (Add) (None, 7, 7, 272) 0 ['block6e_drop[0][0]', Y \n",
+ " 'block6d_add[0][0]'] \n",
+ " \n",
+ " block6f_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6e_add[0][0]'] Y \n",
+ " \n",
+ " block6f_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6f_expand_activation (Act (None, 7, 7, 1632) 0 ['block6f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6f_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_activation (Activation (None, 7, 7, 1632) 0 ['block6f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_se_squeeze (GlobalAver (None, 1632) 0 ['block6f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6f_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6f_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6f_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6f_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6f_activation[0][0]', Y \n",
+ " 'block6f_se_expand[0][0]'] \n",
+ " \n",
+ " block6f_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6f_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6f_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6f_add (Add) (None, 7, 7, 272) 0 ['block6f_drop[0][0]', Y \n",
+ " 'block6e_add[0][0]'] \n",
+ " \n",
+ " block6g_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6f_add[0][0]'] Y \n",
+ " \n",
+ " block6g_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6g_expand_activation (Act (None, 7, 7, 1632) 0 ['block6g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6g_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_activation (Activation (None, 7, 7, 1632) 0 ['block6g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_se_squeeze (GlobalAver (None, 1632) 0 ['block6g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6g_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6g_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6g_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6g_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6g_activation[0][0]', Y \n",
+ " 'block6g_se_expand[0][0]'] \n",
+ " \n",
+ " block6g_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6g_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6g_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6g_add (Add) (None, 7, 7, 272) 0 ['block6g_drop[0][0]', Y \n",
+ " 'block6f_add[0][0]'] \n",
+ " \n",
+ " block6h_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6g_add[0][0]'] Y \n",
+ " \n",
+ " block6h_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block6h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6h_expand_activation (Act (None, 7, 7, 1632) 0 ['block6h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 40800 ['block6h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6h_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block6h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_activation (Activation (None, 7, 7, 1632) 0 ['block6h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_se_squeeze (GlobalAver (None, 1632) 0 ['block6h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6h_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block6h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6h_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block6h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6h_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block6h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6h_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block6h_activation[0][0]', Y \n",
+ " 'block6h_se_expand[0][0]'] \n",
+ " \n",
+ " block6h_project_conv (Conv2D) (None, 7, 7, 272) 443904 ['block6h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6h_project_bn (BatchNorma (None, 7, 7, 272) 1088 ['block6h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6h_drop (FixedDropout) (None, 7, 7, 272) 0 ['block6h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6h_add (Add) (None, 7, 7, 272) 0 ['block6h_drop[0][0]', Y \n",
+ " 'block6g_add[0][0]'] \n",
+ " \n",
+ " block7a_expand_conv (Conv2D) (None, 7, 7, 1632) 443904 ['block6h_add[0][0]'] Y \n",
+ " \n",
+ " block7a_expand_bn (BatchNormal (None, 7, 7, 1632) 6528 ['block7a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7a_expand_activation (Act (None, 7, 7, 1632) 0 ['block7a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 1632) 14688 ['block7a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7a_bn (BatchNormalization (None, 7, 7, 1632) 6528 ['block7a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_activation (Activation (None, 7, 7, 1632) 0 ['block7a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_se_squeeze (GlobalAver (None, 1632) 0 ['block7a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7a_se_reshape (Reshape) (None, 1, 1, 1632) 0 ['block7a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7a_se_reduce (Conv2D) (None, 1, 1, 68) 111044 ['block7a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7a_se_expand (Conv2D) (None, 1, 1, 1632) 112608 ['block7a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7a_se_excite (Multiply) (None, 7, 7, 1632) 0 ['block7a_activation[0][0]', Y \n",
+ " 'block7a_se_expand[0][0]'] \n",
+ " \n",
+ " block7a_project_conv (Conv2D) (None, 7, 7, 448) 731136 ['block7a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7a_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_expand_conv (Conv2D) (None, 7, 7, 2688) 1204224 ['block7a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_expand_bn (BatchNormal (None, 7, 7, 2688) 10752 ['block7b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7b_expand_activation (Act (None, 7, 7, 2688) 0 ['block7b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 2688) 24192 ['block7b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7b_bn (BatchNormalization (None, 7, 7, 2688) 10752 ['block7b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_activation (Activation (None, 7, 7, 2688) 0 ['block7b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_se_squeeze (GlobalAver (None, 2688) 0 ['block7b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7b_se_reshape (Reshape) (None, 1, 1, 2688) 0 ['block7b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7b_se_reduce (Conv2D) (None, 1, 1, 112) 301168 ['block7b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7b_se_expand (Conv2D) (None, 1, 1, 2688) 303744 ['block7b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7b_se_excite (Multiply) (None, 7, 7, 2688) 0 ['block7b_activation[0][0]', Y \n",
+ " 'block7b_se_expand[0][0]'] \n",
+ " \n",
+ " block7b_project_conv (Conv2D) (None, 7, 7, 448) 1204224 ['block7b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7b_project_bn (BatchNorma (None, 7, 7, 448) 1792 ['block7b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_drop (FixedDropout) (None, 7, 7, 448) 0 ['block7b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_add (Add) (None, 7, 7, 448) 0 ['block7b_drop[0][0]', Y \n",
+ " 'block7a_project_bn[0][0]'] \n",
+ " \n",
+ " top_conv (Conv2D) (None, 7, 7, 1792) 802816 ['block7b_add[0][0]'] Y \n",
+ " \n",
+ " top_bn (BatchNormalization) (None, 7, 7, 1792) 7168 ['top_conv[0][0]'] Y \n",
+ " \n",
+ " top_activation (Activation) (None, 7, 7, 1792) 0 ['top_bn[0][0]'] Y \n",
+ " \n",
+ " global_average_pooling2d (Glob (None, 1792) 0 ['top_activation[0][0]'] Y \n",
+ " alAveragePooling2D) \n",
+ " \n",
+ " dense (Dense) (None, 512) 918016 ['global_average_pooling2d[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " dropout (Dropout) (None, 512) 0 ['dense[0][0]'] Y \n",
+ " \n",
+ " batch_normalization (BatchNorm (None, 512) 2048 ['dropout[0][0]'] Y \n",
+ " alization) \n",
+ " \n",
+ " dense_1 (Dense) (None, 512) 262656 ['batch_normalization[0][0]'] Y \n",
+ " \n",
+ " batch_normalization_1 (BatchNo (None, 512) 2048 ['dense_1[0][0]'] Y \n",
+ " rmalization) \n",
+ " \n",
+ " dense_2 (Dense) (None, 128) 65664 ['batch_normalization_1[0][0]'] Y \n",
+ " \n",
+ " dense_3 (Dense) (None, 2) 258 ['dense_2[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 18,924,506\n",
+ "Trainable params: 18,797,258\n",
+ "Non-trainable params: 127,248\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from efficientnet.keras import EfficientNetB4 as KENB4\n",
"# FUNC\n",
@@ -1229,14 +11286,2169 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 17,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T02:31:32.994176700Z",
"start_time": "2023-12-28T02:31:27.381088600Z"
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating the model...\n",
+ "Total layers in the base model: 806\n",
+ "Freezing 0 layers in the base model...\n",
+ "Percentage of the base model that is frozen: 0.00%\n",
+ "Total model layers: 814\n",
+ "Model: \"model_1\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_2 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " stem_conv (Conv2D) (None, 112, 112, 64 1728 ['input_2[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_bn (BatchNormalization) (None, 112, 112, 64 256 ['stem_conv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_activation (Activation) (None, 112, 112, 64 0 ['stem_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 64 576 ['stem_activation[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1a_bn (BatchNormalization (None, 112, 112, 64 256 ['block1a_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_activation (Activation (None, 112, 112, 64 0 ['block1a_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_se_squeeze (GlobalAver (None, 64) 0 ['block1a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1a_se_reshape (Reshape) (None, 1, 1, 64) 0 ['block1a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1a_se_reduce (Conv2D) (None, 1, 1, 16) 1040 ['block1a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1a_se_expand (Conv2D) (None, 1, 1, 64) 1088 ['block1a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1a_se_excite (Multiply) (None, 112, 112, 64 0 ['block1a_activation[0][0]', Y \n",
+ " ) 'block1a_se_expand[0][0]'] \n",
+ " \n",
+ " block1a_project_conv (Conv2D) (None, 112, 112, 32 2048 ['block1a_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1a_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1a_project_bn[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1b_bn (BatchNormalization (None, 112, 112, 32 128 ['block1b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_activation (Activation (None, 112, 112, 32 0 ['block1b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_se_squeeze (GlobalAver (None, 32) 0 ['block1b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1b_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1b_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1b_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1b_se_excite (Multiply) (None, 112, 112, 32 0 ['block1b_activation[0][0]', Y \n",
+ " ) 'block1b_se_expand[0][0]'] \n",
+ " \n",
+ " block1b_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1b_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1b_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_drop (FixedDropout) (None, 112, 112, 32 0 ['block1b_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_add (Add) (None, 112, 112, 32 0 ['block1b_drop[0][0]', Y \n",
+ " ) 'block1a_project_bn[0][0]'] \n",
+ " \n",
+ " block1c_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1b_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1c_bn (BatchNormalization (None, 112, 112, 32 128 ['block1c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_activation (Activation (None, 112, 112, 32 0 ['block1c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_se_squeeze (GlobalAver (None, 32) 0 ['block1c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1c_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1c_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1c_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1c_se_excite (Multiply) (None, 112, 112, 32 0 ['block1c_activation[0][0]', Y \n",
+ " ) 'block1c_se_expand[0][0]'] \n",
+ " \n",
+ " block1c_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1c_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1c_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1c_drop (FixedDropout) (None, 112, 112, 32 0 ['block1c_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_add (Add) (None, 112, 112, 32 0 ['block1c_drop[0][0]', Y \n",
+ " ) 'block1b_add[0][0]'] \n",
+ " \n",
+ " block1d_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1c_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1d_bn (BatchNormalization (None, 112, 112, 32 128 ['block1d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_activation (Activation (None, 112, 112, 32 0 ['block1d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_se_squeeze (GlobalAver (None, 32) 0 ['block1d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1d_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1d_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1d_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1d_se_excite (Multiply) (None, 112, 112, 32 0 ['block1d_activation[0][0]', Y \n",
+ " ) 'block1d_se_expand[0][0]'] \n",
+ " \n",
+ " block1d_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1d_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1d_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1d_drop (FixedDropout) (None, 112, 112, 32 0 ['block1d_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_add (Add) (None, 112, 112, 32 0 ['block1d_drop[0][0]', Y \n",
+ " ) 'block1c_add[0][0]'] \n",
+ " \n",
+ " block2a_expand_conv (Conv2D) (None, 112, 112, 19 6144 ['block1d_add[0][0]'] Y \n",
+ " 2) \n",
+ " \n",
+ " block2a_expand_bn (BatchNormal (None, 112, 112, 19 768 ['block2a_expand_conv[0][0]'] Y \n",
+ " ization) 2) \n",
+ " \n",
+ " block2a_expand_activation (Act (None, 112, 112, 19 0 ['block2a_expand_bn[0][0]'] Y \n",
+ " ivation) 2) \n",
+ " \n",
+ " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2a_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_activation (Activation (None, 56, 56, 192) 0 ['block2a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_se_squeeze (GlobalAver (None, 192) 0 ['block2a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2a_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2a_activation[0][0]', Y \n",
+ " 'block2a_se_expand[0][0]'] \n",
+ " \n",
+ " block2a_project_conv (Conv2D) (None, 56, 56, 48) 9216 ['block2a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2a_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2b_expand_activation (Act (None, 56, 56, 288) 0 ['block2b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2b_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_activation (Activation (None, 56, 56, 288) 0 ['block2b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_se_squeeze (GlobalAver (None, 288) 0 ['block2b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2b_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2b_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2b_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2b_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2b_activation[0][0]', Y \n",
+ " 'block2b_se_expand[0][0]'] \n",
+ " \n",
+ " block2b_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2b_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_add (Add) (None, 56, 56, 48) 0 ['block2b_drop[0][0]', Y \n",
+ " 'block2a_project_bn[0][0]'] \n",
+ " \n",
+ " block2c_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2b_add[0][0]'] Y \n",
+ " \n",
+ " block2c_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2c_expand_activation (Act (None, 56, 56, 288) 0 ['block2c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2c_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_activation (Activation (None, 56, 56, 288) 0 ['block2c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_se_squeeze (GlobalAver (None, 288) 0 ['block2c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2c_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2c_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2c_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2c_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2c_activation[0][0]', Y \n",
+ " 'block2c_se_expand[0][0]'] \n",
+ " \n",
+ " block2c_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2c_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2c_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2c_add (Add) (None, 56, 56, 48) 0 ['block2c_drop[0][0]', Y \n",
+ " 'block2b_add[0][0]'] \n",
+ " \n",
+ " block2d_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2c_add[0][0]'] Y \n",
+ " \n",
+ " block2d_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2d_expand_activation (Act (None, 56, 56, 288) 0 ['block2d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2d_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_activation (Activation (None, 56, 56, 288) 0 ['block2d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_se_squeeze (GlobalAver (None, 288) 0 ['block2d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2d_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2d_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2d_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2d_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2d_activation[0][0]', Y \n",
+ " 'block2d_se_expand[0][0]'] \n",
+ " \n",
+ " block2d_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2d_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2d_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2d_add (Add) (None, 56, 56, 48) 0 ['block2d_drop[0][0]', Y \n",
+ " 'block2c_add[0][0]'] \n",
+ " \n",
+ " block2e_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2d_add[0][0]'] Y \n",
+ " \n",
+ " block2e_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2e_expand_activation (Act (None, 56, 56, 288) 0 ['block2e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2e_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2e_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_activation (Activation (None, 56, 56, 288) 0 ['block2e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_se_squeeze (GlobalAver (None, 288) 0 ['block2e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2e_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2e_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2e_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2e_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2e_activation[0][0]', Y \n",
+ " 'block2e_se_expand[0][0]'] \n",
+ " \n",
+ " block2e_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2e_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2e_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2e_add (Add) (None, 56, 56, 48) 0 ['block2e_drop[0][0]', Y \n",
+ " 'block2d_add[0][0]'] \n",
+ " \n",
+ " block2f_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2e_add[0][0]'] Y \n",
+ " \n",
+ " block2f_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2f_expand_activation (Act (None, 56, 56, 288) 0 ['block2f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2f_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2f_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_activation (Activation (None, 56, 56, 288) 0 ['block2f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_se_squeeze (GlobalAver (None, 288) 0 ['block2f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2f_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2f_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2f_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2f_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2f_activation[0][0]', Y \n",
+ " 'block2f_se_expand[0][0]'] \n",
+ " \n",
+ " block2f_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2f_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2f_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2f_add (Add) (None, 56, 56, 48) 0 ['block2f_drop[0][0]', Y \n",
+ " 'block2e_add[0][0]'] \n",
+ " \n",
+ " block2g_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2f_add[0][0]'] Y \n",
+ " \n",
+ " block2g_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2g_expand_activation (Act (None, 56, 56, 288) 0 ['block2g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2g_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2g_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_activation (Activation (None, 56, 56, 288) 0 ['block2g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_se_squeeze (GlobalAver (None, 288) 0 ['block2g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2g_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2g_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2g_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2g_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2g_activation[0][0]', Y \n",
+ " 'block2g_se_expand[0][0]'] \n",
+ " \n",
+ " block2g_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2g_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2g_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2g_add (Add) (None, 56, 56, 48) 0 ['block2g_drop[0][0]', Y \n",
+ " 'block2f_add[0][0]'] \n",
+ " \n",
+ " block3a_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2g_add[0][0]'] Y \n",
+ " \n",
+ " block3a_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block3a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3a_expand_activation (Act (None, 56, 56, 288) 0 ['block3a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 288) 7200 ['block3a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3a_bn (BatchNormalization (None, 28, 28, 288) 1152 ['block3a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_activation (Activation (None, 28, 28, 288) 0 ['block3a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_se_squeeze (GlobalAver (None, 288) 0 ['block3a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3a_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block3a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3a_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block3a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3a_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block3a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3a_se_excite (Multiply) (None, 28, 28, 288) 0 ['block3a_activation[0][0]', Y \n",
+ " 'block3a_se_expand[0][0]'] \n",
+ " \n",
+ " block3a_project_conv (Conv2D) (None, 28, 28, 80) 23040 ['block3a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3a_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3b_expand_activation (Act (None, 28, 28, 480) 0 ['block3b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3b_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_activation (Activation (None, 28, 28, 480) 0 ['block3b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_se_squeeze (GlobalAver (None, 480) 0 ['block3b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3b_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3b_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3b_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3b_activation[0][0]', Y \n",
+ " 'block3b_se_expand[0][0]'] \n",
+ " \n",
+ " block3b_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3b_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_add (Add) (None, 28, 28, 80) 0 ['block3b_drop[0][0]', Y \n",
+ " 'block3a_project_bn[0][0]'] \n",
+ " \n",
+ " block3c_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3b_add[0][0]'] Y \n",
+ " \n",
+ " block3c_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3c_expand_activation (Act (None, 28, 28, 480) 0 ['block3c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3c_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_activation (Activation (None, 28, 28, 480) 0 ['block3c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_se_squeeze (GlobalAver (None, 480) 0 ['block3c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3c_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3c_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3c_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3c_activation[0][0]', Y \n",
+ " 'block3c_se_expand[0][0]'] \n",
+ " \n",
+ " block3c_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3c_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3c_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3c_add (Add) (None, 28, 28, 80) 0 ['block3c_drop[0][0]', Y \n",
+ " 'block3b_add[0][0]'] \n",
+ " \n",
+ " block3d_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3c_add[0][0]'] Y \n",
+ " \n",
+ " block3d_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3d_expand_activation (Act (None, 28, 28, 480) 0 ['block3d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3d_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_activation (Activation (None, 28, 28, 480) 0 ['block3d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_se_squeeze (GlobalAver (None, 480) 0 ['block3d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3d_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3d_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3d_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3d_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3d_activation[0][0]', Y \n",
+ " 'block3d_se_expand[0][0]'] \n",
+ " \n",
+ " block3d_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3d_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3d_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3d_add (Add) (None, 28, 28, 80) 0 ['block3d_drop[0][0]', Y \n",
+ " 'block3c_add[0][0]'] \n",
+ " \n",
+ " block3e_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3d_add[0][0]'] Y \n",
+ " \n",
+ " block3e_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3e_expand_activation (Act (None, 28, 28, 480) 0 ['block3e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3e_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3e_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_activation (Activation (None, 28, 28, 480) 0 ['block3e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_se_squeeze (GlobalAver (None, 480) 0 ['block3e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3e_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3e_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3e_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3e_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3e_activation[0][0]', Y \n",
+ " 'block3e_se_expand[0][0]'] \n",
+ " \n",
+ " block3e_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3e_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3e_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3e_add (Add) (None, 28, 28, 80) 0 ['block3e_drop[0][0]', Y \n",
+ " 'block3d_add[0][0]'] \n",
+ " \n",
+ " block3f_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3e_add[0][0]'] Y \n",
+ " \n",
+ " block3f_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3f_expand_activation (Act (None, 28, 28, 480) 0 ['block3f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3f_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3f_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_activation (Activation (None, 28, 28, 480) 0 ['block3f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_se_squeeze (GlobalAver (None, 480) 0 ['block3f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3f_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3f_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3f_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3f_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3f_activation[0][0]', Y \n",
+ " 'block3f_se_expand[0][0]'] \n",
+ " \n",
+ " block3f_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3f_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3f_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3f_add (Add) (None, 28, 28, 80) 0 ['block3f_drop[0][0]', Y \n",
+ " 'block3e_add[0][0]'] \n",
+ " \n",
+ " block3g_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3f_add[0][0]'] Y \n",
+ " \n",
+ " block3g_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3g_expand_activation (Act (None, 28, 28, 480) 0 ['block3g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3g_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3g_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_activation (Activation (None, 28, 28, 480) 0 ['block3g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_se_squeeze (GlobalAver (None, 480) 0 ['block3g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3g_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3g_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3g_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3g_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3g_activation[0][0]', Y \n",
+ " 'block3g_se_expand[0][0]'] \n",
+ " \n",
+ " block3g_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3g_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3g_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3g_add (Add) (None, 28, 28, 80) 0 ['block3g_drop[0][0]', Y \n",
+ " 'block3f_add[0][0]'] \n",
+ " \n",
+ " block4a_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3g_add[0][0]'] Y \n",
+ " \n",
+ " block4a_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block4a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4a_expand_activation (Act (None, 28, 28, 480) 0 ['block4a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4a_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_activation (Activation (None, 14, 14, 480) 0 ['block4a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_se_squeeze (GlobalAver (None, 480) 0 ['block4a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4a_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4a_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4a_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4a_activation[0][0]', Y \n",
+ " 'block4a_se_expand[0][0]'] \n",
+ " \n",
+ " block4a_project_conv (Conv2D) (None, 14, 14, 160) 76800 ['block4a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4b_expand_activation (Act (None, 14, 14, 960) 0 ['block4b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_activation (Activation (None, 14, 14, 960) 0 ['block4b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_se_squeeze (GlobalAver (None, 960) 0 ['block4b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4b_activation[0][0]', Y \n",
+ " 'block4b_se_expand[0][0]'] \n",
+ " \n",
+ " block4b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_add (Add) (None, 14, 14, 160) 0 ['block4b_drop[0][0]', Y \n",
+ " 'block4a_project_bn[0][0]'] \n",
+ " \n",
+ " block4c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4b_add[0][0]'] Y \n",
+ " \n",
+ " block4c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4c_expand_activation (Act (None, 14, 14, 960) 0 ['block4c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_activation (Activation (None, 14, 14, 960) 0 ['block4c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_se_squeeze (GlobalAver (None, 960) 0 ['block4c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4c_activation[0][0]', Y \n",
+ " 'block4c_se_expand[0][0]'] \n",
+ " \n",
+ " block4c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4c_add (Add) (None, 14, 14, 160) 0 ['block4c_drop[0][0]', Y \n",
+ " 'block4b_add[0][0]'] \n",
+ " \n",
+ " block4d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4c_add[0][0]'] Y \n",
+ " \n",
+ " block4d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4d_expand_activation (Act (None, 14, 14, 960) 0 ['block4d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_activation (Activation (None, 14, 14, 960) 0 ['block4d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_se_squeeze (GlobalAver (None, 960) 0 ['block4d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4d_activation[0][0]', Y \n",
+ " 'block4d_se_expand[0][0]'] \n",
+ " \n",
+ " block4d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4d_add (Add) (None, 14, 14, 160) 0 ['block4d_drop[0][0]', Y \n",
+ " 'block4c_add[0][0]'] \n",
+ " \n",
+ " block4e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4d_add[0][0]'] Y \n",
+ " \n",
+ " block4e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4e_expand_activation (Act (None, 14, 14, 960) 0 ['block4e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_activation (Activation (None, 14, 14, 960) 0 ['block4e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_se_squeeze (GlobalAver (None, 960) 0 ['block4e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4e_activation[0][0]', Y \n",
+ " 'block4e_se_expand[0][0]'] \n",
+ " \n",
+ " block4e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4e_add (Add) (None, 14, 14, 160) 0 ['block4e_drop[0][0]', Y \n",
+ " 'block4d_add[0][0]'] \n",
+ " \n",
+ " block4f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4e_add[0][0]'] Y \n",
+ " \n",
+ " block4f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4f_expand_activation (Act (None, 14, 14, 960) 0 ['block4f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_activation (Activation (None, 14, 14, 960) 0 ['block4f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_se_squeeze (GlobalAver (None, 960) 0 ['block4f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4f_activation[0][0]', Y \n",
+ " 'block4f_se_expand[0][0]'] \n",
+ " \n",
+ " block4f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4f_add (Add) (None, 14, 14, 160) 0 ['block4f_drop[0][0]', Y \n",
+ " 'block4e_add[0][0]'] \n",
+ " \n",
+ " block4g_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4f_add[0][0]'] Y \n",
+ " \n",
+ " block4g_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4g_expand_activation (Act (None, 14, 14, 960) 0 ['block4g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4g_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4g_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_activation (Activation (None, 14, 14, 960) 0 ['block4g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_se_squeeze (GlobalAver (None, 960) 0 ['block4g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4g_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4g_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4g_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4g_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4g_activation[0][0]', Y \n",
+ " 'block4g_se_expand[0][0]'] \n",
+ " \n",
+ " block4g_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4g_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4g_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4g_add (Add) (None, 14, 14, 160) 0 ['block4g_drop[0][0]', Y \n",
+ " 'block4f_add[0][0]'] \n",
+ " \n",
+ " block4h_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4g_add[0][0]'] Y \n",
+ " \n",
+ " block4h_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4h_expand_activation (Act (None, 14, 14, 960) 0 ['block4h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4h_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4h_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_activation (Activation (None, 14, 14, 960) 0 ['block4h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_se_squeeze (GlobalAver (None, 960) 0 ['block4h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4h_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4h_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4h_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4h_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4h_activation[0][0]', Y \n",
+ " 'block4h_se_expand[0][0]'] \n",
+ " \n",
+ " block4h_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4h_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4h_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4h_add (Add) (None, 14, 14, 160) 0 ['block4h_drop[0][0]', Y \n",
+ " 'block4g_add[0][0]'] \n",
+ " \n",
+ " block4i_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4h_add[0][0]'] Y \n",
+ " \n",
+ " block4i_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4i_expand_activation (Act (None, 14, 14, 960) 0 ['block4i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4i_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4i_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_activation (Activation (None, 14, 14, 960) 0 ['block4i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_se_squeeze (GlobalAver (None, 960) 0 ['block4i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4i_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4i_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4i_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4i_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4i_activation[0][0]', Y \n",
+ " 'block4i_se_expand[0][0]'] \n",
+ " \n",
+ " block4i_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4i_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4i_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4i_add (Add) (None, 14, 14, 160) 0 ['block4i_drop[0][0]', Y \n",
+ " 'block4h_add[0][0]'] \n",
+ " \n",
+ " block4j_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4i_add[0][0]'] Y \n",
+ " \n",
+ " block4j_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4j_expand_activation (Act (None, 14, 14, 960) 0 ['block4j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4j_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4j_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_activation (Activation (None, 14, 14, 960) 0 ['block4j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_se_squeeze (GlobalAver (None, 960) 0 ['block4j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4j_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4j_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4j_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4j_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4j_activation[0][0]', Y \n",
+ " 'block4j_se_expand[0][0]'] \n",
+ " \n",
+ " block4j_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4j_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4j_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4j_add (Add) (None, 14, 14, 160) 0 ['block4j_drop[0][0]', Y \n",
+ " 'block4i_add[0][0]'] \n",
+ " \n",
+ " block5a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4j_add[0][0]'] Y \n",
+ " \n",
+ " block5a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5a_expand_activation (Act (None, 14, 14, 960) 0 ['block5a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5a_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_activation (Activation (None, 14, 14, 960) 0 ['block5a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_se_squeeze (GlobalAver (None, 960) 0 ['block5a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5a_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5a_activation[0][0]', Y \n",
+ " 'block5a_se_expand[0][0]'] \n",
+ " \n",
+ " block5a_project_conv (Conv2D) (None, 14, 14, 224) 215040 ['block5a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5a_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5a_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5b_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5b_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5b_expand_activation (Act (None, 14, 14, 1344 0 ['block5b_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5b_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5b_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_activation (Activation (None, 14, 14, 1344 0 ['block5b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_se_squeeze (GlobalAver (None, 1344) 0 ['block5b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5b_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5b_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5b_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5b_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5b_activation[0][0]', Y \n",
+ " ) 'block5b_se_expand[0][0]'] \n",
+ " \n",
+ " block5b_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5b_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5b_add (Add) (None, 14, 14, 224) 0 ['block5b_drop[0][0]', Y \n",
+ " 'block5a_project_bn[0][0]'] \n",
+ " \n",
+ " block5c_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5b_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5c_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5c_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5c_expand_activation (Act (None, 14, 14, 1344 0 ['block5c_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5c_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5c_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_activation (Activation (None, 14, 14, 1344 0 ['block5c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_se_squeeze (GlobalAver (None, 1344) 0 ['block5c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5c_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5c_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5c_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5c_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5c_activation[0][0]', Y \n",
+ " ) 'block5c_se_expand[0][0]'] \n",
+ " \n",
+ " block5c_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5c_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5c_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5c_add (Add) (None, 14, 14, 224) 0 ['block5c_drop[0][0]', Y \n",
+ " 'block5b_add[0][0]'] \n",
+ " \n",
+ " block5d_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5c_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5d_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5d_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5d_expand_activation (Act (None, 14, 14, 1344 0 ['block5d_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5d_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5d_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_activation (Activation (None, 14, 14, 1344 0 ['block5d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_se_squeeze (GlobalAver (None, 1344) 0 ['block5d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5d_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5d_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5d_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5d_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5d_activation[0][0]', Y \n",
+ " ) 'block5d_se_expand[0][0]'] \n",
+ " \n",
+ " block5d_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5d_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5d_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5d_add (Add) (None, 14, 14, 224) 0 ['block5d_drop[0][0]', Y \n",
+ " 'block5c_add[0][0]'] \n",
+ " \n",
+ " block5e_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5d_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5e_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5e_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5e_expand_activation (Act (None, 14, 14, 1344 0 ['block5e_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5e_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5e_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5e_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_activation (Activation (None, 14, 14, 1344 0 ['block5e_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_se_squeeze (GlobalAver (None, 1344) 0 ['block5e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5e_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5e_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5e_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5e_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5e_activation[0][0]', Y \n",
+ " ) 'block5e_se_expand[0][0]'] \n",
+ " \n",
+ " block5e_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5e_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5e_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5e_add (Add) (None, 14, 14, 224) 0 ['block5e_drop[0][0]', Y \n",
+ " 'block5d_add[0][0]'] \n",
+ " \n",
+ " block5f_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5e_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5f_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5f_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5f_expand_activation (Act (None, 14, 14, 1344 0 ['block5f_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5f_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5f_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5f_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_activation (Activation (None, 14, 14, 1344 0 ['block5f_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_se_squeeze (GlobalAver (None, 1344) 0 ['block5f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5f_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5f_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5f_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5f_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5f_activation[0][0]', Y \n",
+ " ) 'block5f_se_expand[0][0]'] \n",
+ " \n",
+ " block5f_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5f_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5f_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5f_add (Add) (None, 14, 14, 224) 0 ['block5f_drop[0][0]', Y \n",
+ " 'block5e_add[0][0]'] \n",
+ " \n",
+ " block5g_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5f_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5g_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5g_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5g_expand_activation (Act (None, 14, 14, 1344 0 ['block5g_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5g_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5g_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5g_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5g_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_activation (Activation (None, 14, 14, 1344 0 ['block5g_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_se_squeeze (GlobalAver (None, 1344) 0 ['block5g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5g_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5g_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5g_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5g_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5g_activation[0][0]', Y \n",
+ " ) 'block5g_se_expand[0][0]'] \n",
+ " \n",
+ " block5g_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5g_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5g_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5g_add (Add) (None, 14, 14, 224) 0 ['block5g_drop[0][0]', Y \n",
+ " 'block5f_add[0][0]'] \n",
+ " \n",
+ " block5h_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5g_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5h_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5h_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5h_expand_activation (Act (None, 14, 14, 1344 0 ['block5h_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5h_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5h_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5h_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5h_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_activation (Activation (None, 14, 14, 1344 0 ['block5h_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_se_squeeze (GlobalAver (None, 1344) 0 ['block5h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5h_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5h_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5h_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5h_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5h_activation[0][0]', Y \n",
+ " ) 'block5h_se_expand[0][0]'] \n",
+ " \n",
+ " block5h_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5h_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5h_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5h_add (Add) (None, 14, 14, 224) 0 ['block5h_drop[0][0]', Y \n",
+ " 'block5g_add[0][0]'] \n",
+ " \n",
+ " block5i_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5h_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5i_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5i_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5i_expand_activation (Act (None, 14, 14, 1344 0 ['block5i_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5i_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5i_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5i_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5i_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_activation (Activation (None, 14, 14, 1344 0 ['block5i_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_se_squeeze (GlobalAver (None, 1344) 0 ['block5i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5i_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5i_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5i_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5i_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5i_activation[0][0]', Y \n",
+ " ) 'block5i_se_expand[0][0]'] \n",
+ " \n",
+ " block5i_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5i_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5i_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5i_add (Add) (None, 14, 14, 224) 0 ['block5i_drop[0][0]', Y \n",
+ " 'block5h_add[0][0]'] \n",
+ " \n",
+ " block5j_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5i_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5j_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5j_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5j_expand_activation (Act (None, 14, 14, 1344 0 ['block5j_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5j_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5j_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5j_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5j_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_activation (Activation (None, 14, 14, 1344 0 ['block5j_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_se_squeeze (GlobalAver (None, 1344) 0 ['block5j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5j_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5j_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5j_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5j_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5j_activation[0][0]', Y \n",
+ " ) 'block5j_se_expand[0][0]'] \n",
+ " \n",
+ " block5j_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5j_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5j_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5j_add (Add) (None, 14, 14, 224) 0 ['block5j_drop[0][0]', Y \n",
+ " 'block5i_add[0][0]'] \n",
+ " \n",
+ " block6a_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5j_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block6a_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block6a_expand_activation (Act (None, 14, 14, 1344 0 ['block6a_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 1344) 33600 ['block6a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6a_bn (BatchNormalization (None, 7, 7, 1344) 5376 ['block6a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_activation (Activation (None, 7, 7, 1344) 0 ['block6a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_se_squeeze (GlobalAver (None, 1344) 0 ['block6a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6a_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block6a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6a_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block6a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6a_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block6a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6a_se_excite (Multiply) (None, 7, 7, 1344) 0 ['block6a_activation[0][0]', Y \n",
+ " 'block6a_se_expand[0][0]'] \n",
+ " \n",
+ " block6a_project_conv (Conv2D) (None, 7, 7, 384) 516096 ['block6a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6a_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6b_expand_activation (Act (None, 7, 7, 2304) 0 ['block6b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6b_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_activation (Activation (None, 7, 7, 2304) 0 ['block6b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_se_squeeze (GlobalAver (None, 2304) 0 ['block6b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6b_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6b_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6b_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6b_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6b_activation[0][0]', Y \n",
+ " 'block6b_se_expand[0][0]'] \n",
+ " \n",
+ " block6b_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6b_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_add (Add) (None, 7, 7, 384) 0 ['block6b_drop[0][0]', Y \n",
+ " 'block6a_project_bn[0][0]'] \n",
+ " \n",
+ " block6c_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6b_add[0][0]'] Y \n",
+ " \n",
+ " block6c_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6c_expand_activation (Act (None, 7, 7, 2304) 0 ['block6c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6c_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_activation (Activation (None, 7, 7, 2304) 0 ['block6c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_se_squeeze (GlobalAver (None, 2304) 0 ['block6c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6c_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6c_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6c_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6c_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6c_activation[0][0]', Y \n",
+ " 'block6c_se_expand[0][0]'] \n",
+ " \n",
+ " block6c_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6c_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6c_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6c_add (Add) (None, 7, 7, 384) 0 ['block6c_drop[0][0]', Y \n",
+ " 'block6b_add[0][0]'] \n",
+ " \n",
+ " block6d_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6c_add[0][0]'] Y \n",
+ " \n",
+ " block6d_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6d_expand_activation (Act (None, 7, 7, 2304) 0 ['block6d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6d_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_activation (Activation (None, 7, 7, 2304) 0 ['block6d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_se_squeeze (GlobalAver (None, 2304) 0 ['block6d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6d_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6d_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6d_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6d_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6d_activation[0][0]', Y \n",
+ " 'block6d_se_expand[0][0]'] \n",
+ " \n",
+ " block6d_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6d_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6d_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6d_add (Add) (None, 7, 7, 384) 0 ['block6d_drop[0][0]', Y \n",
+ " 'block6c_add[0][0]'] \n",
+ " \n",
+ " block6e_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6d_add[0][0]'] Y \n",
+ " \n",
+ " block6e_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6e_expand_activation (Act (None, 7, 7, 2304) 0 ['block6e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6e_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_activation (Activation (None, 7, 7, 2304) 0 ['block6e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_se_squeeze (GlobalAver (None, 2304) 0 ['block6e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6e_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6e_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6e_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6e_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6e_activation[0][0]', Y \n",
+ " 'block6e_se_expand[0][0]'] \n",
+ " \n",
+ " block6e_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6e_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6e_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6e_add (Add) (None, 7, 7, 384) 0 ['block6e_drop[0][0]', Y \n",
+ " 'block6d_add[0][0]'] \n",
+ " \n",
+ " block6f_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6e_add[0][0]'] Y \n",
+ " \n",
+ " block6f_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6f_expand_activation (Act (None, 7, 7, 2304) 0 ['block6f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6f_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_activation (Activation (None, 7, 7, 2304) 0 ['block6f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_se_squeeze (GlobalAver (None, 2304) 0 ['block6f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6f_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6f_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6f_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6f_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6f_activation[0][0]', Y \n",
+ " 'block6f_se_expand[0][0]'] \n",
+ " \n",
+ " block6f_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6f_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6f_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6f_add (Add) (None, 7, 7, 384) 0 ['block6f_drop[0][0]', Y \n",
+ " 'block6e_add[0][0]'] \n",
+ " \n",
+ " block6g_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6f_add[0][0]'] Y \n",
+ " \n",
+ " block6g_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6g_expand_activation (Act (None, 7, 7, 2304) 0 ['block6g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6g_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_activation (Activation (None, 7, 7, 2304) 0 ['block6g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_se_squeeze (GlobalAver (None, 2304) 0 ['block6g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6g_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6g_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6g_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6g_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6g_activation[0][0]', Y \n",
+ " 'block6g_se_expand[0][0]'] \n",
+ " \n",
+ " block6g_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6g_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6g_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6g_add (Add) (None, 7, 7, 384) 0 ['block6g_drop[0][0]', Y \n",
+ " 'block6f_add[0][0]'] \n",
+ " \n",
+ " block6h_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6g_add[0][0]'] Y \n",
+ " \n",
+ " block6h_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6h_expand_activation (Act (None, 7, 7, 2304) 0 ['block6h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6h_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_activation (Activation (None, 7, 7, 2304) 0 ['block6h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_se_squeeze (GlobalAver (None, 2304) 0 ['block6h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6h_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6h_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6h_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6h_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6h_activation[0][0]', Y \n",
+ " 'block6h_se_expand[0][0]'] \n",
+ " \n",
+ " block6h_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6h_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6h_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6h_add (Add) (None, 7, 7, 384) 0 ['block6h_drop[0][0]', Y \n",
+ " 'block6g_add[0][0]'] \n",
+ " \n",
+ " block6i_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6h_add[0][0]'] Y \n",
+ " \n",
+ " block6i_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6i_expand_activation (Act (None, 7, 7, 2304) 0 ['block6i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6i_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6i_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_activation (Activation (None, 7, 7, 2304) 0 ['block6i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_se_squeeze (GlobalAver (None, 2304) 0 ['block6i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6i_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6i_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6i_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6i_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6i_activation[0][0]', Y \n",
+ " 'block6i_se_expand[0][0]'] \n",
+ " \n",
+ " block6i_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6i_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6i_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6i_add (Add) (None, 7, 7, 384) 0 ['block6i_drop[0][0]', Y \n",
+ " 'block6h_add[0][0]'] \n",
+ " \n",
+ " block6j_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6i_add[0][0]'] Y \n",
+ " \n",
+ " block6j_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6j_expand_activation (Act (None, 7, 7, 2304) 0 ['block6j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6j_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6j_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_activation (Activation (None, 7, 7, 2304) 0 ['block6j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_se_squeeze (GlobalAver (None, 2304) 0 ['block6j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6j_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6j_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6j_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6j_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6j_activation[0][0]', Y \n",
+ " 'block6j_se_expand[0][0]'] \n",
+ " \n",
+ " block6j_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6j_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6j_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6j_add (Add) (None, 7, 7, 384) 0 ['block6j_drop[0][0]', Y \n",
+ " 'block6i_add[0][0]'] \n",
+ " \n",
+ " block6k_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6j_add[0][0]'] Y \n",
+ " \n",
+ " block6k_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6k_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6k_expand_activation (Act (None, 7, 7, 2304) 0 ['block6k_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6k_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6k_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6k_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6k_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_activation (Activation (None, 7, 7, 2304) 0 ['block6k_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_se_squeeze (GlobalAver (None, 2304) 0 ['block6k_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6k_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6k_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6k_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6k_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6k_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6k_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6k_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6k_activation[0][0]', Y \n",
+ " 'block6k_se_expand[0][0]'] \n",
+ " \n",
+ " block6k_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6k_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6k_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6k_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6k_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6k_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6k_add (Add) (None, 7, 7, 384) 0 ['block6k_drop[0][0]', Y \n",
+ " 'block6j_add[0][0]'] \n",
+ " \n",
+ " block6l_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6k_add[0][0]'] Y \n",
+ " \n",
+ " block6l_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6l_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6l_expand_activation (Act (None, 7, 7, 2304) 0 ['block6l_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6l_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6l_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6l_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6l_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_activation (Activation (None, 7, 7, 2304) 0 ['block6l_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_se_squeeze (GlobalAver (None, 2304) 0 ['block6l_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6l_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6l_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6l_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6l_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6l_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6l_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6l_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6l_activation[0][0]', Y \n",
+ " 'block6l_se_expand[0][0]'] \n",
+ " \n",
+ " block6l_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6l_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6l_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6l_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6l_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6l_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6l_add (Add) (None, 7, 7, 384) 0 ['block6l_drop[0][0]', Y \n",
+ " 'block6k_add[0][0]'] \n",
+ " \n",
+ " block6m_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6l_add[0][0]'] Y \n",
+ " \n",
+ " block6m_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6m_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6m_expand_activation (Act (None, 7, 7, 2304) 0 ['block6m_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6m_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6m_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6m_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6m_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_activation (Activation (None, 7, 7, 2304) 0 ['block6m_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_se_squeeze (GlobalAver (None, 2304) 0 ['block6m_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6m_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6m_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6m_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6m_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6m_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6m_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6m_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6m_activation[0][0]', Y \n",
+ " 'block6m_se_expand[0][0]'] \n",
+ " \n",
+ " block6m_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6m_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6m_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6m_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6m_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6m_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6m_add (Add) (None, 7, 7, 384) 0 ['block6m_drop[0][0]', Y \n",
+ " 'block6l_add[0][0]'] \n",
+ " \n",
+ " block7a_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6m_add[0][0]'] Y \n",
+ " \n",
+ " block7a_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block7a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7a_expand_activation (Act (None, 7, 7, 2304) 0 ['block7a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 20736 ['block7a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7a_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block7a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_activation (Activation (None, 7, 7, 2304) 0 ['block7a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_se_squeeze (GlobalAver (None, 2304) 0 ['block7a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7a_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block7a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7a_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block7a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7a_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block7a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7a_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block7a_activation[0][0]', Y \n",
+ " 'block7a_se_expand[0][0]'] \n",
+ " \n",
+ " block7a_project_conv (Conv2D) (None, 7, 7, 640) 1474560 ['block7a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7a_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7b_expand_activation (Act (None, 7, 7, 3840) 0 ['block7b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7b_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_activation (Activation (None, 7, 7, 3840) 0 ['block7b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_se_squeeze (GlobalAver (None, 3840) 0 ['block7b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7b_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7b_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7b_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7b_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7b_activation[0][0]', Y \n",
+ " 'block7b_se_expand[0][0]'] \n",
+ " \n",
+ " block7b_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7b_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_add (Add) (None, 7, 7, 640) 0 ['block7b_drop[0][0]', Y \n",
+ " 'block7a_project_bn[0][0]'] \n",
+ " \n",
+ " block7c_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7b_add[0][0]'] Y \n",
+ " \n",
+ " block7c_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7c_expand_activation (Act (None, 7, 7, 3840) 0 ['block7c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7c_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7c_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_activation (Activation (None, 7, 7, 3840) 0 ['block7c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_se_squeeze (GlobalAver (None, 3840) 0 ['block7c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7c_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7c_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7c_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7c_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7c_activation[0][0]', Y \n",
+ " 'block7c_se_expand[0][0]'] \n",
+ " \n",
+ " block7c_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7c_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7c_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7c_add (Add) (None, 7, 7, 640) 0 ['block7c_drop[0][0]', Y \n",
+ " 'block7b_add[0][0]'] \n",
+ " \n",
+ " block7d_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7c_add[0][0]'] Y \n",
+ " \n",
+ " block7d_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7d_expand_activation (Act (None, 7, 7, 3840) 0 ['block7d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7d_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7d_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_activation (Activation (None, 7, 7, 3840) 0 ['block7d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_se_squeeze (GlobalAver (None, 3840) 0 ['block7d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7d_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7d_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7d_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7d_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7d_activation[0][0]', Y \n",
+ " 'block7d_se_expand[0][0]'] \n",
+ " \n",
+ " block7d_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7d_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7d_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7d_add (Add) (None, 7, 7, 640) 0 ['block7d_drop[0][0]', Y \n",
+ " 'block7c_add[0][0]'] \n",
+ " \n",
+ " top_conv (Conv2D) (None, 7, 7, 2560) 1638400 ['block7d_add[0][0]'] Y \n",
+ " \n",
+ " top_bn (BatchNormalization) (None, 7, 7, 2560) 10240 ['top_conv[0][0]'] Y \n",
+ " \n",
+ " top_activation (Activation) (None, 7, 7, 2560) 0 ['top_bn[0][0]'] Y \n",
+ " \n",
+ " FC_INPUT_Avg-Pooling (GlobalAv (None, 2560) 0 ['top_activation[0][0]'] Y \n",
+ " eragePooling2D) \n",
+ " \n",
+ " FC_C_Dense-L1-512 (Dense) (None, 512) 1311232 ['FC_INPUT_Avg-Pooling[0][0]'] Y \n",
+ " \n",
+ " FC_C_Dropout-L1-0.1 (Dropout) (None, 512) 0 ['FC_C_Dense-L1-512[0][0]'] Y \n",
+ " \n",
+ " FC_C_Avg-Pooling-L1 (BatchNorm (None, 512) 2048 ['FC_C_Dropout-L1-0.1[0][0]'] Y \n",
+ " alization) \n",
+ " \n",
+ " FC_C_Dense-L2-512 (Dense) (None, 512) 262656 ['FC_C_Avg-Pooling-L1[0][0]'] Y \n",
+ " \n",
+ " FC_C_Avg-Pooling-L2 (BatchNorm (None, 512) 2048 ['FC_C_Dense-L2-512[0][0]'] Y \n",
+ " alization) \n",
+ " \n",
+ " FC_C_Dense-L3-128 (Dense) (None, 128) 65664 ['FC_C_Avg-Pooling-L2[0][0]'] Y \n",
+ " \n",
+ " FC_OUTPUT_Dense-2 (Dense) (None, 2) 258 ['FC_C_Dense-L3-128[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 65,741,586\n",
+ "Trainable params: 65,428,818\n",
+ "Non-trainable params: 312,768\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from efficientnet.keras import EfficientNetB7 as KENB7\n",
"# FUNC\n",
@@ -1322,9 +13534,1145 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 13,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Creating the model...\n",
+ "Total model layers: 11\n",
+ "Model: \"model\"\n",
+ "____________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Trainable \n",
+ "============================================================================\n",
+ " input_1 (InputLayer) [(None, 224, 224, 3)] 0 Y \n",
+ " \n",
+ " lambda (Lambda) (None, 224, 224, 3) 0 Y \n",
+ " \n",
+ " convnext_xlarge (Functional (None, None, None, 2048) 34814796 Y \n",
+ " ) 8 \n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| input_2 (InputLayer) [(None, None, None, 3)] 0 Y |\n",
+ "| |\n",
+ "| convnext_xlarge_prestem_nor (None, None, None, 3) 0 Y |\n",
+ "| malization (Normalization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stem (Seque (None, None, None, 256) 13056 Y |\n",
+ "| ntial) |\n",
+ "||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||\n",
+ "|| convnext_xlarge_stem_conv ( (None, None, None, 256) 12544 Y ||\n",
+ "|| Conv2D) ||\n",
+ "|| ||\n",
+ "|| convnext_xlarge_stem_layern (None, None, None, 256) 512 Y ||\n",
+ "|| orm (LayerNormalization) ||\n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 12800 Y |\n",
+ "| ck_0_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 512 Y |\n",
+ "| ck_0_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 263168 Y |\n",
+ "| ck_0_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_0_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 262400 Y |\n",
+ "| ck_0_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 256 Y |\n",
+ "| ck_0_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 0 Y |\n",
+ "| ck_0_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add (TFOpL (None, None, None, 256) 0 Y |\n",
+ "| ambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 12800 Y |\n",
+ "| ck_1_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 512 Y |\n",
+ "| ck_1_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 263168 Y |\n",
+ "| ck_1_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_1_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 262400 Y |\n",
+ "| ck_1_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 256 Y |\n",
+ "| ck_1_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 0 Y |\n",
+ "| ck_1_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_1 (TFO (None, None, None, 256) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 12800 Y |\n",
+ "| ck_2_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 512 Y |\n",
+ "| ck_2_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 263168 Y |\n",
+ "| ck_2_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_2_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 262400 Y |\n",
+ "| ck_2_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 256 Y |\n",
+ "| ck_2_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_0_blo (None, None, None, 256) 0 Y |\n",
+ "| ck_2_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_2 (TFO (None, None, None, 256) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_downsamplin (None, None, None, 512) 525312 Y |\n",
+ "| g_block_0 (Sequential) |\n",
+ "||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 256) 512 Y ||\n",
+ "|| g_layernorm_0 (LayerNormali ||\n",
+ "|| zation) ||\n",
+ "|| ||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 512) 524800 Y ||\n",
+ "|| g_conv_0 (Conv2D) ||\n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 25600 Y |\n",
+ "| ck_0_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1024 Y |\n",
+ "| ck_0_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 1050624 Y |\n",
+ "| ck_0_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_0_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1049088 Y |\n",
+ "| ck_0_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 512 Y |\n",
+ "| ck_0_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 0 Y |\n",
+ "| ck_0_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_3 (TFO (None, None, None, 512) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 25600 Y |\n",
+ "| ck_1_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1024 Y |\n",
+ "| ck_1_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 1050624 Y |\n",
+ "| ck_1_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_1_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1049088 Y |\n",
+ "| ck_1_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 512 Y |\n",
+ "| ck_1_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 0 Y |\n",
+ "| ck_1_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_4 (TFO (None, None, None, 512) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 25600 Y |\n",
+ "| ck_2_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1024 Y |\n",
+ "| ck_2_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 1050624 Y |\n",
+ "| ck_2_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_2_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 1049088 Y |\n",
+ "| ck_2_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 512 Y |\n",
+ "| ck_2_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_1_blo (None, None, None, 512) 0 Y |\n",
+ "| ck_2_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_5 (TFO (None, None, None, 512) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_downsamplin (None, None, None, 1024) 2099200 Y |\n",
+ "| g_block_1 (Sequential) |\n",
+ "||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 512) 1024 Y ||\n",
+ "|| g_layernorm_1 (LayerNormali ||\n",
+ "|| zation) ||\n",
+ "|| ||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 1024) 2098176 Y ||\n",
+ "|| g_conv_1 (Conv2D) ||\n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_0_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_0_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_0_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_0_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_0_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_0_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_0_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_6 (TFO (None, None, None, 1024) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_1_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_1_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_1_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_1_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_1_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_1_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_1_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_7 (TFO (None, None, None, 1024) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_2_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_2_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_2_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_2_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_2_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_2_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_2_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_8 (TFO (None, None, None, 1024) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_3_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_3_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_3_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_3_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_3_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_3_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_3_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_9 (TFO (None, None, None, 1024) 0 Y |\n",
+ "| pLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_4_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_4_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_4_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_4_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_4_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_4_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_4_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_10 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_5_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_5_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_5_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_5_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_5_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_5_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_5_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_11 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_6_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_6_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_6_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_6_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_6_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_6_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_6_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_12 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_7_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_7_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_7_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_7_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_7_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_7_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_7_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_13 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_8_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_8_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_8_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_8_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_8_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_8_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_8_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_14 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_9_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_9_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_9_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_9_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_9_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_9_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_9_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_15 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_10_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_10_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_10_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_10_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_10_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_10_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_10_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_16 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_11_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_11_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_11_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_11_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_11_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_11_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_11_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_17 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_12_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_12_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_12_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_12_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_12_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_12_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_12_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_18 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_13_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_13_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_13_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_13_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_13_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_13_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_13_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_19 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_14_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_14_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_14_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_14_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_14_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_14_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_14_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_20 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_15_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_15_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_15_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_15_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_15_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_15_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_15_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_21 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_16_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_16_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_16_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_16_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_16_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_16_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_16_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_22 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_17_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_17_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_17_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_17_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_17_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_17_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_17_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_23 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_18_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_18_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_18_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_18_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_18_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_18_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_18_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_24 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_19_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_19_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_19_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_19_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_19_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_19_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_19_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_25 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_20_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_20_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_20_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_20_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_20_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_20_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_20_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_26 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_21_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_21_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_21_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_21_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_21_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_21_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_21_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_27 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_22_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_22_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_22_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_22_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_22_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_22_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_22_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_28 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_23_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_23_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_23_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_23_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_23_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_23_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_23_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_29 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_24_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_24_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_24_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_24_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_24_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_24_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_24_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_30 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_25_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_25_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_25_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_25_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_25_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_25_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_25_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_31 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 51200 Y |\n",
+ "| ck_26_depthwise_conv (Conv2 |\n",
+ "| D) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 2048 Y |\n",
+ "| ck_26_layernorm (LayerNorma |\n",
+ "| lization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 4198400 Y |\n",
+ "| ck_26_pointwise_conv_1 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 4096) 0 Y |\n",
+ "| ck_26_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 4195328 Y |\n",
+ "| ck_26_pointwise_conv_2 (Den |\n",
+ "| se) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 1024 Y |\n",
+ "| ck_26_layer_scale (LayerSca |\n",
+ "| le) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_2_blo (None, None, None, 1024) 0 Y |\n",
+ "| ck_26_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_32 (TF (None, None, None, 1024) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_downsamplin (None, None, None, 2048) 8392704 Y |\n",
+ "| g_block_2 (Sequential) |\n",
+ "||¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 1024) 2048 Y ||\n",
+ "|| g_layernorm_2 (LayerNormali ||\n",
+ "|| zation) ||\n",
+ "|| ||\n",
+ "|| convnext_xlarge_downsamplin (None, None, None, 2048) 8390656 Y ||\n",
+ "|| g_conv_2 (Conv2D) ||\n",
+ "|¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯|\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 102400 Y |\n",
+ "| ck_0_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 4096 Y |\n",
+ "| ck_0_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 16785408 Y |\n",
+ "| ck_0_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 0 Y |\n",
+ "| ck_0_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 16779264 Y |\n",
+ "| ck_0_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 2048 Y |\n",
+ "| ck_0_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_0_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_33 (TF (None, None, None, 2048) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 102400 Y |\n",
+ "| ck_1_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 4096 Y |\n",
+ "| ck_1_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 16785408 Y |\n",
+ "| ck_1_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 0 Y |\n",
+ "| ck_1_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 16779264 Y |\n",
+ "| ck_1_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 2048 Y |\n",
+ "| ck_1_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_1_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_34 (TF (None, None, None, 2048) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 102400 Y |\n",
+ "| ck_2_depthwise_conv (Conv2D |\n",
+ "| ) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 4096 Y |\n",
+ "| ck_2_layernorm (LayerNormal |\n",
+ "| ization) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 16785408 Y |\n",
+ "| ck_2_pointwise_conv_1 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 8192) 0 Y |\n",
+ "| ck_2_gelu (Activation) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 16779264 Y |\n",
+ "| ck_2_pointwise_conv_2 (Dens |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 2048 Y |\n",
+ "| ck_2_layer_scale (LayerScal |\n",
+ "| e) |\n",
+ "| |\n",
+ "| convnext_xlarge_stage_3_blo (None, None, None, 2048) 0 Y |\n",
+ "| ck_2_identity (Activation) |\n",
+ "| |\n",
+ "| tf.__operators__.add_35 (TF (None, None, None, 2048) 0 Y |\n",
+ "| OpLambda) |\n",
+ "| |\n",
+ "| layer_normalization (LayerN (None, None, None, 2048) 4096 Y |\n",
+ "| ormalization) |\n",
+ "¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\n",
+ " global_average_pooling2d (G (None, 2048) 0 Y \n",
+ " lobalAveragePooling2D) \n",
+ " \n",
+ " dense (Dense) (None, 512) 1049088 Y \n",
+ " \n",
+ " dropout (Dropout) (None, 512) 0 Y \n",
+ " \n",
+ " batch_normalization (BatchN (None, 512) 2048 Y \n",
+ " ormalization) \n",
+ " \n",
+ " dense_1 (Dense) (None, 512) 262656 Y \n",
+ " \n",
+ " batch_normalization_1 (Batc (None, 512) 2048 Y \n",
+ " hNormalization) \n",
+ " \n",
+ " dense_2 (Dense) (None, 128) 65664 Y \n",
+ " \n",
+ " dense_3 (Dense) (None, 2) 258 Y \n",
+ " \n",
+ "============================================================================\n",
+ "Total params: 349,529,730\n",
+ "Trainable params: 349,527,682\n",
+ "Non-trainable params: 2,048\n",
+ "____________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"from keras.applications import ConvNeXtXLarge\n",
"from keras.layers import Lambda\n",
@@ -1504,7 +14852,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 16,
"metadata": {},
"outputs": [],
"source": [
@@ -1584,9 +14932,2162 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 5,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "\u001b[92mLoading model done.\n",
+ "Compiling the AI model...\u001b[0m\n",
+ "Model: \"model\"\n",
+ "_____________________________________________________________________________________________________________\n",
+ " Layer (type) Output Shape Param # Connected to Trainable \n",
+ "=============================================================================================================\n",
+ " input_1 (InputLayer) [(None, 224, 224, 3 0 [] Y \n",
+ " )] \n",
+ " \n",
+ " stem_conv (Conv2D) (None, 112, 112, 64 1728 ['input_1[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_bn (BatchNormalization) (None, 112, 112, 64 256 ['stem_conv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " stem_activation (Activation) (None, 112, 112, 64 0 ['stem_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_dwconv (DepthwiseConv2 (None, 112, 112, 64 576 ['stem_activation[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1a_bn (BatchNormalization (None, 112, 112, 64 256 ['block1a_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_activation (Activation (None, 112, 112, 64 0 ['block1a_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1a_se_squeeze (GlobalAver (None, 64) 0 ['block1a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1a_se_reshape (Reshape) (None, 1, 1, 64) 0 ['block1a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1a_se_reduce (Conv2D) (None, 1, 1, 16) 1040 ['block1a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1a_se_expand (Conv2D) (None, 1, 1, 64) 1088 ['block1a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1a_se_excite (Multiply) (None, 112, 112, 64 0 ['block1a_activation[0][0]', Y \n",
+ " ) 'block1a_se_expand[0][0]'] \n",
+ " \n",
+ " block1a_project_conv (Conv2D) (None, 112, 112, 32 2048 ['block1a_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1a_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1a_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1a_project_bn[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1b_bn (BatchNormalization (None, 112, 112, 32 128 ['block1b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_activation (Activation (None, 112, 112, 32 0 ['block1b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1b_se_squeeze (GlobalAver (None, 32) 0 ['block1b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1b_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1b_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1b_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1b_se_excite (Multiply) (None, 112, 112, 32 0 ['block1b_activation[0][0]', Y \n",
+ " ) 'block1b_se_expand[0][0]'] \n",
+ " \n",
+ " block1b_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1b_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1b_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1b_drop (FixedDropout) (None, 112, 112, 32 0 ['block1b_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1b_add (Add) (None, 112, 112, 32 0 ['block1b_drop[0][0]', Y \n",
+ " ) 'block1a_project_bn[0][0]'] \n",
+ " \n",
+ " block1c_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1b_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1c_bn (BatchNormalization (None, 112, 112, 32 128 ['block1c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_activation (Activation (None, 112, 112, 32 0 ['block1c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1c_se_squeeze (GlobalAver (None, 32) 0 ['block1c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1c_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1c_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1c_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1c_se_excite (Multiply) (None, 112, 112, 32 0 ['block1c_activation[0][0]', Y \n",
+ " ) 'block1c_se_expand[0][0]'] \n",
+ " \n",
+ " block1c_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1c_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1c_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1c_drop (FixedDropout) (None, 112, 112, 32 0 ['block1c_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1c_add (Add) (None, 112, 112, 32 0 ['block1c_drop[0][0]', Y \n",
+ " ) 'block1b_add[0][0]'] \n",
+ " \n",
+ " block1d_dwconv (DepthwiseConv2 (None, 112, 112, 32 288 ['block1c_add[0][0]'] Y \n",
+ " D) ) \n",
+ " \n",
+ " block1d_bn (BatchNormalization (None, 112, 112, 32 128 ['block1d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_activation (Activation (None, 112, 112, 32 0 ['block1d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block1d_se_squeeze (GlobalAver (None, 32) 0 ['block1d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block1d_se_reshape (Reshape) (None, 1, 1, 32) 0 ['block1d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block1d_se_reduce (Conv2D) (None, 1, 1, 8) 264 ['block1d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block1d_se_expand (Conv2D) (None, 1, 1, 32) 288 ['block1d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block1d_se_excite (Multiply) (None, 112, 112, 32 0 ['block1d_activation[0][0]', Y \n",
+ " ) 'block1d_se_expand[0][0]'] \n",
+ " \n",
+ " block1d_project_conv (Conv2D) (None, 112, 112, 32 1024 ['block1d_se_excite[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_project_bn (BatchNorma (None, 112, 112, 32 128 ['block1d_project_conv[0][0]'] Y \n",
+ " lization) ) \n",
+ " \n",
+ " block1d_drop (FixedDropout) (None, 112, 112, 32 0 ['block1d_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block1d_add (Add) (None, 112, 112, 32 0 ['block1d_drop[0][0]', Y \n",
+ " ) 'block1c_add[0][0]'] \n",
+ " \n",
+ " block2a_expand_conv (Conv2D) (None, 112, 112, 19 6144 ['block1d_add[0][0]'] Y \n",
+ " 2) \n",
+ " \n",
+ " block2a_expand_bn (BatchNormal (None, 112, 112, 19 768 ['block2a_expand_conv[0][0]'] Y \n",
+ " ization) 2) \n",
+ " \n",
+ " block2a_expand_activation (Act (None, 112, 112, 19 0 ['block2a_expand_bn[0][0]'] Y \n",
+ " ivation) 2) \n",
+ " \n",
+ " block2a_dwconv (DepthwiseConv2 (None, 56, 56, 192) 1728 ['block2a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2a_bn (BatchNormalization (None, 56, 56, 192) 768 ['block2a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_activation (Activation (None, 56, 56, 192) 0 ['block2a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2a_se_squeeze (GlobalAver (None, 192) 0 ['block2a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2a_se_reshape (Reshape) (None, 1, 1, 192) 0 ['block2a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2a_se_reduce (Conv2D) (None, 1, 1, 8) 1544 ['block2a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2a_se_expand (Conv2D) (None, 1, 1, 192) 1728 ['block2a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2a_se_excite (Multiply) (None, 56, 56, 192) 0 ['block2a_activation[0][0]', Y \n",
+ " 'block2a_se_expand[0][0]'] \n",
+ " \n",
+ " block2a_project_conv (Conv2D) (None, 56, 56, 48) 9216 ['block2a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2a_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2b_expand_activation (Act (None, 56, 56, 288) 0 ['block2b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2b_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2b_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_activation (Activation (None, 56, 56, 288) 0 ['block2b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2b_se_squeeze (GlobalAver (None, 288) 0 ['block2b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2b_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2b_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2b_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2b_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2b_activation[0][0]', Y \n",
+ " 'block2b_se_expand[0][0]'] \n",
+ " \n",
+ " block2b_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2b_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2b_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2b_add (Add) (None, 56, 56, 48) 0 ['block2b_drop[0][0]', Y \n",
+ " 'block2a_project_bn[0][0]'] \n",
+ " \n",
+ " block2c_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2b_add[0][0]'] Y \n",
+ " \n",
+ " block2c_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2c_expand_activation (Act (None, 56, 56, 288) 0 ['block2c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2c_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2c_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_activation (Activation (None, 56, 56, 288) 0 ['block2c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2c_se_squeeze (GlobalAver (None, 288) 0 ['block2c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2c_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2c_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2c_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2c_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2c_activation[0][0]', Y \n",
+ " 'block2c_se_expand[0][0]'] \n",
+ " \n",
+ " block2c_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2c_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2c_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2c_add (Add) (None, 56, 56, 48) 0 ['block2c_drop[0][0]', Y \n",
+ " 'block2b_add[0][0]'] \n",
+ " \n",
+ " block2d_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2c_add[0][0]'] Y \n",
+ " \n",
+ " block2d_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2d_expand_activation (Act (None, 56, 56, 288) 0 ['block2d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2d_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2d_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_activation (Activation (None, 56, 56, 288) 0 ['block2d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2d_se_squeeze (GlobalAver (None, 288) 0 ['block2d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2d_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2d_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2d_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2d_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2d_activation[0][0]', Y \n",
+ " 'block2d_se_expand[0][0]'] \n",
+ " \n",
+ " block2d_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2d_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2d_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2d_add (Add) (None, 56, 56, 48) 0 ['block2d_drop[0][0]', Y \n",
+ " 'block2c_add[0][0]'] \n",
+ " \n",
+ " block2e_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2d_add[0][0]'] Y \n",
+ " \n",
+ " block2e_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2e_expand_activation (Act (None, 56, 56, 288) 0 ['block2e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2e_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2e_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_activation (Activation (None, 56, 56, 288) 0 ['block2e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2e_se_squeeze (GlobalAver (None, 288) 0 ['block2e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2e_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2e_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2e_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2e_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2e_activation[0][0]', Y \n",
+ " 'block2e_se_expand[0][0]'] \n",
+ " \n",
+ " block2e_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2e_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2e_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2e_add (Add) (None, 56, 56, 48) 0 ['block2e_drop[0][0]', Y \n",
+ " 'block2d_add[0][0]'] \n",
+ " \n",
+ " block2f_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2e_add[0][0]'] Y \n",
+ " \n",
+ " block2f_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2f_expand_activation (Act (None, 56, 56, 288) 0 ['block2f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2f_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2f_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_activation (Activation (None, 56, 56, 288) 0 ['block2f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2f_se_squeeze (GlobalAver (None, 288) 0 ['block2f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2f_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2f_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2f_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2f_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2f_activation[0][0]', Y \n",
+ " 'block2f_se_expand[0][0]'] \n",
+ " \n",
+ " block2f_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2f_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2f_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2f_add (Add) (None, 56, 56, 48) 0 ['block2f_drop[0][0]', Y \n",
+ " 'block2e_add[0][0]'] \n",
+ " \n",
+ " block2g_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2f_add[0][0]'] Y \n",
+ " \n",
+ " block2g_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block2g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block2g_expand_activation (Act (None, 56, 56, 288) 0 ['block2g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block2g_dwconv (DepthwiseConv2 (None, 56, 56, 288) 2592 ['block2g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block2g_bn (BatchNormalization (None, 56, 56, 288) 1152 ['block2g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_activation (Activation (None, 56, 56, 288) 0 ['block2g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block2g_se_squeeze (GlobalAver (None, 288) 0 ['block2g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block2g_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block2g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block2g_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block2g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block2g_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block2g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block2g_se_excite (Multiply) (None, 56, 56, 288) 0 ['block2g_activation[0][0]', Y \n",
+ " 'block2g_se_expand[0][0]'] \n",
+ " \n",
+ " block2g_project_conv (Conv2D) (None, 56, 56, 48) 13824 ['block2g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block2g_project_bn (BatchNorma (None, 56, 56, 48) 192 ['block2g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block2g_drop (FixedDropout) (None, 56, 56, 48) 0 ['block2g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block2g_add (Add) (None, 56, 56, 48) 0 ['block2g_drop[0][0]', Y \n",
+ " 'block2f_add[0][0]'] \n",
+ " \n",
+ " block3a_expand_conv (Conv2D) (None, 56, 56, 288) 13824 ['block2g_add[0][0]'] Y \n",
+ " \n",
+ " block3a_expand_bn (BatchNormal (None, 56, 56, 288) 1152 ['block3a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3a_expand_activation (Act (None, 56, 56, 288) 0 ['block3a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3a_dwconv (DepthwiseConv2 (None, 28, 28, 288) 7200 ['block3a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3a_bn (BatchNormalization (None, 28, 28, 288) 1152 ['block3a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_activation (Activation (None, 28, 28, 288) 0 ['block3a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3a_se_squeeze (GlobalAver (None, 288) 0 ['block3a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3a_se_reshape (Reshape) (None, 1, 1, 288) 0 ['block3a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3a_se_reduce (Conv2D) (None, 1, 1, 12) 3468 ['block3a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3a_se_expand (Conv2D) (None, 1, 1, 288) 3744 ['block3a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3a_se_excite (Multiply) (None, 28, 28, 288) 0 ['block3a_activation[0][0]', Y \n",
+ " 'block3a_se_expand[0][0]'] \n",
+ " \n",
+ " block3a_project_conv (Conv2D) (None, 28, 28, 80) 23040 ['block3a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3a_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3b_expand_activation (Act (None, 28, 28, 480) 0 ['block3b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3b_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3b_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_activation (Activation (None, 28, 28, 480) 0 ['block3b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3b_se_squeeze (GlobalAver (None, 480) 0 ['block3b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3b_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3b_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3b_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3b_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3b_activation[0][0]', Y \n",
+ " 'block3b_se_expand[0][0]'] \n",
+ " \n",
+ " block3b_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3b_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3b_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3b_add (Add) (None, 28, 28, 80) 0 ['block3b_drop[0][0]', Y \n",
+ " 'block3a_project_bn[0][0]'] \n",
+ " \n",
+ " block3c_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3b_add[0][0]'] Y \n",
+ " \n",
+ " block3c_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3c_expand_activation (Act (None, 28, 28, 480) 0 ['block3c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3c_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3c_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_activation (Activation (None, 28, 28, 480) 0 ['block3c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3c_se_squeeze (GlobalAver (None, 480) 0 ['block3c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3c_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3c_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3c_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3c_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3c_activation[0][0]', Y \n",
+ " 'block3c_se_expand[0][0]'] \n",
+ " \n",
+ " block3c_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3c_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3c_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3c_add (Add) (None, 28, 28, 80) 0 ['block3c_drop[0][0]', Y \n",
+ " 'block3b_add[0][0]'] \n",
+ " \n",
+ " block3d_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3c_add[0][0]'] Y \n",
+ " \n",
+ " block3d_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3d_expand_activation (Act (None, 28, 28, 480) 0 ['block3d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3d_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3d_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_activation (Activation (None, 28, 28, 480) 0 ['block3d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3d_se_squeeze (GlobalAver (None, 480) 0 ['block3d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3d_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3d_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3d_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3d_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3d_activation[0][0]', Y \n",
+ " 'block3d_se_expand[0][0]'] \n",
+ " \n",
+ " block3d_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3d_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3d_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3d_add (Add) (None, 28, 28, 80) 0 ['block3d_drop[0][0]', Y \n",
+ " 'block3c_add[0][0]'] \n",
+ " \n",
+ " block3e_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3d_add[0][0]'] Y \n",
+ " \n",
+ " block3e_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3e_expand_activation (Act (None, 28, 28, 480) 0 ['block3e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3e_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3e_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_activation (Activation (None, 28, 28, 480) 0 ['block3e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3e_se_squeeze (GlobalAver (None, 480) 0 ['block3e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3e_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3e_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3e_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3e_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3e_activation[0][0]', Y \n",
+ " 'block3e_se_expand[0][0]'] \n",
+ " \n",
+ " block3e_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3e_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3e_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3e_add (Add) (None, 28, 28, 80) 0 ['block3e_drop[0][0]', Y \n",
+ " 'block3d_add[0][0]'] \n",
+ " \n",
+ " block3f_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3e_add[0][0]'] Y \n",
+ " \n",
+ " block3f_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3f_expand_activation (Act (None, 28, 28, 480) 0 ['block3f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3f_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3f_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_activation (Activation (None, 28, 28, 480) 0 ['block3f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3f_se_squeeze (GlobalAver (None, 480) 0 ['block3f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3f_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3f_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3f_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3f_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3f_activation[0][0]', Y \n",
+ " 'block3f_se_expand[0][0]'] \n",
+ " \n",
+ " block3f_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3f_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3f_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3f_add (Add) (None, 28, 28, 80) 0 ['block3f_drop[0][0]', Y \n",
+ " 'block3e_add[0][0]'] \n",
+ " \n",
+ " block3g_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3f_add[0][0]'] Y \n",
+ " \n",
+ " block3g_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block3g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block3g_expand_activation (Act (None, 28, 28, 480) 0 ['block3g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block3g_dwconv (DepthwiseConv2 (None, 28, 28, 480) 12000 ['block3g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block3g_bn (BatchNormalization (None, 28, 28, 480) 1920 ['block3g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_activation (Activation (None, 28, 28, 480) 0 ['block3g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block3g_se_squeeze (GlobalAver (None, 480) 0 ['block3g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block3g_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block3g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block3g_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block3g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block3g_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block3g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block3g_se_excite (Multiply) (None, 28, 28, 480) 0 ['block3g_activation[0][0]', Y \n",
+ " 'block3g_se_expand[0][0]'] \n",
+ " \n",
+ " block3g_project_conv (Conv2D) (None, 28, 28, 80) 38400 ['block3g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block3g_project_bn (BatchNorma (None, 28, 28, 80) 320 ['block3g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block3g_drop (FixedDropout) (None, 28, 28, 80) 0 ['block3g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block3g_add (Add) (None, 28, 28, 80) 0 ['block3g_drop[0][0]', Y \n",
+ " 'block3f_add[0][0]'] \n",
+ " \n",
+ " block4a_expand_conv (Conv2D) (None, 28, 28, 480) 38400 ['block3g_add[0][0]'] Y \n",
+ " \n",
+ " block4a_expand_bn (BatchNormal (None, 28, 28, 480) 1920 ['block4a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4a_expand_activation (Act (None, 28, 28, 480) 0 ['block4a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4a_dwconv (DepthwiseConv2 (None, 14, 14, 480) 4320 ['block4a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4a_bn (BatchNormalization (None, 14, 14, 480) 1920 ['block4a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_activation (Activation (None, 14, 14, 480) 0 ['block4a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4a_se_squeeze (GlobalAver (None, 480) 0 ['block4a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4a_se_reshape (Reshape) (None, 1, 1, 480) 0 ['block4a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4a_se_reduce (Conv2D) (None, 1, 1, 20) 9620 ['block4a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4a_se_expand (Conv2D) (None, 1, 1, 480) 10080 ['block4a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4a_se_excite (Multiply) (None, 14, 14, 480) 0 ['block4a_activation[0][0]', Y \n",
+ " 'block4a_se_expand[0][0]'] \n",
+ " \n",
+ " block4a_project_conv (Conv2D) (None, 14, 14, 160) 76800 ['block4a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4a_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4b_expand_activation (Act (None, 14, 14, 960) 0 ['block4b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4b_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4b_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_activation (Activation (None, 14, 14, 960) 0 ['block4b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4b_se_squeeze (GlobalAver (None, 960) 0 ['block4b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4b_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4b_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4b_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4b_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4b_activation[0][0]', Y \n",
+ " 'block4b_se_expand[0][0]'] \n",
+ " \n",
+ " block4b_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4b_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4b_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4b_add (Add) (None, 14, 14, 160) 0 ['block4b_drop[0][0]', Y \n",
+ " 'block4a_project_bn[0][0]'] \n",
+ " \n",
+ " block4c_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4b_add[0][0]'] Y \n",
+ " \n",
+ " block4c_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4c_expand_activation (Act (None, 14, 14, 960) 0 ['block4c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4c_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4c_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_activation (Activation (None, 14, 14, 960) 0 ['block4c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4c_se_squeeze (GlobalAver (None, 960) 0 ['block4c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4c_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4c_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4c_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4c_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4c_activation[0][0]', Y \n",
+ " 'block4c_se_expand[0][0]'] \n",
+ " \n",
+ " block4c_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4c_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4c_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4c_add (Add) (None, 14, 14, 160) 0 ['block4c_drop[0][0]', Y \n",
+ " 'block4b_add[0][0]'] \n",
+ " \n",
+ " block4d_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4c_add[0][0]'] Y \n",
+ " \n",
+ " block4d_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4d_expand_activation (Act (None, 14, 14, 960) 0 ['block4d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4d_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4d_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_activation (Activation (None, 14, 14, 960) 0 ['block4d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4d_se_squeeze (GlobalAver (None, 960) 0 ['block4d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4d_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4d_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4d_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4d_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4d_activation[0][0]', Y \n",
+ " 'block4d_se_expand[0][0]'] \n",
+ " \n",
+ " block4d_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4d_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4d_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4d_add (Add) (None, 14, 14, 160) 0 ['block4d_drop[0][0]', Y \n",
+ " 'block4c_add[0][0]'] \n",
+ " \n",
+ " block4e_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4d_add[0][0]'] Y \n",
+ " \n",
+ " block4e_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4e_expand_activation (Act (None, 14, 14, 960) 0 ['block4e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4e_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4e_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_activation (Activation (None, 14, 14, 960) 0 ['block4e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4e_se_squeeze (GlobalAver (None, 960) 0 ['block4e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4e_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4e_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4e_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4e_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4e_activation[0][0]', Y \n",
+ " 'block4e_se_expand[0][0]'] \n",
+ " \n",
+ " block4e_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4e_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4e_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4e_add (Add) (None, 14, 14, 160) 0 ['block4e_drop[0][0]', Y \n",
+ " 'block4d_add[0][0]'] \n",
+ " \n",
+ " block4f_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4e_add[0][0]'] Y \n",
+ " \n",
+ " block4f_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4f_expand_activation (Act (None, 14, 14, 960) 0 ['block4f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4f_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4f_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_activation (Activation (None, 14, 14, 960) 0 ['block4f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4f_se_squeeze (GlobalAver (None, 960) 0 ['block4f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4f_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4f_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4f_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4f_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4f_activation[0][0]', Y \n",
+ " 'block4f_se_expand[0][0]'] \n",
+ " \n",
+ " block4f_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4f_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4f_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4f_add (Add) (None, 14, 14, 160) 0 ['block4f_drop[0][0]', Y \n",
+ " 'block4e_add[0][0]'] \n",
+ " \n",
+ " block4g_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4f_add[0][0]'] Y \n",
+ " \n",
+ " block4g_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4g_expand_activation (Act (None, 14, 14, 960) 0 ['block4g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4g_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4g_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_activation (Activation (None, 14, 14, 960) 0 ['block4g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4g_se_squeeze (GlobalAver (None, 960) 0 ['block4g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4g_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4g_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4g_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4g_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4g_activation[0][0]', Y \n",
+ " 'block4g_se_expand[0][0]'] \n",
+ " \n",
+ " block4g_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4g_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4g_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4g_add (Add) (None, 14, 14, 160) 0 ['block4g_drop[0][0]', Y \n",
+ " 'block4f_add[0][0]'] \n",
+ " \n",
+ " block4h_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4g_add[0][0]'] Y \n",
+ " \n",
+ " block4h_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4h_expand_activation (Act (None, 14, 14, 960) 0 ['block4h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4h_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4h_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_activation (Activation (None, 14, 14, 960) 0 ['block4h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4h_se_squeeze (GlobalAver (None, 960) 0 ['block4h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4h_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4h_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4h_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4h_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4h_activation[0][0]', Y \n",
+ " 'block4h_se_expand[0][0]'] \n",
+ " \n",
+ " block4h_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4h_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4h_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4h_add (Add) (None, 14, 14, 160) 0 ['block4h_drop[0][0]', Y \n",
+ " 'block4g_add[0][0]'] \n",
+ " \n",
+ " block4i_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4h_add[0][0]'] Y \n",
+ " \n",
+ " block4i_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4i_expand_activation (Act (None, 14, 14, 960) 0 ['block4i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4i_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4i_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_activation (Activation (None, 14, 14, 960) 0 ['block4i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4i_se_squeeze (GlobalAver (None, 960) 0 ['block4i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4i_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4i_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4i_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4i_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4i_activation[0][0]', Y \n",
+ " 'block4i_se_expand[0][0]'] \n",
+ " \n",
+ " block4i_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4i_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4i_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4i_add (Add) (None, 14, 14, 160) 0 ['block4i_drop[0][0]', Y \n",
+ " 'block4h_add[0][0]'] \n",
+ " \n",
+ " block4j_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4i_add[0][0]'] Y \n",
+ " \n",
+ " block4j_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block4j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block4j_expand_activation (Act (None, 14, 14, 960) 0 ['block4j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block4j_dwconv (DepthwiseConv2 (None, 14, 14, 960) 8640 ['block4j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block4j_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block4j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_activation (Activation (None, 14, 14, 960) 0 ['block4j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block4j_se_squeeze (GlobalAver (None, 960) 0 ['block4j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block4j_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block4j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block4j_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block4j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block4j_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block4j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block4j_se_excite (Multiply) (None, 14, 14, 960) 0 ['block4j_activation[0][0]', Y \n",
+ " 'block4j_se_expand[0][0]'] \n",
+ " \n",
+ " block4j_project_conv (Conv2D) (None, 14, 14, 160) 153600 ['block4j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block4j_project_bn (BatchNorma (None, 14, 14, 160) 640 ['block4j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block4j_drop (FixedDropout) (None, 14, 14, 160) 0 ['block4j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block4j_add (Add) (None, 14, 14, 160) 0 ['block4j_drop[0][0]', Y \n",
+ " 'block4i_add[0][0]'] \n",
+ " \n",
+ " block5a_expand_conv (Conv2D) (None, 14, 14, 960) 153600 ['block4j_add[0][0]'] Y \n",
+ " \n",
+ " block5a_expand_bn (BatchNormal (None, 14, 14, 960) 3840 ['block5a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block5a_expand_activation (Act (None, 14, 14, 960) 0 ['block5a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block5a_dwconv (DepthwiseConv2 (None, 14, 14, 960) 24000 ['block5a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block5a_bn (BatchNormalization (None, 14, 14, 960) 3840 ['block5a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_activation (Activation (None, 14, 14, 960) 0 ['block5a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5a_se_squeeze (GlobalAver (None, 960) 0 ['block5a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5a_se_reshape (Reshape) (None, 1, 1, 960) 0 ['block5a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5a_se_reduce (Conv2D) (None, 1, 1, 40) 38440 ['block5a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5a_se_expand (Conv2D) (None, 1, 1, 960) 39360 ['block5a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5a_se_excite (Multiply) (None, 14, 14, 960) 0 ['block5a_activation[0][0]', Y \n",
+ " 'block5a_se_expand[0][0]'] \n",
+ " \n",
+ " block5a_project_conv (Conv2D) (None, 14, 14, 224) 215040 ['block5a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5a_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5a_project_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5b_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5b_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5b_expand_activation (Act (None, 14, 14, 1344 0 ['block5b_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5b_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5b_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5b_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5b_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_activation (Activation (None, 14, 14, 1344 0 ['block5b_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5b_se_squeeze (GlobalAver (None, 1344) 0 ['block5b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5b_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5b_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5b_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5b_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5b_activation[0][0]', Y \n",
+ " ) 'block5b_se_expand[0][0]'] \n",
+ " \n",
+ " block5b_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5b_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5b_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5b_add (Add) (None, 14, 14, 224) 0 ['block5b_drop[0][0]', Y \n",
+ " 'block5a_project_bn[0][0]'] \n",
+ " \n",
+ " block5c_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5b_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5c_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5c_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5c_expand_activation (Act (None, 14, 14, 1344 0 ['block5c_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5c_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5c_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5c_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5c_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_activation (Activation (None, 14, 14, 1344 0 ['block5c_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5c_se_squeeze (GlobalAver (None, 1344) 0 ['block5c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5c_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5c_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5c_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5c_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5c_activation[0][0]', Y \n",
+ " ) 'block5c_se_expand[0][0]'] \n",
+ " \n",
+ " block5c_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5c_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5c_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5c_add (Add) (None, 14, 14, 224) 0 ['block5c_drop[0][0]', Y \n",
+ " 'block5b_add[0][0]'] \n",
+ " \n",
+ " block5d_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5c_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5d_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5d_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5d_expand_activation (Act (None, 14, 14, 1344 0 ['block5d_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5d_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5d_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5d_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5d_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_activation (Activation (None, 14, 14, 1344 0 ['block5d_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5d_se_squeeze (GlobalAver (None, 1344) 0 ['block5d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5d_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5d_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5d_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5d_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5d_activation[0][0]', Y \n",
+ " ) 'block5d_se_expand[0][0]'] \n",
+ " \n",
+ " block5d_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5d_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5d_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5d_add (Add) (None, 14, 14, 224) 0 ['block5d_drop[0][0]', Y \n",
+ " 'block5c_add[0][0]'] \n",
+ " \n",
+ " block5e_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5d_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5e_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5e_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5e_expand_activation (Act (None, 14, 14, 1344 0 ['block5e_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5e_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5e_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5e_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5e_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_activation (Activation (None, 14, 14, 1344 0 ['block5e_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5e_se_squeeze (GlobalAver (None, 1344) 0 ['block5e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5e_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5e_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5e_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5e_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5e_activation[0][0]', Y \n",
+ " ) 'block5e_se_expand[0][0]'] \n",
+ " \n",
+ " block5e_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5e_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5e_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5e_add (Add) (None, 14, 14, 224) 0 ['block5e_drop[0][0]', Y \n",
+ " 'block5d_add[0][0]'] \n",
+ " \n",
+ " block5f_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5e_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5f_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5f_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5f_expand_activation (Act (None, 14, 14, 1344 0 ['block5f_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5f_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5f_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5f_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5f_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_activation (Activation (None, 14, 14, 1344 0 ['block5f_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5f_se_squeeze (GlobalAver (None, 1344) 0 ['block5f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5f_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5f_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5f_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5f_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5f_activation[0][0]', Y \n",
+ " ) 'block5f_se_expand[0][0]'] \n",
+ " \n",
+ " block5f_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5f_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5f_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5f_add (Add) (None, 14, 14, 224) 0 ['block5f_drop[0][0]', Y \n",
+ " 'block5e_add[0][0]'] \n",
+ " \n",
+ " block5g_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5f_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5g_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5g_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5g_expand_activation (Act (None, 14, 14, 1344 0 ['block5g_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5g_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5g_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5g_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5g_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_activation (Activation (None, 14, 14, 1344 0 ['block5g_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5g_se_squeeze (GlobalAver (None, 1344) 0 ['block5g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5g_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5g_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5g_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5g_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5g_activation[0][0]', Y \n",
+ " ) 'block5g_se_expand[0][0]'] \n",
+ " \n",
+ " block5g_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5g_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5g_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5g_add (Add) (None, 14, 14, 224) 0 ['block5g_drop[0][0]', Y \n",
+ " 'block5f_add[0][0]'] \n",
+ " \n",
+ " block5h_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5g_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5h_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5h_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5h_expand_activation (Act (None, 14, 14, 1344 0 ['block5h_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5h_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5h_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5h_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5h_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_activation (Activation (None, 14, 14, 1344 0 ['block5h_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5h_se_squeeze (GlobalAver (None, 1344) 0 ['block5h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5h_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5h_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5h_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5h_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5h_activation[0][0]', Y \n",
+ " ) 'block5h_se_expand[0][0]'] \n",
+ " \n",
+ " block5h_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5h_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5h_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5h_add (Add) (None, 14, 14, 224) 0 ['block5h_drop[0][0]', Y \n",
+ " 'block5g_add[0][0]'] \n",
+ " \n",
+ " block5i_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5h_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5i_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5i_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5i_expand_activation (Act (None, 14, 14, 1344 0 ['block5i_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5i_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5i_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5i_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5i_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_activation (Activation (None, 14, 14, 1344 0 ['block5i_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5i_se_squeeze (GlobalAver (None, 1344) 0 ['block5i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5i_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5i_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5i_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5i_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5i_activation[0][0]', Y \n",
+ " ) 'block5i_se_expand[0][0]'] \n",
+ " \n",
+ " block5i_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5i_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5i_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5i_add (Add) (None, 14, 14, 224) 0 ['block5i_drop[0][0]', Y \n",
+ " 'block5h_add[0][0]'] \n",
+ " \n",
+ " block5j_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5i_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block5j_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block5j_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block5j_expand_activation (Act (None, 14, 14, 1344 0 ['block5j_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block5j_dwconv (DepthwiseConv2 (None, 14, 14, 1344 33600 ['block5j_expand_activation[0][ Y \n",
+ " D) ) 0]'] \n",
+ " \n",
+ " block5j_bn (BatchNormalization (None, 14, 14, 1344 5376 ['block5j_dwconv[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_activation (Activation (None, 14, 14, 1344 0 ['block5j_bn[0][0]'] Y \n",
+ " ) ) \n",
+ " \n",
+ " block5j_se_squeeze (GlobalAver (None, 1344) 0 ['block5j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block5j_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block5j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block5j_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block5j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block5j_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block5j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block5j_se_excite (Multiply) (None, 14, 14, 1344 0 ['block5j_activation[0][0]', Y \n",
+ " ) 'block5j_se_expand[0][0]'] \n",
+ " \n",
+ " block5j_project_conv (Conv2D) (None, 14, 14, 224) 301056 ['block5j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block5j_project_bn (BatchNorma (None, 14, 14, 224) 896 ['block5j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block5j_drop (FixedDropout) (None, 14, 14, 224) 0 ['block5j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block5j_add (Add) (None, 14, 14, 224) 0 ['block5j_drop[0][0]', Y \n",
+ " 'block5i_add[0][0]'] \n",
+ " \n",
+ " block6a_expand_conv (Conv2D) (None, 14, 14, 1344 301056 ['block5j_add[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_expand_bn (BatchNormal (None, 14, 14, 1344 5376 ['block6a_expand_conv[0][0]'] Y \n",
+ " ization) ) \n",
+ " \n",
+ " block6a_expand_activation (Act (None, 14, 14, 1344 0 ['block6a_expand_bn[0][0]'] Y \n",
+ " ivation) ) \n",
+ " \n",
+ " block6a_dwconv (DepthwiseConv2 (None, 7, 7, 1344) 33600 ['block6a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6a_bn (BatchNormalization (None, 7, 7, 1344) 5376 ['block6a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_activation (Activation (None, 7, 7, 1344) 0 ['block6a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6a_se_squeeze (GlobalAver (None, 1344) 0 ['block6a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6a_se_reshape (Reshape) (None, 1, 1, 1344) 0 ['block6a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6a_se_reduce (Conv2D) (None, 1, 1, 56) 75320 ['block6a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6a_se_expand (Conv2D) (None, 1, 1, 1344) 76608 ['block6a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6a_se_excite (Multiply) (None, 7, 7, 1344) 0 ['block6a_activation[0][0]', Y \n",
+ " 'block6a_se_expand[0][0]'] \n",
+ " \n",
+ " block6a_project_conv (Conv2D) (None, 7, 7, 384) 516096 ['block6a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6a_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6b_expand_activation (Act (None, 7, 7, 2304) 0 ['block6b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6b_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6b_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_activation (Activation (None, 7, 7, 2304) 0 ['block6b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6b_se_squeeze (GlobalAver (None, 2304) 0 ['block6b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6b_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6b_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6b_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6b_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6b_activation[0][0]', Y \n",
+ " 'block6b_se_expand[0][0]'] \n",
+ " \n",
+ " block6b_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6b_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6b_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6b_add (Add) (None, 7, 7, 384) 0 ['block6b_drop[0][0]', Y \n",
+ " 'block6a_project_bn[0][0]'] \n",
+ " \n",
+ " block6c_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6b_add[0][0]'] Y \n",
+ " \n",
+ " block6c_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6c_expand_activation (Act (None, 7, 7, 2304) 0 ['block6c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6c_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6c_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_activation (Activation (None, 7, 7, 2304) 0 ['block6c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6c_se_squeeze (GlobalAver (None, 2304) 0 ['block6c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6c_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6c_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6c_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6c_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6c_activation[0][0]', Y \n",
+ " 'block6c_se_expand[0][0]'] \n",
+ " \n",
+ " block6c_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6c_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6c_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6c_add (Add) (None, 7, 7, 384) 0 ['block6c_drop[0][0]', Y \n",
+ " 'block6b_add[0][0]'] \n",
+ " \n",
+ " block6d_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6c_add[0][0]'] Y \n",
+ " \n",
+ " block6d_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6d_expand_activation (Act (None, 7, 7, 2304) 0 ['block6d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6d_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6d_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_activation (Activation (None, 7, 7, 2304) 0 ['block6d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6d_se_squeeze (GlobalAver (None, 2304) 0 ['block6d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6d_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6d_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6d_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6d_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6d_activation[0][0]', Y \n",
+ " 'block6d_se_expand[0][0]'] \n",
+ " \n",
+ " block6d_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6d_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6d_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6d_add (Add) (None, 7, 7, 384) 0 ['block6d_drop[0][0]', Y \n",
+ " 'block6c_add[0][0]'] \n",
+ " \n",
+ " block6e_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6d_add[0][0]'] Y \n",
+ " \n",
+ " block6e_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6e_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6e_expand_activation (Act (None, 7, 7, 2304) 0 ['block6e_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6e_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6e_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6e_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6e_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_activation (Activation (None, 7, 7, 2304) 0 ['block6e_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6e_se_squeeze (GlobalAver (None, 2304) 0 ['block6e_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6e_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6e_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6e_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6e_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6e_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6e_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6e_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6e_activation[0][0]', Y \n",
+ " 'block6e_se_expand[0][0]'] \n",
+ " \n",
+ " block6e_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6e_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6e_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6e_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6e_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6e_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6e_add (Add) (None, 7, 7, 384) 0 ['block6e_drop[0][0]', Y \n",
+ " 'block6d_add[0][0]'] \n",
+ " \n",
+ " block6f_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6e_add[0][0]'] Y \n",
+ " \n",
+ " block6f_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6f_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6f_expand_activation (Act (None, 7, 7, 2304) 0 ['block6f_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6f_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6f_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6f_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6f_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_activation (Activation (None, 7, 7, 2304) 0 ['block6f_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6f_se_squeeze (GlobalAver (None, 2304) 0 ['block6f_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6f_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6f_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6f_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6f_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6f_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6f_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6f_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6f_activation[0][0]', Y \n",
+ " 'block6f_se_expand[0][0]'] \n",
+ " \n",
+ " block6f_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6f_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6f_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6f_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6f_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6f_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6f_add (Add) (None, 7, 7, 384) 0 ['block6f_drop[0][0]', Y \n",
+ " 'block6e_add[0][0]'] \n",
+ " \n",
+ " block6g_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6f_add[0][0]'] Y \n",
+ " \n",
+ " block6g_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6g_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6g_expand_activation (Act (None, 7, 7, 2304) 0 ['block6g_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6g_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6g_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6g_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6g_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_activation (Activation (None, 7, 7, 2304) 0 ['block6g_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6g_se_squeeze (GlobalAver (None, 2304) 0 ['block6g_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6g_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6g_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6g_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6g_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6g_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6g_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6g_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6g_activation[0][0]', Y \n",
+ " 'block6g_se_expand[0][0]'] \n",
+ " \n",
+ " block6g_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6g_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6g_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6g_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6g_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6g_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6g_add (Add) (None, 7, 7, 384) 0 ['block6g_drop[0][0]', Y \n",
+ " 'block6f_add[0][0]'] \n",
+ " \n",
+ " block6h_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6g_add[0][0]'] Y \n",
+ " \n",
+ " block6h_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6h_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6h_expand_activation (Act (None, 7, 7, 2304) 0 ['block6h_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6h_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6h_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6h_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6h_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_activation (Activation (None, 7, 7, 2304) 0 ['block6h_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6h_se_squeeze (GlobalAver (None, 2304) 0 ['block6h_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6h_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6h_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6h_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6h_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6h_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6h_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6h_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6h_activation[0][0]', Y \n",
+ " 'block6h_se_expand[0][0]'] \n",
+ " \n",
+ " block6h_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6h_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6h_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6h_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6h_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6h_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6h_add (Add) (None, 7, 7, 384) 0 ['block6h_drop[0][0]', Y \n",
+ " 'block6g_add[0][0]'] \n",
+ " \n",
+ " block6i_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6h_add[0][0]'] Y \n",
+ " \n",
+ " block6i_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6i_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6i_expand_activation (Act (None, 7, 7, 2304) 0 ['block6i_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6i_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6i_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6i_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6i_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_activation (Activation (None, 7, 7, 2304) 0 ['block6i_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6i_se_squeeze (GlobalAver (None, 2304) 0 ['block6i_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6i_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6i_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6i_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6i_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6i_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6i_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6i_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6i_activation[0][0]', Y \n",
+ " 'block6i_se_expand[0][0]'] \n",
+ " \n",
+ " block6i_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6i_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6i_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6i_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6i_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6i_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6i_add (Add) (None, 7, 7, 384) 0 ['block6i_drop[0][0]', Y \n",
+ " 'block6h_add[0][0]'] \n",
+ " \n",
+ " block6j_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6i_add[0][0]'] Y \n",
+ " \n",
+ " block6j_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6j_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6j_expand_activation (Act (None, 7, 7, 2304) 0 ['block6j_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6j_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6j_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6j_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6j_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_activation (Activation (None, 7, 7, 2304) 0 ['block6j_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6j_se_squeeze (GlobalAver (None, 2304) 0 ['block6j_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6j_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6j_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6j_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6j_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6j_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6j_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6j_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6j_activation[0][0]', Y \n",
+ " 'block6j_se_expand[0][0]'] \n",
+ " \n",
+ " block6j_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6j_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6j_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6j_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6j_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6j_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6j_add (Add) (None, 7, 7, 384) 0 ['block6j_drop[0][0]', Y \n",
+ " 'block6i_add[0][0]'] \n",
+ " \n",
+ " block6k_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6j_add[0][0]'] Y \n",
+ " \n",
+ " block6k_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6k_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6k_expand_activation (Act (None, 7, 7, 2304) 0 ['block6k_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6k_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6k_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6k_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6k_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_activation (Activation (None, 7, 7, 2304) 0 ['block6k_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6k_se_squeeze (GlobalAver (None, 2304) 0 ['block6k_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6k_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6k_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6k_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6k_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6k_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6k_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6k_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6k_activation[0][0]', Y \n",
+ " 'block6k_se_expand[0][0]'] \n",
+ " \n",
+ " block6k_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6k_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6k_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6k_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6k_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6k_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6k_add (Add) (None, 7, 7, 384) 0 ['block6k_drop[0][0]', Y \n",
+ " 'block6j_add[0][0]'] \n",
+ " \n",
+ " block6l_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6k_add[0][0]'] Y \n",
+ " \n",
+ " block6l_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6l_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6l_expand_activation (Act (None, 7, 7, 2304) 0 ['block6l_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6l_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6l_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6l_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6l_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_activation (Activation (None, 7, 7, 2304) 0 ['block6l_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6l_se_squeeze (GlobalAver (None, 2304) 0 ['block6l_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6l_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6l_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6l_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6l_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6l_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6l_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6l_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6l_activation[0][0]', Y \n",
+ " 'block6l_se_expand[0][0]'] \n",
+ " \n",
+ " block6l_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6l_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6l_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6l_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6l_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6l_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6l_add (Add) (None, 7, 7, 384) 0 ['block6l_drop[0][0]', Y \n",
+ " 'block6k_add[0][0]'] \n",
+ " \n",
+ " block6m_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6l_add[0][0]'] Y \n",
+ " \n",
+ " block6m_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block6m_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block6m_expand_activation (Act (None, 7, 7, 2304) 0 ['block6m_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block6m_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 57600 ['block6m_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block6m_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block6m_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_activation (Activation (None, 7, 7, 2304) 0 ['block6m_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block6m_se_squeeze (GlobalAver (None, 2304) 0 ['block6m_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block6m_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block6m_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block6m_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block6m_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block6m_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block6m_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block6m_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block6m_activation[0][0]', Y \n",
+ " 'block6m_se_expand[0][0]'] \n",
+ " \n",
+ " block6m_project_conv (Conv2D) (None, 7, 7, 384) 884736 ['block6m_se_excite[0][0]'] Y \n",
+ " \n",
+ " block6m_project_bn (BatchNorma (None, 7, 7, 384) 1536 ['block6m_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block6m_drop (FixedDropout) (None, 7, 7, 384) 0 ['block6m_project_bn[0][0]'] Y \n",
+ " \n",
+ " block6m_add (Add) (None, 7, 7, 384) 0 ['block6m_drop[0][0]', Y \n",
+ " 'block6l_add[0][0]'] \n",
+ " \n",
+ " block7a_expand_conv (Conv2D) (None, 7, 7, 2304) 884736 ['block6m_add[0][0]'] Y \n",
+ " \n",
+ " block7a_expand_bn (BatchNormal (None, 7, 7, 2304) 9216 ['block7a_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7a_expand_activation (Act (None, 7, 7, 2304) 0 ['block7a_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7a_dwconv (DepthwiseConv2 (None, 7, 7, 2304) 20736 ['block7a_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7a_bn (BatchNormalization (None, 7, 7, 2304) 9216 ['block7a_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_activation (Activation (None, 7, 7, 2304) 0 ['block7a_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7a_se_squeeze (GlobalAver (None, 2304) 0 ['block7a_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7a_se_reshape (Reshape) (None, 1, 1, 2304) 0 ['block7a_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7a_se_reduce (Conv2D) (None, 1, 1, 96) 221280 ['block7a_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7a_se_expand (Conv2D) (None, 1, 1, 2304) 223488 ['block7a_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7a_se_excite (Multiply) (None, 7, 7, 2304) 0 ['block7a_activation[0][0]', Y \n",
+ " 'block7a_se_expand[0][0]'] \n",
+ " \n",
+ " block7a_project_conv (Conv2D) (None, 7, 7, 640) 1474560 ['block7a_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7a_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7a_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7a_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7b_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7b_expand_activation (Act (None, 7, 7, 3840) 0 ['block7b_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7b_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7b_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7b_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7b_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_activation (Activation (None, 7, 7, 3840) 0 ['block7b_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7b_se_squeeze (GlobalAver (None, 3840) 0 ['block7b_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7b_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7b_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7b_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7b_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7b_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7b_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7b_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7b_activation[0][0]', Y \n",
+ " 'block7b_se_expand[0][0]'] \n",
+ " \n",
+ " block7b_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7b_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7b_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7b_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7b_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7b_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7b_add (Add) (None, 7, 7, 640) 0 ['block7b_drop[0][0]', Y \n",
+ " 'block7a_project_bn[0][0]'] \n",
+ " \n",
+ " block7c_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7b_add[0][0]'] Y \n",
+ " \n",
+ " block7c_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7c_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7c_expand_activation (Act (None, 7, 7, 3840) 0 ['block7c_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7c_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7c_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7c_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7c_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_activation (Activation (None, 7, 7, 3840) 0 ['block7c_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7c_se_squeeze (GlobalAver (None, 3840) 0 ['block7c_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7c_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7c_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7c_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7c_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7c_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7c_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7c_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7c_activation[0][0]', Y \n",
+ " 'block7c_se_expand[0][0]'] \n",
+ " \n",
+ " block7c_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7c_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7c_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7c_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7c_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7c_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7c_add (Add) (None, 7, 7, 640) 0 ['block7c_drop[0][0]', Y \n",
+ " 'block7b_add[0][0]'] \n",
+ " \n",
+ " block7d_expand_conv (Conv2D) (None, 7, 7, 3840) 2457600 ['block7c_add[0][0]'] Y \n",
+ " \n",
+ " block7d_expand_bn (BatchNormal (None, 7, 7, 3840) 15360 ['block7d_expand_conv[0][0]'] Y \n",
+ " ization) \n",
+ " \n",
+ " block7d_expand_activation (Act (None, 7, 7, 3840) 0 ['block7d_expand_bn[0][0]'] Y \n",
+ " ivation) \n",
+ " \n",
+ " block7d_dwconv (DepthwiseConv2 (None, 7, 7, 3840) 34560 ['block7d_expand_activation[0][ Y \n",
+ " D) 0]'] \n",
+ " \n",
+ " block7d_bn (BatchNormalization (None, 7, 7, 3840) 15360 ['block7d_dwconv[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_activation (Activation (None, 7, 7, 3840) 0 ['block7d_bn[0][0]'] Y \n",
+ " ) \n",
+ " \n",
+ " block7d_se_squeeze (GlobalAver (None, 3840) 0 ['block7d_activation[0][0]'] Y \n",
+ " agePooling2D) \n",
+ " \n",
+ " block7d_se_reshape (Reshape) (None, 1, 1, 3840) 0 ['block7d_se_squeeze[0][0]'] Y \n",
+ " \n",
+ " block7d_se_reduce (Conv2D) (None, 1, 1, 160) 614560 ['block7d_se_reshape[0][0]'] Y \n",
+ " \n",
+ " block7d_se_expand (Conv2D) (None, 1, 1, 3840) 618240 ['block7d_se_reduce[0][0]'] Y \n",
+ " \n",
+ " block7d_se_excite (Multiply) (None, 7, 7, 3840) 0 ['block7d_activation[0][0]', Y \n",
+ " 'block7d_se_expand[0][0]'] \n",
+ " \n",
+ " block7d_project_conv (Conv2D) (None, 7, 7, 640) 2457600 ['block7d_se_excite[0][0]'] Y \n",
+ " \n",
+ " block7d_project_bn (BatchNorma (None, 7, 7, 640) 2560 ['block7d_project_conv[0][0]'] Y \n",
+ " lization) \n",
+ " \n",
+ " block7d_drop (FixedDropout) (None, 7, 7, 640) 0 ['block7d_project_bn[0][0]'] Y \n",
+ " \n",
+ " block7d_add (Add) (None, 7, 7, 640) 0 ['block7d_drop[0][0]', Y \n",
+ " 'block7c_add[0][0]'] \n",
+ " \n",
+ " top_conv (Conv2D) (None, 7, 7, 2560) 1638400 ['block7d_add[0][0]'] Y \n",
+ " \n",
+ " top_bn (BatchNormalization) (None, 7, 7, 2560) 10240 ['top_conv[0][0]'] Y \n",
+ " \n",
+ " top_activation (Activation) (None, 7, 7, 2560) 0 ['top_bn[0][0]'] Y \n",
+ " \n",
+ " global_average_pooling2d (Glob (None, 2560) 0 ['top_activation[0][0]'] Y \n",
+ " alAveragePooling2D) \n",
+ " \n",
+ " dense (Dense) (None, 512) 1311232 ['global_average_pooling2d[0][0 Y \n",
+ " ]'] \n",
+ " \n",
+ " dropout (Dropout) (None, 512) 0 ['dense[0][0]'] Y \n",
+ " \n",
+ " batch_normalization (BatchNorm (None, 512) 2048 ['dropout[0][0]'] Y \n",
+ " alization) \n",
+ " \n",
+ " dense_1 (Dense) (None, 512) 262656 ['batch_normalization[0][0]'] Y \n",
+ " \n",
+ " batch_normalization_1 (BatchNo (None, 512) 2048 ['dense_1[0][0]'] Y \n",
+ " rmalization) \n",
+ " \n",
+ " dense_2 (Dense) (None, 128) 65664 ['batch_normalization_1[0][0]'] Y \n",
+ " \n",
+ " dense_3 (Dense) (None, 2) 258 ['dense_2[0][0]'] Y \n",
+ " \n",
+ "=============================================================================================================\n",
+ "Total params: 65,741,586\n",
+ "Trainable params: 65,428,818\n",
+ "Non-trainable params: 312,768\n",
+ "_____________________________________________________________________________________________________________\n",
+ "done.\n"
+ ]
+ }
+ ],
"source": [
"import efficientnet.tfkeras\n",
"# Configuration\n",
@@ -1665,9 +17166,18 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 8,
"metadata": {},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "c:\\Users\\aydin\\Desktop\\Pneumonia AI Dev\\venv\\lib\\site-packages\\keras\\initializers\\initializers_v2.py:120: UserWarning: The initializer GlorotUniform is unseeded and being called multiple times, which will return identical values each time (even if the initializer is unseeded). Please update your code to provide a seed to the initializer, or avoid using the same initalizer instance more than once.\n",
+ " warnings.warn(\n"
+ ]
+ }
+ ],
"source": [
"for layer in model.layers[-7:]:\n",
" if hasattr(layer, 'kernel_initializer') and hasattr(layer, 'bias_initializer'):\n",
@@ -1710,14 +17220,272 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 18,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T07:04:23.573633300Z",
"start_time": "2023-12-28T02:31:32.468641900Z"
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Training the model...\n",
+ "\u001b[0;33m\n",
+ "Setup Verbose:\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSetting TensorBoard Log dir to \u001b[0m\u001b[0;32m[logs/fit/y2024_m01_d20-h14_m28_s32]\u001b[0m\u001b[0;36m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mUse_extended_tensorboard \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mDebug_OUTPUT_DPS \u001b[0m\u001b[0;32m[True]\u001b[0m\u001b[0;36m.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mOneCycleLr_UFTS \u001b[0m\u001b[0;32m[False]\u001b[0m\u001b[0;36m.\u001b[0m\n",
+ "\u001b[0;33mSetup Verbose END.\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m1\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 0)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Fitting ImageDataGenerator...\u001b[0m\n",
+ "\u001b[0;33m- ImageDataGenerator fit done.\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;31m- Debug DP Sample dir: \u001b[0m\u001b[0;32mSamples/TSR_SUB_400_y2024_m01_d20-h15_m16_s13\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 1/6\n",
+ "406/406 [==============================] - 155s 319ms/step - loss: 8.5439 - accuracy: 0.6982 - val_loss: 6.6307 - val_accuracy: 0.8542\n",
+ "Epoch 2/6\n",
+ "406/406 [==============================] - 125s 306ms/step - loss: 4.7330 - accuracy: 0.8637 - val_loss: 3.2099 - val_accuracy: 0.8830\n",
+ "Epoch 3/6\n",
+ "406/406 [==============================] - 122s 300ms/step - loss: 2.3208 - accuracy: 0.8934 - val_loss: 1.5924 - val_accuracy: 0.9359\n",
+ "Epoch 4/6\n",
+ "406/406 [==============================] - 121s 297ms/step - loss: 1.2655 - accuracy: 0.9172 - val_loss: 1.0271 - val_accuracy: 0.8974\n",
+ "Epoch 5/6\n",
+ "406/406 [==============================] - 121s 298ms/step - loss: 0.8062 - accuracy: 0.9397 - val_loss: 0.7362 - val_accuracy: 0.9247\n",
+ "Epoch 6/6\n",
+ "406/406 [==============================] - 121s 296ms/step - loss: 0.6470 - accuracy: 0.9542 - val_loss: 0.7094 - val_accuracy: 0.9199\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-003-0.9359.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9359\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m1.5924\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.000000 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.935897\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32minf \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m1.5924291611\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m3664.38 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m766.33 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m2898.04 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [1] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m2\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 6)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 7/12\n",
+ "406/406 [==============================] - 132s 306ms/step - loss: 1.5461 - accuracy: 0.8913 - val_loss: 1.2090 - val_accuracy: 0.9407\n",
+ "Epoch 8/12\n",
+ "406/406 [==============================] - 121s 297ms/step - loss: 1.0327 - accuracy: 0.8999 - val_loss: 0.7438 - val_accuracy: 0.9343\n",
+ "Epoch 9/12\n",
+ "406/406 [==============================] - 123s 301ms/step - loss: 0.6250 - accuracy: 0.9246 - val_loss: 0.4678 - val_accuracy: 0.9423\n",
+ "Epoch 10/12\n",
+ "406/406 [==============================] - 121s 297ms/step - loss: 0.4208 - accuracy: 0.9331 - val_loss: 0.4349 - val_accuracy: 0.9071\n",
+ "Epoch 11/12\n",
+ "406/406 [==============================] - 122s 299ms/step - loss: 0.3013 - accuracy: 0.9516 - val_loss: 0.3990 - val_accuracy: 0.8974\n",
+ "Epoch 12/12\n",
+ "406/406 [==============================] - 122s 299ms/step - loss: 0.2379 - accuracy: 0.9647 - val_loss: 0.3533 - val_accuracy: 0.9119\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-009-0.9423.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9423\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.4678\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.935897 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.942308\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m1.5924291611 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.4677759409\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1287.58 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m741.57 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m546.01 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [2] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m3\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 12)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 13/18\n",
+ "406/406 [==============================] - 134s 310ms/step - loss: 0.5146 - accuracy: 0.9133 - val_loss: 0.4275 - val_accuracy: 0.9359\n",
+ "Epoch 14/18\n",
+ "406/406 [==============================] - 122s 300ms/step - loss: 0.4136 - accuracy: 0.9201 - val_loss: 0.3370 - val_accuracy: 0.9327\n",
+ "Epoch 15/18\n",
+ "406/406 [==============================] - 124s 304ms/step - loss: 0.2975 - accuracy: 0.9334 - val_loss: 0.2745 - val_accuracy: 0.9439\n",
+ "Epoch 16/18\n",
+ "406/406 [==============================] - 123s 301ms/step - loss: 0.2354 - accuracy: 0.9468 - val_loss: 0.2115 - val_accuracy: 0.9423\n",
+ "Epoch 17/18\n",
+ "406/406 [==============================] - 122s 300ms/step - loss: 0.1641 - accuracy: 0.9625 - val_loss: 0.3363 - val_accuracy: 0.8462\n",
+ "Epoch 18/18\n",
+ "406/406 [==============================] - 128s 314ms/step - loss: 0.1336 - accuracy: 0.9729 - val_loss: 0.1910 - val_accuracy: 0.9519\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-018-0.9519.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1910\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.942308 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.951923\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.4677759409 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1910184920\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1352.10 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m753.87 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m598.24 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [3] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m4\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 18)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 19/24\n",
+ "406/406 [==============================] - 140s 326ms/step - loss: 0.2554 - accuracy: 0.9261 - val_loss: 0.3781 - val_accuracy: 0.9022\n",
+ "Epoch 20/24\n",
+ "406/406 [==============================] - 128s 313ms/step - loss: 0.2342 - accuracy: 0.9252 - val_loss: 0.1840 - val_accuracy: 0.9487\n",
+ "Epoch 21/24\n",
+ "406/406 [==============================] - 128s 315ms/step - loss: 0.1767 - accuracy: 0.9514 - val_loss: 0.1902 - val_accuracy: 0.9263\n",
+ "Epoch 22/24\n",
+ "406/406 [==============================] - 127s 312ms/step - loss: 0.1438 - accuracy: 0.9577 - val_loss: 0.1821 - val_accuracy: 0.9343\n",
+ "Epoch 23/24\n",
+ "406/406 [==============================] - 127s 312ms/step - loss: 0.1107 - accuracy: 0.9739 - val_loss: 0.1587 - val_accuracy: 0.9471\n",
+ "Epoch 24/24\n",
+ "406/406 [==============================] - 127s 313ms/step - loss: 0.0767 - accuracy: 0.9804 - val_loss: 0.1717 - val_accuracy: 0.9407\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-020-0.9487.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9487\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1840\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9519230723. Not saving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1910184920 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1839751452\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1458.73 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m778.97 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m679.76 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [4] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m5\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 24)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 25/30\n",
+ "406/406 [==============================] - 138s 320ms/step - loss: 0.2431 - accuracy: 0.9254 - val_loss: 0.1714 - val_accuracy: 0.9535\n",
+ "Epoch 26/30\n",
+ "406/406 [==============================] - 125s 308ms/step - loss: 0.2219 - accuracy: 0.9294 - val_loss: 0.1770 - val_accuracy: 0.9471\n",
+ "Epoch 27/30\n",
+ "406/406 [==============================] - 128s 313ms/step - loss: 0.1867 - accuracy: 0.9380 - val_loss: 0.1929 - val_accuracy: 0.9359\n",
+ "Epoch 28/30\n",
+ "406/406 [==============================] - 127s 312ms/step - loss: 0.1503 - accuracy: 0.9579 - val_loss: 0.2001 - val_accuracy: 0.9231\n",
+ "Epoch 29/30\n",
+ "406/406 [==============================] - 126s 310ms/step - loss: 0.1034 - accuracy: 0.9692 - val_loss: 0.2080 - val_accuracy: 0.9295\n",
+ "Epoch 30/30\n",
+ "406/406 [==============================] - 126s 309ms/step - loss: 0.0675 - accuracy: 0.9816 - val_loss: 0.2281 - val_accuracy: 0.9343\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-025-0.9535.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9535\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1714\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.951923 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.953526\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1839751452 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1714088619\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1441.04 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m770.96 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m670.08 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [5] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m6\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 30)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 31/36\n",
+ "406/406 [==============================] - 139s 322ms/step - loss: 0.2094 - accuracy: 0.9308 - val_loss: 0.1686 - val_accuracy: 0.9455\n",
+ "Epoch 32/36\n",
+ "406/406 [==============================] - 128s 316ms/step - loss: 0.2059 - accuracy: 0.9358 - val_loss: 0.1710 - val_accuracy: 0.9535\n",
+ "Epoch 33/36\n",
+ "406/406 [==============================] - 126s 311ms/step - loss: 0.1653 - accuracy: 0.9517 - val_loss: 0.1398 - val_accuracy: 0.9503\n",
+ "Epoch 34/36\n",
+ "406/406 [==============================] - 127s 312ms/step - loss: 0.1331 - accuracy: 0.9605 - val_loss: 0.2802 - val_accuracy: 0.8862\n",
+ "Epoch 35/36\n",
+ "406/406 [==============================] - 126s 309ms/step - loss: 0.0965 - accuracy: 0.9710 - val_loss: 0.1547 - val_accuracy: 0.9503\n",
+ "Epoch 36/36\n",
+ "406/406 [==============================] - 127s 311ms/step - loss: 0.0665 - accuracy: 0.9812 - val_loss: 0.1512 - val_accuracy: 0.9567\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-036-0.9567.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9567\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1512\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model accuracy from \u001b[0m\u001b[0;32m 0.953526 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m 0.956731\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mImproved model loss from \u001b[0m\u001b[0;32m0.1714088619 \u001b[0m\u001b[0;33mto \u001b[0m\u001b[0;32m0.1512367874\u001b[0m\u001b[0;33m. \u001b[0m\u001b[0;96mSaving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;36mSaving full model H5 format...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1460.31 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m774.64 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m685.67 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [6] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m7\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 36)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n",
+ "\u001b[0;33m- Normalizing Image Data...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training OneCycleLr::maxlr to \u001b[0m\u001b[0;32m[0.011\u001b[0m\u001b[0;31m\u001b[0m\u001b[0;32m]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mSetting training subset epoch.c to \u001b[0m\u001b[0;32m[6]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;32mTraining on subset...\u001b[0m\n",
+ "Epoch 37/42\n",
+ "406/406 [==============================] - 135s 314ms/step - loss: 0.1921 - accuracy: 0.9408 - val_loss: 0.1780 - val_accuracy: 0.9519\n",
+ "Epoch 38/42\n",
+ "406/406 [==============================] - 123s 303ms/step - loss: 0.1800 - accuracy: 0.9423 - val_loss: 0.1972 - val_accuracy: 0.9455\n",
+ "Epoch 39/42\n",
+ "406/406 [==============================] - 124s 305ms/step - loss: 0.1627 - accuracy: 0.9528 - val_loss: 0.1435 - val_accuracy: 0.9503\n",
+ "Epoch 40/42\n",
+ "406/406 [==============================] - 124s 305ms/step - loss: 0.1165 - accuracy: 0.9650 - val_loss: 0.2610 - val_accuracy: 0.9054\n",
+ "Epoch 41/42\n",
+ "406/406 [==============================] - 124s 305ms/step - loss: 0.0855 - accuracy: 0.9744 - val_loss: 0.2104 - val_accuracy: 0.9375\n",
+ "Epoch 42/42\n",
+ "406/406 [==============================] - 131s 322ms/step - loss: 0.0587 - accuracy: 0.9823 - val_loss: 0.1848 - val_accuracy: 0.9471\n",
+ "\u001b[0;32mSubset training done.\u001b[0m\n",
+ "\u001b[0;33mLoading the best weights...\u001b[0m\n",
+ "\u001b[0;33mLoading weights from file cache\\model_SUB_checkpoint-037-0.9519.h5...\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test acc: \u001b[0m\u001b[0;32m0.9519\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mModel Test loss: \u001b[0m\u001b[0;32m0.1780\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;91mModel accuracy did not improve from 0.9567307830. Not saving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;91mModel loss did not improve from 0.1512367874. Not saving model.\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(FULL): \u001b[0m\u001b[0;32m1414.15 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(SUBo): \u001b[0m\u001b[0;32m763.07 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTime taken for epoch(OTHERo): \u001b[0m\u001b[0;32m651.08 \u001b[0m\u001b[0;36msec\u001b[0m\n",
+ "\u001b[0;36m<---------------------------------------|Epoch [7] END|--------------------------------------->\u001b[0m\n",
+ "\u001b[0m\n",
+ "\u001b[0m\u001b[0mEpoch: \u001b[0m\u001b[0;36m8\u001b[0m\u001b[0m/\u001b[0m\u001b[0;32m384 (TSEC: 42)\u001b[0m\u001b[0;34m | \u001b[0m\u001b[0;32m[Learning the patterns]\u001b[0m\n",
+ "\u001b[0m\u001b[0m\u001b[0;33mTaking a subset of \u001b[0m\u001b[0;32m[|6484|AdvSubset:True]\u001b[0m\u001b[0;33m...\u001b[0m\n",
+ "\u001b[0;33mPreparing train data...\u001b[0m\n",
+ "\u001b[0;33m- Augmenting Image Data...\u001b[0m\n"
+ ]
+ }
+ ],
"source": [
"import gc\n",
"# Garbage Collection (memory)\n",
@@ -1729,10 +17497,10 @@
"subset_epoch = 6 # subset_epoch: Number of epochs to train each subset.\n",
"subset_epoch_FT = 6 # subset_epoch_FT: subset_epoch after pre-training epochs.\n",
"PL_epoch = 26 # PL_epoch: Number of pre-training epochs. Use >=24 for large models or 0/1 for fine-tuning only. Common values: 8, 16, 26, 32, 64, 128.\n",
- "subset_size = 4096 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 8192.\n",
+ "subset_size = 6484 # subset_size: Size of each training subset. Common values: 512, 1024, 2048, 3200, 4096, 8192.\n",
"Conf_batch_size_REV2 = 16 # Conf_batch_size_REV2: Batch size.\n",
"RES_Train = False # RES_Train: Resume training if True.\n",
- "MAX_LR = 0.011 # MAX_LR: Maximum learning rate.\n",
+ "MAX_LR = 0.011 # MAX_LR: Maximum learning rate. Common values: 0.011, 0.01, 0.001.\n",
"DEC_LR = 0.00003 # DEC_LR: Learning rate decay.\n",
"MIN_LR = 0.0005 # MIN_LR: Minimum learning rate.\n",
"RES_LR = 0.006 # RES_LR: Resuming learning rate.\n",
@@ -1741,7 +17509,6 @@
"Debug_OUTPUT_DPS_freq = 42 # Debug_OUTPUT_DPS_freq: Debug image output frequency(epoch).\n",
"TerminateOnHighTemp_M = True # TerminateOnHighTemp_M: Terminate training on high GPU temp to prevent damage.\n",
"SAVE_FULLM = True # SAVE_FULLM: Save full model if True.\n",
- "USE_REV2_DP = False # USE_REV2_DP: Use Rev2 data preprocessing if True.\n",
"AdvSubsetC = True # AdvSubsetC: Use advanced subset sampling to prevent overfitting if True.\n",
"AdvSubsetC_SHR = 42 # AdvSubsetC_SHR: Parameter for advanced subset sampling (shuffling data after n epochs).\n",
"load_SUB_BRW = True # load_SUB_BRW: Load previous subset weights to speed up training if True. May reduce max accuracy.\n",
@@ -1755,11 +17522,12 @@
"EarlyStopping_P = 5 # EarlyStopping_P: Early stopping patience (⚠️deprecated⚠️).\n",
"Use_tensorboard_profiler = False # Use_tensorboard_profiler: Enable tensorboard profiler.\n",
"Use_extended_tensorboard = False # Use_extended_tensorboard: Enable extended tensorboard (Some funcs may not work).\n",
- "Use_tensorBoard_img = True # Use_tensorBoard_img: Enable tensorboard image logging.\n",
+ "Use_tensorBoard_img = False # Use_tensorBoard_img: Enable tensorboard image logging.\n",
+ "Use_noise_func_TRLRev2 = True # Use_noise_func_TRLRev2: Use noise function for IDG if True.\n",
"Show_confusion_matrix_tensorBoard = False # Show_confusion_matrix_tensorBoard: Show confusion matrix on tensorboard.\n",
"BEST_RSN = 'PAI_model_T' # Best model save name prefix. (Uses a lot of memory and storage).\n",
"ALWAYS_REFIT_IDG = 1 # ALWAYS_REFIT_IDG: if 0/False - do not always refit IDG. if 1 - always refit IDG (In Start). if 2 - always refit IDG (After each epoch) (slow).\n",
- "IMAGE_GEN_PATH = 'Data\\\\image_SUB_generator.pkl'\n",
+ "IDG_FitP_PATH = 'Data\\\\image_SUB_generator.pkl'\n",
"# CONF END <---------------------------------------------------------------------->\n",
"#Prep\n",
"if RES_Train:\n",
@@ -1799,81 +17567,39 @@
"\n",
" return noisy_image\n",
"# noise_func_TRLRev2 ([REV1 OLD])\n",
- "if not USE_REV2_DP:\n",
- " def noise_func_TRLRev2(image): \n",
- " noise_type = np.random.choice(['L1', 'L2', 'L3', 'none'])\n",
- " new_image = np.copy(image)\n",
- " \n",
- " if noise_type == 'L3':\n",
- " intensityL2 = random.uniform(-0.08, 0.08)\n",
- " intensityL1 = random.uniform(-0.05, 0.05)\n",
- " else:\n",
- " intensityL2 = random.uniform(-0.09, 0.09)\n",
- " intensityL1 = random.uniform(-0.06, 0.06)\n",
- " \n",
- " block_size_L1 = random.randint(16, 32)\n",
- " block_size_L2 = random.randint(32, 112)\n",
- " \n",
- " if noise_type == 'L2' or noise_type == 'L3':\n",
- " for i in range(0, image.shape[0], block_size_L2):\n",
- " for j in range(0, image.shape[1], block_size_L2):\n",
- " block = image[i:i+block_size_L2, j:j+block_size_L2]\n",
- " block = (np.random.rand() * intensityL2 + 1) * block\n",
- " new_image[i:i+block_size_L2, j:j+block_size_L2] = block\n",
- " image = new_image \n",
- " \n",
- " if noise_type == 'L1' or noise_type == 'L3': \n",
- " for i in range(0, image.shape[0], block_size_L1):\n",
- " for j in range(0, image.shape[1], block_size_L1):\n",
- " block = image[i:i+block_size_L1, j:j+block_size_L1]\n",
- " block = (np.random.rand() * intensityL1 + 1) * block\n",
- " new_image[i:i+block_size_L1, j:j+block_size_L1] = block\n",
- " \n",
- " if add_img_grain:\n",
- " intensity = random.uniform(0, 0.07) # Random intensity \n",
- " new_image = add_image_grain_TRLRev2(new_image, intensity=intensity)\n",
- " return new_image\n",
- "# noise_func_TRLRev2 ([REV2 NEW])\n",
- "else:\n",
- " def noise_func_TRLRev2(image):\n",
- " noise_type = np.random.choice(['L1', 'L2', 'L3', 'none'])\n",
- " new_image = np.copy(image)\n",
- " \n",
- " if noise_type == 'L3':\n",
- " intensityL2 = random.uniform(-0.07, 0.07)\n",
- " intensityL1 = random.uniform(-0.06, 0.06)\n",
- " else:\n",
- " intensityL2 = random.uniform(-0.09, 0.09)\n",
- " intensityL1 = random.uniform(-0.07, 0.07)\n",
- " \n",
- " block_size_L1 = random.randint(16, 32)\n",
- " block_size_L2 = random.randint(32, 112)\n",
+ "def noise_func_TRLRev2(image): \n",
+ " noise_type = np.random.choice(['L1', 'L2', 'L3', 'none'])\n",
+ " new_image = np.copy(image)\n",
+ " \n",
+ " if noise_type == 'L3':\n",
+ " intensityL2 = random.uniform(-0.08, 0.08)\n",
+ " intensityL1 = random.uniform(-0.05, 0.05)\n",
+ " else:\n",
+ " intensityL2 = random.uniform(-0.09, 0.09)\n",
+ " intensityL1 = random.uniform(-0.06, 0.06)\n",
" \n",
- " for channel in range(3): # Iterate over each RGB channel\n",
- " image_channel = image[:, :, channel]\n",
- " new_image_channel = new_image[:, :, channel]\n",
- " \n",
- " if noise_type == 'L2' or noise_type == 'L3':\n",
- " for i in range(0, image_channel.shape[0], block_size_L2):\n",
- " for j in range(0, image_channel.shape[1], block_size_L2):\n",
- " block = image_channel[i:i+block_size_L2, j:j+block_size_L2]\n",
- " block = (np.random.rand() * intensityL2 + 1) * block\n",
- " new_image_channel[i:i+block_size_L2, j:j+block_size_L2] = block\n",
- " image_channel = new_image_channel \n",
- " \n",
- " if noise_type == 'L1' or noise_type == 'L3': \n",
- " for i in range(0, image_channel.shape[0], block_size_L1):\n",
- " for j in range(0, image_channel.shape[1], block_size_L1):\n",
- " block = image_channel[i:i+block_size_L1, j:j+block_size_L1]\n",
- " block = (np.random.rand() * intensityL1 + 1) * block\n",
- " new_image_channel[i:i+block_size_L1, j:j+block_size_L1] = block\n",
- " \n",
- " new_image[:, :, channel] = new_image_channel\n",
+ " block_size_L1 = random.randint(16, 32)\n",
+ " block_size_L2 = random.randint(32, 112)\n",
+ " \n",
+ " if noise_type == 'L2' or noise_type == 'L3':\n",
+ " for i in range(0, image.shape[0], block_size_L2):\n",
+ " for j in range(0, image.shape[1], block_size_L2):\n",
+ " block = image[i:i+block_size_L2, j:j+block_size_L2]\n",
+ " block = (np.random.rand() * intensityL2 + 1) * block\n",
+ " new_image[i:i+block_size_L2, j:j+block_size_L2] = block\n",
+ " image = new_image \n",
" \n",
- " if add_img_grain:\n",
- " intensity = random.uniform(0, 0.05) # Random intensity \n",
- " new_image = add_image_grain_TRLRev2(new_image, intensity=intensity)\n",
- " return new_image\n",
+ " if noise_type == 'L1' or noise_type == 'L3': \n",
+ " for i in range(0, image.shape[0], block_size_L1):\n",
+ " for j in range(0, image.shape[1], block_size_L1):\n",
+ " block = image[i:i+block_size_L1, j:j+block_size_L1]\n",
+ " block = (np.random.rand() * intensityL1 + 1) * block\n",
+ " new_image[i:i+block_size_L1, j:j+block_size_L1] = block\n",
+ " \n",
+ " if add_img_grain:\n",
+ " intensity = random.uniform(0, 0.07) # Random intensity \n",
+ " new_image = add_image_grain_TRLRev2(new_image, intensity=intensity)\n",
+ " return new_image\n",
"#CONST\n",
"train_SUB_datagen = ImageDataGenerator(\n",
" horizontal_flip=True,\n",
@@ -1884,13 +17610,12 @@
" width_shift_range=0.18,\n",
" brightness_range=(0.82, 1.18),\n",
" height_shift_range=0.18,\n",
- " channel_shift_range=100,\n",
" featurewise_center=True,\n",
" featurewise_std_normalization=True,\n",
" zca_whitening=False,\n",
" interpolation_order=2,\n",
" fill_mode='nearest',\n",
- " preprocessing_function=noise_func_TRLRev2\n",
+ " preprocessing_function=noise_func_TRLRev2 if Use_noise_func_TRLRev2 else None\n",
" )\n",
"class TerminateOnHighTemp(tf.keras.callbacks.Callback):\n",
" def __init__(self, active=True, check_every_n_batches=2, high_temp=75, low_temp=60, pause_time=60):\n",
@@ -1973,7 +17698,8 @@
"confusion_matrix_callback = LambdaCallback(on_epoch_end=plot_confusion_matrix_TensorBoard) if Show_confusion_matrix_tensorBoard else DummyCallback()\n",
"# TensorBoard\n",
"log_dir = 'logs/fit/' + datetime.datetime.now().strftime('y%Y_m%m_d%d-h%H_m%M_s%S')\n",
- "file_writer = tf.summary.create_file_writer(log_dir)\n",
+ "if Show_confusion_matrix_tensorBoard:\n",
+ " file_writer = tf.summary.create_file_writer(log_dir)\n",
"if Use_extended_tensorboard:\n",
" tensorboard_callback = ExtendedTensorBoard(\n",
" log_dir=log_dir,\n",
@@ -2064,14 +17790,14 @@
" # train_SUB_datagen.fit(x_SUB_train * 255, augment=True, rounds=6)\n",
" # print_Color('- ImageDataGenerator fit done.', ['yellow'])\n",
" if epoch == 1 or ALWAYS_REFIT_IDG == 2:\n",
- " if os.path.exists(IMAGE_GEN_PATH) and not ALWAYS_REFIT_IDG:\n",
+ " if os.path.exists(IDG_FitP_PATH) and not ALWAYS_REFIT_IDG:\n",
" print_Color('- Loading fitted ImageDataGenerator...', ['yellow'])\n",
- " train_SUB_datagen = pickle.load(open(IMAGE_GEN_PATH, 'rb')) \n",
+ " train_SUB_datagen = pickle.load(open(IDG_FitP_PATH, 'rb')) \n",
" else:\n",
" print_Color('- Fitting ImageDataGenerator...', ['yellow'])\n",
" IDG_FIT_rc = 3 if ALWAYS_REFIT_IDG == 2 else 12\n",
" train_SUB_datagen.fit(x_SUB_train * 255, augment=True, rounds=6)\n",
- " pickle.dump(train_SUB_datagen, open(IMAGE_GEN_PATH, 'wb'))\n",
+ " pickle.dump(train_SUB_datagen, open(IDG_FitP_PATH, 'wb'))\n",
" print_Color('- ImageDataGenerator fit done.', ['yellow']) \n",
"\n",
" print_Color('- Augmenting Image Data...', ['yellow']) \n",
@@ -2166,7 +17892,7 @@
" print_Color(f'~*Model Test loss: ~*{loss:.4f}', ['yellow', 'green'], advanced_mode=True)\n",
" # If the accuracy is higher than the best_acc\n",
" if acc > best_acc:\n",
- " print_Color_V2(f'Improved model accuracy from{best_acc:10f} to {acc:10f}. Saving model.')\n",
+ " print_Color_V2(f'Improved model accuracy from {best_acc:10f} to {acc:10f}. Saving model.')\n",
" # Update the best_acc\n",
" best_acc = acc\n",
" if SAVE_FULLM:\n",
@@ -2432,7 +18158,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 14,
"metadata": {},
"outputs": [],
"source": [
@@ -2451,7 +18177,7 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 9,
"metadata": {},
"outputs": [],
"source": [
@@ -2471,14 +18197,75 @@
},
{
"cell_type": "code",
- "execution_count": null,
+ "execution_count": 10,
"metadata": {
"ExecuteTime": {
"end_time": "2023-12-28T07:04:52.565658900Z",
"start_time": "2023-12-28T07:04:51.032425100Z"
}
},
- "outputs": [],
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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/vtYsWIFfvzjH+fVF6tXr4amaWkdk9l+D37yySdxzTXX4KijjsJ1110HANhnn30C93nCCSfgySefxOWXX47JkyfjiiuucJZl+33V5s4770RNTQ2+//3vIxaLoaamJq9+yOVcly5dijPPPBNjx47FHXfcgUgkglWrVuHtt9929pXN92lCSJkQhBDSA3jssccEAPH++++LBx98UPTt21d0dHQIIYT4r//6L3HSSScJIYQYOXKkOOOMM5ztnn/+eQFA3HXXXZ79XXjhhUJRFLFq1SohhBBLliwRAMR3vvMdz3qXXnqpACBuvfVWZ97VV18tdt99d7Ft2zbPuhdffLHo37+/0641a9YIAOKxxx7LeG7z588XAMQ//vGPtOvceOONAoB48803nXmtra1i9OjRYtSoUULXdSGEEOecc4446KCDMh6vf//+4vrrr8+4DiGEEEJIJZC/86Wjf//+4qtf/aozfcopp4hDDjlERKNRZ55hGOKYY44R++23X8q+J02aJAzDcObfdNNNQtM00dTUJIQQ4p///GeXbRBCpHxHvOeeewQAsWbNGs96TU1Nora2Vtx8882e+TfccIPo3bu3aGtry3icE088URxwwAFi69atYuvWrWLZsmXihhtuEADEWWed5ax35ZVXipEjRzrT2X4PFkKI3r17iyuvvDJjO2QApHyfzPb7qv3dd++993a+N+dzPJlsz/W+++4TAMTWrVvT7iub79OEkPLA8HNCSI/ja1/7Gjo7O/HSSy+htbUVL730UtpfTWfNmgVN03DDDTd45v/3f/83hBB4+eWXnfUApKznd10KIfDss8/irLPOghAC27Ztc/5NmTIFzc3NJQnjnjVrFo466ihPgaQ+ffrguuuuw9q1a/HZZ58BAAYMGIANGzbg/fffT7uvAQMGYNGiRdi0aVPR20kIIYQQUmr69OnjVEHfsWMH5s2bh6997WtobW11vpdt374dU6ZMwcqVK7Fx40bP9tddd50nZPr444+HrutYt24dADjOx5deegmJRKLg9vbv3x/nnHMO/vrXvzqh0Lqu4+mnn8a5556L3r17d7mPzz//HIMHD8bgwYMxZswY/PrXv8YZZ5yRMf1Rtt+Di0W231dtrrzyyqLlRc32XO339oUXXkhbOT6b79OEkPJAUZMQ0uMYPHgwJk2ahKeeegrPPfccdF3HhRdeGLjuunXrMHz4cPTt29czf8yYMc5y+6+qqimhNvvvv79neuvWrWhqasLvfvc754ul/e+qq64CYIYsFZt169altCXoPG6++Wb06dMHRx11FPbbbz9cf/31nnAaAPjFL36BTz/9FCNGjMBRRx2F2267DatXry56mwkhhBBCSkFbW5vz3W7VqlUQQuAnP/lJynezW2+9FUDqd7O99trLMz1w4EAAwM6dOwEAJ554Ii644ALcfvvt2G233XDOOefgscceQywWy7vNV1xxBdavX48333wTAPDaa6+hsbERl19+eVbbjxo1CnPmzMFrr72Gt956Cw0NDXjppZecMPcgsv0eXCyy/b5qM3r06KIeO5tzveiii3DsscfimmuuwdChQ3HxxRfj73//u0fgzOb7NCGkPDCnJiGkR3LppZfi2muvRUNDA04//fSiVl/MhP2F5+tf/zquvPLKwHXGjh1blrYEMWbMGCxfvhwvvfQSXnnlFTz77LN4+OGHccstt+D2228HYDpdjz/+ePzzn//E7Nmzcc899+DnP/85nnvuOSdPKSGEEEJINbJhwwY0Nzdj3333BeB+N/v+97+ftuCOva6NpmmB69kuSkVR8Mwzz+Ddd9/Fv/71L7z66qv45je/iV/96ld499130adPn5zbPWXKFAwdOhR//vOfccIJJ+DPf/4zhg0bhkmTJmW1fe/evbNet7tQier1vXr1woIFCzB//nz8+9//xiuvvIKnn34aJ598MmbPng1N07L6Pk0IKQ90ahJCeiTnnXceVFXFu+++mzFh98iRI7Fp0yYnRMnm888/d5bbfw3DwBdffOFZb/ny5Z5puzK6ruuYNGlS4L8hQ4YU4xRTzsPflqDzAMwvvRdddBEee+wxrF+/HmeccQbuvvtuRKNRZ53dd98d3/nOd/D8889jzZo1GDRoEO6+++6it5sQQgghpJg8+eSTAOAImHvvvTcAIBwOp/1u5nfvZcvRRx+Nu+++Gx988AH+8pe/YOnSpfjb3/6Wdn05pN2Ppmm49NJL8cwzz2Dnzp14/vnncckll6QVWItBtt+Dgcxtz+V42X5fLTa5nKuqqjjllFNw77334rPPPsPdd9+NefPmYf78+c462XyfJoSUHoqahJAeSZ8+ffCb3/wGt912G84666y0602dOhW6ruPBBx/0zL/vvvugKIrjTLT/+qun33///Z5pTdNwwQUX4Nlnn8Wnn36acrytW7fmczpdMnXqVLz33ntYuHChM6+9vR2/+93vMGrUKBx44IEAgO3bt3u2q6mpwYEHHgghBBKJBHRdR3Nzs2edIUOGYPjw4QWFVBFCCCGElJp58+bhzjvvxOjRo3HZZZcBML/HTJw4Eb/97W+xefPmlG3y+W62c+dOx7Vpc+ihhwJAxu9Ldm7MpqamwOWXX345du7ciW9961toa2vD17/+9ZzblgvZfg8GzLana3cux8vm+2opyPZcd+zYkbKt/73t6vs0IaR8MPycENJjSRf+LXPWWWfhpJNOwo9+9COsXbsW48aNw+zZs/HCCy/gxhtvdHJoHnroobjkkkvw8MMPo7m5Gccccwzmzp2LVatWpezzZz/7GebPn4/x48fj2muvxYEHHogdO3Zg8eLFeO211wK/LGXDs88+6/ya7D/PH/7wh/jrX/+K008/HTfccAPq6+vxxBNPYM2aNXj22WehquZvWKeeeiqGDRuGY489FkOHDsWyZcvw4IMP4owzzkDfvn3R1NSEPffcExdeeCHGjRuHPn364LXXXsP777+PX/3qV3m1mxBCCCGk2Lz88sv4/PPPkUwm0djYiHnz5mHOnDkYOXIkXnzxRdTW1jrrPvTQQzjuuONwyCGH4Nprr8Xee++NxsZGLFy4EBs2bMBHH32U07GfeOIJPPzwwzjvvPOwzz77oLW1Fb///e/Rr18/TJ06Ne12hx9+OADgRz/6ES6++GKEw2GcddZZjtj51a9+FQcffDD+8Y9/YMyYMTjssMPy6JnsyfZ7sN321157Dffeey+GDx+O0aNHY/z48TkdL9vvq/nywQcf4K677kqZP3HixKzP9Y477sCCBQtwxhlnYOTIkdiyZQsefvhh7Lnnnk6Bo66+TxNCykiFqq4TQkhReeyxxwQA8f7772dcb+TIkeKMM87wzGttbRU33XSTGD58uAiHw2K//fYT99xzjzAMw7NeZ2enuOGGG8SgQYNE7969xVlnnSW+/PJLAUDceuutnnUbGxvF9ddfL0aMGCHC4bAYNmyYOOWUU8Tvfvc7Z501a9YIAOKxxx7L2Ob58+cLAGn/vfnmm0IIIb744gtx4YUXigEDBoja2lpx1FFHiZdeesmzr9/+9rfihBNOEIMGDRKRSETss88+4gc/+IFobm4WQggRi8XED37wAzFu3DjRt29f0bt3bzFu3Djx8MMPZ2wjIYQQQkg5sL/z2f9qamrEsGHDxOTJk8X//d//iZaWlsDtvvjiC3HFFVeIYcOGiXA4LPbYYw9x5plnimeeeSZl3/7vk/Z3sfnz5wshhFi8eLG45JJLxF577SUikYgYMmSIOPPMM8UHH3zg2S7oO+Kdd94p9thjD6GqqgAg1qxZ41n+i1/8QgAQP/3pT7PukxNPPFEcdNBBXa535ZVXipEjR3rmZfs9+PPPPxcnnHCC6NWrlwAgrrzyyozHAiCuv/76lPnZfF+1+/sf//hHl+ckHy/dvzvvvDPrc507d64455xzxPDhw0VNTY0YPny4uOSSS8SKFSucdbr6Pk0IKR+KED7fPCGEEEIIIYQQQsrO//3f/+Gmm27C2rVrU6qwE0II8UJRkxBCCCGEEEIIqTBCCIwbNw6DBg3yFKUhhBASDHNqEkIIIYQQQgghFaK9vR0vvvgi5s+fj08++QQvvPBCpZtECCHdAjo1CSGEEEIIIYSQCrF27VqMHj0aAwYMwHe+8x3cfffdlW4SIYR0CyhqEkIIIYQQQgghhBBCuhVqpRtACCGEEEJItTBz5kwceeSR6Nu3L4YMGYJzzz0Xy5cv96wTjUZx/fXXY9CgQejTpw8uuOACNDY2etZZv349zjjjDNTV1WHIkCH4wQ9+gGQyWc5TIYQQQgjp0VDUJIQQQgghxOKNN97A9ddfj3fffRdz5sxBIpHAqaeeivb2dmedm266Cf/617/wj3/8A2+88QY2bdqE888/31mu6zrOOOMMxONxvPPOO3jiiSfw+OOP45ZbbqnEKRFCCCGE9EgYfh6AYRjYtGkT+vbtC0VRKt0cQgghhJCcEUKgtbUVw4cPh6ryd+x82bp1K4YMGYI33ngDJ5xwApqbmzF48GA89dRTuPDCCwEAn3/+OcaMGYOFCxfi6KOPxssvv4wzzzwTmzZtwtChQwEAjzzyCG6++WZs3boVNTU1XR6X30cJIYQQ0t0p9fdRVj8PYNOmTRgxYkSlm0EIIYQQUjBffvkl9txzz0o3o9vS3NwMAKivrwcAfPjhh0gkEpg0aZKzzgEHHIC99trLETUXLlyIQw45xBE0AWDKlCn49re/jaVLl+KrX/1qynFisRhisZgzvXHjRhx44IGlOi1CCCGEkLJRqu+jFDUD6Nu3LwCz0/v161ey4yQSCcyePRunxm9AOLEN39h4Hx6/6ZvO8ltf+BTPLt4IAIiEVXz448kla0t3wum3U09FOByudHO6Beyz/GC/5Qf7LT/Yb/lR8X777B7g07uAkV8Dxv++/MfPQEtLC0aMGOF8ryG5YxgGbrzxRhx77LE4+OCDAQANDQ2oqanBgAEDPOsOHToUDQ0NzjqyoGkvt5cFMXPmTNx+++0p8//whz+grq6u0FMhhBBCCCk7HR0duOaaa0r2fZSiZgB2iE+/fv1KLmrW1dWhX1hDOA6EIxHP8Wp69YEaMb/EKiG1pG3pTjj91q8fB/5Zwj7LD/ZbfrDf8oP9lh8V77feYaAOQJ0GVOnnNEOX8+f666/Hp59+irfeeqvkx5oxYwamT5/uTNui9LnnntsjvgMmEgnMmTMHkydP5jMuT9iHhcH+Kwz2X2Gw/wqD/VcYley/lpYWXHPNNSX7PkpRsyow31x/dlMBgZP7vgcDCt7pGF+BdhFCCCEkI0K3/hqVbQcpOtOmTcNLL72EBQsWeMKlhg0bhng8jqamJo9bs7GxEcOGDXPWee+99zz7s6uj2+v4iUQiiEQiKfPD4XCPGsD1tPOpBOzDwmD/FQb7rzDYf4XB/iuMSvRfqY/HrPFVgGKLmvAOiDQjht+M/CkeGTkTGuKVaBohhBBCMuGImnpl20GKhhAC06ZNwz//+U/MmzcPo0eP9iw//PDDEQ6HMXfuXGfe8uXLsX79ekyYMAEAMGHCBHzyySfYsmWLs86cOXPQr18/5skkhBBCCCkSdGpWA5YNVxheq6aGGCJq0nrNwRIhhBBSdThiJp2aPYXrr78eTz31FF544QX07dvXyYHZv39/9OrVC/3798fVV1+N6dOno76+Hv369cN3v/tdTJgwAUcffTQA4NRTT8WBBx6Iyy+/HL/4xS/Q0NCAH//4x7j++usD3ZiEEEIIISR3KGpWBbZT0x9/LqQ1KGoSQgghVQfDz3scv/nNbwAAEydO9Mx/7LHH8I1vfAMAcN9990FVVVxwwQWIxWKYMmUKHn74YWddTdPw0ksv4dvf/jYmTJiA3r1748orr8Qdd9xRrtMghBBCCOnxUNSsBuyEqb4BkSxkKhwsEUIIIdUHRc0eh/AnOQ+gtrYWDz30EB566KG064wcORKzZs0qZtMIIYQQQogEc2pWBbao6ZsrfalWFSOrL9mEEEIIKSPMqUkIIYQQQkhFoKhZFQQXCpLzc6kQMKhpEkIIIdUFnZqEEEIIIYRUBIqa1YBdKMjnxFQk14dWLKemoQOx7YXvhxBCCCEsFEQIIYQQQkiFoKhZFVjh5xA+4VJ2aurFcWq++w3guWFA66oi7IwQQgjZxaFTkxBCCCGEkIpAUbMasJyaCgQ8mqY0QFIVkVodPR+aPwVEEmhZUfi+CCGEkF0dipqEEEIIIYRUBIqaVYDiODUBQ1I1FUnE1GCgKHWCnEEXB1+EEEJIwbBQECGEEEIIIRWBomZV4Do15RBzRRIeFUUUR9S0hVIOvgghhJDCMZhTkxBCCCGEkEpAUbMaUGRRMzinpgbdtyxPbKcmRU1CCCGkcBh+TgghhBBCSEUIVboBBPA6NeXwc1d4NHNqFgFH1OTgixBCCCkYipqEEEJIybjttkq3oDioKjBuHDBzJmDk8JWhp5w/IaWCTs1qwHZqKvCGn0sCpwqjOE5N0KlJCCGEFA3m1CSEEEIIIaQiUNSsApQ0Tk3ITk0YxTGBCObUJIQQQooGnZqEEEIIIYRUBIqa1YCUU1MeE8lOTU0xUJQAdObUJIQQQoqHYKEgQgghhBBCKgFFzapAcV7pslNTUjhVX2X0/GFOTUIIIaRo0KlJCCGEEEJIRaCoWQ0o7p901c9VxYBg9XNCCCGkuuDnKiGEEEIIIRWBomYVoDhOTV/1c49T0yiSU5M5NQkhhJCiQacmIYQQQgghFYGiZlVgVz8XkM2YiuTULH5OTQ6+CCGEkIJhTk1CCCGEEEIqAkXNasApFJQ+/FyBV/DMG4bJEUIIIcWDTk1CCCGEEEIqAkXNqsCtfq5LMeaq36lZ1EJBFDUJIYSQgqGoSQghhBBCSEWgqFkVuKKmR7iUBkgaDJ+LM0/o1CSEEEKKhyNq8nOVEEIIIYSQckJRsxpQXFHTK1xKRYOUIomaTqEgOkoIIYSQgqFTkxBCCCGEkIpAUbMqkHNqSnMl14eGIoWf06lJCCGEFA8WCiKEEEIIIaQiUNSsCtzq57IbU86pqbJQECGEEFJ90KlJCCGEEEJIRaCoWQUIK/wcEDCM4OrnqmJAoIg5NekoIYQQQgqHOTUJIYQQQgipCBQ1q4I04efwujaNolQ/t3ZicPBFCCGEFAydmoQQQgghhFQEippVQbpCQVL1c8WAYPVzQgghpLpgTk1CCCGEEEIqAkXNaiBN9XNFcn2Yy4pxMIqahBBCSNGgU5MQQgghhJCKQFGzKrALBcFTDEjxOTXBnJqEEEJIdUFRkxBCCCGEkIrQLUTNhx56CKNGjUJtbS3Gjx+P9957L+P6TU1NuP7667H77rsjEongK1/5CmbNmlWm1uaD69TUjXTVz4ucU5NOTUIIIaRwWCiIEEIIIYSQihCqdAO64umnn8b06dPxyCOPYPz48bj//vsxZcoULF++HEOGDElZPx6PY/LkyRgyZAieeeYZ7LHHHli3bh0GDBhQ/sZnS5rwc3/1c4M5NQkhhJDqgk5NQgghhBBCKkLVi5r33nsvrr32Wlx11VUAgEceeQT//ve/8eijj+KHP/xhyvqPPvooduzYgXfeeQfhcBgAMGrUqHI2OQ9kUVOaK2SnpkAxNE1X1OTgixBCCCkYFgoihBBCCCGkIlS1qBmPx/Hhhx9ixowZzjxVVTFp0iQsXLgwcJsXX3wREyZMwPXXX48XXngBgwcPxqWXXoqbb74ZmqYFbhOLxRCLxZzplpYWAEAikUAikSjiGXmx9y2LlZ5jSm5KTTEQL0J7QsKAAkDXEzBKeG6lxO6DUr43PQ32WX6w3/KD/ZYflew3ZdO/oOxcAuPAHzvRA92FSl9vIUOHAkAIA8kqu+Z5DxJCCCGEkJ5MVYua27Ztg67rGDp0qGf+0KFD8fnnnwdus3r1asybNw+XXXYZZs2ahVWrVuE73/kOEokEbr311sBtZs6cidtvvz1l/uzZs1FXV1f4iXRBU1MTBsF0ar6zcCEal5rz29pagF7maxU63nrrLaztXdixzrGcJOvWfIFPNlVzntGumTNnTqWb0O1gn+UH+y0/2G/5UYl+m9TxHfQWjXhjzWC0qnuV/fjFoFLX22mxTkQAGHqi6vJ3d3R0VLoJhBBCCCGElIyqFjXzwTAMDBkyBL/73e+gaRoOP/xwbNy4Effcc09aUXPGjBmYPn26M93S0oIRI0bg1FNPRb9+/UrW1kQigTlz5mDAwHpgO6AoAkeNPxrjR9cDANY9sdhZV1UEjjnmOBy8RwHtEQJ4xnw5cuQIjDhsaiHNrxh2v02ePNlJMUAywz7LD/ZbfrDf8qOS/Rb6lwJEgROOOQKi/oiyHrtQKn29hZ7XgASgKsDUqdX1uWpHnpDcWbBgAe655x58+OGH2Lx5M/75z3/i3HPPdZYraRzNv/jFL/CDH/wAgJn+aN26dZ7lM2fODEyfRAghhBBCcqeqRc3ddtsNmqahsbHRM7+xsRHDhg0L3Gb33XdHOBz2hJqPGTMGDQ0NiMfjqKmpSdkmEokgEomkzA+Hw2UZICmKW4ReVTXnmKrixqVrMKCFtMLaI+XR1BRA6+ZiQ7nen54E+yw/2G/5wX7Lj4r0m5XuJKQpQDd9zyp2vVl9p8Couuu92trTnWhvb8e4cePwzW9+E+eff37K8s2bN3umX375ZVx99dW44IILPPPvuOMOXHvttc503759S9NgQgghhJBdkKoWNWtqanD44Ydj7ty5zq/jhmFg7ty5mDZtWuA2xx57LJ566ikYhgFVNcXCFStWYPfddw8UNKsJBfAWCoK3UJBRaKEguTgQq58TQghxsIvI8bMhZ1j9vEdy+umn4/TTT0+73P/j+gsvvICTTjoJe++9t2d+37590/4QTwghhBBCCqOqRU0AmD59Oq688kocccQROOqoo3D//fejvb3dqYZ+xRVXYI899sDMmTMBAN/+9rfx4IMP4nvf+x6++93vYuXKlfjpT3+KG264oZKnkRlFrn7uKpceUVPRPcvygqImIYSQIAxbmONnQ+7In60GIEVfkF2DxsZG/Pvf/8YTTzyRsuxnP/sZ7rzzTuy111649NJLcdNNNyEUCv76XanCleWi0kW9egLsw8Jg/xVGpfpP7SEfq6qa8PzNFl6uJrx/C6OS/VfqY1a9qHnRRRdh69atuOWWW9DQ0IBDDz0Ur7zyilM8aP369Y4jEwBGjBiBV199FTfddBPGjh2LPfbYA9/73vdw8803V+oUsiALURMChWqagLQDOkoIIYTYCIqaeSP3GUXNXZInnngCffv2TQlTv+GGG3DYYYehvr4e77zzDmbMmIHNmzfj3nvvDdxPpQtXlgsWkSsc9mFhsP8Ko9z9N25cWQ9Xcg45JLf+q7IahBWH929hVKL/Sl24supFTQCYNm1a2nDz119/PWXehAkT8O6775a4VcUkjagpvdYUA4JOTUIIISWB4ed54xc1yS7Ho48+issuuwy1tbWe+XIRyrFjx6Kmpgbf+ta3MHPmzMBc7pUqXFkuKl3UqyfAPiwM9l9hVKr/rIDMbo+qJnDIIXPwySeTYRjZ99+MGSVsVDeC929hVLL/Sl24sluImj0eO/xcAQxDnu1OKDBQsFETFDUJIYQEYH8mGPxsyAkhfEImRc1djTfffBPLly/H008/3eW648ePRzKZxNq1a7H//vunLK904cpy0dPOpxKwDwuD/VcY5e4/o4d9tBpGOCdRk5eqF96/hVGJ/iv18RgjVRUo1l+/U1OuVm7AKLRSEJ2ahBBCgmD4eX74nZl0au5y/PGPf8Thhx+OcVnERy5ZsgSqqmLIkCFlaBkhhBBCSM+HTs2qQA4/l+f6cmoWfBzm1CSEEBIARc388PcX+6/H0NbWhlWrVjnTa9aswZIlS1BfX4+99toLgBlO9Y9//AO/+tWvUrZfuHAhFi1ahJNOOgl9+/bFwoULcdNNN+HrX/86Bg4cWLbzIIQQQgjpyVDUrAac6ufw5M30Vj83WP2cEEJIaXA+H/iDV06kiJoB/RfdCjTOB/Y8F9BqytIsUjgffPABTjrpJGfaznV55ZVX4vHHHwcA/O1vf4MQApdccknK9pFIBH/7299w2223IRaLYfTo0bjppps8OTMJIYQQQkhhUNSsClynpu4RNd3XKgwUbNWkqEkIIcQPPxvyJ6W/AkTNj38MrPodcMxfgVEXl6VZpHAmTpzYZYHG6667Dtddd13gssMOO6ybFa0khBBCCOl+MKdmVdB1+LmmGCg0paZ34Eo3DiGEEPiqd1PUzIlsnZoAEN1c+vYQQgghhBCyC0FRsxqQqp+nDT9HEcLPWf2cEEKIH1mIY/Xz3Mgmp6Y9T4+Vvj2EEEIIIYTsQlDUrApkp6Zc/VwOPy9CoSBZFKWoSQghBKBTsxCycWra6xgUNQkhhBBCCCkmFDWrAknUlMZDiuIOlrRiFAqiU5MQQogfipr5k4uoSacmIYQQQgghRYWiZjVghZ/DXyhIGhwpxS4UxAq3hBBCAIqahZBNoSD7s5dOTUIIIYQQQooKRc0qQoE/p6b7uihOTVa4JYQQ4oefDfnDnJqEEEIIIYRUDIqaVYFdKCh99XMVAgVHn4M5NQkhhPigUzN/csqpGS19ewghhBBCCNmFoKhZDShpCgXJombRnZoMPyeEEAKKmoXAnJqEEEIIIYRUDIqaVYHi/C87NVXI1c+Nwqufs1AQIYQQPww/z59sRE0wpyYhhBBCCCGlgKJmVSBXP/cKmTaaYnjybeYFB66EEEL8eJyadPHnRDaFggw6NQkhhBBCCCkFFDWrgWzCz+HNt5kXgjk1CSGE+GD4ef7kUiiITk1CCCGEEEKKCkXNqkBxXqUtFKQYRSgUxJyahBBCfFDUzJ9cws91FgoihBBCCCGkmFDUrCIUwBNirvhyaha3UBAHroQQQsDPhkJgoSBCCCGEEEIqBkXNqsByairpw8+1YhQK4sCVEEKIHzo18ydFxMwgajL8nBBCCCGEkKJCUbMakHJq6tJ4SBY1FUUUXiiI4eeEEEL8UNTMH+bUJIQQQgghpGJQ1KwKggsFqX6nJgsFEUIIKTp08edNVuHndk5NipqEEEIIIYQUE4qaVYHi/C/ShZ8rRcipyYErIYQQP3Rq5k8uOTXp1CSEEEIIIaSoUNSsBhTZqSnNhlfgLNypSVGTEEKID4qa+ZNToSBWPyeEEEIIIaSYUNSsCoLDz4vu1BTMqUkIIcSHQVEzb1L6i9XPCSGEEEIIKRcUNasCS9RUAMOQRU05v6Yo3KkJ5tQkhBDihz945Y2RTaEgq08Zfk4IIYQQQkhRoahZDaQNP3cHl6qiQ6CYTk2KmoQQQsDw80LIKadmHEX4dZIQQgghhBBiQVGzKlCsv+mrn6s+wTMvPIMtunEIIYSAomYh5CJqAqawSQghhBBCCCkKFDWrgmCnpurLqVm4wUMabPlD5gghhOya0MWfP7nk1ARYLIgQQgghhJAiQlGzGnDCzwEhgnNq+osI5YVgTk1CCCE+6NTMH39/Bf1gKIvGzKtJCCGEEEJI0aCoWRXYhYIEdCNN9XPohWbUhNdBwvBzQgghoKhZCDk7NSlqEkIIIYQQUiwoalYF6cLPpfyaivC4OPOCIYaEEEL8UNTMn5xzalLUJIQQQgghpFhQ1KwGpPBzQwQ7NVUUIacmRU1CCCF++NmQP7mKmnRqEkIIIYQQUjQoalYFrlNTpBM1lSLk1AQHroQQQnzQqZk/KaImc2oSQgghhBBSLihqVgVpws8Vb05No2CnplwoiDk1CSGEgKJmIbD6OSGEEEIIIRWDomY1YIWfA4Ce1qlpFDenZtA0IYSQXQ+Gn+cPc2oSQgghhBBSMShqVgVu9XNZuPQUCoIoPKem30HCwSshhBCPU5M/duVEV6KmEID0Wc6cmoQQQgghhBQPippVgRR+bshzpfBzxYAAnZqEEEKKDMPP86dLUdM3TacmIYQQQgghRYOiZhUgpPBzb/Vz2alpFJ5T0y+KcvBKCCGEomb+dFUoyD9NpyYhhBBCCCFFg6JmFZFSKCglp2aBB0hxkHDwSoiH6BYUIc8D6Yns/AhomFfpVpQG5tTMn64KBaWImiwU1F1YsGABzjrrLAwfPhyKouD555/3LP/GN74BRVE8/0477TTPOjt27MBll12Gfv36YcCAAbj66qvR1tZWxrMghBBCCOnZUNSsChTnf0N43Znua+FZlhcUNQlJz8ZZwHNDgc9+XumWkGrkjbOA+acCse2VbknxoVMzf7osFMTw8+5Ke3s7xo0bh4ceeijtOqeddho2b97s/PvrX//qWX7ZZZdh6dKlmDNnDl566SUsWLAA1113XambTgghhBCyyxCqdAMI4MmpKYefK5LAWYzq5ykOEubUJMShean199PKtoNUJ9EtpoAV3wlEBlW6NcWFomb+dJVDk+Hn3ZbTTz8dp59+esZ1IpEIhg0bFrhs2bJleOWVV/D+++/jiCOOAAD8+te/xtSpU/HLX/4Sw4cPL3qbCSGEEEJ2NbqFqPnQQw/hnnvuQUNDA8aNG4df//rXOOqoowLXffzxx3HVVVd55kUiEUSjVRzypbjVz9OGn6MY4efMqUlIWuz7gfcFCUIkrb898fpg+Hne5JpTk07NHsXrr7+OIUOGYODAgTj55JNx1113YdAg80ePhQsXYsCAAY6gCQCTJk2CqqpYtGgRzjvvvJT9xWIxxGLuNdLS0gIASCQSSCQSJT6b0mOfQ084l0rBPiwM9l9hVKr/1B4SW6qqCc/fbOHlasL7tzAq2X+lPmbVi5pPP/00pk+fjkceeQTjx4/H/fffjylTpmD58uUYMmRI4Db9+vXD8uXLnWlFKsRTnQSHn3uqnxelUBDDzwlJj3V/0MFM/AjRs0VvOjXzp6ucmgZFzZ7KaaedhvPPPx+jR4/GF198gf/93//F6aefjoULF0LTNDQ0NKR8Tw2FQqivr0dDQ0PgPmfOnInbb789Zf7s2bNRV1dXkvOoBHPmzKl0E7o97MPCYP8VRrn7b9y4sh6u5BxySG79N2tWiRrSTeH9WxiV6L+Ojo6S7r/qRc17770X1157reO+fOSRR/Dvf/8bjz76KH74wx8GbqMoStpwoOrEFl2FJ8RclaufKwLCX708V7oKkyNkV8bowaIVKQz5mjCSlWtHqTAoauZNrjk1GX7eY7j44oud14cccgjGjh2LffbZB6+//jpOOeWUvPY5Y8YMTJ8+3ZluaWnBiBEjcOqpp6Jfv34Ft7nSJBIJzJkzB5MnT0Y4HK50c7ol7MPCYP8VRqX6b+bMsh2qpKhqAoccMgeffDIZhpF9/82YUcJGdSN4/xZGJfvPjjwpFVUtasbjcXz44YeYId3Jqqpi0qRJWLhwYdrt2traMHLkSBiGgcMOOww//elPcdBBB6Vdv1LhPva+DUNAg5lTM5E0nPmKL/w8mdQLao+SjHve8EQi2i397LSe5w77rGtUPQENgKEnoPv6i/2WGz2u3/Qo7I/+Uj43KxbWpcehWa8NPelc/92FSl5vatLtOwDQkwkYcjvi7rUDAHqi3bu8xPSYe7AbsPfee2O33XbDqlWrcMopp2DYsGHYsmWLZ51kMokdO3ak/eE9EokgEomkzA+Hwz1qANfTzqcSsA8Lg/1XGOXuP6OH+XAMI5yTqMlL1Qvv38KoRP+V+nhVLWpu27YNuq5j6NChnvlDhw7F559/HrjN/vvvj0cffRRjx45Fc3MzfvnLX+KYY47B0qVLseeeewZuU+lwny+//BJ7w/RrNjQ0YJblMR8tOUBUxcDKlaswK7Yi7+PskfwPjpCm5897DZ3q0LTrVzu0nucO+yw9B8SXY38AjY2b8Z4vzoP9lh89pd800YkzrdfvvPUmmrTNJT1euftt78RSHGK9bm7agQXdNM6pEtfbmPgKfEWaXrr0E6xZ4fZfrbENU6Tla79Yjk83lK9/Sx3uQ1w2bNiA7du3Y/fddwcATJgwAU1NTfjwww9x+OGHAwDmzZsHwzAwfvz4SjaVEEIIIaTHUNWiZj5MmDABEyZMcKaPOeYYjBkzBr/97W9x5513Bm5TqXAf2wI8Yq+9gNWmU3PwkKGYOvWrAIAVT/7AWVeDgb333QdTJ+2X9/GUdTuB99zpkyaeAPTZJ+/9VQpaz3OHfdY16qfvAsuAoYN3w9TjpwJgv+VLj+u3eBPwgvny2GOOhhgUXKiuUCrVb+ryz4GPzdf9+/fF1ElTy3bsYlDJ6039+C3ATeGNgw48AGP2k/qvfR0gaZij9hqOvQ4vX/+WOtynJ9PW1oZVq1Y502vWrMGSJUtQX1+P+vp63H777bjgggswbNgwfPHFF/if//kf7LvvvpgyxZSxx4wZg9NOOw3XXnstHnnkESQSCUybNg0XX3wxK58TQgghhBSJqhY1d9ttN2iahsbGRs/8xsbGrHNmhsNhfPWrX/V8MfVT6XAfVTPfBkURgKI4x5TDzxVFQFXVwtrjKx0X1rRu7Wen9Tx32GcZsFLbqooB1ddH7Lf86DH9prvF5kIaSv7cLHu/qfLL1Ou/u1CR681XkVVTFWhyG0KadzkS3uUlpkfcfxXigw8+wEknneRM2z9+X3nllfjNb36Djz/+GE888QSampowfPhwnHrqqbjzzjs93yf/8pe/YNq0aTjllFOgqiouuOACPPDAA2U/F0IIIYSQnkpVi5o1NTU4/PDDMXfuXJx77rkAAMMwMHfuXEybNi2rfei6jk8++QRTp1az88Sufi481c/lQkGsfk5IiXGqW/ewxD09jWQnsGUBMPREQKstzzGFVByoJz435Wu+J55fKfFXN08pyOdbzkJB3YaJEyd6ijf6efXVV7vcR319PZ566qliNosQQgghhEioXa9SWaZPn47f//73eOKJJ7Bs2TJ8+9vfRnt7u1MN/YorrvAUErrjjjswe/ZsrF69GosXL8bXv/51rFu3Dtdcc02lTiELFOd/XVIuZaemphgewTMvuhpsEbIrY98fvC+qm/e+Bbx+GvD+9eU7Zo8XNVn9PG+6qn7uX25ES9seQgghhBBCdiGq2qkJABdddBG2bt2KW265BQ0NDTj00EPxyiuvOMWD1q9fD1UKq965cyeuvfZaNDQ0YODAgTj88MPxzjvv4MADD6zUKXSN4jo1Zd1SVXwCZ8FOTf8O6EgjxMFxalLUqWrWPmn+Xf0ocPQfy3NMg6ImSUOKqNnFNJ2ahBBCCCGEFI2qFzUBYNq0aWnDzV9//XXP9H333Yf77ruvDK0qJna+Nm/4OZ2ahJQROjVJOmSnpixw9hTkzwZ/OHU1Ed0CRAY7PwRWBSnPC//nrG/aoKhJCCGEEEJIsaj68PNdA8upqcAjXGrS4Ej1uTjzgqImIemhU5Okg07NyrPlTeC5ocBHM7pet5zkGn5OpyYhhBBCCCFFg6JmNaDYf4SnGJACuWhQCQoFVbMjh5CyYzs1mZahW6CWsaozc2pWnual5t+mpeU97qrfAXMnAYmW4OU559SkqEkIIYQQQkixoKhZFUjVzyXlUlUMz2tRaFLNFKsnxRtCHOjU7F6oNeU7FkXNymO7ZcvdvpWPAI1zga1vBy9nTk1CCCGEEEIqBkXNqkASNT05Nd3XIcVg+DkhpYQ5NbsXaqR8x/KEn/fwnJrVev2LComatrPSiAcv79Kp6Y+QYPVzQgghhBBCigVFzWrAqX4OT4i56nNSCqNQZyVFTULSQqdm96JSTs2emLajOzg1HVGzzKKykfD+9dNloSA6NQkhhBBCCCkVFDWrAtepKYQcfu6zZhY62OzKQULIrgydmt0LrVJOzR54fXjOqUo/FyoVfp6tqKlYX6eYU5MQQgghhJCyQVGzKlCcVxmdmgWLkEUWSQnpSdCp2b1gTs3iIX+2VKsTtVL3Z7aipn09svo5IYQQQgghZYOiZhWhKAK64a14LmMYBYbdMacmIekRBVQ/b/8yoBAXKSnlzKkpenpOze4Ufl7m9omE92/KctupGfZOO8ut54nWy/xLpyYhhBBCCCFFg6JmNaDITk2pUJAv/FzXC3RqUtQkJD35OsE2zgJe2Av45LaiN4lkoJxOzV0p/Lxaz69S4ee6VSCoS6emLWqm+Zy1RU06NQkhhBBCCCkaFDWrAjmnpjtX9YWL6+kGVVnTA3JqbnkToVcOxmD9o0q3hPQ48syp2fK5+bf5s+I2h6TieUAy/LxodAdR034PCo1YyPm4XYWfW88NW9RMVyjIzgErknR1E0IIIYQQUiQoalYFrqgpOzVTw8+LXSioSgevmXjtBCitK3BM9NZKt4T0NPJ1atpiix4tbntIKrKwVNZCQdJxu+Nzs0ukz4ZqPb9KhZ8XnFPTFj0j3nmtq4C2teUXaQkhhBBCCOlBUNSsBhRb1PSGn/urn+t6oYMfFgoiJC35Vj+31zcoapYcvdN9XSmnZk8UoYxu4NSsdPXzrnJqqulyavqcmva+/rUf8OJoILateG0lhBBCCCFkF4OiZlUgOzXNOUKIMjg1u2H4OSGlIl+npkGnZtnQO9zXSqh8x92VcmpCVGd4dCWcmoYO58dAO7emn2xzaqq17jw5r6YTtk4IIYQQQgjJFYqaVYElaipu+LkQgKr4RU0WCrIxeOmSYpNv9XP7PpJdhKQ0yH1czudXT8+pmS4PZDVRCaem7M7Mtvp5Vzk1Ae91XE5xnhBCCCGEkB4Gv01XA0pqTk2B1EJBRqGFgnqQqKmjjPn0yK4Bc2pWP0nJqVlWx14PFzUDQ6ar7OuBc3+WMfxf/szNN6emLXLK6RI8aRTo1CSEEEJIF3x8W3mPN7bMxyOkAGh3qwqknJq2WUwIKP7wc73QcPGek1NTVyhqkiJTaE5Nipqlpyqcmj0wp2a6PJDVREXCz6WQ8y5FzTQ5NQ1puWJ95aJTkxBCCCGEkKJAUbMqUKy/AkJ2avoLBRU6mO5BOTXp1CRFh07N6qdSTs2eHn6eImpW4WdDJcLPc3JqdpFTU9FcAZNOTUIIIYQQQooCRc1qQAo/1+Wcmv7w84Kdmgw/JyQ9eTo1bbGF1c9LT6Wcmj0+/LwbfDZUxKmZQ07NXETNZKc0TwEhhBBCCCEkPyhqVgV2oSBI1c8NaCmFgort1KzCgWsmpOrvDD8nRcdxauZbKIiiZsmpivDzbvbczIbuFH5e6OdgTsfMwamZrlCQM626wqd9HTP0nBBCCCGEkIKgqFkVuE5NJ/xciJS1DCPDQFMI4IPvASseznAc/z6rMMQwE8kW9yWdmqTY5J1Tk+HnZaMaCgWVU1QrF91B1OwJ4eeqHX4e9W5DCCGEEEIIyQvaBKoBT/Vza540MBJQzaJBmQZzjfOBFQ+Yr7/yneB1urtTM9EiTTBkjxSZvHNqStsZSVe4IMWHTs3S0B0+Gyodfp5voSBnuea6OenUJIQQQkiW3HYbMHFQeY/5+nPlPV4mbrut0i0g1Q6dmlWBVP3ccWhKoqY18NEzOTU7NnR9GP/ANdP+qpF4s/NSQTdrO6l+nPtDmM7nbJGde3Rrlha9Cpya1Sj4FUp3cGrm+6NDIRQ7p6bj1OzwbkMIIYQQQgjJC4qaVYFUKMiyagpDFjXNgY/QMwzmkq1dH6Y7uHEykXBFTZWiJik28v2Qy70hr0tRs7TQqVkauoOoWZHw87j0Oo2oaf84qNbYM7zLhZRTU2H4OSGEEEIIIcWEomY1oMg5Nc1ZQhq4CUWz5mXI5ZbIQtRMW8CgmyCFn9OpSYqOLPrnJGrK+RYpamZNxwbg49uAzobst6lUTk2PqMmcmhXBCT8vY/8XPacmw88JIYQQQggpJhQ1qwIrP6QinPBzIQ+MLAeIYWQQIeV8k+mqN/tDaqtx4JoJj1OzBwoLlUYYwLqngbY1lW5JZfA4NXMQ/OnUzI8VDwKf3g588Yfst6mUU7PHh593Axd/JXJqeqqfx9Os46t+nk4gVjTJqWldx3RqEkIIIYQQUhAUNauC1JyaslPTHviITFV35fDztIO+bjBwzYQkaiq5iE4kO7a+Bbx9MfD+tyvdkgqRp1OTOTXzw3aXZ+Uyt6gKp2Y3e25mQ3dwajrh50ZuOW8LOmYxnZqqm1MzaYuadGoSQgghhBBSCBQ1q4GA6ufCkMPPzYGPIQygdRXwr/2BL/7o3Yfs1EwnfqYMtrqZMMjw89IS3WL+7dxc2XZUCubULC/5hBPTqVkauoOo6RGWy/TZVZRCQda0ElT9nE5NQgghhBBCCoGiZlWgOK8MV9V0F9uDJSMJbHkDaF0BrH/GuwvZ7ZR28NXNnZpxhp+XFD1m/k22V7YdlaIYOTVl0Y1kxhYKMznQ/VSq+rknb2oPfPZ0hx+8KiEs5+TUTFcoKKj6OZ2ahBBCCCGEFAOKmlWE6dRMzampOMUEBAzdGlj5B3Vy+HnaQXd3z6kpOzWrcNDd3bFzxu2yomaeTk2Gn+dHd3JqMvy88lSiWJModaEgOjUJIYQQQggpBIqaVYGcU9OaZRUFMoQCqGb1cw0GDD2NEOApFJRt+HkVDlwzwUJBpYWiZvDrXLajqJk9Rh6iZqVyajL8vPLke38Wgi4VB+pK1OyyUJDKQkGEEEIIIYQUGYqa1YCdU1OxXZoCwsoZaUCBoqjWcgOGLTz5B07xne7rtE7NbhBimAkWCiot9rWlt5evEEc14Qk/z6X6uRyaTFEza+xnWE7h53RqloRuIWpW4D0QeeTUTLYDH98G7PjQWi7n1GT4eXdiwYIFOOusszB8+HAoioLnn3/eWZZIJHDzzTfjkEMOQe/evTF8+HBcccUV2LRpk2cfo0aNgqIonn8/+9nPynwmhBBCCCE9F4qaVYFbKAgw3Zp2oSBDqE74uQYDup4mD50savZYp6Ycfk6nZtFxBHPDfb0rQadmeckn/Fx2ahqVcmr2xGdPN/hsqNqcmlbf2aLm9kXAp7cDS2ZYywPCz5MMP+8OtLe3Y9y4cXjooYdSlnV0dGDx4sX4yU9+gsWLF+O5557D8uXLcfbZZ6ese8cdd2Dz5s3Ov+9+97vlaD4hhBBCyC4BbQJVgSL9D+imqgkAMKA6Tk0VAoYdDuevBBvfIU331Jyacvi57j8bUiiykJlsB7RI5dpSCYpSKIiiZtaIND/QZKIanJrlFFPLhf+cqvGzoRJOzSBR09CBN88H+u4HHPbLVKemTedm868satKp2a04/fTTcfrppwcu69+/P+bMmeOZ9+CDD+Koo47C+vXrsddeeznz+/bti2HDhpW0rYQQQgghuyr8Rl0NKLacaTs1BYRww8/tnJqqYkBYuTY9g7pEq1eQ6cpRAsU8VncL4ZaqnyswKGoWG7v6OWCKmpH6yrWlEuRdKIhOzbzIJ6dmNVQ/L9dxEy3mM6/3iNIfqzuEn8vid7kq0AeJmq0rgY0vAlovr6jpd13Gt5t/nfBzlYWCejjNzc1QFAUDBgzwzP/Zz36GO++8E3vttRcuvfRS3HTTTQiFgr9+x2IxxGLuZ3FLixmhkkgkkEik+W7XjbDPoSecS6VgHxYG+68wKtV/ag+JLVXVhOdvLgilvJ2QTxtLhX258f4tjEr2X6mPSVGzKvCGnwsB16kpVHMwBECFAUMPyEMnh577l8k4YXIhc4BWjQPXTCQZfl5S/E7NXQ46NctKd6p+XonQ57mnAE2fAOdtKsMPDN0g/LxacmraYqUR87bF79SMbTM/zD3h5ywU1FOJRqO4+eabcckll6Bfv37O/BtuuAGHHXYY6uvr8c4772DGjBnYvHkz7r333sD9zJw5E7fffnvK/NmzZ6Ourq5k7S83fpcryR32YWGw/wqj3P03blxZD1dyDjkk9/5rQXk7YdyIWWU9XiZm+ZrC+7cwKtF/HR0dXa9UABQ1qwJ/Tk0BYRVqMQsFWdXPFQPCdovIAzw59Ny/zDPfdoyEAXQzUVMIj1NThQF9VyxmU0pkUVPfBUVNj1Mzl0JBdGrmhZFH+Hmlqp+LCuTUbF1pCmedG0svanYHp2a1hJ/HJAemkYCT1kWtSd022cbw812ARCKBr33taxBC4De/+Y1n2fTp053XY8eORU1NDb71rW9h5syZiERSU7zMmDHDs01LSwtGjBiBU0891SOWdlcSiQTmzJmDyZMnIxymqJ8P7MPCYP8VRqX6b+bMsh2qpKhqAoccMgeffDIZhpFb/x1fX95OeHPHjLIeLxMzrKbw/i2MSvafHXlSKviNuhpwqp+bk4ZwQ8OFUMzBEEzR07ALBcmDOr9TM+2gWypooKM6B67p0DtTz0skAdQErk7ywOPULO2vKVVJMXJqsvq5izCgNM4FBh8JRAYFLKdTM/Mx46nHLhX+c6rGvKFymyoialrvhy1qAt7nZJDrMrYtuFAQw897DLaguW7dOsybN69L4XH8+PFIJpNYu3Yt9t9//5TlkUgkUOwMh8M9agDX086nErAPC4P9Vxjl7j+jm2VM6wrDCOcsaiplThuXa/tKif9S4/1bGJXov1Ifr4dkqOju+JyaBiCsgb4BN/xcUwwYTrGCDE7NtOHntqPE0rK7U07NZFvqvB5ZhbiC7Orh56x+XlQGG58gtOB04IM0lX5zLRSUkjJDuM+0UlMRl6Ad3lxGUdMW3arxB6+KvAfSM9H+7JU/b+XPJa02dfvYdm9OTdupmaRTsydgC5orV67Ea6+9hkGDAn688bFkyRKoqoohQ4aUoYWEEEIIIT0ffqOuClLDz+2BkA7VcWpq0CGCimvk6tS0B1bVOHBNR1Dxo3QFkUh+7PKiZp5OTVmUo6jp0MvYar7o2BC8Qq6FgoLcw0J3n2elpNyCmtDd67EsTk3bxV9jPVer8AevSqQAkD9jhG6K6LJTM9HqvtZ6pW4f2x7s1LQd3cypWdW0tbVh1apVzvSaNWuwZMkS1NfXY/fdd8eFF16IxYsX46WXXoKu62hoaAAA1NfXo6amBgsXLsSiRYtw0kknoW/fvli4cCFuuukmfP3rX8fAgQMrdVqEEEIIIT0KippVgLDDz63plPBzy1CrKEISNaWBdczv1Oyi+nk1u3HSYZ+TGnZf06lZXPzVz3c18nZqUtQMQoN1PcliuUyu4edy6LmzDx1l+Rgrd+Vtuc9K9ZxLtAHhPtYxfBW8q/GzoSIpABKp03FZ1JTyAwU6NX3h505OTes5wfDzquaDDz7ASSed5EzbuS6vvPJK3HbbbXjxxRcBAIceeqhnu/nz52PixImIRCL429/+httuuw2xWAyjR4/GTTfd5MmZSQghhBBCCoOiZlXgd2q6eTMMj1PTKMyp6SkUZO6922APLrVe7utyiAu7Ert8oaB8c2oy/DwITdiiZix4BadQUJaO6yChvWxVsMssqJVa1Fz9BPDuVcCxfwVGXuSek1YDJFB9oqYQla9+bk97cmpaoqYacT6nPcT9Tk3fVy6Gn1c1EydOdIo2BpFpGQAcdthhePfdd4vdLEIIIYQQItEtcmo+9NBDGDVqFGprazF+/Hi89957WW33t7/9DYqi4Nxzzy1tAwvGLhRkfkEWQkBYAyEBxcmpqSrCrX6eT05N+HJqVmMxiHQI16kpnPB5hp8XlV2+UFCe1c89Lj6KmjaOU1NPI2rmmlPTzl8YlgpxlM2xV0FRsxQ/3mx/H4AAdnxgTsvh50Du52gkgeUPAE2fFK2JHvz3Y0WdmtLnre3U1Gqdz2kPsW1w076oqeHmdGoSQgghhBBSEFUvaj799NOYPn06br31VixevBjjxo3DlClTsGXLlozbrV27Ft///vdx/PHHl6mlBWCFn9tvhi6FnxvCdWqq0KU8dHlUPxcVzKm59W2g/cv8t7cHl0rYbT+dmsVlV8+piSI4NZMBIdK7KG74eReiZtY5NW1Rs7+0jx7q1JSF4FI4NW3x3b5e/eHnuf7g1TgP+PB7wOIShdX6+6BcP8gFiZqxgPBzLYLAr1Ox7W5b5fBzGzo1CSGEEEIIKYiqFzXvvfdeXHvttbjqqqtw4IEH4pFHHkFdXR0effTRtNvouo7LLrsMt99+O/bee+8ytjZfvE5NQ8BxahopTs0AIcAnQOnJdDnsfDk1yxV+3rYamHMc8NaF+e9Dzqmp0qlZEnZlUVP6IcGczjOnJp2aDiHRRU7NXAsFJapF1CxzTs1SFESz0yToPlFTy9OpaQt9sW2Fty0If59XolCQPR0kaqqRNE7NNIWCbFgoiBBCCCGEkIKoaptAPB7Hhx9+iBkzZjjzVFXFpEmTsHDhwrTb3XHHHRgyZAiuvvpqvPnmm10eJxaLIRZznTEtLeZAJZFIIJEonXBm71vXdYTgGDYRjyegWssMqDCEAhVmTk3DGmQJI4mktY6mJzzqdDQWRU1AuzVDhwpAQIMCwNAT0Et4fjZK65cIARDtG5w257yPRKe5DyXkuImS8ShQhvb3BOxrLdP1rOkx1y0cb4WxK/WtMCDLC8lkDEK6/zP1W8jQ3SJfyc6y3FPVTiKRcJyaQo8F3vchIwkFgNATWT0XlFgzQgCMUF/nOk3Eo4Ba+v4O6QnnPZafvcXGvs6S8Q7nekwmohBFPp6W7IQKwEi0Q08kEBLmNSyUMBS413+2KPF28/mc7ChN3ySi3vsz4W1fNvdpPmh61PPZmoh3IBTf4VwLeqwJGgChRqDrIuULlRHdCkQGQQWgGwCEAjnzpi6Ukj9nS/kdhhBCCCGEkEpT1aLmtm3boOs6hg4d6pk/dOhQfP7554HbvPXWW/jjH/+IJUuWZH2cmTNn4vbbb0+ZP3v2bNTV1eXU5nxYuvQzHAa3ONC8+fMxVHyOMwEYQkFD4xYMB6BCoGnHVgzXTEFy1qxZAIBjOhsxWNrff/7zIbYv651ynKOjjRgKYGdLO+oBNGzeiPetfZSSQfonOA5AItqKl/M83iB9KY4D0N4RQ1gYiABY+M6baFXXF7OpPZ45c+akXXZC5xYMtF5vXLcc/2ko/bVRLSgiibOl6fcWLcRWzQ0lz9RvUyXBpWXnFrxRhnuqO3CE5dRMxtqdZ5XMqZ1t6AWgva0Fc7PosxGJd3AYgK1NUQyBAgUCc1+bjZhaX+SWpzKpowX2E7WjvRWvlfg9fvedBbBrLv9n8fvY9HGky21UkcBQ/QNs1Q5BUumTcd3x0fUYBqBx01q8N2sWzrY+e5pbOzEAwCcfLcH6zwZl3d5RiQ8wDkBn2w7MKUHfhEUrpkrT7777NrZrLSnrZbpP8+HI6JcYLk2/Of/fOFl3nwurly/BfgBa2+P4zzsLcaJv+5Zta9CuRLEHgKWfLUNIdOBAafmKlWuwYl1pr6WOjl0wPzIhhBBCCNllqGpRM1daW1tx+eWX4/e//z122223rLebMWMGpk93c4G1tLRgxIgROPXUU9GvX78MWxZGIpHAnDlzcNDBBwOLAdWyap544kT0aokAHwACKobtvgewAVAVHQP69wXaAFUxMHWqOczT5t8DSFF/B4zZH/3HTE05nrbgYaARGDBwN2D7CgwbOhhTj01dr9gojTXAAiCsuW3OfR+1wAKgd98BEHEBRJsxYfwRCA0+ssit7ZnY19rkyZMRDgeHPIZm3wI0m6/3HFaP3SeU/tqoGvQY8Jw7edSRh0MMm5Jdvz2nAFaEaf/eNZh62i7Ub2lIJBJo+dddAICQqgfe96F/hYEo0LsuktVzQV21HvgPMHjYSGDTJ4BI4pSTJwJ1exa7+alt/XcEsLShul61eT/HusK+3iYcdTjwhjnvq4cegkP36vp4yuo/IvThz6F/5SYY436ecV3tjV8DW4Chu/XH1ONPh/KMmfqk34DdgB1f4JBDDsLBe2d/juqKlcBHQK8wStM30S3Av9zJo486EmLoyc50NvdpPmhv/R7Y7E6fcOT+wAJ3eu8Rg4HVQN/+g3DMEccDr3m37x9Jol/9EGAjcNDBY828sB+7y79ywEHY94DSPi/syBNCCCGEEEJ6IlUtau62227QNA2NjY2e+Y2NjRg2bFjK+l988QXWrl2Ls846y5lnGKYDJRQKYfny5dhnn31StotEIohEUp0w4XC4qAOkdGia+TbYOTUVTUPIys9lQIWqmW1QIaBY+bkUoSMcCpkx6/78Z8IIbre1f9XKm6YqgFqG84NiWH+i+fenavdNjZOHLKwpCJWj/T2IjNe0lKNUNTrLc21UC4o3RDOkqoB0/pn7zc3vpxixsjwzzOMK89hVmpdPs5yaihF3n1UyVr8pIpldnwnTIafW9DPzE4okwiHv+1Qy5Pc42/YWQEh1n+khBdmdY3QjAECLb4XW1frCzNmpihjUkBtgbX82hNQsj+lg7k/RO0rTNwnvtZOufcX/zPZ+toYS3pyhmm7meVVCtQiHalK2VuLbnM91LVQDwPs9QwtFun6vCqRszyNCCCGEEEIqQFUXCqqpqcHhhx+OuXPnOvMMw8DcuXMxYcKElPUPOOAAfPLJJ1iyZInz7+yzz8ZJJ52EJUuWYMSIEeVsfvZYg30nZ5sQENZgSkCB/TZpiuErWGEVNrHmJYSZrSuZTJNDyykUVObq53axBaHnX7XWU/087J1HisMuXSjIVzQr3+rn5SwUtOga4LlhpoutCtFgX08iuLBLroWC7Gsy1McUNYHiP8OESDO/zNXP5Xsx6/5ptbbN4rkoFwqSr301z0JBnv2l6cNCSCkUVKHq59EG77Td5+kKBemdboErRXM/u2yq9AcJQgghhBBCugtV7dQEgOnTp+PKK6/EEUccgaOOOgr3338/2tvbcdVVVwEArrjiCuyxxx6YOXMmamtrcfDBB3u2HzBgAACkzK9GVEvVNISbX9MQqjOAV+AXNZMANGdezKhBWOtEUk9Tbdiudm4PrMpWOVgaGBoxQM0jT6m9DzUMqLagUaYKuLsKu7So6Xc7Z3lvCOFdVy+CqKnHgPlTgMHHAePuSr/elgVAfAfQ/BlQO6Tw4xYZu1AQAPOc/AKOff8a2Yp2ljgki5r5/kgSxNKfAp/fB0x+B+i3n3eZ0Q1EzYQlsIksRE1DFiGl87HfI7/I3xXOdS/MZ7xWm9v2XVEpUdPfl50+UdOufq7Vutekn5j9o4Pq/qBoo1T9VzBCCCGEEEKqmqr/Rn3RRRdh69atuOWWW9DQ0IBDDz0Ur7zyilM8aP369VDVqjacZoHt1DQdLoYQELaoCdVxgGiKAcXwi5oRZ8AdE2H0QSd0PZ1T03LQOE7NHAeu+SK7XfQoEMpD1LTPWw27A0E6NYuLLKTou5ioiTydmv71iiFqNn8KbHnD/JtJ1LQFlyq9D+zwcwDea8tG5OrUtEXN3qVxam56BYhtA7YvShU1g5yaQgCbZwMDDgbq9iheOwBvf2Ut+tpOzSzW1633JukXNQt0agJAsqP4oqb/nKrFqemImmmcmgAQ3Wr+VbRUEZNOTUIIIYQQQgqi6kVNAJg2bRqmTZsWuOz111/PuO3jjz9e/AYVHUvUtJ2aBhzB0YDiDOA1GFBk54gzuDbnRQ0zX5eeLvzccWoWMfx8+/vAR/8LfPUeYOChaQ7rc2rmgyE7NW03EZ2aRcXj1NzFKub6HX+FiJpCpOaPzAVbIIo3Z95XruHbZcbj1Ay6741cnZpS+LlaAlHTfsZkaivg9veOD4HXTwOGnQqc/Grx2gH4RM0sRetEvuHnRRY1pergAIDWL8z99i4g/Uu+TupC8YvxUW9+b6fP1QhSsvnUDATiO91tFC1VxKSoSQghhBBCSEF0d4tjz0AJcmraOTVdp6ai+EJdfaJATJgDJD1d+LmTU7OI4edr/wo0vAasezr9On6nZj4IN6emcETZ6hRzui26JObsauHnKU7NLF3MKdegKNw5ab8PIgnoGcRlJ3y7Gzg1dZ9QKKQ8m7k6NcMlyqlpP2P8bQWCnZqdZmGeFKErH7a/Dyw4D2hdaU4XklMzl/BzIwrPtZ/vZ4PfqSm//te+wAt7ZS9eB5ESfl6mZ7//3vKHnyctp2ZQTk0nJYQVIRHk1GT4OSGEEEIIIQVBUbMqMEVN+80whMjg1Ex1DAlb1DRMl42hpxnwlULUtF1NQUKAc1xZ1CyiU7NKxZxuC3Nqpp/Odjug8GJBslMw3pRhPbsAV3WK+xmdmrJonHXOSEvU1EoUfp7JqRkkatpCXjH6f+XDwIbnoX5p/ThUSE7NrJyaUvi5UQSnppHGqRnb7r62Bdt86Bbh576cmuGB3mlFpVOTEEIIIYSQIkNRsyqww89tpyacnJpCuE5NVfGJmoZP1HScmukGtbZjpIg5NR0hIF1xIngHhvkKPrKoSadm8RG+IlR6R/lyrlYD+VY/D3KfFZpXU94+k6iZa6GdcmIkoUF+VvmeDwHPsS4ptVPTSOPUFIZPhC2BqNn+pfnXPsd8cmo6hYKyyanZVaGgHPs1KQmZsrtY/kFr55Lc9ilT8ernVgqI2Dbzry3+2v0Y5NSsGeCdVjQWCiKEEEIIIaTIUNSsBgLCz+3q50JyaqowoCDVMWRYA6+YlVPTSFsoyHZqFjGnpiOsZClq0qlZnQT1pT83Xk+mGE5N1bz/Chc1pXsk0ZR+PecHhSq8D/zXTopQKItUIr2ALgSw6vfAtkXenJolETWtZ1iKq9R3DCftR8w7XQh2KLslDiqFhJ93dT0IIZ2jcN8rRc2/X9M5NeX3vRBRs1JOTVuU9Re3c0LLLfyFgtSwWdBKhoWCCCGEEEIIKToUNasCb6EgIeXUNKDCfptUCCjyYM7n1LKdmka6QbYtHCjFDD/P1amZp6gp5dSsCqdmsgN4/Qxg1e/y2z66BVj/j+oRpILev12pWFC+Tk37GlRUQOtlvi5UDM42/DzXnJTlRPelL/Df9/5nVLpnVtMnwHvXAe9+Q6p+XmanZkrbhCkMFsupKQTQYTo1FdvlWIhTs6tniv9et8ViRcu/X9Pl1DSKJGpW2qmp+UTNiE/U9BcKUmvd54ENw88JIYQQQggpOhQ1qwI7p6bp1NQ91c9d94ymGF5R01f92K5+LtIVCoI/p2YFws/zdbEFhZ9XMux220Jg0yxg+a/z2/4//wO89TVg/bPFbVe+yO+fHVq5K+XVLNSpqWiAVmu+LtSpmY2oKaSCRNUijMv4BfGMTs2AaZvYFvNv+zpJ1CxRTk2R5lkW1Dahu+dU6HMo0eLea0GiZjaiqZGQnKNdXA/+69PuVxTg1ExX/Vx+35uW5LZPGX8flOvZb+Ti1JRyamq17vPAhoWCCCGEEEIIKToUNasBJ/zcxFsoSAVUzVpuQA0IP8/eqenPqVmm8POiFwrK4NRs/hz47J7SD3rtgXu+ztP2Nebf1hXFaU+h2O+LogHhvubrXUrU9Av8WQr+9nWmhIBwP/N1fGdhbckm/DyfQjvlxF+13f98SAknTnMOjtjXCcR3mK9L7dRMCT9PJ2oWyalph54DrhgsXwPZ7N92aWazfoqoWSanZnRLavXwbKlYoSDruvU7NVNEzVpv+LkW5NTU6NQkhBBCCCGkyFDUrAr8hYIEBMxBmxAK7LcpxalpDV7tPJt29XOR1qlTgpyaFSwUpKQMdAXw7zHAkv8B1j2d33Gybo+dfy9Pl5wtfHVuKk57CsU+HzViVpcGdjFR0583MQ+nZt2e5uuODYW1JZtCQZ5CO9Xn1FT8IfhdCYXpfoSwK54DrpBb8fBzmO03iiRqyteL82OJHH6exfublETNLsPPfefnETWtrwQFOTUlUdPfl/mGoOfrpC6UbJ2a/kJBaoROTUIIIYQQQsoARc2qwOvUFML+z18oSPicmpaoKbxOTdFVTs18K9wG7rNMhYLknJpO+32D9+2L3NfRxvyOky16lqGe6YhZrrOqEzVr3AIX/ryIPZpCc2qGgLoR5msrP2L+TZGdms1p1pGuu2p0ahYr/DzoGixV+HnaQkElDj/vkJyaTvi5/ENQjk7NfMPPPYWCckxNkq5QkL8v8xY1K1woqKucmpovp6YWSZNTk4WCCCGEEEIIKSYUNauBgOrnMOScmlahIMWACtmpqQPCgGoJMq5TsytRs8bdvlCycmpKy0qZU/OLP7ivSz1YdPLXZTjvTFSrU1OTRM1d2amZ7b1hX4OqVjxRU88mp6bs1KxCUTMl/DzLiuJ+ZKcmYBVkqq2QU1Nx5xUz/FxyairJPHNq5hJ+nuLUtEXNQsLPJSEzmcGp2bk5t/3aVCL8XM5bK1cyV0JAzQDvumrESRNjTtcw/JwQQgghhJAyQFGzKvCGn+uGgLAcmUIq3qDCJ2oaSc/gTqhWuFuX4ec1XayXA+Wqfu7JqRng1Ey0Auv+5k4XWoG6KwpxaupRV/TJd5BfbDxOTcuVtEtVPy+0UFAI6G2Jmu3FdGo2pVlHdmpWX/h57jk105yDX1gP9TF/BCq2qCmE5DpP49SUw4kNXfpho4g5NfMtFJRL+Hlap2aRcmp6nJr+okt5XqvZOnuLidwHcvh5TX+r2rlESvVzhp8TQgghhBBSDviNuiqwq5+bmOHnqdXPQ4oOVSSlOPWkZ0Ctha2BV7pBrV0oyHFqFkEMsQeXaSuu+45TaKEgJRTs1Nz6tlcAKbUgZw/W8+lDuZBMtMEUSGSXTyWQRU17wJ6vC7U74g+3zTn8nE5ND7mGn6c7h6TPqRnqY/4tuqgpHT+dU1OtcQU7kSyJUxN6p1mEXBZWSx5+XqZCQdm0LR3ldmo2f+4WcwO84efh/la4uYTmy6mp0alJCCGEEEJIOaCoWQ0oqYWCFEfUVBwRMqwkA8LPpcFeyBpEpR1k205NW7QqolMzk7hXjEJBwnVqikCnZot3fb9TrNgYBTg1ZVFTGEBsC9Br9+K0K19sIUetkZy8u5Ko6RdJsswpKDs1i5ZTM4tCQZ57qvqcml0WCsq1+rmNHQZcbFHTU5gnjQCrhszjCt0Xfq6bPxgpCvLCX/28xteerJyackGlfAsFqfn1qy9iwOPUTBGIi+TUzLaQV74sOAdoXeFOy07N8IBgp6Ysairh4JyadGoSQgghhBBSVEoWfv7ll19iwwbXgfLee+/hxhtvxO9+97tSHbIb48+pCQB2oSDVI2pqKeHn7mBPscPd0g1IbTea7TIpRghfruHnhTo10+XU9IsoZQs/j7sO2GyxiwTZVENeTY9Tc1cUNX0iZraiiSEJXraoGd9RWD5SPYvwc/nercZCQf4fFarJqbnq98Cnd/mOnyFFhlwMyn72CN27XiHiqsepGRB+nrNTs4v1ix1+7t+fnsmpmeczpdyFgmShGQA0KadmTX/3Geksj7h9B1g5NQPCz1koiBBCCCGEkKJSMlHz0ksvxfz58wEADQ0NmDx5Mt577z386Ec/wh133FGqw3ZTvNXP5UJBAqojQkaUOFRFEl984edKyHZgZlkoqBgOr2zCzz2iZhEKBdkDQ0/IqE9EKXn4eQGChuzUBKojr6YjakZ2UVGz0Jyamil2hPqa04Xk1TSyCD+X7/EqdGqm3H9d5tTM1qnpEzXzcey9dx3w8U+AHYul9mT44cWQRU1J9JOfZfkKy3oUiG1zJhUjZgmmBeTU7MqpWezw8xRRsxROzTzvz7yOJXzXr+INNw8KP/fn1EwXfq74w8/p1CSEEEIIIaQQSiZqfvrppzjqqKMAAH//+99x8MEH45133sFf/vIXPP7446U6bPfEClusVTpxRN1SGLoBYTkyhXDDz3upARWErQFvUqjQNHM9Je0g2M6pWYLw80wCmMjggsr1OEoap2bS79QsU05NuW3ZEq9ip6ZGp6Y5nWtOTeua7F2EEHS/UzPICewpFNQNnJrp3I/ppm1SnJoFhp/L/dayPHh+V+HngPnsyTXvZRD2DxpS6LKGeO7pBTzVz43U61nGLzQ6Ts18w8/9ImkGp6bnsyCZ+gNP2mOUsVCQHoXzWQlY7nVJjAwHFArSar3h59k6Nf0iJyGEEEIIISQnSiZqJhIJRCLmF//XXnsNZ599NgDggAMOwObNVeBMqypMUXOEthbP7HszBra96QwqDajOAKrOL2oarlNTFxpCml0AqAunplZEp2bO4eeF59QMdmpWKPwcyF388w/kO6pI1FRrpOtjVxI1i+DUBIqTV9MjliWCr2VR5U7NlPuxSsLP5XbJPyZkKmZWSqem7ZKsGejM0hDzOcFzdGoCma8JvwiZKDD8PNMPSnZf2oV25Ha99V/AP4dn9/wrZ/i5X5BXw17xsWZAmvDzbHJqslAQIYQQQgghxaRkouZBBx2ERx55BG+++SbmzJmD0047DQCwadMmDBo0qFSH7aZ4C0z06/zEcWcZUk7N2hSnZtIZjCeFhlC4C6emP/xcJHPPB5myT+tY2YqaeTs1bbeUNMD0iKXWwNoWB8oZft6TnJpyTs1MKQV6HH5nW5aFguScmkBxRE2/8J9oDjhudTs1Fev+E/azrVjh5+ECRU35udAh5U3UsywUpEo5NfUiODWd+67WEcE0ESssp6bc5iBSwsULDD9PcWpKIqfdl/b7Jl+3Oz8y29K2KotjlFHU9H92qOFUp2Zg+Ln0Oa7VuIX7bAJzajL8nBBCCCGEkEIomaj585//HL/97W8xceJEXHLJJRg3bhwA4MUXX3TC0omFb4Cm6W3OPDmnZp0aTd3OdmpCQyhkDrxUZFn9PODYOVOJQkHWQNAj3toD0RpLMC9n+HlXOez82IWCaoeYf6shpyarn2ee7mq7Ujk1geC8mh6nZvWJms79F+5v/u0q/Dxfp2a24rO/XQDQ9oXUngzPKJHGqWkUI6em7WSMOBW2Q4gXllMTyPxDS0r4uVz93PpKUKxCQfaxQgGipn2O2XwmVNqp2WX4ecRJI2NuU2MK1TKKFlD9nE5NQgghhBBCCqFkNoGJEydi27ZtaGlpwcCBbmjdddddh7q6ulIdtlsiBowzc8VZg8twcieA3cxlcHNqpoiaUvXzpNAQtpyaatrq55b7U6lx1WwjUZhbRGQhaooihp8rXTg1I/VAG1JDIouNXohT0wo/738QEN1SvU7NXUrUzLP6uT+npi1qFlIoyC/yBImaueZcLDdyWHWiKX1It03WhYKsnJpqEZyasqiZyU0eGH6eLE74uSftQx2A7dBEDEquoqbfqZlL+Hlg9fMcxOJMhYLs87BFTfmzIJvPDmfdcjo1fdec4hM1a/q7KTps/CKnms6pyUJBhBBCCCGEFJOSOTU7OzsRi8UcQXPdunW4//77sXz5cgwZMqRUh+2e1O0JXLANf05MBwCEk9udQaXs1EwtFCTn1FRRE7LCz7twaq7YVoTBuLNLKfw8XSh7UcLPs8ypGdnNmi5n+HmW4t/GWcD71wNRy5nZ/2Dzb1WJmqx+Hjiddjtb8LLEIDv9QaIl/7b475FEU/rj+l9XC/b9GB5g/i3UqWnvp9Ccmh5Rc7X7zMrkJg8qFFS08HPJIW05Nc2cmgWGn2d0ahY5p2ZKNfWAQkFBTk075D+b54y/D0rpTk4JPw/5nJoDAkTMAFEzMKem36lJUZMQQgghhJBCKJmoec455+BPf/oTAKCpqQnjx4/Hr371K5x77rn4zW9+U6rDdl+0WnQo9QCAGn2HJGpmcGpK1c8TIoRw2A4/T+fUNPe5XR6zFeryyia3XzEKBcmiphIkavrDzyvk1Ey0pa5r89H/AisfBhrnm9N99zP/ZlsB2KbQPKhBsPq5bzrH8HNbaLfFj1xTEsjY94i9r0CnZrUXCrJyatYMMKf911I21c+FcF1zffY2//pFzWwdtb52ma873dQPWTs15Zya0rMs3/dA/jHBKqajiZg3x2c+4ecZc2pa52f3YbLAnJp2P4T7WdPSs9c+Vriv+dfoBk5N/w9iiRZfoaA04ecyaaufa3Bybyohb8g6qToWLFiAs846C8OHD4eiKHj++ec9y4UQuOWWW7D77rujV69emDRpElauXOlZZ8eOHbjsssvQr18/DBgwAFdffTXa2jJ8TyCEEEIIITlRMlFz8eLFOP744wEAzzzzDIYOHYp169bhT3/6Ex544IFSHbZbE9UGAABqkq6oKVc/r1UDhAEpp2ZN2Fwvffi5uc/mmPS2FyqIyOJNusFp0Z2aAeHnSSn8HChDoSDZSWW1Y9XvgWf6A18+H7xN5wbvdO1Q828uAtjK3wLPDQZ2LM5+m2zY5cPP83RqGj6nZtC1mSu2EBSxHO1BTs1uUijIcVjmE35uxNz3Yf8bgEFHAcOnWgcoglMTcIvUeMK9da9Yms6pmWuF8iCcnJoVcGragrOTt1QtrFBQjfXs1bN0aho5ODXzvT/zwR9+Ht/prXaetlCQPB3k1LSfESHvX1K1tLe3Y9y4cXjooYcCl//iF7/AAw88gEceeQSLFi1C7969MWXKFESj7g8el112GZYuXYo5c+bgpZdewoIFC3DdddeV6xQIIYQQQno8JRM1Ozo60Lev6c6YPXs2zj//fKiqiqOPPhrr1q0r1WG7NVHVdBlG9B0A7EJBindAJePJqemGn2uKjqQelBPNnNcS1ZEQ5gDLKLTCtccxlk7UlOYXmlNTDUMEOjUrGH5ut237+6ZwvDNAcNRjQGy7d16vYdb2RvaOs82vmPvZ+lbubc7ELi9q5ln93CkU5HNqFiJq2teWXUgqHlD9XHQPp6YTjp9P+LksLo26DJiyCOj3FXM6X1HT7+ButfJq+n9YCBIslZCby9Modk5NyanpFzWLXSjIFiHDA737z9Wp2bwMmHUosObP5rT9XutR937yFwqy+1kIt435hJ+Xs/o5EFAoyJ9T058rsyZV6LT71n5WsEhQ1XP66afjrrvuwnnnnZeyTAiB+++/Hz/+8Y9xzjnnYOzYsfjTn/6ETZs2OY7OZcuW4ZVXXsEf/vAHjB8/Hscddxx+/etf429/+xs2baqCtDOEEEIIIT2AklkF9t13Xzz//PM477zz8Oqrr+Kmm24CAGzZsgX9+vUr1WG7NTGtHkgCEWMnYNhOTS3VFWIjhZ/rQkNNxBxohZQkYkkDIc2nWVthy80xHUkRQljR0RmPoXe+DRbCJyxm4dQstPq5XLRBHujaIkpECj8XonThffJ5+HPDBZ1jtCF1nu3UtLdVe6Wuk+64+fZjV/vdZUXNQnNq+oSKYjg1g5xvNlXu1LTFQyf8PB+npu0gVCOprra8RU2/U9MSNf3vlxEDUOdtq1woSI8CkNJA5J1TUy4UZD7nNREDRIATPB1CpDo1M7m/netrgHe+mqOo+eWzQNNH5j/AvV4Bs39CdZJT0/qUsc9FZPFjmIyzvgJAlPaaD7rf7H4BzH6TRU2tNvVzRq0x52m1kvhtfR6rYfP+oFOzW7NmzRo0NDRg0qRJzrz+/ftj/PjxWLhwIS6++GIsXLgQAwYMwBFHHOGsM2nSJKiqikWLFgWKpbFYDLGY+7xsaTHzMycSCSQSVfgDVo7Y59ATzqVSsA8Lg/1XGJXqP7VkNqzyoqoJz99cEEp5OyGfNpYK+3Lj/VsYley/Uh+zZN+qb7nlFlx66aW46aabcPLJJ2PChAkATNfmV7/61VIdtlsT1wYCSUBDElqyCUAXTk0p/DwpNESs8PMQdMSSBnr7tVDLPdPaqSMpzAdjZzRagKjpF4LSXKyeEPX8xDhhJKAA+PN7m3DxGKkCsY3twLIH1sIwB8vpBOFC8TipfI6joEG6nbtPxi9qIgtR0+6/fB2vafcriyu7oKjpd2bmmlPTH35eSE5N+z22BXp/OCzgE4WqUNT0h5+n5NT09W8mp2a4T+qyooWfr7GO73u/9ACnpirl1NR970neTk07/LwAp6aRcNcJ9Tb7LdM14Q8/d8gx/LxttXfadmoCZj97RE07/Nx+RgYUDMqEfT5arfWDVZmdmvLzNtzfFCzVGuvHqIDPGPs5oEbcbf1OTb+7k3QrGhrMHyqHDh3qmT906FBnWUNDQ0phzFAohPr6emcdPzNnzsTtt9+eMn/27Nmoq6srRtOrgjlz5lS6Cd0e9mFhsP8Ko9z9N25cWQ9Xcg45JPf+a0F5O2HciFllPV4mZvmawvu3MCrRfx0dpY2iLZmoeeGFF+K4447D5s2bMU56Ep1yyimBv04TQA31QntHLXprUYQTWwFY1c+DBk2AOdCzBoc6NIQ0c5CkKQZiyaBBn5VTM2ogKcy3viNWgDiW4m7KxqmZ3/EMPQ4NwN8XN+DCAwabF65nv3b4+SBpXkcJRc2AQkEZRc2AULOw5Fg24njxo02IJXT81xEjuj6uUaCo6XexBoWfF5qaoDvhD//PNh2AIQleQOHh50JIopOdHzZA1AwquFJN5Bp+HiTc2UW3tICfXYrl1ExYof2BTk37dYBT0/+e5Css69J9Z+fUFDnm1JSfBaE+lqiZRfi5LEICViGbUHbHBFxB2Dl2b1fos5/H/vDzoJDzXJyaaqT0oqZfsAa81439mWKfa9BnjP0MlX+QVH0/fDD8nAQwY8YMTJ8+3ZluaWnBiBEjcOqpp/aIKKdEIoE5c+Zg8uTJTnFLkhvsw8Jg/xVGpfpv5syyHaqkqGoChxwyB598MhmGkVv/HV9f3k54c8eMsh4vEzOspvD+LYxK9p8deVIqShr/NGzYMAwbNgwbNpgFUvbcc08cddRRpTxktyakqdih90dvLYpQchsAwMjo1HTDz5NCQy9rQBpSdHQmAnICCjunZhLJGnOA1RktoEq4X0zJJvw8T6emoSegAUiKENrjQC3gFUIcZ1h/c3AudLN4kH/gXiw81c/jwX9lgpyaimoKJSKJZCKK7//9UyQMA6ceOAz969I8aPQiODU3vQwsvAIY/yiw51mWCGJXP4/smuHnRXdq5ilyiSScsGb72g1yjlWzU1MIKHb183SFgrIRNfUSOjVDfc08lLY46b/WPU5NO59vBlGzUKemlFMzhCgU+dna1b7lttph3tmEn9vvjY2iuT+gZXPvt/tETa3WPAcj7oqA9vmF/aJmFgXmZOw+0CJAAuV3agbN0yJmioRAp2aAqJni1GT4eXdm2DAzJ3ZjYyN23313Z35jYyMOPfRQZ50tW7Z4tksmk9ixY4ezvZ9IJIJIJPWaCofDPWoA19POpxKwDwuD/VcY5e4/I8tU990FwwjnLGoqKfn/S0uu7Ssl/kuN929hVKL/Sn28kiVnMAwDd9xxB/r374+RI0di5MiRGDBgAO68804YPe3JVCTCmoodSfOX+HDCFDUF1Aw5Nd1CQbpQoTlOTTP8PGADAEBzVEfCcmpG4wUIV34xpYROTXsfCaGhLaGkHt92Bmm9HHGgpMWC8nVqDjra/LubmY7BHvRG452I6waEABpbM/RRMcLP3zgLiG0DFpwNNL4O/KM/8MUf3PbsiqJmikiSbaGgIufUlAWqiJ1TM8ipWcWFguRrU3Zqigw5KIOE2VI6Ne2CYo6omatT0/dsKbhQkOvUDIsc9223VQlJomQ24ed+p6ZqCpPyOmmPmQA6vvTO03oBISuFRrGdmo4j2no2lUPU3PsbwLBTgeOfc68XGbuvg0TNOstt7/lB0s6pyUJBPYHRo0dj2LBhmDt3rjOvpaUFixYtctItTZgwAU1NTfjwww+ddebNmwfDMDB+/Piyt5kQQgghpCdSMqvAj370I/zxj3/Ez372Mxx77LEAgLfeegu33XYbotEo7r777lIduttSoynY6Yia5q/7Zvh5hurndk5NaFAsUdPMqRkw6LOdmp069L7m4DxajvBz2TVUYKGgpAih1T6MCAg/D9WZA+tka7C7plh4BuW+gXrQOdpOzT3PAo5+FKjbw5xWawC9A4mEu822thi+MrRv8HGL4dS0nayAWUVdFgh2WVGzyE7NfIVGWUzLFH6ei5Ov1DR/Biz/P+CgHwG99/L+mGALZ52bgRf2AvY4BzjyweycmqXMqVk72HQa2m1NcZ2nq34e8rbNJu/wc6lAl+3UFDnu296HFskup6t9jQWFn9uiZlfpLTq+TL1nbKcm4Paz/QzxVz/P2alpvc/ZiLaFYv+I0Hs0cPRj7vF2fAAMPdldz35Oyj86Hv8ssPMjYPdTrWVBTk073yadmtVOW1sbVq1a5UyvWbMGS5YsQX19Pfbaay/ceOONuOuuu7Dffvth9OjR+MlPfoLhw4fj3HPPBQCMGTMGp512Gq699lo88sgjSCQSmDZtGi6++GIMHz68QmdFCCGEENKzKNm36ieeeAJ/+MMfcPbZZzvzxo4diz322APf+c53KGoGENZU7NBNUbMmm5yanvDzEFRrQBtK59S0BqFNUR0JYYma8QLEMf/AORunpu3YyrEquR2OmYSGVtuYZA9shXAH0R6nZpah9fEmM7+lr6rcjnbzfOp7B4jKep5OzV7Dgf5j3PlaDZAAYnG3rdvbMgzynWMUUP28pt6txu7P9bnLipp5Vj8vdk5N+7pSNDfnamBOzSpxahpJ4N8Hma+13sDh9zr3oo4whOP86wQ6NgAbnjNFzWycmslSOjUHW8fIwakph58XrVCQlPbBdmoix33LIey2YzjTNZGuUJAcft7Vjyb+fJqAJWr6nJophYIKzKlpX0/lcGqGpOtODQFHPOBdTwtwao443/xnI7sxnR8+WCiou/DBBx/gpJNOcqbtXJdXXnklHn/8cfzP//wP2tvbcd1116GpqQnHHXccXnnlFdTW1jrb/OUvf8G0adNwyimnQFVVXHDBBXjggQdSjkUIIYQQQvKjZKLmjh07cMABB6TMP+CAA7Bjx45SHbZbEw654ec2pqipQUCFkpL3z1v9XNUkUTMop6a1fXvcLRQUjxcgjmUTfi5EQKXj3KuSK1Lu0Ba/U9OIw8lDqNU54kBW4edtq4GXxgB7fQ045klndkI3MOX+BVAAvPPDkxHSfJkaPKKH7dDMIqdm7e7e+ZaAmIh7nZppKUb4eWSQJGr6cn3usqJmvk5N28VXpOrntkNOjbiiSpDj2KgSp+YXv3dfJ1vNv7otakag+H+QiW4BDD21zWVzalpiW61f1MyUU7OEhYKMVKdmuBhOzaxEzQxOzXxFzZDPqenk77Sdmrr5mZCrU9Opfh5x91Mq7M8N+1zSYV/bmT7LgnJqslBQt2HixIkQctoMH4qi4I477sAdd9yRdp36+no89dRTpWgeIYQQQghBCXNqjhs3Dg8++GDK/AcffBBjx44t1WG7NWZOzf6eecJ+i7QAt6Avp6aqmUKlmVMzKPxcWPtUkHScmoXk1MzCqRk0uDZipgC45c3sKmwLAQ1u+HmLPd62B7qyI1Pr5bqFklk4NZs+Ndu98z+e2Q3NUWxtjWFLa8xxbHrPQZoncnFqBouacckxm9GpWYzwc7lCfMfG1PbkImqu/Suw6Jrqy+uYKynCe67h5748ecJIFUqzQRaoHMdxUPh5FTg1k53Ax7e407Ybz3ZqKhGkpM4QOhDfnirUBYqallMzVAqnZg45NYXs1EwTfl5wTk3XqVkj2nz77uL9lZ2a2RSqcor3DPDOzyWnpr9IEACocvi53a/29Sy9h0Yif6emWgZR03H9dyVq2sWAMoiasuBpRwKwUBAhhBBCCCFFo2Tfqn/xi1/gjDPOwGuvveYkTV+4cCG+/PJLzJo1q1SH7dbUaAp26l6npgErTFuNpA405fBzaE6hoLCiI5YIGvSZIouA6oia8USJw8+DBuR6FFj1B+A//w189VfAmOldHMc9l4TQ0By3xCLhEzUV1RzU51IoyBZOfHkwG1vcftnREceQfm44GYThcxp1IWrqcbMwD2CGn8tYA+Nk0t1me3uWTk1DB5qXAgMOTgmdz4idqxEAWpZ5l+Va/fzT24GW5cDobwBDjsu+DVVHnk7NdOHngHld5OhIdkWgWsmpGRR+XgVOzaZP3OsakK5N16kZChJ8OhtS2xwkzNrnHSqmU9Mnauodqfcz4EsvUaZCQbZT0x9+XjKn5gDv/HycmjUDgfhO6/i1QNjKBey4dn1OTcD8TCik+jlQYlHTvu4CxHQZuy1abfp15OeBnXJFYfg5IYQQQgghxaJkTs0TTzwRK1aswHnnnYempiY0NTXh/PPPx9KlS/Hkk092vYNdELn6uY3t1FSCigUZSQhrcKgLDYo0SIolAwa1lnPMEK5TM5EocfVzz+DaGtTpMaDlc/N1+9osjuPuw3RqCu/xZWeNokhOzRxETV+OygZZ1PQ7J/3n2VWhIDvUWw17XZL2PABJSVze2pqFU9OIAit+Dbw8Dlj5m/TrByLlM036XGFqjesKzkZssCtU+/eTD4m20hYAyUSKMzPb6udpCgUB+Tkodcl1l0nU9Dg1K9RnbV94p+3rxWqvrtQEi7rRIFGz3E7NwdK8aHZOzVKEn8uCZChNoSCR9FaO95NvTs1wP6D3KHe+p1BQLPMxbVFzt2PceVotELJEzUSrFWZu59SUCp/5nZrZuPUNv1PTmt65BPj41uIWhdOzdWrmGH7uzLPDz+nUJIQQQgghpFBKJmoCwPDhw3H33Xfj2WefxbPPPou77roLO3fuxB//+MdSHrbbkknUDBw4iSSEbodla9CkEPUUsVIaoBpQkLByasYCcmqu2tKGi367EG+t3JayzLtPv7upC1HTdlzpUSBu5VXNppiPdJyE0LDD1v/8Tk1bzHRyamaxb3+YpEVDs9ep6cEvWjoOzYAiGIA3n6a/QJLj1JTCz9M5NYUhnXMUaF1hvm5ZHrx+OjIJHrmGn9t9nG1RpnQkWs3q2PMmFbafvCk0p2aA+yqfvJqGLHJlyqkpiWj55u/Ml/b15vvVuso7374vkq5TMzA0t7Mhy/DzMjg17eNkqn5ui4BaRBI1/SHixXNqhmAXD5JEtUypDHTJ3ZuNU1N2Ax8uFSzZucTrOvQXI+vcDMSs57Ydfj5YcmdrvdziVokW37PfF34uCnRq2j9CfPRj4NM7oGx+qet9ZItTKKgI4eeBoiadmoQQQgghhBSLkoqaJDfCIRWbE4M98xxRM41T0zDsnJpuoSAgSNR0B8VyTs1EMnVA+erSBixaswNPvbc2swMpi5ya8YRUzVl2AeUiakptSIoQmhynZsK7D1vUzCX8PBEcfr6l1Z1OyanZlVMzRdRMk08TcEXNhHu8tDk1PUJLzB1826Ge2ZJJRFDD7rWWjYPKETULSGMAAO3rzDDW7e8Vtp98cRyXqnc66+0ssUt2X+Xl1AwoFGTEUp2kHlGojE7N5mXAv/YD3r7YdWrWDrPaYTuVZVEz4LkV5NQsd07NUB/J0d0ecE9L95osrtqClP/ZUoxCQX4RTZ7OJkdmtjk1HZG2FtjzLKDvV8zpISeaeTGd9eQ+6DALqr16pPkDWXSLOX/QEe46/vBzuQ+1Wvc9M+LeZ0suhYL8OTWtdiixIhYftN/vrpyaQdXP/QRd/wqdmoQQQgghhBQLippVRI2mYENiKBbET3XmhRTfYE5G6E74eRIqtJAkaqaIlbJTU4UOc4CZDBA1O+LmMS9N3Ay8MMp03QSRRfj5zJc+MhcpYW++tth263U2oqYr4OhQ0dTpy6npd9aEcgg/17NwaqaImn6nZheipt1//hx2gOTUzKL6ueFzj9nCSiJHUdPvSut3gPs6tiN7p6YQxXNqOoJYZ2XCqW3R3z73fHNqKkp2IcDpkMPPZVHFXyxI7qNyFgraNMt8rxrmmPlcAaD/QVY7vE7NpBIJFm46N6e+x02fAnOOAza94s7L5NRULYGsswF4/zvAjsXZtV9+VjiVutsz59SUcyymCz/P16lpi3taJFVE07IUNeUQdqULp6aRdK9t+3l82gfAYfcDB//YEkXtNCHSDxWdm4FEM9C22rrXrc+TPvt69+84NVu9fSgLrnk5NXV3P/J0osn8W4z0FzaO8N1FTs28w8/p1CSEEEIIIaRYUNSsIkKq+Xb8rv0GZ56m2IO54OrnQnJqatIgKZ7JqSkUJ1Q9GZBTsyNuHnNcaBHQuRFo/jy4wX5xLCAMdv32ZvM4IuQOAj1Oza4dfsIa9MaNEAAF2zuzdWpmIbTJTk0pRN/OqRlWEtij+Xkg3uRukzb8PI2oKVc49mO9r4a0z4647gjLgfsBzJyayTxFTX/7+uztvu5/kFfUzJjLT86LVyRRE8jdeVoMHMdl2Dud9XaaOy+bEOB0yKHBWi0cgSklh2OFCgVtfcs9/o4PzNf9DzT/2gKd7NT0p1sAgp2am/4NbH0bWP2YOy8bp+bGF82csp/fm1375XyJdkVuvSNzTk25HcUWNbN1amZ0zMtOTZ+grse9zy7DJzQCprvygO8BvfeychLbjnrp2SyLhnZhIMDrPo/vlHJqtrj3tKKZIrQsuOZb/dxfKMg+t2KKmkUNPw8QLlkoiBBCCCGEkKJR9Pin888/P+PypqamYh+yxxAOmaLmjmQ/fPiV57H9/Z9htnEW/gsIdoMYSRhOTs0QNE2DgAIFIlXUlHIGGlAQDpv7C3JqRhM6FBjordjhzemcml3n1IzFzIFxQmiocZyasZycmrF4DLUwK7wDQLMdft5VTs1cnJoQ5vlYYu8WS9T876FP4r9izwGfNACHW8KJfxAu/E7NNKJnoGvHnKcnvdtsb4ujrt53e/rz/NkCTc7h5773rdfuwLlfmrkSBxzk5s2DMMWDdGGS8ntXaPi53KeJVrOqcjlxnJq28JJnTk17H3pnYU5NzRIEQ71NwSZTte1yOTWFcEVNmf5jrHb4cmoqacSezgbX0ecnLoURO2JihpyaNunc5H7kZ4VciCmjqCk5RotdKEj+wSNfp6YR4NS0n0lvXwRsfAk4cxnQd1/vfZpOjNNqzX6S15XP1xE1Fe8zbcAhZl5OwBt+bh9HldqWd/XzWndaiOI7NYXIvlCQlq9Tk+HnhBBCCCGEFIuif6vu379/l8uvuOKKYh+2RxDWTFdTQjfQ1PtoXLfuxxi7p9WfgU5N3XFqJoUGTVWgI4QQEojFfMKaL6dmTdgS0wKEyI64jjo1ClWxxENZMBDCdV9lEX5uFyKKGxp624O/RJMrLiS7FjVbOjpMUdMqbmQXOXIGxn5njS1u5pJTEzAH4VoNhBBoaImilxLFJfWvmst2vO9dT8ZIWJV+u3BqBg1+HVHTu822thhG1PsG1f7wc1toKNSp2Ws4ULen+U9qk7Oumo2oWahTUxI5shWoiokT3mq7p8z7RQiBZKZC6EFOTVusKKRQkC0EOaJmF05N+b4sFa0rgJiveFhkEFA71GqT1XbZqRlEtAHou4/5Wqv1imdybkT7urbzNMr4Rc1srz9P+LkkamYqFOQJPw9559kUo1BQilOzF0ynrsgsXMspCxxRPgnEm4ENz5vTG/9tujHtvlZCbgi/HzlNiE2QU1PrZV5zZ39hVkOvP8wMTwfMe1gW6AGvgzlXp2ZQTk2par1SLFFTvo66DD+3+kkurpSyTsA9QKcmIYQQQgghRaPoouZjjz3W9Uo58tBDD+Gee+5BQ0MDxo0bh1//+tc46qijAtd97rnn8NOf/hSrVq1CIpHAfvvth//+7//G5ZdfXvR2FZsazXRqJnRXRXFkisCcmkknp6YOFaoCJJUQIBKIpjg1pZyaQkGkJgLEU8U0wBQ1+2qSIGiLTPEm4JXDgeFnAkf8X6oQ4BucCiGcgkUxXYVQa83z6djkrpSFGNHa0YkhAHSE0K82BD1hDsYVGKZYW0j4uSxO6DEg3BctnUlEEwYurZ+P/iFrefNSVzhKCT9PeEUNv1DsiA7pnZpGgFMzBb9T0wk/z1EEDHJqBrTJXDcOII1jqaiips+pWUza15vCbTpxFkibU/OuWcvx1/c0HDy+HfsPHxCwnS+nJlBY+LlcaRtwr+WuRDRhpAp9xcZ2aaoRV8Dss09qYSnHqRlwvQPe6ueqT9TM16mZjStbvk/9oqb/nu0q/LxYhYJk4S/UFyLUF4rtvFZrzOvK/3xJ2Yd0zcjX3uZX3XVq+vvOJaBPbdRsRU1rvT57uyksnPDzDE7NYoWf2y5Nf/sKQb6O7M+TdIz8mvlj14gM0SlBwiWdmoQQQgghhBSNqs+p+fTTT2P69Om49dZbsXjxYowbNw5TpkzBli1bAtevr6/Hj370IyxcuBAff/wxrrrqKlx11VV49dVXA9evJsKOqCncVIa2+yqLnJqKokBYOnU8kcmpqaI2Yg5IDT0O4cub2BnX0VeVRBRbNNvxgenEWf93c7qL6ucdcR0qzHXihoa4sAZznZKoaXQdttzaaTu/QqjvXeNUbjdPRi8s/Dzpc2oCaGyNAhC4YtBL7rL4TtNhJq3nbhfPPEjPIvzc8O1ze3tAsSB5HZF0w84LrX7ea7ivTeH068rILtssHLdZt6mYTs2tC4EXRgIfXJ95PeHLXWtN/+nd9UgIBb+cszJ4OyNN+DlQWE5N2akJdC2i5eMKzRVb1Bz9dXden329uXKB9E7NfvubfxNN7n3nd7nFA5yaoSI5NT2CVZ1XMLb7T06R4WwXEH7upyunZtsa4OXDgTV/8c6Xnw2qBrHbce4ytUYqOpVlTk3ZJbzxX+46dl/aOSiDipbZ2MKhLGom0jg1/cjVz/0/5nhyauYYfh7k1JRzhRbNqdnhHiedk9VmyAnAlEVA/eHp1wmsfk6nJiGEEEIIIcWi6kXNe++9F9deey2uuuoqHHjggXjkkUdQV1eHRx99NHD9iRMn4rzzzsOYMWOwzz774Hvf+x7Gjh2Lt94KyAVXZdiiZlw3HF+l49QMCl2Wws8Na6AkrEF3LJ6+UJABBXW15uBdhYFowhtf2xFPBjs17TyYsa3m/roIP2+NJhGyCh0lRBjtSWswF93srpSFGNbeGbXOLYQBdTVObk3zmAlnIPraylbc/9qK3MLPZQecJQ40NEfRV+3AAb3WmdOJQeZyu9pzimgZ4DySheJMoqbmc7lZbOvKqQm44kKiNXNBHz9+sa3W59RUlOyEOVlIykKcztwmuVBQEUXN5k/Nv3auv/QNMP84ef+8OTU37ExznQaGnxfi1JQKBQFeN6HnuP4fFMpQLGjnR+bfPc4G6kaYr/tKTk3D59T0i5qyANqx0fzrFzUTLea5COEKVcUKP7efB4pqhXsHFAqyHYyBOTV7pxc1u+r/za8COxd7CyHJx7H6RQw5wV2m1kjXY9Js4/vTgC//6TuvgPBzPWpWqnfOwerLrETNHJ2aMk718xZvrk/Al1NTLjKWg1NT/tEh0Sy1rz11m3xw3usu8mlmC6ufE0IIIYQQUlKqOv4pHo/jww8/xIwZM5x5qqpi0qRJWLhwYZfbCyEwb948LF++HD//+c/TrheLxTw5KFtaTFElkUggkSidA8ret/1XsQSSRNJAMmkPkgUSiQQ0hBwFOilUhBQDhp6ArpjtNqCZ+7HEzXg85m17IgZ7CCWEgl415mArrCSxs60Tob6uANERS2KY5g4S9dhOGIkE1M6tppwodCTaG6AkOz0XkJ6MwpCOuaOtEyHFPI+E0NASU1APwGjf6JyL0DuR7KKPW9vNthhKGP17haBLTs1EvBNqvA0agM2tCu5/bSWOmtSOYwAYiQ7oXew7lGh1hONErA2IJLBxZzt6qeaAPilUfNSxH4b13w59x8cwBp0IJd7uOW9Dj0GPtcMdogok4p3OoFVNdkKD6TQ1fO1REYIGN/xcUUw9Z0tLZ8q15z+uIzaLpNn2DLnd5GstpMedcxZQkIwMB3zHCik1UJBAIt4OhIP7UIm1Ou0xEu1d9nUmlIR7LSWjTRBFuu/U6E5oAER0W8brTE3GzfWUkJnF0Eh61t+wM/X9AABNj0MFoAvFeW9D1j6Sic6cz0NNdFjXShhGIgFNq4MKIBlr9uzLPq5NIt4BpMthWSRCiTbzvNS+UIZNgbb6D0gOHA8IDSEAQo8hmUhAS7SZfaJEkEgknPtC77Un1NphUDrWQXRsMPtZjcCfCTTRsRXQeiFs/bSTQG3K9akY3g8vkezo8jmCaDPCAIRWh2QyCU3tZbYz1gJFj0EFILQ+ULANRqLTuZ5DSfO8E6iBChVBsqaux1LubRk1ut28vmLe69C+F5NChUgkoA88ztm/IRQo1rWUiHdCaXkdoZUPQTTOR3LYme6+7eeL9ezXABhb3oQquV71WBOMRAJKdBtCAIxQ/7T3q6ZEzGsu3uZcc2qs2WmXHt1mnotaG9DntWYfJ1qhW88rodQgmUi490W8E0oi6uxPGPEu37uQkYQC877QYN6feuc25xoQlhO14M/rWIt1jfTu+nrKAhWac5522+x5ulAzXjPFopTfYQghhJBdkYmDbstrO6GoaME4HF8/E4rIlLSfEJILVS1qbtu2DbquY+jQoZ75Q4cOxeeff552u+bmZuyxxx6IxWLQNA0PP/wwJk+enHb9mTNn4vbbb0+ZP3v2bNTVFcmxkYE5c+YAALZFASCEzlgcH3z4IQANTTubMGvWLBwW2wbLG4WYUYOQFsXWLZux3RDoDyBpKJg1axZOThqIKMCOnTsxa5br1AmLVky1XhtQ0NjQiH4AQoqOf8+eiyFSJOG2Jg371bqi5vovluLjDbPwlfi7sOoc4805/8BA/Qt8VTqPdatX4JON7jHXtAJhmEJtEiGs35nEqF5A55aPYZdg0GOtnnYGsaZhBU7rCyR0oGPHFiQkUXPO7FnYL7EU+wGIClOoffy9RhwzCli9cROWdrHvUzt2wD71t9+Yi2ZtDd7aoKBWNd1DUSOCFdGRmNL/XXz56Sv4aOU+2D25EHJG100b1mPpllcwRZr36sv/gq6YIuPBsRXYB8AXa9Zj2UZvew6ObcQ+AFqbTRds35BAS0LBJyvWYhZWe9YdnPwPjklzHq+98k/ElcxFugDzWjst2o4IgE9qvomoUo9N8z5MWe90XUENgAXzX0ObukfgvgbrS5z2bPpyNT7cmrmvMzEi8QEOs14v+/hdrF42JO99yewfX4wDACTbGzJeZwfGV2I/AM2tHRgAoK21FfNmzYL9iGyNJQO3PyK6AXsAWPrZ51iz0lx+UkcM/QAsevctbNNySw0wJv4ZvgJg7fpN+LRxFsZHWzEMwCf/WYT1n7oVw4+KboDsr31tzisZ339NRKEhirgyIKf2yEzu2Ik6AG+/uxit6iT0rj0QLYuT6K+/h4kAoh0tmD1rFsZH12EYTKfmnDlzsG/4CuyVnIe3Nk/A+Oh81ANQOjcAAJrbE/C36I05/0QSdTgNpug+69XXU4og7ZVY6nn2xDua8Yr8/gQUTuprrMXJAGJJDa/OmoWxsW0YDWDl5x9hoLEJQwG0dJrP041frsFi63o+yxJz573xHvZNrMc+AX3zxcrlWLYu/fU1Jv4ffAVAZ/NGzJHaOaWzBbUA3nx7EVq0rYDQcY61rGPzBwgJ3Vy+YD76Gl/iSADR1kbMlvZxSGwF9gawavWXUCDwFQDJ7Z9A9giuW7UUn3w5CyMTb+NQAI07ongvzf1wTGc7BgP4z4fvYtNH5vV/QHwJ9rf3tWIJ9gbQ1BbDAt8+7M8ZxYjhw0VvYDyA5rYo3pg1Cyd2RjEAwPuL3kF/YzUOtLaJdbbg1S6e06d0tKAPgE+XrcQ4ALFoBz5973UcYfdV8xagzv0szZd6fSmOB9AeNTC3izZlw37xNc552s+PsbGNGA1gzdovsXRz4cfoio6OLCIWCCGEEEII6aZUtaiZL3379sWSJUvQ1taGuXPnYvr06dh7770xceLEwPVnzJiB6dOnO9MtLS0YMWIETj31VPTr1y9wm2KQSCQwZ84cTJ48GeFwGJubo7jzPwtgKCoOO+xQ/HH5R6ivH4ipU4+C9sELwJrXAQAxUYPeiGLwoHpEQkOATQDUMKZOnQrjhd5AfAcikRpMnTrVPVhsG/Ci+bK2Joy9994PWGk6NY+ccBwOGu6e512fvI4+mhvOOXL3Adjz6KlQP3odWGHOO+HI/YG2MLDYPcTIvYZjxOHuMRes3IZP1pmCWVJo2KjuA2A+eotGZx1NSXjbGcDTL20BOoFwTS8c/JXReH/bWmfZ5FNOgrrsXWAV0GmYTrUOwxQTddH1vkPPJ2Gl/cRxxxwJMWg83vvXMvTa+qXZbajFytheAIC9+rdjj5OnQlnfCixy9zF82CAMHXsc8LI7b8rkk4CagQAAdfHLwBfAPvuNweiDvO1RP14ALAf69DbbPnJIf3yysQV96gdj6lRvrjZlkwG8HXwek04c7xbrkDHigFrjudZq/g0gARxw8nSg71dwaFC/vNgbiLXhhOOPBvofEnhMZZPutGf40AEYemzmvjbbk4Sy8XmIwce7VbMBKKs3AZa2OmbfEfjDMlPC/+WFwcfOFnXJPPM6RwemnjYpOBwU7vvQb8BgYMdq9Oldi6mnT8X3Fs521jn99NOh+IQy7Z3HgI3AQQePw5h9zPMPzbkVaFqP8UceBjFsClIQAtpb5wCxLdBPXuBpk7pkPrASGLXP/thr7FRo7/4F+PIDjD1wHxy8n9u/2lu/A6QsDpNOPjE1N6pEaM6RQNsXSJ65Bgh3LX4H7uNFBYgBx5xwMtD/YHdB81JgNlAbVjB16lRor98PbDWdmuazzWz3JADa288Am1Y4m/YbOATY7hXvJ04YC1FTD7wCINQHU884I6UtytptwPvudE1Id+51dentUFc9guRJ84F+B7jbbH8PmAdE6gZg6tSp1nv+MvYbPRxK01ZgC9C3fndg+zrssfsgDJswFTDiUJ81f5g5+dSzoC77xHkGAoDQekHRO7HP3iMxemz661/9cBawGuildnieSaEXFCAOHHfiKUC/Maar7nlzWR+xCaJ2OBBtxvHHTYC6TQH+A9SGhWcf2gcvAmuAfb9ykBna/Zl5vcuM2nMQRhw5FernS4FPgKEj9sfUI4Pbq735G6DhU3x17AE4dJTVp9Z1CQCjhvcH1gP964di6km+fRgJ4FmzKN/hB48CPjTf46knT4U2925gx2ocecShUJoAWNk8IiEl/XNaCKBzI0Lza4AO4KCxhwMfAJGaEL560Gjn86d3renqtT9L80VpCAFvAr37D8bUyVk8z7pi5zDgtb9AKGH3+lwyF1gJjN5nP4zMcM0UCzvyhBBCCCGEkJ5IVYuau+22GzRNQ2Njo2d+Y2Mjhg0blnY7VVWx7777AgAOPfRQLFu2DDNnzkwrakYiEUQiqaGb4XC4oAFSttjH6RUxbegJXUDTTDeiqihmG0KulTIuzLdNhe5Y14USQjgcRtzK15XQE9626667cVCfCLSQeb6aoqMzCc+60YSBvr1cp6aqt0ENh4FkkzMvlNiO9kTCcwFpSEKT9tOREFJOzRCWNA3DJb63TRE6trZGcdM/PsW3J+6DifunOvRiVgV1Ra3B+L0H4bF31iFuhFCjJhE2YzrNdhsRHLPPIPxo/OHAp0BEiWV+/4Tw5GILKToQDiOuC/SywvoTqMWKqClqqi2fQQ2FAMWbb3FzUxsG+3IwhlUBOMc2Q/C1cC9P/5gHrbX6wVxnaL9e+GRjC1qiemrbfcf1HA9R6XgWH04Hvvg9cNpioNcoc71wGIqVPzBcU5e6jY2V69N7Hn7csEbViJvXSFesfxF491Jg9JXAhMelBe65xWLNeOEjU7G787xD0K+2gHtQd3MBho0WILJ78Hp2PS7rvBUYCIfDGNovgsYW81poihoY0s8f4m+KKVqoxn1vLZEypCK471qWAw2vmKtG1wP9x0gLzT7VwnXm/qx8kpqIeq8dX2GasKakf58SLUCTmQ8zHNsI1O0WvF5XWHkrw5F+3mNFzDyUioib16xhrpdEJPUZGqn37FINSJkQ0lsAmA55Jdw3+B4OeZ/Xit6BcChkujM/u9ts53tXAqdLv7ooVpqPUJ25T7tvjU7Y96hqzVNF0ryeY67TNtxrgJsD195lqA+gd0JTROq9LaO3uu1Uku7z3MotGa7p7fTp0vCVOCjxBHDIHVC++IO5XFWc56+SbPf2iXCvGTuPpeJkZTZR9Q7zfKx2qJH69Per1bYQku77bLgiqZo0c1mqobqAfYTNNBh6FKHkTmu9WnM9q+9CigH5fneumyDW/g145xK3aWHruhA6NMO9t5VkG1BTjM9sq/9CvYvz2T9kPHDah1DqRrj72+sCYOsb0PY6P/M1UyTK8R2GEEIIIYSQSlHVhYJqampw+OGHY+7cuc48wzAwd+5cTJgwIev9GIbhyZlZrdRo7tuR0M1BqWMMk9xcMcMulpB0xA3dkhcVzfybTFP9XBcqBvWOOMUKQoqO9pgrkAgh0JHQ0Vd1B7F63CrIYBcKAoBoI1o6vMU5hK/gQ2s0aQ7gYTo1l7QEC9G/nvMxFq3ZgW889n7gcj1piWdqGKceOAz7DemNmF1JXY86xYZiogY1IRXD6k2HZC8lCsPIUEDHiHvFIUsQ0A2BXqr1WqnF6tieMKCZVZs7N6dUP1+5eSfeXbnZMy+wEIaaKpzb76tirT+0n7lOc2dAHjR/oSCZRECY8/L7zAIfq34b3LY0rkXPskxFPOTiLNkUagGAdrP4EqLeHyrkwjed7U3u63h6ITcr5MrwsW3p1xPBhYJUyZm5ZltAMRL7+sml+vlm1/2JaIN3mVNcpatCQf7q5xkK1bSucl/LxVVyxS4c4xcinWvFV/1cCbje/S7RoDyw8R1uYRq7cI8ff8EeYaT2987/eAto2dXP7SIw2RQKsvvdLtrjP66zfheFguRK3XHpOeovpgNgVfhcJKYsAQ7+kVtUxki42xkxwNCD9+EvPmNXjrfvg7wLBUnXX6ZCQfIx7fvNfu7lU/185YO+tmWofp5LsbR0ONdI78zr5UL9YUDtYHd66InA1I+AwemSiRBCCCGEEEKypapFTQCYPn06fv/73+OJJ57AsmXL8O1vfxvt7e246qqrAABXXHGFp5DQzJkzMWfOHKxevRrLli3Dr371Kzz55JP4+te/XqlTyJpwyBVQ4klTZFFsC5k06I0JtwKsU/3cFjWtQW1ST3gFPdvRCWC3PjXOADOsJNEedwfkcd2Abgj0lQoFJaOWECIVnggSNRMJbwXstljCcWpCDWNtbHeIlLIgQBiuWLelNbWKtmILXkoIqqrg+on7oMMw3USxaIsjqHUaEYRUBZFeAwAAvdVOxJIZkjD7hSJLlEkaArW2qKn2QlyEEVVNoRTx7SniYlhJoLm9zTPPI3xmEhF9laOHWU7Apo6Agb6RQdRM+kRNuap8reR+FSK1knAQ/orWQeQjatqCSEoFeXc61tnkvO4oQNTc3NyJHU2SkJlR1HSvU3k6qbvXz7rtAbnppOrnm5o68eG6nbmJmp0+UVOuZA1kL2pmqrTeutJ9ncgzFNVwf0CB1su7zG6rEbPcz2mqnwNudWybdKKmLdIHVT4HgquQ6x2pwpZc9d6ufq75RM1ke6qoqftETXvdFFHTmp9JVAa8YrL945AQ7nHle1FRgH4HmlXabbFcJL0/KunStWj/GIOwV1wHgF7WD0m2SJxoMv+GB6Rvq/2eeCrAS883ex/+68DGfo/t+62r6udGIr0gOfCr3mm7bSLpETUVoUNFhnsgW3Sf8E0IIYQQQgipaqpe1Lzooovwy1/+ErfccgsOPfRQLFmyBK+88opTPGj9+vXYvNl1ybW3t+M73/kODjroIBx77LF49tln8ec//xnXXHNNpU4ha0Kq+3bEbTElwKkZt12KktAgrMG2qtoVcHVEk7IgZA4aDcepae4jpOhok5yatjNOFjUdISQmi5oNaOv0ClnxuFeQlJ2a4VANYiKCaM2eKedtC4gA8MbyrSnLbRefYQ3YTztoqJM3c2fzTmcgGjVqEFJVRKzw2j5aJzpjqSKpQzJYiJSdmsISQGKwBtPJdndAbg2wQ4qOuN8Z6xm020JVelFTtc5xaH9zn82diVSXaSZR0+/UbJUS/8muI8kRmeLqCmhXPNGJD9ftgAgSHSThdHtLCxav35l+f047m8y/flFTcoQmY64AJLuIHeLNwOtnAMt+mfFQVz32PtZIz4Zfvfg2mjvSCB+OU9P9wQAwBW6btdsDnJq2Q08N4bonP8AFv3kHnbp1HwcJjXoc2DLfnU7n1LSFQluA032Cqn/fmZyCslMznqdTU3bt+YVIOSRbJB0hMFjUzMKpGZNEzVAuomane33ZfPms+zqdU1O+p20R1XFqtnnXTefU7FLUlNpli5PyPRDk4gZcp6Zf1Ey614OwBNh7561znpEOtZaomcjBqakGOTWlZ2VXTs1wGqemmsapac8Lwv/cUSWnpu+9DkFqr5EEtrzpPQd7/kc/BhpeCz6eLWJrFDUJIYQQQgjpDlS9qAkA06ZNw7p16xCLxbBo0SKMHz/eWfb666/j8ccfd6bvuusurFy5Ep2dndixYwfeeecdXHTRRRVode6EtSCnpoU06I0ZtuMl6QwG/U5NTdHRHpNETcepqWBQnxpX1ITuHAtwnXH9NXfQrDihi16nZnvUHDBGrXD4ZDJ9+Hm4xmz/NnVUynm3d7hi0esBoqbiuJmsc1MVRO1iQHHXqRkVEWiaAi0ywNk21rEdaUnr1DQcUVOxBJAO3RJukh2u4GEJGmElmRru7xE1u3ZqKsLr1DSEWXE7qH3B5+ITNVs+l5bJri5Z1OzaqfnPD9figt8sxAtLNqWuI7kzW9tbcedLn3mXGzrwzuXA+9PceY5T0y9quP0l4u65dCYCnJqrHwc2zQL+8wNg06uBzTcMgZVb2tBHuo53Nm3C+2t3BK6f6tS00jVIomawU9MNP1+91byeOpPWY1UECDXb3vFedylOTTvEuwunpl/EDDqWjcepma+oKf2AkRJ+Lglyeixz+HlNicLP7TZGfc+Pjf+SlvudmtbfrJya1nzVJxqGsw0/l/o9HiRqprkXFekHLPn5q7vXg2455L9sNtCe8Dnhe1k5ZO3+zDv8PEjUTOPUdMLPrffCPjePqJneqe2d73vmecLPvdeyJqRrdPVjwGsnAJ/93Lv9hheApXcD8yYHH895vylqEkIIIYQQ0h3oFqLmroKiKI6w6YiaQTk1pfBzv1NTcRyYBjri8kDbsP5XMahPxAlTDCnJQFGzX8gdIIb0VtMx48up2WGJmnbV8aQv/LwlmkDIEjUjYXOgvCE5MuW8o1F3wLxg5VYkdG/IuB1+LhTXWdgpbFGz1XEMdhoRs6CGGkKbbg5K451pRCwgwKlptl833EJBfXqboZRNcTuHZ4creFiDd9Op6XME6bmJmrZTs1+vMGrD5m3Z4s+rmYtTUxY1PaGqspCSwalpue9WbDLf80VrAvpREj1q1Rg2N/n6YM0TwNo/AysfctonbFElg6ih6O65BDo11/zJfb3oKq+D2KK5MwHdEOijutdxvdaSIpKu396BGc99jPa47z2yRE5Z1AzOqWmuF9PdeydhWIJbkPtsyxveab9TM+vw81ycmsUQNa33Vq0xw6Jl5OvaiGcOPw/5ws/VdKJmHuHnyQ4gusU7r2ODdzngClZaak7NdsMXet1V+HmtGTGQl1NT/pEinaiZhVNTT5rvTcwII6r72+dzatrvfzbh5+lEzXS5VW3ShZ/LOTVTrt90oqbtoO0P7PdtoO9+5nRXTs22L8y/dg5f5zyk+6hjY+rxHIdwv9RlhBBCCCGEkKqDomaVEbaKBcV9wp63UJDs1DSFFGHXIZfCz4OdmlZOTSn8XBY1OwOcmioS5gBVHrhHG9EZcx2SAKAHFgoy99fLqi6/snO4u4IlrMai7Z5tPtvkzfunOG44SdS0nZqJNm/4udV/rcJ0UCUzipqZcmqaA+T+ffqjRlPRkpCdmuZ5CkvoCCtJ6Nk4NbX0oqZm5YOLhFQM6GXOa/KHSmcq2uMXNZuXua/TOTX9oaoB7drWYu53ZWNAISLJvVerxLG9PeaGqRtJYOlMd93YdlzzxPtYvGoNACDqTwsgtSssVTVOKRTU/Bmwc7HZ9t6jzMJNshvPYnu7+X70la7jgaEWRH2i5s9eWYa/vvclVjZYYo99jQWEnwfle7XFxBbp7Y9nEjXtAkm9R3qnnf35BKNsnZqZcmq2FaFQkCNkBbjz1JArdCbb3OJl+To1Y/nm1OwEYpao2XuU+TfR5IYwZ8qpaYls9863HMlO0aMMoma4n5vzMZOobCS9758t9tnPBUUD1IDzAdx71Eh6CwxJ+7NFzbgII6b7nZppcmpm49Q0pOs90RawXrqcmtZ7Zrtm/eHnIpH6LEsnatrvw9g7gCMflnKMGq5j1CIkAtrrd7dLhb+w9e3U43UlphNCCCGEEEKqCoqaVYYtasayKRRkuOHntlPTdWDqPqemm1Nztz7enJoxj1PT3EYWgwAA7Ws9k6JziyNMJRVTJBC+AWSr5NTsFTEHyh+1DHVXsEIjY3FzgN4nYrZ9c7NPPLLdqFLoZ1SYA2oRb3UG+FFhFgoCgA5b1Izm4tRMzamp1fTGwXv0c9yoslNTV11RM5n0i5rStN61U1OzRJXasIYBdeZ709TpH/jnGX4e5NRUw3hw/ir87z8/SXHGyu2yHaTLG1tT82pKomZETSChC7R0JIDPfgHMm+QR0xIdWzH38y3oq5p93tzuF+ncc40Id1lKoaA1T5p/h58ODLLSUMhVkC22tcUBCPRR3XOv11oQla71aEJ3cri2R91+ARDo1NzRHvdMy+u1xtz9xjKJmnZb+37F/OsPP7fFGFtUsV2F/pyafqdbOqdgosXrXsy3UJD9Xqdz59nClfRe5J1Ts6Dwc+tc7f4VhruvTiu/amBOzTROzYSvHfJxB58g5XjMIGr6hWR/Ts2MaSBsUTPmvc6l68GwnkdxEXZTH9jYTk290xJGrX1kzKlpP+vSODVtunJq2s+koJyauTo17T6S+98Jxzef+R6npi1GG77PEllcDhI17fvDX9CKEEIIIYQQUpVQ1KwyHKdmpvBzIyj83OvUDClJTwEg26lp+HNqKkmPK9QOz+2t+kQnW9SMmEV4FOio1S3HkSUOGAFOTbv6eV0vU0h4e9vupgAb7g9EBgMAknFzgH7AMFPI2epzxLnVz12nZtQKPxfJNkc0aNF7I2SF77cLc1BqxDIUr0nj1Ezobk5NaHU4clS9K2om2x3BI6ma5xRSdOgpomaW4eea16lZG1bRv5clavqdmtmGnwsDaF3uTstOTSeUvwa/nL0CTy1aj9++8UXq/qy22jlRW6NJNLb4ji+JmmZ/CTRv+RhYcnNKmPXOpgYIAfTTTHHEziHqnps73VsSIr3CPIDNVg7NkZe4opTuex8BbGuLoU6NQlVcEXJgqAUxyam58IvtaLdE045YqqgphPA4NQ0RUJXeuv+aY+56UT1DTk1b4Op3gLWyT9S0hSBbRNMKdGrKoedA4YWC0oqa1rVtuecEVCfPr4dcq5+nKxQU5GyUw897j3Tfy0SzKSTaaQuGnmztO7VQ0M5kP7cNQgSEn0vnNHSiNzw8HWlFTV+qgSDs48W2wv5hymmzjfXexI1Qqqhp59QEzHOy79lCws/96/nxv2f+6uf55NS0+0gWNe1+rB1iHlbOqZnOqSmfx7YgUZNOTUIIIYQQQroTFDWrjBpLlLPdc66o6Q58nernwq1+7ggIjlPT8LjcdN0KUxeKWf3cWi8cGH4u0FsxB3+6sC6RtrXm39phaLMEw93DpqgZrrEG/EaqqGmLYnWRWmiqgoZYP+w88nlg4izHMRVRzO2+YomaW1q9A1HVFgykHJAxy6mJRKvjrmnV65wK8p2KuS8jIN8iADQ0R2HEfe7GAKcmQnU4fORARB1R0y0UFFfM8w4pyYyiZsJa9uYXAS45SwwK2aJmyHVqNvtzamZbKKh9vVeQCHBqGpJA/ND8L7Bhp88JaLWrRnHFmhX+EHS5eAyAiJJAe9OX5kTdCGDSG8CQEwEALc1mmHV/zRRjVL8IJPVXrRpHCObyFKem7c7qs3f60GwA29viHpcmANT7ws9nf+aGfnfG7WJU7g8GflMmYLo1PVhOzZZOyampZ3BqOqLm/tbKW50UEua5+J2a6XJq+gsFpRHVWnyiZqGFgtKFHNvClR3eHKrzhvraZHJq2kJbvjk1Zadm7RBpf03A5/eafTvwUGCPs9w2Ah6n5pfxYe68REtq+LnM0JO84eHp8DuJ/YWCgtJS2Nj77/SlKZB/qJCcmo6gblNT7+7DySGpZBbt/KKmHg8WHbsKP7dxBMlM1c+7dmoKIfDuGulHKru4V92eZnNkUdO+j/w/BMn30c4lqWH1zo8KdGoSQgghhBDSHaCoWWWEQz6nphN+LhcKciviKn6npiLn1HQH2i2d5uBOQMHAurBU/TyJWNIVVTriOmqVmOOwbEzUmwvazVyIiNSjWQwCAAyvMQfnStgc8CspomYCIZj7UbUa7DHAHASv0o4BBh/jDIpr1TgG1IWxu1X5u7HF69S0Q6C9oqY5UNbi25zBbZtR54SfRxVzUKr4ikkApkPv6JlzMefj1d4Fck5NxXVqHj5yIDqt43VGW51w8jjM9tcoyRSXqjxI74yag+1XlwUIrD5HZG1Yc5yaKaJmtk5NOfQcCMypmZRcdJ0JHY/43ZpOuxKoCanoq7ZjzebN3nX8oqYaR7TNEl/6jAaGnOA4eztaG1GjJNywfvjPzTvdWzP33Z4iatqFTvphZ8w8h2Qs1UW2vS2WkkJhoFQoyDAEXlvmCkXCFhal6udJwxUqh/Y13/9tbXFTCLEFZuv+2yk5NTttYSlT+Hmffc08lMJwq0QDkkPRcmqmzalpu5dtATWNqGYXTLHdcwXm1NzSoaSG4AMpTk0nb6Uff05NuVBQ773cfdhhwLmGn8ckUdMOsY42AMt/bb4++FZXbLVdsEYMwrq3WvQ6tMMStDo2pIafN33sHm/AuDydmpbD3V8UKgh7//7cq9L1YLue4yKMjqRPSA73dUXGDusHh3C/1GJPMimiZkCBLHk9PyluXNupaf9gkINT0+4jLYLH3l6LKx9fnLpOrz0A+MLPbVFT94efS88KoQPb3/Mud8LP6dQkhBBCCCGkO0BRs8qww88zOTUzh5+7uTJll5sdNisU1SymI1VJ9+TUTOjoawlKAgq2JC1R03Zq1tSjWZjz9oiYIp1WYw74FSncVghhhZ+7Lsu96k2hY912a5DsiJox1NfVYKglavqdmkqAU9MRFBOm0GZAQ4dRC81yusZsUTMg3+LSTabIsLPFJzKmcWoO6hNxxKX29hZnPTuvZ0jRYfidmpLIKayB9db29GKQLWpGQioG1NmFgnwD/SCnpu1Gk52acsVnwOfUNN+jhPCGBm/c6RUoDcVql5rE6WMGYt7+38IZG890i64ATtV5m4gSR7zDEuhqBlkzzb/R9q3oK6U0CKWImt5z7Wu5LDvl8HMhgKQtOvTHgtXmOhu2bYOfbe2SU9MScEynpnmtb26JYmtrDGFNwdB+EaiKdQ9I4ed6+yaolig/2BI1d7Y2Af/aF5h9tLMeADRLTk0nBDhA1OxsN6+5OasTTvoFJwRdGFK4sy+nZtLnpLXvCdstFxTqLu+7/xjzb56i5ifrzfvsy2aBN1ZsSV3Bn1MznagZ6gM7B6K5niTo1VmipjBcV2HO1c+t6y8yxHWFNn1q3h+h3sCe50htcd2XinWPJhHCNt16Xzq+TA0/322C+bd2qBkCn5VT0y5CZV0XueTUVNKImtI9/f/Ze+8wS667zP+teGPn7slJo2xFW7KiLRwk2RrbsDiBWZJZYAF7d0GwgHfXgGEXBwzLruEHLMGASTaLAYdxkGRLtmTJVg6WRhqNJofO3Tffir8/TqhTp07dWzM9kkba8z6Pnpnurq46depUjepz3+/3NaMBUNOuJUCWPRcG9dMEEtDM+lEqnNAA8p2acvk5mztzgFMzLwRNmKP/sfsphLF03e0Rfj6poCAONQc4NQEF1NTl51paWlpaWlpaWlovJWmoeYZJ7qnJJbz4svLzOA6Sl2nm6GHp50aItgCEVtrshY9eckPoqZkqPw8wQkuEQ2sEjZC+kLKemu4kVqNxcoyYvDDatPzcEvok9tpL+P0tH8GuMdq3zHQ4tCQhLkigpuFhouZiZpQADrl3o6r83APZV9knL/t91AAYcGj5uWcRqGkGK5DFSogN2YHEwEYYo2yyMVZTf/pei0PNTsx6agaIBzmP6N9n21E2bMdM4KFrmTBNI7enZkBTjnlLAACo0OAl0anJQJZLgbQAxAwKE1hC9znrCPBo9NJQpuUTOFKxQrztHB8zzgqmcTjtFpVCOMqmh7DLoNI0HQOBmlF3AWN24pJyjCAdUCTNH3NqpsrPgzbvDQtnFLMdcg6Bl3VqLjT7qNN9MFhWMfsI6basDL3iWDh7pg4TdL9C+nn1i9vwPzb/IQBgHYWa4fKTBDAtP0KDuqhTU4CaHQY1FaDRoFD2K890kxAXFhYUdMD6Jv7V/Qv45t75/L6hDAoxsJQH1RgMGzmX/HkKQUEHF9v45DeJ+7cfu9hzopndSHZq2jnAyzDTwEh0+5WmkvPtHKT7OcX0c9GpyfqKltalS+KtMlKAFYAf2TjhM6h5JJl35urc+WPA9Z8GbnmEjqOIU3OF/MmgrdxT0xrk1KTrcYBT0wbZTz9y0fakf9LtusKpOZ5/PCDr1FQln4vbyUoBQQPY/FbyVw41FeXsBXpqhlGMUP5fFnecQ1tLdGqyMcvudvb9Mn1uLj0g/VwHBWlpaWlpaWlpaWm9lKSh5hkm1lOzz52aqvRzofycOsliuacmQnT6glOTlp8bzC3EA4XSPTU7XsgddZE9ilZI4QQPCppCO073l3NL5AXQQoCIlqZ6R3bjrePfxLYSfRk3HQ7rGj0GZMhLccn0MFF1OTiSg4JM5uoToKZPoWYlIECoZ9AXW1p+Hpjj5Osg60xb7shQk85xjlNT/DP02txV1I6S8nM5+V18mWbl8y3fQrMvwQ96Tq4RoOSQa5PXU7PfJ5COXxMgeTkXnZoMktV3kj8VPTVZ38dLNxM3W0M+VkTWx1gpxvljye/HvgDXJKdm2egnwIZBTerUhLeIUcGp6RgBmiJIlaDGljoZTwpqMuBgmIBdw2yXrnlVT03RqVnZhBBkTi2fOCUZUHVtE9unqkmgkOSau7hCyrfXUeDO2zAAZM6pUzMFNX22nmQ3aogyyFjvOxwiYteOQWjqLoth4Nd378fP/e1DgDsBwCD7YundQAIxOdTMc2qyNHAKNU8hKOjb+5dgUYDdi1zsnVWFxjCnJg0KynNqAum+mmL5uV1P3KtsHTmnmH4u9tRkULM8I+3DyPTK9GHjcJ9+GCCWn7NxmA6w/d1AhQJpsfy8N5+5JwAkc87uR3+FXL9wDU5N9kFFHPMPk/qxg7avgJon69SUoaYqJAgY0FNTAIJbvjc570FOzSE9NRe65P6M5f9lccb4+dmqnpp55efrXkf+lKEm76mpnZpaWlpaWlpaWlpaLwVpqHmGyZbTz9kPctLPeWk2e8k3ElgpOjW9gG1H90gdaY4RpMrPu16Y9CJ0x9CKKJxg/RPdSTSjNAgolUfovnwO4vptqSTYcDBaIWPjsE5wak7WEifnYttLufhMGhpjiE5NWvpdiQj86IG82DoUCgcUnDhhFuIwp6bNoKY7Qc+R9dSMhJ6a5DgmhR+hn6Sft0Ma8mMEA51HDGr6sY05OUFc6F1Zdsg1HK/Q8nMZNHrkGqTmn7n9BKdmROHXkkF6zanSzzsBOdbFFGo2Jacmg4CuGWC9u8K/32wLTj+pp2bZ9GD5DGpSmEndonawjDErgSOWEaHREYCDBDleMU2uYyr9nPdZHEUviLDYI2M0Qqk0G6SnJndqOqPoWWQcTkDG5wcEkriWiW2TNViQys+pJuwmDMSYqdNr3TmQHg+9/5ZSTs0cqBkkczfXK2M5onPEIDS9hq2QOAibvQC9uEzCbQBgVkiUp9fRA3sW5Dk1JagZNNItBArICyKUDHpfx242MAoQnJor5E+rioYHvOfPvoN/feRoelsReqWCgurAyDnpbU/Gqek304nYGafmdPZ37DR8DWILB7v0edAVnJqqoCBAgI5zwL/uAL72RvJ1FCauYubUrJ+V/J63XKz8PK+nZtgGlh4Cms9wIO/FDlLmbtMhvZhtyal52qBmjlNThJ3n/6fk76mgoJPrqfnkbPLcTDvVNyVQU9VTMy8oaN1rARhA+2DSsiAKk59rp6aWlpaWlpaWlpbWS0Iaap5hYlCOQ01FT82Q9juMxaAgqfzcNtJOzTCk27FLTuGNpXJqsoRqdxytUHJclSbRkqCmRYOCXCPAIgWGQU/qVyk4NTNQ0yTl55NVF7ZpII6BhZbodMxCzQDpF+ouaAk8LT+P7XEypkjh1GyT4zug0IsBOJVTkzrOLFpiHwcJ1GwGZAy2EcGM1S/pcRzz/pF+bGNOcqHy9HMjRJk6Nfk8yeXnPnXLGYl7LS6vI38RoObyInFkffopOl8KpyYLs7l0C3Vq9tLHYlCzZIZw/aSH4mJDSB/OpJ97cMMV+kXaqVmOVjBqpeFIs5sdF9N5kwTUpJ2a9Fq6Yzix2kOXJtKbkQpqCk5NZxQehZrlgAAMj0Jzhzo1Dd5TMw2Yxq0mTAOYrJHvV73DyQ+9Ve6YXOok42znOTWpY68XufBiBwc7FDYxYEVBDHMAA8Dx1R5PkMecADXpcZ9dDNXHYupLUDOO8iHV7NeBL18FLD+a+rYfRijR+6EXuXh2rpUNCzLTTk3YVTy5YuCBgyv4++8cSm8rOjVFAGbXgZHzpW1PAmp2DoOU7xuk7QGDdx16/NJM9nekIKIgtnHCp2u3cySBXFYO1GTP3eZecp+tPEbm+CtXAl+5mvydOTVL04l7tL+QKq3OFYOm7Joxp337EOnrevv38E29yEFT7KnJzs2RnJonW36et17MHKg5fgkBqTPXJ45IQOhXe/JOzcePJ8+aEMK1r5/Fz89iPTXF3rSZnpr0XCobgVG61pYeTP8M0D01tbS0tLS0tLS0tF4i0lDzDJPcU1Pl1IzoS7AR56ef20aQcmqGIYMQivJzwRXZ9UMe0mKVxtCOJajpTqIpg07qYnKMAIsURkb9LNQcLdPycwY17XRQkGkamK6TcxMdjRZ3aiZzEBgS1KQl8QwKR/TF3Y2yPQSXaPl51aQvwSzURkg/l8vPbRqGhKDDt1sNkjHwfTHRl/HltsdDgPzYwXxT7dR0jQAlmzo1afn5Sjf9oh/49MXeTlxEnkOhZtBKHHh94vw75BEXZ6xIP/cjG1XXws4Zcl4dL0QgrIOQriPX8JPyaAArDQESK5yalZhCLQaK6Z91o4FRK10m3uoIv0/nK4rJ9ds6GvJxcQn97k40EqhpS1Cz54do9gPUrQRqdkpnAwDWx8+SXTGoaZnYNlnNdWrWrS7Kpo8pCjVHQiGEyW/w8nMRavZpv9JMT00KZdn989QyvY8YbKKlryLUPLbSBda/jnwxdyfdb8ydmT3q2u70pfUHkGvNnIu17Qkg+86/B/71rMTFyXTPe4Cl+4EvXZ76tujUDOCiH0Q4siyBZFZ+zlyJVgVNevpdX+oPnOfUtOsJaKL6xnOKcm5ADTXbtA9naYqE+DB4xxyTcvk5AFS3pL70YwvHRagpl59nxsHKz+n1D9pkXpcfIaXN3RPJnDhjyX3RXzw5pyZTZRP5c/W75PoKDk4vdtDqK6AmLz8/Sacmg65yAjzff075eWkKePsJ4A13pHuYmgqnJruOQ3pqPnI0WQeB6NSsn8WdqDb7kCrsgvWmzZafM+dtHZi8kvydlaCz0nPDHgyatbS0tLS0tLS0tLTOGGmoeYbJZVBzQE9N7pBRlZ+7xAU1ZrVSQCiMGPyUys8RoB8k23W9EON2k24yhsAUHCumC0y9Gs1Qci1RqGkaMZZaNDm9v5zeRuypyaAmPY8SDQoCkt6FYgI6Lz+3sj01+bi5U5OeHy0pL8dZqLnc9uAaPmomc2rSHnoDnJpOiezfiLp8uxU/uSYZqEn75R1bafHy0H7sDCg/DzJOTTkoiCWsG27idOuaFJIg5i/s1ZCU/jOoGflZR6QPC9unahgpJ9BELEEP4sSpycujAay2suXnDQrpyqaHOgRXGsCB8YTVwKQjQc2u8DUdFwumYmC9LfYgZU5Nhzg1OxFZA06cBl/MLTxmJ+Xn7dolAICteJrsSoCa26eqMCkE6UfZR+Kk3eROzSnjmDCepPzco79nmQYCltAsudFCek80QgKH7jpB52j1Cbo/CjWFnqlHV7rADC2VbewBurMJQAPQi8kavO27Uok3QNyAAHH3uVP82YCDf0965M59M729sF9Eyd/9MEKZ3g+lMhn7M3JfTTkoyKrysKlUgj2S9QIAoQiP7Dowcl5q25/7zF7c+bQibX0Q1GTuZRneqZyarN8jCCyLYQpQ8/Dw8nMZOgLp3qedQ4LDeFzoGTqfuAgHBQUZ0v6rW8mf7FypwthECAtNkQ2yMbPycwYOhzk1zRynply+n+fUBMiHQfJ5qXpqMlCaW35Ovr9/KbmXIhFq1s4Semoqgo0y5ecCoGVQc/F++ntCSJAIY7W0tLS0tLS0tLS0zlhpqHmGqYhTkzlpDES8XyNoSToqpI/iBmcpBYRC7sJLl59ng4ICXFWjkGX8YjiOcNwLfxmobUczkp2aydfLLQIBLDl13HQwVmVBQXRc1OlTMj1MVinUHCHnNttIIKHKqRlKULMd0RdbOn8GhZqVuJk4tQBEUYzteByPX/QuXFOn58mdmjT9PIo5xGHnVirREseoy/sGzvUT4Jt1apLfn1tJIKAf5ZefO4aPsuTU7AcRT+kGgJiOzxRgTQvjCSzwlhB7TVQMAgS90nYy5riXzIHg1NwxVYVjmai65Lgi1PSR9FwVnZqNFNQk42GQrmR4GLfoz6Xy8zG7ja21tLuv3c06NRcDcm5VCke7vtqpeXy1hy6DmpCgJnULT5d6fPte/VIAwA4zDTVdy8BI2YFtkq9Zr1FRExxqxlhvJnMhOjXD2MRI2cZ4xUEQUxAlQc12i7gmm1EVIyUbDzXJ9UHjaQKkKXDpRGVsGiPndmylS6D7OBk/5u5K9c9kTs2ji4pUc+bELM0Q56It9QkUQ48AYOzi5O+L9/G/ekGEkknOpV4hoCzTV5PBSQpSY7suODXD1KaHmgmoW+hKzkLJqdmOyrh332L23HLLz0FSzoF0mTughpo1EWqScZ3w6fPAbySAMq/8XIaOANAVAHP7YNJn1BlLgGtvrphTMwM1aYK6VBLu0Q8hWimoKZWfM51qT015/vKcmnlSOTUZeB3i1OyFyfVO9dSs7eDnx3tqBhLUFHvIcqhZA6YkpyZr4aFLz7UKaseOHTAMI/Pf+973PgDA6173uszPfuZnfuZFHrWWlpaWlpaW1stLGmqeYXJsCWoqemoawsukGbO+bPSlr0qg5npnMe3UDOnf2Q5zoGbgtfGaOu2pt/ltWDK3J4O76L8AAFYD6WVWeOFf5VBT6mVpJOXnyqCger5T0wF1KAqlqqFUft6h5ec2dWpa1H1pGukegs1egIvKe1EyBfdYlZZ0svLzMELFSEPNcoWWOEYd7kY73ktgAXd2MtGX9HkRasZ26rzIAFlPzQjUoIl6yeaO01QCOt2nXU5gTSsocZCNzhEsLBCw04lKOG/72cnvslJxuo8ANjaOkflnbk2xryZzarpmkHJqtjv0fOKY73MlJHMz4XSTcB4eFDTBf3dHOe246/REqEmOfcQn0KcckLJaZU9NZwyzjR661KVYQhoUL1KyM+kmUNMfvQwAsMkiJcVszbMPEahJFr1Q5dRsYKrmYsZeRtkU4EvQ4L0tg9jCdL2E0YoDnzk1pfCedpPAuS7quHjzGBaCCXStGQAxsPJEEhQUVbBtiqy7Yyt0jlhfzfm7U7CUQU0/UPTUFJPAgcSpydQ6kP5a7L169Av8r14Y8+CskToBo8/OqZ2aMYWafWMELQY1vXT5+T7BxH10VQBOdhWobUttG8PEQ4ck1zeQhpq8VyOdb1aiLcM7Vfm54NRk160dVdE3KNhibtdh5eeiWDsBgPS+FNZtAjVni/XUlJ2go+cpN/Mieg+roKYctiScs1K8/LxH7vNTcWqqJAYFxQWdmvT7XuzApf82WoawnuqiU5PeKyLUjKP0fSiWn09cTlzM3WNA51jaqamlVUD3338/jh8/zv+77bbbAADvete7+DY/9VM/ldrmYx/72Is1XC0tLS0tLS2tl6U01DzDxIOCuLOSQcjEzSPCPR5Qw15+uVNzMd1Tk5aT8qAgISVdTD8/F99B2fTQdTYDYxfjOec1+MCR9+OLZ93NnTmNTPl5BRHdb6tNXuBtOXVcCgqK45hDzXGrie2LfwW0D2PdCOupmYCqikFeVg0nOa7cU7MtQU2nXEM/Yg7GBIosdTzUqKsyiE08tv43aXkvCGTY+8d4dfmBTPl5pUJedMto8ZfmE90Khwl8e3ad6Mv4XCNxtAWwsuXnVnJdf6b8YeBbPwwD6hJ0g+6zVJ3k32v6blKS2jmMQ8f2kd+LpjA9ngBFDqxYuXRso0RJHu91KkJNqHtqdrrNZK6oVgICFc6qknmOYSUuOdPmgGiLLZRuQ4aa5NwOe+sBAGWfHLOTKj8XnZpdXn5eNtJQk4VMjdkJ1LRqG3HCnyStAFYehUd7zCZQk3zdDRRQ02pivOJge0lKoBacmhFMTNVcjA5wanY7BGp6xigu3kzW0xFQSLX8iODUrGD7JFnPx1boOUxeQf5ceSwFaVzaFiEMpHUF8H6LgTND7jfZuSg7NX3hnhWhpuDUHK+Ta5lxalqszy+Zj7sP+rz8XHQbzzZ6OLiauDMPrQrQ2qokQTiCHjuymvrghRxIgJrMac1U2Uj+lMush5af2wngN9entzuZ8vNOjlPTHQfKdL+FnZrpHq+ZICUq5tRsDuqpCZB5Y4A8T6xsnAFBBgJlqHmqTs3Y52XlfF5DBdSMQn5/+bGN9aMl2KaRfHDCxkTPz0IPjx1ZRehJa5OV+cexADVr5L/RV5Cvlx5MemrKEFhLK0czMzPYsGED/+8LX/gCzj77bHzP9yT3WLVaTW0zOqqhuZaWlpaWlpbW6ZTijUzrxZQrl5+zd1ShP5llJ0DPpk5NHhREnZrr7MUUEAqivPLzIAUMXmndAwBYmbgZFcPAaKWMv196M84ONvJtVnyp/Nxw0DcnUIkW4XWJO8yVoWbkYbRCxhhGMTpeiKpZggHg+pHHgKd+Aeg9jPWjvwUg7dTk0EooC4wll1CbJrLbFApXHAuNsIYZc4VAzRpxnC61PVQo1Py7xVsQn/UjuNSmcKexB7j/Z/E7G+u8DyZzalar5EVk3FzhxzzeLSOABRdB0p/TrgPeEgcWSw0CqvzYAWDklp8DwPXmF4ADAC77MNZVfNj9RTQpaPTDCBZowFEtgZqNwE3CTjqHMTtH5qVvz2B6tILenEvchTQsiIHRILbhUADMQU5XKD+PRaiZOCx7DGoKIUGrtPx8W5lAO98ehyvAqa4xjlLcxDQEBxuAbj8LNY9QqOl4pOy344eI45j0lmUp0s4oTjT6HGraRkigCAXES7Sn5igLCrJHUHZMfLd7NjY4S8DSw/ADsh6Y+2sQ1By3mjBNAxeMSGXQQk/NILYwWXPRCyL4LXVPTa9LoG9gjeDizQQwPtY+C+eW7yFQkzoMW2EF26clp+YELT9feSy13xotBw+jAEEY8fYLAPh1+8IzIZYqB/ATMtRsyVBTKGFffQLoLQDladJTkzo1x0fIfXBosZNcFyAD5r5xIEiVn7Ntb39qlrcNAICDKwKsZB/WVDam+lL2gwhPHm/g8q3jybYi1CxNpcA7h5qZnpoSlANSUNNAjHPW1fHwoRUsReswg2eFsZ1i+XnnUPKhiujU7M8l4xzUU1OEpvZI8juSfJD5T31mwtylYjn11NVZx27mmMKzNeydPqemeZJOTeF7XuxgslbK9BmGYfDrbEcNvPNP7sVf3bKKG1L76QOopwOE2HGnriRrfemBZC3o8nOtU5Dnefibv/kb3HrrrclzEcDf/u3f4m/+5m+wYcMGvO1tb8MHP/hBVKvV3P30+330+8mN3GiQ57Lv+/B9hSP/JSZ2Di+Hc3mxpOdwbdLztza9WPNnnmE2rFjxIfzJ/N6p/v4LKdM8c+4Rttz0/bs2vZjz93wfU0PNM0yOFBTEJUADy8m+TBrs5bpMXnpLZgA3TCBMxMvPB/TUjGNc5ZJeep2ZWwAgG+4DRfm56cB3plHpL5IgEwBuJEHN9gFUHAuOZcAPY6x2fbhGGSkfUuMZTG0h58nCXgBwCGkKbinLsNGPHO4ga9HEaJv+q1dxLKyGdcw4K4lTCiQkiPW/7EQl9Dt+Uv5JQd2YJZQvUjdprSq5K5xRrPQi+JENmP2kp6YENRcbTaAOxHS+M+XnshMLALpH8T9nfhk7NzyNB1oPA5jEfLPPE6irtcSBuerZwBgLDzmMxnKFmHvL6zFdc9GNSgRqMqcm66kZ2xyAjdJr3BScmj51fo0biylnoNenTqeAzFUYm2jRHqubXLLeOsYERMTVMcYxjsNwpd6XPcGpGUceDCROTatHXJ1xDPT8CBXXIuXeAA0K6vL0c7KvBso1Al2Y87hidAjDcEZRcSx8t7sTbxy9H1h+GL75vWRXklOz5wvl0FQTNjnuOdX59A/6iyknWb1ko+TEuU7NoLdCvu2M4aJNBCzds7gZ79gMAjVp2WsnKnOn5tGVLgGCoxcSkOct85CYIDYxWqsCHdL7tNUPMF4VZr5PoOZiMI6/uHs/3nvDGAQfHwkLiuPkkxMONQ0AMbD6OFB+fdqpSaFmsx9gpePzgC+5hNopj6FFWV4YxfDDGK5t4L7nljAlXLfnlsLkXyF6r6GyKR22A+Chg8uDoaaokyk/Z5ARwLjdwtkzBGruCV6B861vCSeULj9faPVxYrWHi6tDnJqL95PngWGS/o/cqTl78j01a1tzHaMx7ancCUSnJgsKSsYerHvj8H/0RcgqQs2yBDWtk4WazMUu9tSkY+seA07cDqx/Q/JvlAA1/djBZNXBCVe47gzw1rYjNhy48LDJWcD8suzUVPTaZH2gJ68EnvtLAjUZtNXl51qnoH/5l3/BysoKfvzHf5x/74d+6Iewfft2bNq0CY899hh+5Vd+BU8//TQ++9nP5u7nwx/+MD70oQ9lvv/Vr351IAx9qYmV6muduvQcrk16/tamF3r+LrvsBT3cUDWwtgE1t1xymkby/Omyrbtf7CFw7ZaGou/ftenFmL9OpzN8ozVIQ80zTEWCgky7CoTSLzJHj+UidNfB8uYwGs9xh1TEko3lnpoI0WcANexhvU3ATTx1DQCkSsaZVv0s1IzcdUD/aVjePBBHcGOp59709TAMA2MVBwstD42ej0kZanYOo+yQl9Y+LVmN4xhV6tQUy89tE2hHFQFqpsvPK67JHYRy+TkDkN2ojGbXz3VKxYYDg87TSC39ohs7E+j5EXxI5efM5UNLHlfabaAODn2avQA9P+TnCdNCBAumeEHbB3GuvQe2EcJoPAXgYsw1+zibQk0xKGjFS5efe606MAKURzZjeqSEblTCBJqZnpp+bHFX6wgvPxfTz8l5TRnpkmu/3yJriu6vH7u8r+M6ax6IgWY8hnHhdzpQQ4K+l7hW49CHAeBESECF4S+jbPTQi8voeAGBmhS6hdYI5pt9RDHpX+kYIdrtVQ41WQhQGXQNOqMoOxa+2yU9RuPlh+GPk23G7Baw/1OomwTWdoIs1By3CCRh5eeBUYUdd4DWc2RKQdaaa5uomAYavKdmGmrGFK4b7jjOmq6h6lp4tLWD/HDlMWCC/A9SO6pi62QFhkEA7XLHx2StREJ0Vp8Elh4i44ht1CploANYiNDspaFm3J2FAWAxGMPRlS5OdBykfH5hl7g5K+tJqS8rzZ25nvTuXH4MWP/6lFPTcWtYP1rCbKOPQ0sdDjVj00kB0/1NF1GcfKfrh3BtE62ej4rg1Ny36AOs0ptBsg03k3JgAJvHKzi60sVDh5bxEzgrOUAKakqwTVV+brrqsmIp5fqcdeSZ8anGe/B9188AT32MQFIrDRNe/zt3otkPcNdPTWM7JIlOTeYgHbuYgNGTDQoSnZrVralQNlExfYZxoA4I5efJc/MHPz+CXx1fwpU7JpErwyRjijwCBFmauDNG/t2I6AdBJ5sQzpyaoRBcxsa253fJf2+4DdhwI/me0OLCi21M1kqouuJ8bEv2Wz8baO7BztIR+H1pXGw/bH1b1QScsgT0pQeA6evomLRTU+vk9ed//ue45ZZbsGnTJv69n/7pn+Z/v+SSS7Bx40a88Y1vxL59+3D22WerdoMPfOADuPXWW/nXjUYDW7duxc033/yyKF33fR+33XYbbrrpJjiO4kNdraHSc7g26flbm16s+fvwh1+wQxXSaydPbUCxYaK55RKMHHkcRhwN/4UXUd9c+sCLPQSuD9Ch6Pt3bXox549Vnjxf0lDzDJNjkxcyBmb4e6Nh8BdK1y1BMr2lHX+VTYA3hxlrEf0gQtmxEMjp59QB5JoBvICWhwpBISUaRsOSuEWo2Y0s9CI3CU0xbBiVdUATcPwFwF+FQcv8fr92G37+qpi/qI6WCdRc7fjw7VI6w7x3HGWb/B5z20Vx4tS0BLeUYxJH2yTIDdIMycs+cx+WHQtzrPen4NRc6XiYpgCyE5Wx0vVygzpiq8pBzWh9PPWzkAKTgAKsVPk5wIFFl7oRTctF2THR8yPMNfo8CAYAQjhpqLn0ACmpBnhIT8cLSCk4kOqNuNS3iIMLADqHMRITaGLVNmKq5vIwHSOQnZoOHJP11GTl58k19igcGTWWUudtxz00+wFGKdTsRS569BhjIM7ApWAEW4XfaUNd7trrC6X4LBDEniLQIexge2UZT3c2ouOFmAJ4+XkzqiKKCcDuRSU4VgedTgPMr0dczjGq8Qr5hjuOsm3h2T4dVWsfvDpZXzcbfwPc++fYQm+LrsKpyaDmtEPW2qq9A1P+k0BzL/kdYxIRLDgWSUBfzHFqsp6VZmkclmngok2jePDAJgRGGXbYAZYfJvMVlVF1LczUS5hr9nFspUvS18cvJVBzmUFNC7UyTYA3Aqx2/dS8d5vHUQWwQBPln5g3EqjpjJHxtPcDlfXodVeSe3HmNQRqrjwGAOiHiVMTZhnbJqscal5G3ZOh4ab+MWlKfXd7foixigMvjFIO272LPuKdO2D0F4GRc8k3L/k1/N239+P/zl6Bt1+zGZ/42rN44qgcPCb21JQAHYOado1sF4ekn2YOhIudcRj+CgDgnBly/x5vArj8t4ELfp7sQ/jdhVYfTdra4+m5bhZqik5NpqmryZ8smb03m/R6HFR+Ljo1q1sG9PYsoWSb8IWUcP4sEv6n+ZH2efjanrnBUBMggJlBTZ4YXidu2sg/eZcmkPwbJQZSyQFMYksE+kwIYQMwMFlzUHGE8xNCpeLR82E09+Ds0hEE3jggbMbnmZ2HeMzxS8kc9+bIvQVop6bWSevgwYO4/fbbBzowAeDqq8lz4Nlnn82FmqVSCaVS9pngOM7L6gXu5XY+L4b0HK5Nev7Wphd6/qIzjP+tFUgacXTGQ80oOnPuD3mp6ft3bXox5u/5Pt6Z39Dh/zEx0JQ4NYUXcerocRw3SVimMgRHj1kjPRY3OIs8/CWK1OXnAHF5eWGEyCNOFi+yUSmT/6lmpckrAvAKwphDRLYvu7YBAFCNFhD1CAjrRiX03C3Axps4FGD7a/QC3geOK44wEhE3HAsX8cOIOytNN3kZtQ3wnopAAlG4U5OWn5MTSsDcUttPOTUbXT8XaoquKNctI4yT28U3CagLZaemBDUNHuRUwroRMt5jq2kiHUK6yefv4X81aNiL54dJYrvQE2+pZwtOzSOYMOm5ltdjql5CjwIkr99KjStQODWbglOTBSDJqph9EnZESzp7kcsDmZg7d7afdjp1IUCE+jnolsnLnCc4NVmvT8N0eF/YbZUVclosAZ06NT/7OIGM60ZK6MXENdztJiWnfhCTpHK0yHqv70TJMXHUI+XHht+AGRD37oyRBlByyz4ggZp1k8CYFYNaC9sHyB8mAUSOZWKs4vCQJRlqWrR83imPAwAu2jSGCBbmjR1kAwoR22EFtmli0zg5t6Osr+Y4KVWJFgWoWSHbWEaYun4A0GuSEu6+TZyMj56gwLa8jsAcAGjtx2rXxzs/8SU6yHLiXqPj8YPEqQm7gq2T5L44tJTAqVC6l1PPByTX0Aui1H3bD2KcuOER4B1zHO71Igf/7cAP46HOhbj+HDJ2lmjPZYpQczz9M1Z+bhjJBwCq0nM29soW/vcdtJcp/xCnvC5T3n7vvqSth+soXJYUkKY0TaEmKz/3lhPIdjJOTUvt1IRZwkjZRggF1Nz0ZjwUvQ4fPPozCGDjmdmWeh+ixAR0GWoCyZ8nI/ZvDnNMAtlepWJYFYWR7N8J4tQUoWbi3I1pgNLZpSOIPOn8WPk5c5yKx7QrwPjF5O9zXyd/6p6aWiepT37yk1i3bh3e8pa3DNzukUceAQBs3KjujaulpaWlpaWlpXXy0lDzDBMrPw8iAiBS5qKZG4DqFgSlrQgHQE2jmiSgM/fdIKjJ+mr6PnnZ7MUlXh49UiL7bVNnUhzHCKIYjUh4MTQdlGrkf9In7VU0m6SEfTWs8SAWJrGc3Y+zMLEWEmcig5phFHMIaQkvm7aZhpqrAXNqsvJzC8shddz0F/h2Yk/NdlQmwRN5Tinxxd0wuCMRADxrnIyPAkneU9ORoCYDW5aLizaR8XzynnRASygbpmnpLQDYHoOagquROomi2MBSz0ygZm8WG2ziljSqGzFatvmYWx1q+Y5VPTWpU1PsqZlj4i6bfZJMz5yascvBKdOxbhq8nIgJfGiZ64Eb7+KwhZ9THMFgTlWrBFTI+t1SJoC241FYR4HHbXvJ77354o3wqL+w100s7X4Y4bzyIfJF/WzAKqNkm+ijjHl/nJxHn/x8xEg7ADt+9lPTMYvsu2IQiLcUUUBGWzq0qEfUsQ2afq4OCnIisp9ylWx/9gy5h2ZDCrpCti4rcGwTm8YpBOdQk4BIY5msjxAWKi4BPrYRpnqiAoDRJ/fhK887DxNVBwss4Gv0QqBOgVD7AB4/sgq/R+YhtEY5PMXqE0AUwlM4NQESFsQkg/lmlIZVXQo1+0GU3JdUB5aClPPv4GIHUUyePeetJ/d8sx9w9zo5OeH5J5aZ27U0lKLAczkcw3f2p13HTJ6blItO0PL9Vj8Q3O1pfUuAmm2/YAk2beeB0mTyDGZl6nkfqgCSU3NAT02zhFrJ5gFfAPh9tm8pwNuf+CV8avGtAIC9c03VLtJiIUAZpyb9/qk4NXn5+QCnpifcj0KoGQDi1HQt/PHc29FytgGv+GW+KYea5SNJijnfDwXyYVt9TAbxWR9X7dTUOglFUYRPfvKT+LEf+zHYdnL/7du3D7/1W7+FBx98EAcOHMDnPvc5/OiP/ihuuOEGXHrppS/iiLW0tLS0tLS0Xl7SUPMMEys/Z0pBzdd9EXjbPrileso1CCAFKRkUWu8scsdRyKAmc34aItQM0A8i7ubrRiWewl6hzhjmtAopbE05sQwbdpWAmSl7BS0ONesoSVBzVICaHrIvxlWfvOj3KFwKAg8udSiaqfLzGO1QdGpSx5rg1Jz3SaBO1E36Qi51PO6q7ERlMj95L+iSK0ocb8+gYJHCnCQtPYGacRzD5E5NF79w03mwTANf+e4svrUvAa2BDBCFgAzHJ5AyFKFm/Rwsly/H7tXrSR/M0jQ9hxhnl0iIjFHZCMMwEBpkXlrtZmrffir9PBsUlOfULBt9EnbEempGLvpx2ml2tFNLQCSAb8bfjx997kP4xw23A9VNMClE9n0KGwT4Z5gud2puchnUTDs1m1EVH3vnpfi1t70CHj2/fk9waoYRzi1RqDl2EdmvYaBsWzyIqOaTn9eR9FsFAMGQjHaJOErHqFOzYhAoMhemezg2QdZZiTo1OViSemqWYrofGvTEPjhYiNaltmtHFTimQUrOASwz+yiDmrS1Q2Q4ZL5AeuOKPVERx6jFZI2du3Unpusl3N64GgsTbwMu+i+Jy621H88ttLgLtYsqBcEVArRa+2hPTbomLQFqCk7NwEivgYZUft71E6fmQ50LMDf5Tvxr8F4AwMHFdmrbA/Trs2ZqGKs4/BmYSr42cpyaZckBRYHnXQeBd//Jvfz5JWp26l0ACPhkzycAGeerF0To+WHq3u0UgZr2CDB6AR23SUrhAaBzmPxZNChogFMzMl3UXFKmHTO3JgWgsw3y7Jii6+nQUodD5lxZAtTkPTVPt1PTyO5HdGpSGOnR0LKJqouKY+EjJ34C/7L1GykHbVRPnJpGmF5PvPxc5dQEEqjJpHtqap2Ebr/9dhw6dAg/8RM/kfq+67q4/fbbcfPNN+OCCy7AL/7iL+Id73gHPv/5z79II9XS0tLS0tLSenlKQ80zTAwmMqXKzw0DsFxUXCtdZghIL7/UqWknUJOlnxvcqZlsz5yaIXVqdqMSHOp4ZMEM7CU44FAz7dRkARjT9io6TfLS31BAzTHmCuz68JF1KJU9CjVpn8/IT0oJbVd2aiYvxA0KWR2hp+ZiSEpPRagpOjW7UYmU1RcoPwcAD8nx+gbdtyHBPwY1wz5JfDYIGDFMF+etH8G/vZr0gfvfd+zlvxLI5eeCKiEBxBwA0nE9ctFX8P5Dv0rclYYB0BJaxwixFIzCnHwlGR+FILw8OyLjSTk1eU/NAeXn9XPIeMw+5pqCUzMq8aAgppVwBEeXkxL7XuzgG60reNCTaZP5jsI+cd8JEBemS3oHgjiNARFq0p6aYZW7HAODnB8vrwfpqXkuc2qOvYJ/v+yYOOyRNgn1gAClWpyGmm2hp2bbJVBzlELNUkzuj+OeDDWT8vPxAU7NCsjv1+vTdDxkuxOBDDXLsCkgBYRep9WtKeBiGDa/jy3Jqdlpz/MerBeedS4mai4Wggncu+mPgY03A/Ud9GD78dx8GyMWAZSrfoWUdo/RktyVx2j6OYOaFSXUFJ2aEUy0ozSs6glQEzBw4Pw/wYNjJAzj8HI6DY89a0bLDizT4POw0hHWSZ5Ts5q4LgEITs3R7D6oDlTfhp888EH8p9U/h2OZvMRZ7CMMAD/0p/fh8t/8Kg4KDtVmdnfCsQm8xtSr0+XyrAS9TaHmoJ6a4odV1S1kP4rnVWy4qFNXfcQ+sKIfArH+xBvHy5iquYhj4Nm5ISXo1ulzaq52fLI22bhYf1/TzQJdX2giHpLJ7dNn0VTd5ddGhrItdycAYL2zhHHMp/cpBwVlnJpXpL/W5edaJ6Gbb74ZcRzjvPPOS31/69atuOuuu7C4uIher4e9e/fiYx/72Msi7EdLS0tLS0tL60yShppnmBwJakJhBKqVrAScUJli7zWlU5PCGgY1BRjnGEEKavbiEgyDQU1ynDZ13gUqp6bp8Bf1aXsFvQ6BUary89Fy4tTsp8rPyfEc7xgAII4JnAo98pLrxxZMJ9neMQn8AQBYZfQiMk7m1CzZJhZpQErcm+O/R9LPCXBLnJpqqGBIUDMwBKemSV5MMv0wBaemH0ZwqMvUsMjL+/ddTq4N75MIIIjzoWYtIoA4DAiIDWMLMEw+jxxEsrAgAF9evZaESQHcCdXrpZ2aQWxzcM321ewnEKcvQs2Z1wLn/gwAoadmkJSfe4JTM4xNfKd9EY4IUJOV8TKIatm0NyzrAylATdN2+fpdZzOoGdB0bgJXWmEVrkWud2iS8/P7olMzTqDmqAg1E6fmSHAUJEwoXZLc8RKo2XKJm3HUbAJxDCcixz/UT4esrMYUatomxqqCU1OAmkEYYcQkvz86OsXHAwDHfQlqhhXYlpFq1QCAwOuRJFwiNix+HztGmILS/sIjAIAj3jqMj4xhsspcn3SuazTepnMY++ZbGKHp7/N9usYnaHnk4c8iDH2URKcmDbk6vtrlvX994T4IzDrkB5dYfg4Arm1mnahs7Hy9kH1MVBXbpZyaE8nfZacmhZqLAfkQYrGdpZD9MMLtjavRscjvcpgslfM/cHCZO8iZ2opgKa4t/4Y8b7e9M/19loDOem8OcmqKpdqszQQrQa8lEUWk/JzMScSdmrTNA5tzy8S568n3npkdUoKeCzVPzqnZ80O84XfvxFs/cTdi/m8OnTPTUUDNrFOzR59FE1UXFfohW0eCmithFXPUmX9x5dn0PllPTX4eklNz/JI0PNbl51paWlpaWlpaWlovGWmoeYZJhpqq4saKY6fKz8PYhGUJL/lCT83VjlR+zqGmwYGIhRD9IELokRdoT4CNcvk5A1StKF1+zl7Up+xVeF0GNesZ56kIDPoizJu4DABg947wb/WDCBF3j6adQSQoiL5YO2MIQvKizIKWDMNAk8ImQ4CaxKnZ5/v0ggi9MA2Ik9NKQ00G0ACgC/LiG+c5NRnUpG45g4JTBolFOJLXvxIARkCgZuATSMjKfMfkPphC2MkXVl/LgaVBX+D7PfJCz3p8erENm6Wfc/dsAsWO4Rw81D4fT7jfC7z+K7xktmL2CWSjgKAXufCNZL3cF+/CQW9Tyn3Hrw0dk8kCr4yAuBBZynFswrGSoKBpkziuOl4CNAHSr5G1aYhMco2M/jzw1O8Cd7wRPxR+EOex8vPxi/jvlR0LRyhAHAuPoGZ2YSMNrtpezFO494+/BwBgGRHgLcKKCRw52JlI/c5yRL52LRPjVZd/4BALUHOl3UaZuh3HxtbR8ZD5PyY5P0n5uZmFmgApDaeKDIfDGNmpaaw8CgB4qrcTpmlgsk7mfIlBPeYW7M3hufk26hZZX3PdEnEzbtpFfn7w7/EbtZ9PesZaFczUSyg7JqI46feZcmra2bR7Vn7OoGbJJq5WAPwZxeTz9ULmZ7zqpMcOSFBTOF4lDTWDDbdgORjFPa3LAZDkclnseAyiquY9jhN4+ZpzpnHVWeTZ0vIGlJ+f9WPAu5rAuT+b/n4pDbGX0rlhabE+j0DiMGTPpcpmdGNyf8dmCXX64QR3j9tpp2bJtniP0qFQk4G/oJk4HE/BqTnX6GOx7eHgYgee9EGc2qmZ7anZD6lTUwgK6vjp1gCNboB9ffIMPKt0PPWzjFPTlpyaVikJzgJ0+bmWlpaWlpaWlpbWS0gaap5hYuCHyTCyL81V10IoXLogNmGawnYUCk3YTbQ65EUujqTyc4ADEYeWnzOAKDoo5XK/YeXnFbMPiwZgNMI6Sk4O1Oz66IsBM9PXkV11D/Meej0/5Em2HRlqCk7N2Bnl47KEeWCp1KY3R6yfIICsQgFNn5aTr3TDtFOHSepfF5vJ122QF9/IkH5PCArywggOLT9nL+8V6s7rCU6jIB4ENVcAv4V67xmyLU0CTpyaPgEu1Kk574/jvtYlHCZbLhmzT5PtB6efC07N2MHb9/0uvjr6MZIQTEFK2ezjrN4dwMO/CAA47k/DFkprHxx5PwCknJoec95RiAqLQU2fQNkoCS9ybIM7NSdMAnQ7Xshhhxc58GKHA6+YwpfXtD8OPPxLwOzXcK35RYzbLUQwARogAjCnJik/H4+PYtIWSl2p2n4M3PIo8P3HsOqcjS5bo51DfJt9rfHU76yEBGo6Nis/J9dThJpeJwmXsSiEY07NI146mbsdEaemeI256jv5X2OITs0g5Sy0Vh4BADzdJ20DuFNThpreMuYbDd5TsxlV8MCBZWDr24Hr/h6wKrjUfQQ1i0HNMgzD4CXoB2kJui+4dQ03H2p6AfnTtQkABoCVbto9yZyabA0zp2a6/Fx4rliVBLKx5HOqh52345VP/i0e7pCelpkUdeF4Dm/HILmgkYBBAPj/fvhVeN355JopdpfIGcm0sACQzD3V549uy99H90T2eww4lqbRxDgAIDZd1KlTkz0jWBm1J7hjzy0KNVlqfPcEuLPyFHpqite2E2T7QC90JKerGBQUJj01LdPASNnOLT9f7frY28uZR9ZTU3ScyhJL0As6NVv9AJ+5/3Cqf7CWlpaWlpaWlpaW1gsrDTXPMMnl2iofUNVNl5+HsGCJ8NMZQ0x/s09hShSRF9sU1KRAxDYCeGHIy8/7QiBO1SHbBFEML4i4664VS1DTrvGek3VvHwACNV0r7c4Rg4L8yMChPn3B3/6DZEidw7wPZ9+PEFN3TTdOQ01H6KkZ22PcQSpC4a5JynzNKCmh9MOQu85st87HouyrKQGJWHiRb8cEDgx2ago9NalTk4EsBnkAwBcdq8L+otggAURfvxm3LP002wBAMo9RDLS9EFj/BgDAXy++BbblcBju0HMMGNTk6edOpvy80Qu4Iy1xrzEQSeaiYvTxw+ZvAX4D3bGr8PuzP4Tv9F8NzFwPvPJ3UZ8ifcWOKJyaDKJCcGquCk5NL7YJWKJQfgwLMBCh0w9SIUGA0HuWhn5YoGBBcFx1nG0EyFKRnppkvU3ExzBtr0BWqx+R36lsRBDFWA7IdTbaJLG+F7k40bERC+tlKRqnYzJQdS3EZhZqRh3iHlsMxnh/xbJN/jzWH0td93ZUgW0qys+BfKcmaCn/4X8GFh+A3XgMALDXJ9tP0FJvXn7tTvBjTlqrmC6Re6IVVvH4UQqWdvwgMPHK9ATRe2DLBLkOzKnpC88jp5w4WSeoy7InOTVdi5TqA8By+xTKzwFS3j11DTB+WQLZJKfmN56Zh/gUXVQ4NQPJGTqqmHdPSEIv2SYN5QFa0pBSyoNj5cSp+UD7QsyZO5WbtfoBVibfRL6gPW0BJB+2lKbRiMfJ380SH9O3Sj8J7PhhYIyk2ItQ83wONYf01ORQ86hw3MpJOzXFa9bxZajp4pkF6XoonJp+bGOi6sI0DV45oIKaD3fOT32Pg+9h5edAOiyoYE/N//yPj+KX/+kxfPKeA4W219LS0tLS0tLS0tI6/dJQ8wxTpvxcQTUrroVIKD8PYivlUIRhwjPIi5vXIy+JYRzxn3FRIGIbpPw8pgEOYso3e4kEyIskAw59ETJSONKzSBntREgA0GpYz0DaxKlJQOqb9/4B3rO8m6dUo7+AMZcAqp4fIvZZmXPaGWQbiVMzskc5mEjNg11LEtJ7swijGDYC2AYFoGXy8rrc8fhLemSPYt4fJ78jOTUNIWCiFbPyc6l8kpUuhn14Qb5TM4hiPpciEMLYheR77nreBxAL9/Ifl0Hmo2SbHOytdn1gwxtx6A1H8Im5H0yBXbdExhyxcA4OCizunByhQUFhFPM2AzJYYoB3wm5g1FgBABy45P9iLphC36gDN90NXHgrtlIH32GhpjaI0s47NheuBDUDBjWpk81CgHGriY6fODVbUiCU6UhOuMs/iiPRDrJtOR3cULYtHPNmEMOEgz7OKx+ErLbQUzOMYqyEFGq2yJpuRRUEUYxYAFaL1Knp2iYMw0ClRNeqADXjDoFDC0JyOis/7/jg4UgA4KMCwzCUcC3TU9NkH0xEqPb3Ad98O/CVV8Nt7wEAPOuTOZisUYDI3I6GKYR7rWBz3aPnVyXp9kz1s9ITRO8TOcRI7Ktqlsaxc7oKAzHOoz0cOx4J/mJwsOSYHFbKgTxy+TkDo5mQnxv+GQ9f8EW88r/fgU5IIbMENfcvpJOwVT01PekDERVM9gSnpiuECTX6A3pq5kDNjpFA308v3Ux61Cr0w3/2bbzyr6ex75J/Bd707eQHDMqVZ7BKgTqsEmo0KOhOvAe47lMcnvepO7Zkm9hB+6EeW+0iUiTBZ8ZO1y3sGlkz3KlZDGqK16wtJ8WbDo6vSlQ4J/2crV/2/Oz4aajZ6AV4oPOK1PfgTqb2k1t+DgCTr0r+rvq5pMePrOJLTxAX7WNHVoZur6WlpaWlpaWlpaX1/EhDzTNMRXpq1lwbgZB+HspQE0BgEhgTUKiZST8HMlAz8mkpqQA1XduETffd8QMeONQXksDZfjybAJspEFfaqiL9XAwK8oIYnagCzxwjzjH6sr6tRMJbeoJTsxdny8+XKPQL3Rlefi7OX8W1EjDYm4MfRrz0HACqFfLivtz2uFMzcKYwG0zRg0hQU/i6GZH5bZgbUtuI5ediT00G8spuMj7mXjMhlC+Ok96iUWUb5oMEfvRRxbw/jkfdt5OxGIbQC5Mco2+MAjBSILlUpuPhUDMp9bZ5wn2yfpo9GgjFQA8vGSfXmyWSwyyhD7Jvcc43jZPrdHw1gZoZ12eOU9OPbTJ20+GJ1pN2Q+nU5P055STj0fPxh50P4MnuWTg2/cOpH5UdEwFsdGwCvi6r7IWsthdzt2oQxcn6aR8gf1CoGlmJm2vRH03NQ61MAZsANY0uCcBaDKeE8Qj9VWukdLYfJeEpaqem4OozLJ4obRsBpoPkfIw4wEpQx4pBAPFkjYxpSXRFClBzXZlcg2ZYw7wINWs70hNEYRYD4Wy9pNzGzhj+z4+8Cv/hohA7p8k93fVCAoMpRytZFu+pKcNK2XU9wQOFskDyr+87hOWOj691bgBGLyRJ44IYjFw3Qs5/QVEvLgdZjcr9apEO2zEMgwPE9ilAzYPN5Nn9xdXXYLaphpqPHF5BDBM/9PkqYjEMSXBqrkZ0fZolfk1a/XQ5tOjUZCX/cZxcO/XYJacmA30nWX4urt1s+bmLTlPqfymmnwvPBRYqNaj8/LC3PvlACgBK9F7LlJ8rnJpjl5D7rjST/N4A/d5tT/O/7x2WJK+lpaWlpaWlpaWl9bxJQ80zTIV7agruvoxTE0BEHYOhtwIAiGMpKAhIQU0viICQhtEgDRDFsCDmuvNEyEj34zvpl8FBTs3Vri/0sjOIJZX2UtxUWgYA9IIQMX0R7cbpl2jTAL7afC1++/h7sXruf+PjEueh4lg8AR29OXhhxEvPY9PFWI3AgcW2xxPQQ2caJ3zq8JGcmuLXzYi85C/Z56Q2WepTx1rkKZ2aBIqQb7ES9AoEN9ko6f2H2vYU1DxgvRqvfupT+ProbyabSj0XmeMsDTXJOjCjNNTkrkiQNcaACAM5fiSVjFOgy1yuKE3xbcQwKDamdl/oGRpJrk8zAXErHR8IBajJ9lWirl+rgVY/5L32msypabOeoQLUNCyguhXf9V6BXXs/gdWJN0EUW8dNm6yzy6rPQJYfGTzEKQwjLIcETLHy8y4IEPFNelxnDJ2Q9qalY6+WyL1hxALU7FGoGSf9M1m/2V4QIq4SqNmi/TSBpAy6H0QcgKOa9A2sxUuCUzPEeHQ4dS5P9nbyMbGemkttAaBRR+y0vYIpofx8vpmAfxFqxobNj5dAzQSSczlj2D5ZxdmjYjBWmHY72iYPAGp76Z/JPS6ToKBsmfrX9pAQsF898BOIdn03AxLZPbFxnDw/VOXnDLqztTfIqcnuLXZebS9MtQ7gMh11SwsAx+tvwv9deiP+06FfRCeqYK7RU27HNNvo43OPHku+MUrLrMcvxf39a7AcjKAx+hoBtKZhpRgU5NomanTsKkjMxfqiUhifQM1i5eerXR9BGJH7m6qlcGp22yvp70VeUi7Oe2omUDNJP88GBQEGHuxcKJwD/fcoYuXnA5yalgu8fRZ46x51f2VBc80evv70PP/64GKHu2G1tLS0tLS0tLS0tF5Yaah5hklOC1emn7sWelFS7hnEFkwJfsY2LY+mzpdBPTUdI4AXJK5I30i/sIruGAYAUtvQ/QROOvCkEdYyULNWSnpKJqCAAtoy+f1pl4RY9PwQBoWafWRfoiOrhv8z/w503LO4U9MWoHDZsbDAoeYs/CCBmrBrmBIToSmA8O1J7O1tp4Pdmj6g4NRs0KCkFefc1Cbv+wwFZdSpWZKcmoZhCGFB5PwrhgA1z/phYNu7YFzwnzDvJ1DzOVwOwEg5X0d4kjx5wWfzKTonbZeM06HJ3UilnydzNSqFBQUSWMqEJpWm4SuOx9eKH3JXrx+kk+kzTs04GROH+hRqTtoNMiaPOERXQwIk2H3ilIT+d7XtgGkr5wFIelgu0R6GF5b3Q1YEA80+nQPBqWm0ngMA9FlbB4OCkfK6DEyuVchaNWOfB1RZPeJIWxagJnNqxjEQ0vT6TlTh4x4p2RyAc9egmQC00ei44NQMMYMjqXP5bjeBmhOs/LztJ0neAtSsm+QDjWZUSTs1hfLz2Ew+WEjCpejaE52aQlCQ2EO2L0HNkbLDzy/dv1IuP1cEBQG4/8AS/71WP8BhoY8rEwOkG0fJNVGVn/sMupvp8nMxoKkvQU0GEDtemLomXPaIuncIyDr/pSO/gDu6NwFAer6pxLR1APiDrz2bfO9Vv0vg24abcFfvdXjlk3+HxsTr+ZjynJrs2ZEENA1oCMqcmrz8nK53Vt4vlfmLWmz1cdmHvorv/YN7UlCzLfXUDGIHf3biJhzxZvC/Zn+Q94HmYUGs127k8DFXnRynJr0/Hu0JJei5Ts2c8nJ3HChN5p4XE1vzI2UbI2UbYRRn2hxoaWlpaWlpaWlpab0w0lDzDJNtDb8kVdfGt9qX8a9DWClABQCGSx1mFGqGKqgphIz0BadmFmomL/AMVIl9N2FQOFNKgE0zrOHp3vYMpC05icOUvXy7EsiapqnUPT/iZdP9OFvu6NoGHxd73+fgDMSpuZAqP49RMckLrmHXuPtnSXBqBs40PjH3A/iFuY8AZ/146nimQ4BWK6qBVW6ultJ9G+d7iVPTD+OMU5ONCyAOPQCoGAKMqW0HXvMZuBteg6UoecHeG19Oz1l0RabLz2U3GZD01CwZDGpK/SvZYTkQYT01GVhKOzWZIncq6UVoJ2uP7QdInKh+xqkp9NTspHtq8rEzp6bdIBCBpkDPURctGzs7PwA8RMdXhEYBydo7bhHwYRrZ0uEwNtFiJfhRjOWA9RYk/Td9CjN7YFBzPYe2Li8/F+aKOqTtPnG8rUKAmnZyL/glAtBbYSUprTdzEtCpTCRAzUKIjRYFUNvfg0btCnx66ebEqUnXuhdGxF1Ixw4A0/YySnGTHr+K+VY/AWhi+bmVOA/FcClAgpq0dQCQrPWu4Ma0TQMW/S9pR5HAxiA3KCgNJG97cjb19ZPHsmn27JgbaVsEpVOTQXc7nX6udGqya+wKrkjm1DRLYB9D+eYInp1TJ4wzaLuZuUfbHl+zfExhem3unWvhoUMr9DgOcWsaBv09A45l8PRz0SVNjpd+LjDn60CnJoOarB8la/Nw3n8Arvs78meO7n52AQDw5PFGCkQ3pcN1QxNzwRRes+eT+J+zP4zIosdgfTXpsf3Y4euoKlQNiGL3x5x9cfJNBjUzPTUV5ecnITFY6tx1ZMx7hwUvaWlpaWlpaWlpaWk9L9JQ8wyTDGJUVk3LNPCV5g38a9fwYUpQ06JuKTMkL9as/FwFNR1Wfk4BYmikASIPZ/CCJNxG7KlJHUlBjbgWu1EZP3n0d7AajvAwFKayANyYK5DDNQpFJ23yUtsPQv4i2kMWapbsZFz8vIX5q7gWFlgJd5/01BSdmqzP4KLg1PTsKXSiCh7yryIliYJM+jLciEa4cyt01qXKTDs0vAhxCD/wlVCzLLmNakbWYQYATRCAFxku9oXnp84ZSMqTecm4VEYLAK6bQM0ggpB+bqdcrSMMarIeiQwsST01mXxrMhPoQsaXlNd3+qw/p7Qdd2r6WOl6qfJzvk2ZOjWtBnFO9gjAmg/GYRpJm4E01NyZmgdHcgmztXjYkAJFhJssgslhexjFvG+rEdNzoWXnrAwd5XWZcul6VZgr+nuuR6DsKpLka8cywG7bbo0kVR/0NiZzDnUptA9hXQpu660O7U947s/iO+d+Ec/2twnl0jY//2XmVqQ9NafsVdgRhZpRFX4Y446n5vCaj34NX34ugdRGkEA6uV1BPxLciimnJjlm2pmdnN84DwESzi9MA0TmMl2R0s9vf4qsifWj5P578rgCatK1sGmMlZ8rempGrH9svlPToz2JWcuAGgeIAtR06twF+NyKiXf80b0ZWAmAO5zXjZb4h1GyW1NMW3/LpcQV+en7DynGntxbKdAqqO8nQUFAMuercpq8oAeOSeXUzN3ojAA73jMwIZwBdAAp92zLS/8b1ZZ6bPom/QDBl5yascPvrUoO1GSu087olVgORjAbbQRK9F4Le0AUAp0j6XMZoH9++Ag++uU9GccsID4bDZxH0+R1X00tLS0tLS0tLS2tF0caap5hygYFqUsY90cX8L+vc5Yhs1C7RMBCOW6jH4SIB5Sf20YALwhhRLSnpgQ1xfJz9hK9J7iYQKT1b+TbtTf+IH5i/6/h+478HR7vkLJV17JS+7ItMwmloS/fCdQkIGvcIi+1PT9Kys8VTk32ki6WW4pOzZGyLQQFzaIfRKjSMltYNUxxp2afu9A8m7h75B6lAGDRUu5GWE/61Dk2MJKUoLeFlPYg6MExA/bL/Psi6AHUjkEAWDJI78f2yJVoBwREpJ2aSZI8kICXlFOTBgVVzD68CMr0cwCo85ARVn4ulfNL5ec9azID8wBSXs/hCgUPcvDLwKAguacmc2r2CBRcCCbSELWcwJWwStacDMWYGJw/Eu1M94AU3IgRBKdmGGMxTPdojCgQadPAIpTXZ0qTRyrCWqXl/iWfjL9hJlDTMAwOuFv1K/DdS7+OXzr8C6kPNpIwqGSNH4qTe599MFG3utjs0j5/9bOVc8D6avISbKH83IkolKEOvZ/86wdwZLmLn/n7J5LxRgl4k4OCPBFqOgnU5K5kP+R9B1NQs8JcgwXKz7s+T+yOohiHl8i9/O4rict1kFNzwxj5sKHZD5L+pPx46XU8KrV1AITycyuBxABJ4Y5Z+blV4z09V8MKVrs+FpQ9PJMelzM0wGhOhppCqf6PXkPaYXz+0eP8gyB5O8cy+T3clMvPpbUwXskPXiLn7eN/3HYs/c0CIJBJfHbuOZGAcNISNflZy0vfn33W0oFBzZA5NW3u5mfz3pXTz+n9sXlqAtc99Um8d+7PE3d52AcO/A0J+3LGgOmrhp7Dhz7/JP7ozn14VgErRZB8DnVq5rlyAXKNVHBUS0tLS0tLS0tLS2vt0lDzDJPcgzKnLRuqroOH2ufzr2UI55QJWKhbHax2fVgxfWkWQxCk9HOTlp9HUghEVegfx2BXZJaAtz4NvOGrfLtKuYSvNa/CbL+mdGUxMRjJgEhSckycmuMmg5ohjJA4fTylU9Pk41LNw3S9lEk/r9Lycwjl54stD3CJK7LrEFeUXM4PABYtP18J6hzQlBwzDTXDZJxxvwGX99RM3JwVITxlkB6PX4MPHv0ZPLn1Y8nxhPlkjrIVWrorl8gCgEOdmlWzDy8EDJ5+7qTOUS4/Z+41vi/T4W0GAKBrjCuPB4glotT1yfqdmsK+QBzCK510T025/HzSSpefzwcTaWhbSaBmv0Lgjwq2AolDth3YOBAIKeKjSQuBMBadmlFSfk7FetXuwyvJeax/fabcfbQqQc3QQykkJbkdc71yTL0gxGrlYrSiaqoFhcqp+Sf+b+L+9itw98b/A4xdBAA4r3wIlhEhMitAZaOyNQBPEVdATZs6ut3KOIpoROrB2o/VUFPVUzO1hhX9MuXyc+YsDKM4gaiCk/FV24gbW+XUZNdmqu7y67Mk9dVMAH7xoCDm1IxjJE5Nu8odjOw5oOqXKa4XlsouhwV5ghvwqrMmsXOmhq4fcncqH7vQD7Q+JChILj+Xna9Mf3PfQR7IxXUSUFMsnRcT1lv9gPStpGpQ5yZ7fnD3M0tApx929AWn5qD0cwDYMVVFNy7jeMtKnrneMvDofyV/v+i/AmKSvEJekAQcLSvmSFyfzKn5TE75+eGlDq767dvx/r9/eOAxtbS0tLS0tLS0tLROTYqEA60XUxUn7WzMYZqouBZ+6cgv4J/P+SV8YeU1sM6WYCgtAa2bXTS6PjbapDQ1FtKTxZARL4h4QrZcfs7CGTp+kn7uWGYmIKMilD8yN0spB2p2vJA74pKSYwI1x1JQk5Sfe0Y+1BRf4m0Jan6blZ/35PLzerqn5qX/HZi+BvPWmwE8BsvMjjtafyMee+Ac/OPSG9F3yDyUbQsoJwnoAWwsxzOYMOZh946oy8/tNNT8l5U34N+Mfw2trT8JER1USmV86thbcRXOgheQno6q0t1Vnn6eLQdnL/BjVhN9wakZxFaq/LwulZ97EuiBYRC3Ji1BbmFCcLilV2mtZAPNPofNmR6XslOTlZ9Hdsa1O0GDguLeCRgA5v1xqbw+gY5tZxuqEN1r6XExh2zPD/G0dy7OdWio08h5wPGvAEiXn4tBQUysV+190c343nf9B8By4YcE7LNxZaAmDQnqRzb6djqIhLVj6PnJBwbiGlYBtuPhBrxr38fwe1dcBtS3AOOXASuPkmOUt6NiGMrWAKn1DnCoud5ZgkXv/WptAoAEjIIaxux0EMqo5NTshWJQ0Dj/q9gDUe7tCAATVUV5veQsLNkWqq6FjhdiueNhrOqkoOZlW8nxjq/2sNz2OLwF0iE5U7USTjR6WGx52DSeXKPkeOny89UuCVUyDCMDNcu2BcMgUDOCBQugvRqpe5w6eVVQU7xPZ0bKAFZznZqubcIwDLz5og34/+7ch6/tmcf3v3KLMPaYbyeGF0VRzFuSyDBZfm6I6vkh/uLu/bDWADUDRck9QNtRXPzrwEM/DwCYiIkb9PwNI3j86CraMYWaPCgocWqyVhIiJBfPkbVB2D5Jxr3S9RGZJXI1Dn0GQAxUtwHn5/cCZRIdrKpetr5wn567nszLgYU2vCDKfIj31/cewErHx1eeOIGeH/Lxa2lpaWlpaWmdyXrd1G+84Me8c/GFP6bWy0PaqXmGSX7pyXNqVhwLz/W34KqnPoX/evT9yOQL0TJI5tTc5pAQkaieALjEqRnACxOnZiyVGifumECZMi6OCUjK84A8pybZjrm85KCgEWMZAKh7lEJNSC/Zwr4ZPDMNpHqLTtdLQlDQCQR+F5Wc9PN47BXAK34FPoi7R+XULI3txPc++/v4p+XXc/AlOzUBYDbcAABw+gfVQUFCQjgAfODI+/Bjz30InYs/ntoPc8O1+oEAJpL1MSE5rpTuWNo3cdTqIAh9IKLuSSkoiIeMeKz0Wgr3AVJhQc14LNcRydZLW+qpyQGp0FNTLD8PkIWak1aDHEdwaqaPJ7jCLALsVUAPEFyRfoin+sI1G0mcmlGc7qm5LJWfWxRqrnZ83lJABEsASZfm5dixD3QIvJkLpuDa6fs7GVOUuGMVbtxBrkFs+T7+s7a7I7WNOAeZwB0KNSftxOFYr6VdbGMVB/NB1tnGSrRb/QBxHKOXU35eVgQFiVCalZ+ne2pmr588drE8e6LqYMsEgZTPzqcdc8kxLX6/L7TTANGX1icr+Q+jmD9b5PJz0zT4hz0xd2rWuFOTOR0HOzVNrBsdXH7OrvEbLyT38V1Pz6WgodjfsS6EdLWFPsPJvsh484KXAGD348ex0PLQjKQwHScNNbteyEFi9vzUpdatfgic/x/5en2gezkAYCNrDRAypyYrP0/Sz2WnJpAErUVRzFsFbJ+qctjcCdh80PGsfx0gVSGoJPZdbfYVTk3hg70No2WUbBNBFGNWctv2/BD/+OAR+jsxnji6OvTYWlpaWlpaWlpaWlonJw01zzBVXNmpqaaazHXTjwgUMGX6SaHmiEmg5naXgJVYADjMacmCgsyYvJRFphQUJLitGKBSORlllymghprMMcfTz6Xy8zoI1Oz5IYeavsKpyX6P7UdOjp8ZcRMg4y3j0u9cgDePfot8LZSfB1HMe7Il56eAmkLoEYNMJdsEtr4DsGtYqV8DADgeEFhU7uc4NQWQFUYxulEJd7WugOOmz5H1LWz1AiWwHKukS3eVUNMdRxiTr+2okQrfEMFtvcTKiaVwH/E6C2FBq9EYDzyRrzHrqTnMqTlutfCJTb+GaO8f0zGp08/HrBYMWqK+EEykSqpR287/2orrqePJ4xIdsk/0CNyPDRuon8W3iWAkcyCmn1PZtK2DCjI6QvlyAHovPPSLwFO/AwCY9SdRktZoSQCtvsKpqUo/l3tAilBzlYPd7BzwdgvMqVmaRhQLc2mWMDUm9RCNY3xx9bXkCzdxmbK1ycBfP7enZuJEVYF5Xn4upJ/7CqAuhwWJblzDMLjz8vhqGiz5Qhn+VJ0Gg0lhQTKcrzgWX6vcBa1Y68wZGbJrbSVQc5BTM7lvDKwfIZAtr/ycQdTLt05gouqg0Qvw4MFl5dhLdtKvWOwzLDs1xxQgmWn348RV3InKCGJhrVKnZhzH+PT9h3D1b9+O1/3OncoWGqpwJICFKhnAaz8LvOEO/O+FHweQ9DtdDeiHJpn086SnpvhvDHu+NPsBWMvKyarDe8c2fOnfnnK69UOexPYEYi9bJrHfsGEYWD9Kxi9DzS89cTw1xw8dWoaWlpaWlpaWlpaW1umVhppnmDLl5zlOTdnRmXFOCk7NhWYfOyjUNEVXISs/B3ECWtEwp2aYhL6ooJ+iH6jS8cidmury81q8AiAmUJOWxfaNrFMz6alJoaZ0rOl6CSvhKH5v7scQlzfADhu4fuQx8kO7hpJtcXfTInVvhUKPOtXx2PVIoKYFlCaBt8/i2Yv/BQBw1CeuqrJ3WOipqU4/FwGADOHY2Jr9QNlTk/fG67L0c0WPS8PEajxOzilqIKY9NUn5uQhoaGBNn/XBVJRwC07NRX9EmbYOANWS5NSMJOcdnYvr6o/ijaP3w1y8lx7Tzrh2J+0GZmwCAwJrPJWETA62Ge9f/CN8z57/g1Y/QBTF2eNRld0EJn+3ezY+u/x6LG2/FShN8W1CyakZwkIrSvp2umUylwzCxXGcgYzjVQcB6zF56DPAkX8GAJzwp7KgVYB+GUcrEkeksjyb7WvilViKCbBZwJb0Noryc95T07SxEgkQc/R8zNST3q8AuUf/YO7d+Mj8zwFv+jb/fsWxOEBr9Hx0QweHvfVoGjP8Pibnl7iSlennSqfmcJep7Ppkbr8Tq93U+MXtpnkP3TRolIOsDMNIEtB7rLVDFsgyqBkxqGlXAdpzlfXUlB2Y8vkVdWpapoHXn0+eK1/bMyeMPVnrhqHuq+lJAU0Tij6mAHHOf+MZ0vv1xgvXoyWWoNvERfk39x3Er/zT42j0Aiy1PRwR0s35mKIcqMnco4YJbHgDln0yRwwKsq+T8vNs+rlpGknQGoWaDPg7RoySk4QvNTzpQ7aCUHNRcPKqy8/ZvxEmHT853mwjfQ3/+eFjqZ8/fGil0PG1tLS0tLS0tLS0tIrrJQE1//AP/xA7duxAuVzG1Vdfje985zu52/7pn/4pXvva12JiYgITExO48cYbB25/pskyjdRLfz7UTF+6PKdm3eyg2ziKmtVDGJuwxoSAFFp+btGgIDtmyeCyU1MIChpQfm6aRgrKlmg/OFnM8ZiBmhRk2fBQM7sEtFKnppzITvbP4Bl5uVVBTQD43yfehd7l/yv9y/QlXe4zyM5P5dQ0DINDxZRTk+6vWiZjPNQn8KHqH4bLnJpC+nlFSD/vC2W0MoTjacY9P6cfIdnn6qDycwBNCjWduJFKGheBJXPeMRiSuOVEp2YaamYcYtXZGgABAABJREFUg1SiUzOKYoSR5ECk68410y4oXwSWdC2MWm1sdAho8RwCy2SIeti8BAe9Tej0Qw5jybiknpq2OO8Gbj38i2ie92up4JBYTD+n+2rFCdQs0SAddv1TrRaEdGk/zrqWV8N6vns0iISy1sE9NTNl3IaB293/hG+3LsLDeCPZRtHvdELuqQlg3ExKz3H5RzhkE+XHDv65/f3ASNK6wjCMVAK6FwG3PPMJ/MnI51JhZBVV+fmAvrBAMqfidR6TUtJlsMvcfrJTU7xvePl5S11+Lq5j5pCV7y3xQwX2YU/IrrVdQ2/zu/Fk9yzc1iCu7flmHx/98h785F/dz+8DsacmDwpq5o+b6fUXkOfKPfvI/RDHIsAn17kuBX6JY88EBUnA7mt75uCFEXbO1PDKbRPpEnTq1HxuId1bVQ1t1eXncoARGxeDmosefcZL6eee1CqjKjnBGSxl1fcMaq701E7NKFKPj0l08qpK7OU5Z+M/ITk1mUv3XVdsBUCcmjoFXUtLS0tLS0tLS+v06oyHmp/+9Kdx66234td//dfx0EMP4bLLLsOb3vQmzM3NKbe/88478Z73vAdf//rXce+992Lr1q24+eabcfTo0Rd45KeutFszp/xccmpmIJxNQEzN6gLNvQCAI9462LbQU4w61La48/CCCDYtP48lqCmGfSRpu+qlI5bPy/CJH5ann9OemgIYZEB1wmqg54c8wERVfi4HBcnl57WSzce+ZGxP/7IENVlJbjgA2gLJtWEv1GJJOnM7PtchQK7mH4GjcGpWUiXH+RBODO/p+1moIsIJ0TEoz3sbBNq50SpPGvdjO3UNWfl5Sy4/z3Fqznv1VGmvKLYG2l6QgoxyT01ZQWwl8MIZJ44ukGRvAOjbM3RMsqNVOJ4AVAb11EzSwU0pDTnmgI2thXYslFPTnpNyGTSQrOORsp04NQUd9dZlro3o1GT7Eq+LCmrKPTwB4Mj4O/ADz30UhzsjqXGlQV063AdIXMVheROw6ZaMU5NJnkt2nmR/PvwgRiuqIrLHU9tUBHfsILex2N+Rz0MKuqfXp5zovZGBJQFqyvcEg11ySbiq3F12yCrLz12p/NyuYZ/zWuza+wk82SMfHh1Z6eCP7tyH25+aw+O0p2LKqUnLzw8vdSV3ZRbsbp8i998ShW7iWmf3Vk1ySYtzJQcFLUsp8Kz0fNfFG1FzLbRC4ZlLoaa43gFgQSrlF89PVkdILBevzQZ67RZ6dO1J6ede7PCgIEB8BgepMbHHEFvDyz3pGV5eh8NLHbzyt27Dr/7TY8oxAsPLz7NOTXULAbber9gxAcs0MNvo45gE3bW0tLS0tLS0tLS01qYzHmr+3u/9Hn7qp34K733ve/GKV7wCf/zHf4xqtYq/+Iu/UG7/t3/7t/i5n/s5XH755bjgggvwZ3/2Z4iiCHfccccLPPJTlwg1c52aUuCINaCnZqn7LADggLcpDammrwUAXFF9Ev0ghMOcmnZO+bmfQKNh0A9IgilkMYcl76kpAhPaV3PKXkXPjzjUDAaWn6udmkDi1pyNNqd/QKHmlOzUHNAzFMiW/avKUfd1yDmMhEcHlp+LUNO1sq5WBqFa/UAof80CrzCK0ewnfTdlyNgxCIgroQEjx6mZKT/n/R2zTs1uVMJi38kNCqoxCN5PSqrZOcpzISrVU9O0eA/H88ok+b1nr6PHS58fc261+yHvV6galxjQlOrz6YzzbfzYzqyFdpyUaNfrZEzNXoAwipVQ2jQNhBCg5gW34gH7XfiHpTelIDiQrIW+H2YcYEAC1xo9EXhl4fV0Pb2OVT01eWkyhUFRFOO/HHkfPrdyA1ZvuBsAlE5NeT9MI6VkbHlrgT0PvDDiwVjpNcxKoQeXnyf3QrocPHFqZntqhlHMey26tgA1M05NxfGkeVd9YMDaLIhOzQMLHbovcg2fPCY4YaXjuRZJz94wWsZq18dvfO67fBvV/c7ALoPSqdYVHGomzwy+r4xT0+XnFgquxUcPE+j6+gtmUC3ZaIRZp6YMNVU9QwPJqcnOITUmYewbxugzmkNNRfq58GwX26EAAmSkm0zT67ykcGp+4bHjWO362P348VzX5KIANZVBQdK/gRtynJrsg6iJqosLN5IPG76zf1F5TC0tLS0tLS0tLS2tU1PWTnQGyfM8PPjgg/jABz7Av2eaJm688Ubce++9hfbR6XTg+z4mJydzt+n3++j3hT5aDfIi6vs+fF+d8Ho6xPYtH0MsLY+jSDkGV+aFsbSdUYEDoG51UfP2Aw5w0NuEIBCcJxNXwQHwyurT+JTfh+2QOYiMcmpfLh1OuxfA88nvW0Z23ED6JbxkGzljJy+D7H3aNGK+ne1OwegcwqTdQNcLYLkEtPqoZOaLHapFHZ+WmT3eVM3BoSXgWBM4396EWkD6nIVGGZHvY7xKboH5Rhe+76PPzy8een4AYCKZd9cgJ3TMp47CuIN1Du0HGVuI2Xb02rX7Pto98gLtWNmxV+hbeqPro0+BkHg8C2St9PwIC40Oeqy3qHRtOiZZ+xWsALSnZmTYqbXAjtXskTXP+gwacZgczyzBBLAUjGLV9zBJ505eC6zMu9Xz0O0ngCCOAvh+BCM2lQ8eP3ZS52e70zD6CzifQs2OQZzFtnSdK/R4jW4fHXo8yzQQhQEiIcekTOd9tePztWdEEfzIgvGaf8FTR+aw8tgo5ps9+L7PexG2BKhZLiWl6IvNDgcchgFEYQA/Mvj88vPa9m/xf/dbWAqPZOaK3Qvtvs/nTdym5tDAmo7Hv8fGZQj3/BgFbGzsbC2I+6KboEWvcT+I8M3Wq/DN1qvwUGk9fN/HRFn9QYSjuLdG6LYrrR560n3Dr6GRXIBlChPF61en57fSSX7H52svOT/WsqHRJfPQYfeNacL3fczUyHwfX+3y3+kICeCIQkzQVPO5Ri91LgzUmcLxRuhkLbXItp1+8szhY6LXiwXqhEYJz82Rfzsu2TyGhw6tQKx0bnR6qWeMaQAWInz8nRfjRz75AP7xwSN4w3nkXmX3jfhcKFtkZy0vQL/voStAQnZvsQ8UVtt9/nsszMcCuTZV4eZbbHZ4Gwu2XdU2ULaAZpR8kBQYZcR+8hximhPmm6nnpb/eNFbG/sUO2v2Ab9sWIP1khYyZQdTIW0Ho+7CCPkyQ9HNDeC6UefsSthbS14Y9l+Y7aWjp25P4+p7D5Fi9AEeWWhxIiloQWgGsCPcdU589D+m9NUXX3glpLphT00KEG86ZxhNHG/jkPfvxlovWKduyPF96Pv8fRktLS0tLS0tLS+vF1hkNNRcWFhCGIdavTzf4X79+Pfbs2VNoH7/yK7+CTZs24cYbb8zd5sMf/jA+9KEPZb7/1a9+FdVq1iF4unXbbbelvva7FljZ+aFDh7B794HM7xw7YkI02j700IPw9gult3ETuwBUzD4mu88QqNnfiN27dyc7iSPcHNdQs9qozX8T5gbycv/s/qOp7fYsGgAsHDkxj0eCWQAW5udm0/tSjN3vdZXbLC2kx/70U9/F7qUnAADX9ID1IAEx3z12HPa2NmAAxxZamX0dP3IYgInDJ+YBGPAUxwta5Fh3fvshXFCZxjk2gZqPPPEsjjy9GysnyM8f/O4z2N3eg0dnybkuzM0px+4J5wcA9979Deyl78VxDBiw0I9ddDCBKpaxo0SO98BDj2H2MbLhwaPkGM/uP4Q7+gcA2IijIHO8PUt03mcXQJiKgbvvuhNjgtGxbFjowcDu2+7E03ReDx88gN27n0uuScsC6kDdWIEBco3DyEod71gbAGwsNTvYvXs3un1ynvd88xt4hlahvqq3gq0AlsNRHDwxh2A1BmDi0P7nsHv3s3xfR46QcT+97wC+7D8H9pj56pe/DMMAZoJHcV1mZokj69GHH0JwgKzj67smppE4NZ+dJS/nq8uLqbEvzpLzfuSJp1CaexKADRNRZj4Xe+QcV7se2DX8+h23cdh3pE2coMeWmti9ezcO03tMLD//2je+jZI5in5k4HNfuh3EIGfDRowvfelLfLubzCTp+Et3P4fnDpQAmNj/7DPY3X2a/2zuODnGY999io7DwvzsCT72uS7Z/2IrWdttugbv+9Y3sZ9em72rZM4PzS5j9+7d2LvfzFybwy2yr4XVNnbv3g3Clci1ueO22zhs37XVQBgZ+MrR5B7ttJqZ+eyskGPc++AjONAwAJjYt/dp7G4nz+a7vvY1GLAQw8BD330agIn52ePYvZu0A2n5ZAytfoDPf2E3LBNYXCbn9/CDD6C7j6yFQ8fJ+T2z/zB27z6IPSvk636HPBdWPbKfuUYPn//iblgG0PaT8/vabV/FHL3+R5fSz5LZeXK8Jx57FM6xR8i46L1036NPYf3Kd7HnIPn66OGD2L17PwBgaY58r9HxsM4G9uw9jHsPPwPAxLi/BLkQ4hvf+g6W98TYT/f13N6nsbtD5urV0ya+M2/in77xCN62DXjw4ccAWGisLPGxEuOfjTgG/uULX4IXJefH7q3mEtn3dx5+FKXj5FwabXJ+99/3LZwgj1mULQu90MC/ful2rKNrqEPv+Xvv/gbmugbOF5ya93z7UaxYHRyi98SYE2PVN/Dwnn3YHexNnecT9PnG5AYtACaaXY+fS0u4NnfdcRtKloUmDSZqLx/D13bvxnXdY5gBeS488tCD6D9H1kK3Scb5rW8/gN6+GE8tk+NZBvm39Og8+Xrf8VVgIxlDDAP//JX78cBBF+ze/9svfB0XjmfdmvuOJM/4wycWM+v+4RNk/4vz5N+I/Q1yLs8dX0pty+7Te+/5JjbZgGNYeOxIA7//91/G+YrjPl/qdLJhTlpaWlpaWlpaWlovF53RUHOt+shHPoJ/+Id/wJ133olyOevIYPrABz6AW2+9lX/daDR4L87R0dHc31urfN/HbbfdhptuugmOk4Rr/NXR7+AoTUrdsX07du26MPO7T922F3cd38+/vvrVV+J7zktShxH5wD/9CADgvPI+AMCxaBt+ddeu1H4Wd1+FSvvruG4iAS3nX3gpdr0mSUmvPjOPv3zmYZRHRnH+hZuA/U9j66ZN2LXr0sy4PnXsOzjcJmOfGBvBrl1ZfPX1zuN4ZPE4//pVl12KXa8i5eHWtz8DHHoYF5T3Y3NtAiZ1P05t2I5du65Pzdt5Z5+Frx8/iFJtFGg2MVqvYdeu16SOdW/wJB6//wg2bD8XgXcx0CK91C674jpcumUXjt19AHccewZjM5uxa9clWP72IeC5Pdi8aSN27bosM/ZPHvk2jnVW+ddvuvENvKcaAPy3h7+GVj+AMXoO0LgfDnWqXXnVdYg33AwAWLjvED53aA+m12/EtdfvBB69F/VKGbt2fU/qWFP7l/BnTz8Ao1RD1CIvprfcfBPviQcAf/Tct7Ay28IrXnUVTuyZB44fxgXnnYNdb0xCXW773P1AHxg1lvj3DLuEXcJaOLrSxUcf+yZ8WNi16034z/ffDkQRbnzj67F5nFAP64HPA/vvwlIwCqc6gs1bx4ETR3DB+edi1+vP5vuau/cgvnj4aUyu34QbXnce8MA3YJsG3vIWcjxjrgrclZla+LGN6665CtefTRyZ1rc+CRx9ElWTOPxGN18K7AE2rl+HXbtexX/vsS8/jXtmD2Lz9p14zau3AA/dg7LrYNeuN6X2v9zx8JsP34lYgNJvueXNvCx3rtnH7zx2F9qBgTe9+RZ8qfEYsDiLruDUvHnX2zH51D04vtrD5Vdfj7GKDTx0D0rS8Zx/TFK4b3nL9+Ern3kMmD+BSy56BXZdl/R3ffCLe3Dv3CFsP+scUvJ84Bls20LWIkDKyf/HI3eiHxq4+U1vhm2Z+MCDdwBhiDe+/nXYNklA0N65Fv7gyW/BM1zs2vV63Pu5JzPX5uBiBx9//G6Eho1du95EStXvvxMA8La33ML78u4C6Xl44W/czsuTZ6YmsGvXVan5vLP7OB5fPo5tZ1+A9vEmsHACl158EXZds43fozfffBMqD30DHS/E1MatwLGj2Ll9K3btuggASR7/rw/cDgC47vU3Yqrm4n/tvQfotHH9tVfj6rOIc7H38FF89sB3MTI5g127rkBpzxzw1COYmhjDrl3XIIxi/ObDtyOIgCtf8wZsHCuT0ugH7oJhAG99yy1Y6fr4yKN3ohMYeOPNb+au6786+h2gsYJXX/kq3PwK8gHaiXsO4K7jz6AySZ5zD+3eAxw7hAvOPRu7bjqXX7tvzx+CU64BAXDBxVdg2t8MzB3HVZddgG8v7kNb6CN5wSWXY9dlG3EbXQsXC2th7x3P4jt3PofpjVsAHML5r7gIeHZPaq3HcYwPPHA7/DDGtd/zBrqAvgHHSu6tu3pP4NGlY9hxzgXYdcNZAIDfePTrgOfjDd9zA85dT8rIf+epb+DISg+XXXUdXrl1HHEc4xfuIx+uvemmN+LQUgd7dydQ87rvuRkYvRD/uvQwsDSPnRvG8fDhVVTG0/ciAOy/8zngUPIhx2XnbMXTDx5FEBu46U1vhmOZpE0AfS689S278Lt7voFmjxyv7gbYtWsXrK99FFgkPTWvv+ZqXLOTrIXPLj6EZxsLOP+iS7Hris0oPTUH7HkEtgncdNNNGD/UwKeefRB9oa0EStOonXMVogce5d8a334hdl2/A7L+1967gSZ53pql7L8pC/cdAvbvwRb6b8TBxQ4+8d270Y5s3HLLzdyF+cv33w4gws30Gfq0vQefuu8QHu7P4Bd2XZk57vMlVnmipaWlpaWlpaWl9XLUGQ01p6enYVkWZmdnU9+fnZ3Fhg0bBv7uxz/+cXzkIx/B7bffjksvzcI3UaVSCaVStpec4zgp2Ph8ST4O6xEIAJZlKsdQLaW/52bG6iAwyrDjHmYs0sfrWLg1s6/GyDXY0P46LrbuBwD4sYVSuZrabqRC5qbrR2DuI8cePq6yYym3qZRs6Wth7BXilvupmX8B8C98m8iqZ/ZVocfq0JJI1ZjWjRIgt9QNsFLawb9vl8YAx8EM/fly14fjOIgNdn45Y3fSY69XSqnt6iXiOuuXtqGC+5PjuVWAblenvfH6QYyIHU9xncdrNBVY6PFWq7hwhDGM056gLS8Ga3dXce3UvsLSOqAPjBlCPzfTTW0zQfmFF0SIDYuXn1dKwnYuASLLwSia/RCsdV5ZOt5ohZWzRjBM4tiyLSPZxsmGPgEEalZcYS2U16V+3rEItC9J62qUrc8gRmyQ47nK+cyWVlfLLocQ68bIz6MYaPsxLx3ugEJNuw7HLWOs4uD4ag9tP8ZolR4v537wjDpcx+H9MlNrHcn94kVARGGrK5zf5Egy5m5oYLLs8HLpWjlZexvGyQVc6fqAaYG1LBSvzRhdT20vhGXZiClwt0wD5VK2z2nVsdDss2Tp7P0wViXz3vEjBLQ/obwWHMdBxbHQ8UI0e+R4ZSfZxnGSFgp+RNZIGGfnaqzKxh7BcRxE9DnE1oIDEthydKWLhU6AbdMOItrP1rFMuK6LGcch5dxhjEY/wia6blTXZusUWesnmn04jsPvLfH8RmjfzYD21LRKo/yeqLgOZkZKaC8mLrl+GNPzY9sk+5qok/Nr9iPAAcLYoHOVnveRsoOltodemPRVFp8d7N7rBhH/Hl8vleRenqiVcGSlhxadTz+M+Hqvl0sYrYap8nOnPAE4Dny60eaJKh4+vIqFtpdZF3K4+JbJBI76kYlq2UFskGcau28m6yWcaBFHtOEtkP6mcRIUJF4bFmrmsfmka8E2yHpj98JcGwDJbINRXo+79y3xY3pBhGfnO8p7dkno79rsB5ltYuk+3TxJ1krHC9GLDIyWHcRxzAOa2H363uvPwqfuO4TvHFiGbdsvWAn6C/H/MFpaWlpaWlpaWlovls7ooCDXdXHFFVekQn5Y6M+1116b+3sf+9jH8Fu/9Vv48pe/jCuvfOEcEadLYhhN3mtPWQocUYXkhFbS/68blTAbb8xs0xq5GgBwgf04304O+xCDGViatZw0zlQRxqUKFwHS4TqAFC5SnoFKppXl70n6OYMz2ePN0ACVhWYfS+aO5Ac5QUE8/Vwxn0B23uXgIBYe0nG2SCeQDQoSA2uUQSyKtGo5PZv1w1vteEmit7RN5JI3+3ErcWrKYT0sKAgAGr2k52RqXzS4ZzaYJL03WQp3Zr0kgTTKAJmcoCA/tlMpxyhNp37eNMjXcgAVG3tHDEtSrE/XNlM9UeVwJscyMUFdsAstj6+FLoOaDrmfmFN2tesrQ3tELZrELce2Kw1IP09SuJNtHMvkfRIbXR9RFCsDhcYrDtiSXW57qQAqprrwYYJ4bfLGXhXWhDNkfbK1oJp3FtDEksTltV4T1gsAHvYk7ktMWgfUaeQbxtIJ6GxMbM4Nw+DJ2HNCwI0qFGsj3dexlW7u8dg6fwC7gMkrgPVvTKWys2AipjYP4cqeHwv94ufHnwvptZ5KnGfPYuFZxQO/xGApxTOGrWEW0NQXAoBKjol6yUZTDApy6qmxb54gH0wstLJBQQx8nr9+BNedPYXvvWwTX2MtKbGcjWmq5mIpGCPAMA4Bb5Gnn5NQs2TsbD2xD7PYmCyTuorpvC90hGd4eT0eoUFIb7t0EwDgmdlmZuxBGKVCq5o9PxMoJK+XimvxICuWgC4GIbFwMDauMIpT862lpaWlpaWlpaWldeo6o6EmANx666340z/9U/zVX/0VnnrqKfzsz/4s2u023vve9wIAfvRHfzQVJPTRj34UH/zgB/EXf/EX2LFjB06cOIETJ06g1Wq9WKdw0qpkUoCykmGaqYBwkQA1n+ltg60Ag95o2sXai0oKSEVfIr0QYZgFKultk2PkQk0JDKZAiD0ClVSQMUk/D3LHxNLPF1p9LBjbhB0SF9KUlBrNgJGVAzXlayPPFQM0x+tvTP9iXvr5AChWlxytlmlkYLIIJ1TgBQBPlB81yUt8L3JhW+nzsC2TAzbxpT6Vcn/OT6N97n/FXyx8H5r9gAdh5EHwjicmegvbWPlQMzUPm3aha05h1p/Eg9GNmDfPoftSp5+3+kKqua2+fgwKqfYDAFN0vSy2+nzsc/F2xIYDjJGScAagUiBZOt6ytQMAcK/1LgBqsASIayHioUPyWuDH6/opWCLuyzQNTFJAv9DyEuAsbFN2TL6u2/1QgOAF7mXF+kwBtgGAlCWgr1CoKYdtscRu9uGEpwCk7F5oDUgjZ1CTJaBzwC0cjyegp6BmFjKylguzjR6CMEpgpbANg83fCN4CvPkBoLY19cFCFmrmnx+DYqtdCfpJ88nmoSkkzqcT7slaadFjRVGs/PCBrallBjWFACDXMlF1bbRCoZ+0VUuNi83PQstDJFkz2TPtdRfM4O9+6hrsmK5xQM7Arjyf60fLCGCjZ4yTnfRmgZBcIy92UnMlp5+zMbFbcLziwDYN9GOx+fB6HoTEWho8M9vMjH1ZePYBBGD2/DSADBT3TQLU+6nzA5L1XhPuJzEJXktLS0tLS0tLS0vr1HXGQ80f+IEfwMc//nH82q/9Gi6//HI88sgj+PKXv8zDgw4dOoTjx5P+jH/0R38Ez/Pwzne+Exs3buT/ffzjH3+xTuGkJbod80rUypKDRwXhIjvpBfhMb7vSRWWVxjDvj/Ovu1Ep48qq0Jcx4tQcDP1E2JrnAJOdminQM5L08vz52d8GAHy7dZHShcmO1fGSMlpZ3LXT8rCITZmfMxC02PYQx/Fwp6adPj8ZJjOn1DHnCnwDP5D8QICaFe7UjNAfAOHq5TTUlGEQAIzRctPlAlCT6ZHOeWlYyY5HgclKJyl3d8R5r2yAdfmHcMKfRhwDy+2kvFcUd2r2E/CSms9cp6aVHvu61+DL5z+Cq5/6a/xe77fgReRnGZDMnJreYMcg2VaAmor5nKaQe77V52uhFU8jeMuzwPd8DgAwTud8tesrXYUA8OUN/4B/t/+D+Lr3FgCCU1OGmvTrXhAqnXcASK9NdjwBasrHnKqRtb7UVrt2DcPgIK4luFplNyBTRbyXFetztMzchYMdsuyDALau5PXJIBUDXkGUhUYcoPbVTj8A2DjKwBJxV6pAqwpqqiDVdL0ExzIQxcBss6+8ftVS2mFKxhXycTFXKBN3aipgK4OMjW6+EzU1D72AQ3DRYVqX4GHaMZhcT9HhLW7Hnmm1koUGLT+PTZd/EMG2Y6nhYRRzWM3EP8gQxlUTngmp49HzW0f3twrSTxfdEymnprj+Km76ue/xZwz5uWkamK6X0I+FsuvSFAe356yvw7VJy4PDy+kQHfbh1kTV4f+eNHoS6GT/RgjrhfVVnqVOzb4AQtn6M00js9a1tLS0tLS0tLS0tNamM7qnJtP73/9+vP/971f+7M4770x9feDAged/QM+zKo4aMoiS3Y6mCn46aaemypFVsk0c8DZhxlkBAPRiN+vUpOPxwoi/GNoKyCiPXYaX4jFTwxTHtfFmzJ33O/ihz9ewYJ2NP7vwDvyvJxbwb9Zlx16TXJOOYkzMqTnf7KMX2vj92ffgxi2ruHjicgAJCPKCCG0vFEoZ1VCzlDq/7PHEl/c74vdjc/8ebK2swq0l4TDspVx0aqpgUMm24FpmrssPEJyaXU9d6g3Arkwjig0eunRf+xLlXNVLNhZaXsqtJMPPkm3yvoSL7T49nhrsdrxQDRlzoOaI1cmMfaSUgLN+zlzVFBA1D6iL7lfVnCdOTY/DNcsAUNkIWKy/Y+KOzSvBL41sxh3Nq/HaIZCKgfm+HyaQStqXCDW9IAtLkrG7wCyw2O7nQsZ6yUajF6DVD3i5upvr1Bz8AcWIADVVIJKJATtWqpwpP6fXpDOg/JwB/lY/QBTFSiArOzX5ehGAGIOac80e/55qjZqmgQ1jZRxe6uL4Spffg+Izja2lTj/M7Mu1TJy3gTx/DQOIY/DQoGSNJuNi17ghOVHlZ0xduB9ULuGaBFr7OesleW4wp2Z6fVYcC62IuDNjq87boPhBzI8zUXWw3PEx3+zzD4fE81M5bblbVbof1o9SIB9OYoMJoHcCiKhTM0o7NStC+w5xX+LSmx5x8WxT+N8bZ4zPV9W1cM5MHU8eb2DPiSa2TyVl9uyZxs5nueOj0fVTYXABh6jJmNjPTzCoSeF2yU63uKiVbHS8UDs1tbS0tLS0tLS0tE6Tznin5v+LqghlanlZAjIwVDoLnTH+12d625Ug0rVNHOwnvTa7USnjyhJLrtlLd17JasUVehbm9tRMfz8FTAwT/Z0/h2f729DzQywbm9CMakpnodgHElCDyAn6ctr1QzT7AX5/9t9i98jvAkbSD429JC8JfRSL9NSUwTIZE4MKIVpBGbv2/m/861n3Au54sg9bgJo5UIxJdGuqICrrAbna8XNBSLXkYjlMAPd9rUvUTk16rGXBqSnPg2EYHFAw+Jl13jFIFSYAQDyeqQ6umLGXM+sq3bcxB2oKc57XV5SfowA1VXM+I7QrYGtBXgrpcvDEmSdK7LsJINVrUVS6/FwNBrmLT+hjaptGxiWcLj9XH49d47bYfzTnPq0OAcDs2jR6vgDYstsxYJffg5W51yj0U7QsYHA7jkkvRVX5+cYxUhKd6YOZcmoS+KQqP5fvCba/oyvdnJ6aZNzNvujUTO7BH3z1Nnz2567Df37T+QAEaDugp2aj5yOO8yH4KIe7PofgKUdkKYG/QALXDEPqwVpNoB3ZLv3sMAwDvkmc/pGVQD9Veb3cV1M1n7z8XOqpyf4dW0evy5xP/83qzXKnpif11JTLz33JqQmQ+9gTnZrueKrk/TyaAr9vPt2Whjk1p2olDu1lp6aqpy2DstypmePMluGulpaWlpaWlpaWltbapKHmGahKKiioWGCNCuhZdlL++HR/uxI4uJaJA14CNUlPzTQsLNkmBzssyEJVDg4U66kp9wOVtyvx8JRIKLFUQc200VgF6kS3GQvckY+XlKD3hZ6ap+ZErQnln34YoR+7MAS4DCTgt+uHuVCMSewBqdomKT/3cvvwVVwLSwEZQ2iU8HDnAiXgZo5HVibsWIay/QGHn2223UmWgwtOzSBOvj9pNxTltkmAiq9w3onHa/cDweV3ij012VpoeXwt5EHNla4PL1CXu7PrwvqT5l0bMSjIU5QTi8dLBRMpS+dZ+Xlf6QYE0tBLBQZFVVPl5/lQs9kLuINPta/xShpil6T7vy44NeM4VkKxsmPyZ0CrJ5bOJ9tsnyLl0gdp4ngCdpPjJU7NLNSUx75JcH6q5n1UCvcBkHLIWqaBV22b4KXeSel1ds2MCeDXi5Jt5DENg/wjcu9RYd2J9zK7JuxeF52FTPvCC/Gl1eswvyWpkhDnQXTBiwoUfZcTmKduH8Cg4NEefVZ2TyAOk/TzdFBQ2tkr99QEyHWOIKwzAWqWHAtnz1CoOddOjX2xRY45WXMxWmHQPu2qVAV6bR4na+/QEll7zPkqr/WaBHe1tLS0tLS0tLS0tNYmDTXPQIluxzynZiYoSLGh7c3xv5/wp+AowGDVtXGgn/SaJOnnWXceg5XDnJrlIeXZqu/LQEjcR9IvMx/CManAp2MlMIT1q8v0IqwnICtU9EvLG9vA8vNU8nd6Xzz93As5DCriLFRBVLGMVAVLAAJ2GdRcrb4K/dhVXj8GTBiIy2sxwM5RGQKEBGz7YYyuH9B9qXtqNsI6/mT+7fAiG5+Y+4FciNPo5ZeWp3t4Fu+pqQSDI8OdmqILM29MSYATg0ZqGMmgRy/IcbVCHRSkLJ0XgGzeWhDh0qA+mED6AwG1U1N0kObva0yGmjnXr9UPEUYxWNi0OKeGYXCY3uypU+cZ1Fxse8Q9GmTB7owCxOWV/W8aT5yffcV1Zj1FG0JPSVWriIwTVTFXVdfiH0x1g3ynZl0BNcX1UhsCD5kmaur081R7jVIFP3vwv+DIup/Mnt8Ap6Zqjcq9JLmrXAgKAoCDHdoHWig/lwPEqlIvZT4PYvm51M80dsZSa+bsdWqnJruW41VHeX0BAdoKD4adM8TN+tw8gaQqSEzmIX19tLS0tLS0tLS0tLTWJg01z0ClnZpqyVBTBeGs3mHhK0MJHGolCwe8NNRUwR5Wgs5e8Ir01MxPP5d6YcpQU4B3rIxSBSyrJXkOBo+JlRHKAIo5NZfaHn9hzQ9CGlxeXxX67OUBL95HMYj4y2+RHpCqbZLAj3wXX9W1MBdMAAAWqtcCUM9VTSorzwO7I1KAUTaNPLkuqyqQnIKaNXz4+E/gku9+Gt/tnpNZCwwseEHEE51zQZ033Pk6tKcmK+EW10Je+bkw57ILelzokRhGcX76OW9FEHFILF9nEa4McmpO1pPy80E9NQFyX6kS0kWJbSdUAH9EKGXvD3DIMsDLlO2pmTh7AyGNOm/sTdFlKuxrpOzwoKeDCx1lCf660SzUzEuB38ihZo/3Ek47NdN9PgE1RKxLfS6TcSXHMwyDr6tOqIaj7BwBBjWz4Dpbfp7tBQoITuIuhe7MWWiL+0pCpZjE81MBYkANicUWEfJ+AHLfmQaS0LruCRiR4NQU5kouP2fAWVwubM09YtwEjJwHb92b+c9Kjskh5L75FuI4WXNi2Ti/7ySnJusfK54f29+R5Q76QVig/FxDTS0tLS0tLS0tLa3TIQ01z0CJwDLfqZm+dCqnprHzJwAAdzVfBUANqWquneqpaRuREvbw/nG9wcDrVHpqqoKDGFNkL38qyFiXgoJy+2BKQFaGF2ICesgCTwqku8twFkinD+eBJRH8cufrKZafi07NfqAGehXXxh/NvQt/s3gL9o39KAD1XMnp50Xco6rjOZbJv7eiAqQS1ASAflxS7kvsKbrEg4kkaEvnPIziXPCp2p9qG+7UbPY5vMg4NcX085wyb9GdKMLIzNoXys/zejuOsTLY7uAgJBZ6tSiUn+f1H02lnxdJih8AwaM4eS6oWyRITs1c91rSKxPIzgMDeuny8/S+dtDQl/2LbaVjUARxDGblOY43jxP34DEhKCgFNel4oljoFam4PrI7Ly8cjPXLTDk188Buz1f2YE0B/iDKXXf8udGm7RHCrLOQ98YV+j+K45pWlPIDCfRzT6L83LZIOfs8/fAFneQDOS92Uh+iyennzO0uOjXZWvkD778Db90DD4lz07VM7JiqwTAIHJ5vZQF3ybGS8nPJqcn72koO4JGSjSgm7Q/yYHJy/+memlpaWlpaWlpaWlqnQxpqnoESHVKqnoZA9mVJ6Sx8xS/jfUc+hPcd/FUAajBhmgYie5R/vc5ZVDs1udsx3zlJthPKpXNgybDyc8MwODxksKBYT81hTk01QJziTs3hPTWHlZ9XhfJzXgKcEw5DxqQGrUzp8vN8YBRGcW6Py6pj4cneTvy3o+9DA2PKbcRjLQs9NVWS510FxRgE505NcT6FoKBWXE/9nnydLdPgKfdLbfW4xDYEq0PGXhd7vqqgpgAGmeOMpcYzJT018wN5bMvk/Q1XUlAzfd+mnJo5ZdBj1Wz5ubqnZuI4zg0KEuBS3jZMw1zXVQWcV80pcwXm7asu9mAV0rod6R4c4UBP7Aeans8d0wRqHlhoK8EnK5n2wgirXR9RFPM2A/I9wYKCjq92lXCw7Fj8fBtyD0s7C/QYhMtrDcDWVTcwcqHtiJACr4K2NQHwX/DBL+F/7H5KuR/m8G6y3r9+9njsvhP7P4rrb8sEmZ+Di+m+lKresDXh2gFQlvOvHy0LUPNQsr/ITt3P7BnL088pkBVPMWlbEQJGMp/smGXHwtYJ0q6AlYwD4I7ckm3mBwWxeRfOzzAMoQS9lezHUa917dTU0tLS0tLS0tLSOj3SUPMMlFi+m19+nr50lgp+WiXc71+HVkRe3nJBj+BeW28vKcEEeyllkCoXILqDnYxk7HL5eXZcbBvmaLEU25RsMwVz80Gr7NSUy88ZyFp7T00x3TbPVWeZRgJDukHuvoD0tVGBpbJj8bXAysblfanS65XOV+7UHNxiIFt+rlgvbnq9pMJ9DBMwaAmpADXlMBM+Lp7KrnYDWqaRmYNCTk07e6zpEQJ7en7EYUZe+XnPj3jytbKXpNBXM7f8nI6774fc4Sa7hMWemoOCkHiiddvj2+U5/US3Y95zYVhPTVMAzoO2k52a2fYICahLPlTIprvXheTvPOh3FoOaglNTnIOyY3E4utj24Ef5ztCNNChouePzEuxMGrnk5kucjMm8VKUy7jwX7WiB8vNRofxcWeYtQPsoBr6zfwlA9pkwKtwHq11f6SyU+3OGAgB2bRM7p8m9+9xCGmqqesNOSD1mVddv/WgJC6z8PKQp4pGD2HRTz4Wqm0BwIHFqWsKHD2KZPoBU8jlbV2cLJehM4naj0j6Y/Jx/I3ay8KH5dm75eU331HxZ6Td+4zdgGEbqvwsuuID/vNfr4X3vex+mpqZQr9fxjne8A7Ozsy/iiLW0tLS0tLS0Xn7SUPMMVAr65ZWfy07N3HLwZLs8ECm6AVfDurIUmr1I8qTZIQARyC9rzTg1Fcdj27QH9NQkAUbC+Q0pP+/ngJ4psaemAFWU+5KcWrKqgrtJ1Tsv+V3m8BoM4djLOaAOCgIS1xWTvK9Uen03P+ipLgUFFXGP5o29ykv+2fWTtqEl6F0jcQnnOQZrkoNUCd3d9NiL9ChVj9vma3iBJiHLS2GkbPO2EKyfoGpfrMRXDKDK66/aC4T085yemqtdP3G4DQLqXlLGnU2KT8pfB7k+ARlqFnPtqu7lTE/NTEl8Uk48CLSKyd95UJOFBYlOTXlMEzWWTO/xUmLVuEbLDr/OKzkfGMhhMir3a42ndYepdPfM8bhTMylRz/RkFMKSVK0PZBDMz03hJB4V7ndVsI04bvHcAHJ9GEBe6fjcRZ2aA+H82DNqqSPB31S/0zKWw5FUavk9rctgWen1IwatAQkAVjk1WVsE1fFUCejckeuYueXnCbRNz+nO6SQsaHj5uYaaLxdddNFFOH78OP/v7rvv5j/7hV/4BXz+85/HP/7jP+Kuu+7CsWPH8Pa3v/1FHK2WlpaWlpaW1stP9vBNtF5opYOChjsGgRynJopBxnrJxjuf/Sh+eeNf4UNH/z3+cgA0YsrtqVkkKEh60VONi5ef856a+WNnTpr8MQ0udxeDgtjLdy4gHZZ+Lpb3DkiXrrgWGr2AvzAXgXB5bs6xioPjqz3+tTzvhmGg4lpo90MOUVUuTBke5kHwTPm5AtpWJWdvBlKZLhB20TdG+LeGQVR2nfP6Oy62vaH9QEeG9NQEyHo4utLlX2eGbhoYLTtY7focfA7qJSn2HMw6Ncl68sOYl6zK8zBWScpgB60psfS4kTNXYvnroMRyIHFQAgOcxCU7dX6qa5jpqemoQc+wMYnrQJVsDiQ9NQ8sJkFBchuMiaqDQ0vAUjvpS6k6pmmS8B4GNMnx0mMfEQKhoihOwp4UgTthFKMfRMk52urr3AkAz1KDT7H8nDsGpXv54s2jeOJoI/U91fUbr7po9AKsdj0h/TzZriqVSvfFEm7bRMm2sHm8gqMrXTw338JkbRKA2HMy2ddUPWnxAeQ4NUfKiGChhUmMYh4AcHvj6mw7DRYU5EtQU5jO0XL6maFyTqoS0EUYWZeeYUyq9HMgcWo+t9DCq7aPZ44HJGtBOzVfPrJtGxs2bMh8f3V1FX/+53+Ov/u7v8Mb3vAGAMAnP/lJXHjhhbjvvvtwzTXXKPfX7/fR7yfP1EaD3Mu+78P3feXvvJTEzuHlcC4vlvQcrk16/tamF2v+cl4DXzTFxqkNiP3eqf7+y12mqV5XbLnp+3dtejHn7/k+poaaZ6DSPTXV28gvS3kP+0oBJ2O9bOOezkV4976PAchxwsn9K/OcmkMSk4FsnzEVwGC/Oyj9XB5XkUR2cjwpKIi+cC+2PGyfGuzUTJ9f1jlZE8rP83rnAQnMOpmgoLz5HJYuDRAoTaBmPgBmZbn9AeAMKObUrPGemhSQ5jg1fVOEmjkQVQLqg5zEK6pyd3FfYpp8gTkH1Hb28SqBmvNNApNV9wwLFJpr5gNnsY0E612Y12uxIZQJD3KrAgOCZlhiuTc8KGhY+TlQrL/qUKem4AjMC+0Rx97KST8Hkp6aS20Piy014GZOzeV20hbAMNT3/LgMNXPKuBtCv1NyzGwPSDZ2VWo52Rd1aoYGvHhwT9RGT/jQRNrmL37s1Ti01ME7//je3HEDCdxdbvtC+rlQfj7Aqcmu4c6ZGoWabVy5g0BN3kYhVX7O5jwdTJTuqUnagERxzCsUbm9cBaeshpp+SFyvSfVAsg0PleoHiON4sFNTVX5um7z9gPiBESCWn0tOzZnEqdlj85kH8D0dFPRy0d69e7Fp0yaUy2Vce+21+PCHP4xt27bhwQcfhO/7uPHGG/m2F1xwAbZt24Z77703F2p++MMfxoc+9KHM97/61a+iWq0+b+fxQuu22257sYfwkpeew7VJz9/a9ELP32WXvaCHG6oG1jag5pZLTtNIXl66bOtu5fd3S9/W9+/a9GLMX6fTeV73r6HmGai0U1Mt0zTg2iZ/WSvi1MwDZzI0UkKxkpw0ngMQ3eFOTdHtaJmGEiZknZrDIVUREKkal1h+ztLPc52awku/DGeBBOZ1vAD03Vft1KTn18zp88lULwDhxity+Xl27Px4A9yOo5KjLs85WaSnZlXqqZmBqAxqWmMD9wOk+2ACWXceoAo5KjCfBaGtaikw0JiUnyscitW0U9MwsutKXE+tnBAudl2iWCjBV6wF0yTtGDoCMJG3Y/d6s1cgKKjAvSw/F/LWumMZHOZle2omLRsGlZ8nPQ7ze2rWSzZmRkqYb/bxzGxTuc0kA2wdL3Hd5ayFsaoLLCb/CGd7aiYuWtnJyGSZBiqOha4fplx/+UFBgGfmBQWRbbwg4j0lZcfgutEyZkZK6TlX9nylZfjdnPJzqVRahOCsx+XO6Rq+uXcB+xYSMMh6XIrnJ7rhxX2Jx1s/SiDiuLHAvzcXTGGTtBbEddnxkt7F4mbsGRVGMTpeyM9PnM9NNN1edBqL87BpnAQhHV3uIo5jfs6q1Hkg6ee62vVxYrWbOT8gmwKv9dLW1Vdfjb/8y7/E+eefj+PHj+NDH/oQXvva1+KJJ57AiRMn4LouxsfHU7+zfv16nDhxInefH/jAB3DrrbfyrxuNBrZu3Yqbb74Zo6Ojub/3UpHv+7jttttw0003wXGc4b+glZGew7VJz9/a9GLN34c//IIdqpBeO3lqA4oNE80tl2DkyOMw4mj4L/w/pm8ufUD5/Q/Qb+v7d216MeePVZ48X9JQ8wyU7CzMU0mAmkVcivLLL5MMjVRAoXpay8+T7+eBJbYfBgZznZoF+v7JpfryMdkLd9cPOfTLTz9Pvj+4/DzkczSovJ6Vgw8q7x10PACYqEnlvVZ2/TAQkJSfDy8TLuKOBQaXQq/mldfTBPTQTl7SisxB3vF4ufuQnprp8vNi98MgqLmQ4wYEiMsPAOYaBJqU7GwQkklDo7wwygXOZcfiH2AsUACTd361kp2Cmtny8wSqeEMcueI9vxbXrmEYGKu4WGgl8yCPmY1poFNTgGyqQB6mbZNVzDf7PMBG3tc47++YpMTnPRvH5dL5AcE9Kidjco4EarL2CKptipSfi/M9KBTLMAxM1lzM8rWXnSd2bisdTwkZa0IqPQAlcOYl10KCuK/4YEh8xnaF3qmqZPqvtF6HN9XvxPz6HyXHk+bctUhAXBjFqX2Jm1Uci28jtisQz4/NtxdE6Pkhyo6VKj/fQJ2a5Lr53OEbKNLdAXKfrh8tYbbRx3669nRQ0Mtbt9xyC//7pZdeiquvvhrbt2/HZz7zGVQqlVPaZ6lUQqlUynzfcZyX1Qvcy+18XgzpOVyb9PytTS/0/EVnGP9bK5A04khDTYWiSL2m5KWm79+16cWYv+f7eLqhwxko0YkivijLEmFdkfLzImDCNNS9FOWU4yIQtUhQUH4AidQztEj5+RBAyo+pcM+wsTIAVaynpqL8nL60emHE4ZKqFJoHBQ0I7gHSQUF5kHhMcmqqtssE9xRIqS4SLAWor3NVCu7Jc2pG9jj/Vn6J83A3IFufw5ya4nopCupUl0ZMJAfUc87KrgeVqAOJ45clqas+MODO0AEQVTV2eV3x8vN+wNsjFAkKGhbilHe8ZPz5cJ7to9MPC/fUHBSYxGDdYk6/00n6IcByOwkKynOxD2vtIIbJiNBPhtfy/cC2U+2rGxi5TlRLSJxnrse8D5gmawkYySs/Z2PqK45XdZMPaAB1CFJSci04NXnP0GS7esnm57vU8ZTJ9Gyuf/3YzwDX/S2e3U7aochrwTAMVJ0EuKqcmoZhCBBcHbBVc23+gUVDEShUdixM18kcij12ObQd4CZmH3booKD/tzQ+Po7zzjsPzz77LDZs2ADP87CyspLaZnZ2VtmDU0tLS0tLS0tL69SkoeYZKBGcsTAE9XbpEkeVRKBXBFIV7Z2X9yKdcjLmOE7FF72isCTveOLYiySyA+qXZOYkYv0Pc9PPhwYFZc95UPm5NySsJd1TUz2fMngZXH6en2w+NqT3IVMGnCmgLRs3gyWZtTdyLgADrdK5A/cDFHWGkm0GlfzLYy8y54DaqZmdcxVcY2uKuitzrh9bU4Nc14kzlO2rGADOlJ8zMFjIqTn8A4o0JM7CPCbmjlSOSSg/9weUn4vp534O9BO3Y+BI3ob31OwkCeJ5H9KITk1V+wCefi6WxA9Yn8xdqerhyZ2aIQYCZ/ZBB4OaedePtdXI28+YUIavSuuu5wQFpaEmcWoeWurwsuwkSCfZzjAMoa+mp9wXO68TvTr6W34AfmTmnl+Ft/lQOzXJ/pL+o6qeoaZp8GOyD3vkQKHNtET9mAA1k5YFijYY9JiLNBBJblGSOKV1T82Xo1qtFvbt24eNGzfiiiuugOM4uOOOO/jPn376aRw6dAjXXnvtizhKLS0tLS0tLa2XlzTUPAMlvsSxwAGVxH58eRAuDSZOPTwl65ZT78swDA7Q8kAIgR/s78NLX4H8cnBxXEX6fLLjy5oUQAdQFNpmj2dbZsbxqDpH0YEJ5M97kZ6aEwJgy3Pacqcm79uocMIJziVgAEgu0FMzE+4jr8/X/CPwvfvQK5/Fv5ULUTM9X/OBFz9eHiB1h89nkZ6aogsOyOtZmO6pmVdeL0N31fnJPTxz79PMvA8oPw+zfQZFVU9yrvKunzh+IAvnqwKQZm7VokFBavgpw/n0NiJcC3jPyRyHqQhjrWz7AN5Ts5sfXgQk4HZFcBJn9sWCggJ1z0kmNg+JKznPqZmMXbUf7tTM6anJnZpeOmVcvDYbR8soOyb8MMbhZQL+EverFMhGx7PY9pRO1JGSzf9dSPV8VX1IIySgMwAs3zYjQmsAlTMUEJy29MMeufcm66spQs1BIJwdc5E7NdPbyInyWi9t/dIv/RLuuusuHDhwAN/61rfw/d///bAsC+95z3swNjaGf/fv/h1uvfVWfP3rX8eDDz6I9773vbj22mtzQ4K0tLS0tLS0tLROXhpqnuHqDXRqClAzxyFVdoc7NUUglJ+EXAwyAskLZx4IMQyDA9l8WCKXuw+HVLl9PuWgIMU5TtXTJdx5gHRY+TmQhox5xxOBA1AsJCcPionl58NKiRNolJ0r0zRSYUF5cyBDP9W1kcFnZu3ZFaB+VrFy8AIQlZWJMuWtY9NMylJze2qW0tdPtdkGGmrCjzegDDqMBpd5Z3uZZrdjKdvMqVnEZWqbBkzp2tRFgEgBdx7QK9K6Qrz/8kq4gbTjMRMUJNxTDPqpnlUj9Lq0cnok8u3kYCnZqSn01GSwK+/ZOGjcgJB+PiC8CEg+OMrtMQspKIhDuOwzhp3fMKfm5BCnJnMbr3aE9HPhg5qaBOBU52eaBrZMkETm4ysMaqqh36SYOp+zL57u3vUHtiJgHwSQnprk30jbiFPbJM5eH31fDfC507abLj8vyVBTSEAPePq5AqizVgoeg8Tp68c/VPBIKrvWS1tHjhzBe97zHpx//vl497vfjampKdx3332YmZkBAPzP//k/8da3vhXveMc7cMMNN2DDhg347Gc/+yKPWktLS0tLS0vr5SUdFHSGa6BT8yTLz4uAicJOzZzjASSoY6Xj8XRZlUqOia4fnoRTs0BPzVMsPweSl9thx3MsE7ZpIIjiAcE9Lg4MSEwGgGkJohYp9c5NPxcg6rCya/YenQeAxyoO7/uXD/3SEFxVcixD6fy1dyp9GxVQuiAkJvuz0OoHhSGqaimsH01DVOWYCoJWuZR9YE/NIa7PYZC46lowDLIOGBRbW0/N4c8XIHE0WqaRubfE1PYVHvQ0qPzc5444NfQb7JQW4VpekjWTeG1Ucy6mnw9qJcHmaZC7kl3jfmQAXr6Llp3fcjsfAAPpe0IZFCSUn7Nji9uxD0vYmP0ct+NUzcWzABboePLmNOXUzHNOlh00ewEavaTna946Blj6OdlO3mxUaFcQ0QdfXtATg81yGf5mIQGdKRhwnWWgntc/NorJv+3yB25aLy39wz/8w8Cfl8tl/OEf/iH+8A//8AUakZaWlpaWlpbW/3vSTs0zXKwcTiX24mUYyO1lVy2QDl4vD3fLZdPP85fOX/z4q/Hln78BG8fy0z/Zy17RwJMiSdxFwC6gdpSNVoodD0jcmnlgaVIoWTUVvfMARflyzr7KjsVf/Iv01CyaIF6kh2CxsJ1ibse87aoFypeLJGzLAHEQYGP7y5vzkQLl5+slp6bq/Fh6MlNRp6Zq7Bx4Deg5CQy/NoZh8A8xhoUqOZbJr0lRwJ0ntkaHOcEZXFKX9ibl0N0c5x2QvZezPTUTkNUf0lc0fW9l7z/u1OwGA52aclCQ8oOVigP5MT6oZygrC89z2or3xCAnMQkKypafMyjKSsHz3LHTNLV8gQJ3PwdGDnNqAmI5v8/7pqogP5vPrp/Me375eeJElY83xqG02o3KnJqpoCCefq76MGfw2hNdyTosSEtLS0tLS0tLS2vt0lDzDNfg8nNy+QYBuCJOzZECbsBMIvSAY07WXJy3fiT350ACCHJdYkXTzwuUyBbpqSm7u6wcUAAk854XhDQhOKRyQzzqxZ2FDDrn99RM9/1T7qNgT9RU+XnONo5l8jnIKzmWnb1FStmLhlSpwK3sfM07PwColwcDNtmpqdqVDDVV16ZesqWgp4JOTcVaF3s75h2PHTPZRr0+2TbL7XzAxsQAoOxkZioCuIEEHqn60JL90J6TFGqqP3hIxjAodX6YU5MFOEVxEuiSNwfDWjsUDQpicz4IalqmkW1dMeCYTHkfMA3rqcmcmitiUJBwfcYqDgf6IoiUxz7NHZgUauakg6fK/nMAqRgGFUT581lJOTVp+rm0mbgv5gyVwbSYXg8gA3c3K3pqsnEV6ZUsn58ppNfrvppaWlpaWlpaWlpaa5eGmme4BqWfM6hm5rg0gXQPyDxIVaSvYbUAGDwZsZe9PJdREXceUMypWZbgY0lVslrQGQokL8blAsE9eeAsWy49AMLRseX31BTclXmwa1iPS9W+BvRNTfpS5oDyzPEKOIkL9lct1FNzQH9Htr+iLmHVUpiquak1knedNwpuzSJQOm9c60aKOVFTrSRy73dy/sPKzwHgd991OX77+y/B1smq8udFoDRwEk7NAeXnjmVmnkODnIxM8n3j2ia/32cbBMTlrc/xIfcyA63NIX0+2bhXuoPnXH4uqI9Z7NkofnAyKCio7YVJUrzwbDRNQ9l/VB47c4QutjyEUcxbXMjPDzaepVb+vlKQuED5eVdMP884NQWomecMFY4Xx3EG7rIWKnPNPgeeLFxKtWbk56zqgy/2b5Z2amppaWlpaWlpaWmtXRpqnuEqkn4+yDUplo0X6SFYtK9hnvOuqBhoXGtPzXoBp1i2/Dy73ahUAjxoTocFIaWcmnnw4qQg3GCnZtmxuHMyDxrJqdh50FaEOHmgJzWmgu7KtZQvFyllPxnnK3NfzUigkB9P7qmp2MY0jRRozDveBqEFw1rKz2WoWajH5ZDj8RLuAXP1mnOn8UNXb8v9eZEPRMRjDgsGY9Av7/kiuxSV0E8OClJsw+7RucZgp+bwoKAkDIq7TJU9NWWnpvp+kOG8ajt5Doqkn+c5WtnnYWweZPjJ5mmplV8yzsa80Opz1ySQXX8qp6bcE1V0TrLyc9U6Fntq8rCnjFMzAZaq8npyvCS9PhCALPvga7Lm8t+ZXWXl9QPSzwu4ytla0E5NLS0tLS0tLS0trbVLQ80zXEXKz/OSzwGg4iaXuBhYGu6oAwYDryIa1lMzW75cpKdm0fLz4e6uQdD2rZduxM6ZGi7bMq78udhTswhwAAaDpXdfuQWXbB7Dq3dM5m7DgEFR92F+ue3wnppAAv6KrKlB+6qmQqoGOwv5vnJ6FhZptQAAv/LmC/DHP3wFbnrFeuXPRyT3b97ttb6AC3ODECiUHxSUXguqe2udXO5e4Drn94ksVspeREUgKgDsnK4DALZMqPvsZnpOFgTAqnkYVn4OJC7FuWaPbpMfnMWPpRhT2TH577JkemX6OXNqDig/B9JOTddWh3DJ0LbQvnLK3dn5sXmQ2wOw55To1JSPxz5QWGh5KagpP7ML9dQUQKQ/IMSp4iQp4xxqFnBqZoOCEojKXJpAMg+GYfAPQY6skPA3ln6ubmNSBGrS8nNPQ00tLS0tLS0tLS2ttUqnn5/hGpx+Tp2aAwAje/kDigGvwkFBA5yMRcReGnMdZwWdmkWCkGSnpmrsRdPPAeDnbzwPP3/jebk/L9JTc7Rsw7GM3FANUT9+/Vn48evPyv05QODL8dVevhOuXAxKp6Fm/hyw61O0B2teuXuR9OxM+MaActsjNKV40Nin6iW8+eINuT8XnZqDlvn6kQQ0rsWpOS47NRVAXU5bL+KozoWoBZyhRVXkAxEA2DFdw5d//rXYIMFZJrYOVruDnYwZqFmg/Fy1DXdqNgc7NW2LlKo3+4FyPg3DwGjZwWLb40E5SqgplRwXKhnPe3ZIc5D3LB4tO7BMA2EU5/YyHa84WOn4/Dkk95xkH9AstT1EFOZlnZpJT01Wmg3kBwUttT3+b1d+UFDAn9vqnprke62+z92V8pJha7PVCziwzD1ez0df+ABRPOZ0vYTnFtq8XUNSfp4dV6b8XNHXlj07W/38Dyy1tLS0tLS0tLS0tIpJOzXPcG0cU0MAIHGBDHZqCj01c9yHVdfibrQ8WGKZRgoOrrX8nAcFFSxfLhI0U6Snpmup3U9Zp+apQ9siwT2GYQwtDz0Z8Z6FBSFjXr/MsVRQUP6YRrhTs2D5eQGnbeF95Wwnlu6eLlAXxfnbbUg5NdXnV6SnZiYoSAH0puullGO00AcUeW7HAmE0RVW0/BwALtgwmnGJMmWcmnnl50OSzYFiTk0G6+YpiBz0PGPzlQcGGRhbZD1KB6TX83HnreECz4RMCX7OdmJPTLnMm0m+HrKzcLKegEgetiMHBbHy82bi1DSN7POYOzU7Hi8Hl+dhlLsrh/XUpD1Yu4nbUZ4GNk/Nvp/r1BwT0tY9wRlqCmNnYVnLdG2yICTVMy0TFKRYM+we7ejycy0tLS0tLS0tLa01S0PNM1Sf/bnrcOOF6/GJ97wydxsG68xB/R9FoJcDXgzDQN0dDKmAtKtureXnPD17SJgJU276uQBV8sBEpYCbM5N+vgaoOVkrVsI9VTs9EA5IEp2LlCUDg5yagst0wBywec8bt2OZKYCQ69RMlZ/n74v9TAVLmMQE9LXMpzimcADVXJcqLVdDIxF8Fk0/V43dscxUW4MiHwbkOSfHK2mQtZbQr3Ta+tpBMncy5jyrRJeiZRrKtVBzrZTDVjUuBvNmGz26Tf4cDAs5YiCOlZ+rYLIMD/POT3Rq5s3nybTKYPdE0bWXKT8XnJp5JeOsP3DXD9HoEfCnut/ZsaKYlKqr9pWUnwdC+bnCqemwcn6Pf29Q+flwp2aAvq9OSGdgeKWdDkJSOjVPoqemDgrS0tLS0tLS0tLSWrs01DxD9aptE/izH7sSO6ZrudsU6alZLeDUBJIXrUFgQixBX3tPzcFhOxmnZoHejXnuylSvxTz3U6XY8YpIdGoOuDRpgLFGqMncRGstBy/q1BwWFASk4UseOCs7JgdQg0DkyBCICsiQ+NSv36APCUSJpdR5kGpjCmqqwedYQci4LnW8Uy/nz4CsNcDIkm1ysLgWkCz37M1v2zA4jRwgH9KIH1Kozo998NDxiGNw0LORf2CQCxnJvpjrU1U2XgRcA+kAsVynZqZ9QP56fe/1O3D9OVN49VmTyp/LrQjkORVLxhnUlMdecy0+x8dXe8r9AGT9D+s5qQ4Kyp4fWy8N2q7AMLKtIth1SffUlIKJylmnpjzv40LAUapnqDLEqUD5OQ8K0uXnWlpaWlpaWlpaWmuVhpovYfGemgMgjFh6PTDNujwcUhUFpEU0LCio6hRzaopQLO/8igTIyE7NtZyfCAa7A4Ke5FCQtWjsJJ2aeS7Mkw4KGuBwK1KabBhG0p9zUA/PAhB16jQ5NYtq/ejwnpobR5OemnGsdn3Kpcmq9ghAOgF9bUFBp6+nJrl+g1tJFFHRFgPDgnuY0kA9u91ETQbJw8vPhzknWc9FpTO0YB/TYeE+gCr9PH/sP/Dqbfjbn7wms8b4uOTyc+m5m4KaobqnpmEYvAT9BIWaec/imfrg3rCqoCB1T03q1BQS5+XbZkQoZefl7jkQdbXr81C+TAI8vf4rHZ+HBAHqFgnZnpqq9gjJuLS0tLS0tLS0tLS01iYNNV/CKtvDoaZYej0IOhSBRilX5POcfm5bJneiAvkuTBGK5YFI8cUy7/xGSnbqpXgtPTVFh2Orl19imA4UWtt8MudZXt+/smPCRPJCnuvUrIpQcwAEL9CuoIiLFgCqpcGuXUAodx+wzXQBl9vplAg1cwGU4ABe6qghRtGxpqBmDkwuUg4uA661AmD2gcBa1nB2TKeWRi6PKW+7qQzUHFB+To+Z52gtAjVld2VuT80C5eeyq3wt12+Ya1fl1FSNi42bQc0ifW+B7DyMcOdkUKinJuvBqppPdl38MEaDPoezPTzJ8YIo5vvKQs2kF2gwxKlZcazUv8eq5zFbwwzIamlpaWlpaWlpaWmdujTUfAmLvTANhJopp2aB8t4Bzruq6AJbo1OTlVlO5ASHAOnehoPOkQGvPNBqmsbQHp6mmfQVHXa8k9GgvmmjQ8DLyeiWizfixgvX4T1XbVP+3DAMiAHoeZBRdJT5YX4/SeZIKtLSABjWq7UIILXoNoNSzU+fU3NQ2wAmMZE8ynFhiq7L5ban3Kao0hBVXcpeKP1cuufWuvZq/Nqc+n7WS6noueXnItRcQ+uDyVoarg0a+zqaci87JJNjJWAsb19lx0p9SJO3jkXYyvpAypLB2elqlQEMgZohcTKqzo89z4/THqV5TvDpkcFrj5efC05N1fEYvGc9PFXzWXOTD6pYv1MZMlbdZC7ZNtny8yQoSHwmqp6hhmGkPlhQlZ/zHp2dtT0PtLS0tLS0tLS0tLQAe/gmWmeqSgWcmpZpwLVNeEE02HnHnZpqWAKAl5kOO2YR/ei12zFZc/HWSzfmH69k80ThQfBs50wNs80eNo9XcrepOBZ6fjS0ZLVJIeRanahMeWCCHY9prRBu62QVf/Zjrx64TckCOrQaPu/8xBYD7QFA9rXnzuDsmRrecumG3G1GCjp7a4VCqob3fE2nn6/t+lUci/dbzNNI2cFVZ01iue0NXHtMiwOgJrtHB0kMJso7v5JtwjYNBFGcu82wPoonqyIu2mESATGw9vJzsbeh0qlZT8O1Qevzh67ehhgx3n3lVuXP5dYOuSn3FRcn/MFORrFdSF55smEYGC3bPI379Do11eXnyx0vN0EcyDo18z5AK1p+3vFC3rpDtY7ZuNlnCao5N00CGJu9AAu036m81g3DwFjFwVLbS3qiykFBtQRCBjT53DaN3DYRI2Ubq12161Mc+0qOc1tLS0tLS0tLS0tLq7g01HwJi5WWDwoKAsiL4kKrnwr6kVUr4tR0B7ufTkbjVRc/fM32gdtUC0LUP/6RKzDf7GPrZDV3m4pjYRn+QAAwWnFwjL6Uny6n5iAVCT05nUo7NfN7XDK1vXyoec66Ou74xdcNPF5xp+ZJlJ8X7Km51vksAjUB4NM/fQ2iePB6ee250/jm3gX8wJVbcrepl2wsBYOdW+ny8wE9SksEqhTtqblWp2aR0Khhyjo1C5SfD3RqDt5OLj8ftK+ZkRJ+/sbzBhxLgpoD5v0EczIWmPNGd4DLu+IIUPPUn1XjUqiZvC8GNf0wxlI7v9SbOzV5+XmOU1OAmoaRdTuKc7lEE9JV67hoX9iJqotmL+Dl53LPUIAA8DTUVPfUXG57CKhTc2B/6pRTM3/sy9qpqaWlpaWlpaWlpbVmaaj5EtblW8dx0aZRvGWA2xEAPvS9F+HZuRZ2TOVDP5bSLDtpRLESYGuAS+V0qpIKJso/3mjZyS0NZSq7w0tk0z0gn3/IKL7AF03cXotE9lIEhHQLQL1BqhdIPweAq3ZM4qFDK3jFxtHcbUYKgLPJFKBZ23yWFfBDJcMwMGwq/+RHrsATRxu4YvtE7ja1koWl9uD9rCsQTASQdbza9QemdRtG4nJbq0s4cdqe+pxP1VyYBsByWPLuP7Gf5FqcmqNlB5ZpIIyGQ6phkp89RVLLiwDgQSFj4jHX5NQUxlSyzcx9U3YsVF0C+E80uvR42blikHi2MaSnphR2JR/PtkzUXAttL8Riu5+7L5ZIL+5LpYmqg0NLg7dj12U+t/ycHKvRC3jg0KD2K+y57irmk4yJ7G9V99TU0tLS0tLS0tLSWrM01HwJa6zi4Iv/8bVDtxsGPQHgp27YiXPW1XHTK9bnbsN6ar4QLkYg7XKxTkM5MTAYJlROY3l9Ee2cqT/vxxBVtmIA5LwG9VdlOl0OPmAwJL715vPxc68/ZyBILOLUZK4yw8gGz5ysxLWwVlVdG1edNTlwm9oAFzVTEacmMLzHpWUaGC07HKqsvafm8GszTLZlYqpe4m65PCfjKQUFKcZlmgYmqi7vo7iWsRd2alZEELm254sId9fm1BwOWieqLjpeFydWGfTL3hszdG2ysKS8+ZwpEOY1UnYI1OROzez5lR0z1bLBzWu1UKB/LAPEeU5N8bot0DENguBs7eUFS4nl53EcvyAfEGppaWlpaWlpaWm9XKWDgrQAEFjwb165OVUyLIv11MwLgTjdEiHXWtLIgQRqDiqvF8HSWo/30zfsBADceGE+JD5/wwg+9s5L8cn3Du6FebpUJCgIAD72zkvxqm3jeP8bzlnT8eoFe2oCw52RCTjL349tmXjiQ2/CI79285pBXaWgU/N0Se7LqNKMADUHlcYX6T86XjDlvoi20bYPzO19qhL7auZBqqItGxhoNIz8DyimT1OwVF2GmkNg1lqPBwAjpdPk1BSgn6o0G0jaOuQF6QDZwKG8+110auZBPwZsFwekyRuGkYKNeXM+MSTdXTxe3vnZlsnX0xwFn4M+FGL3siokiIyJzFUQxQOD5LS0tLS0tLS0tLS0hks7NbUKi/XULOLyOx1KOTXXCjULlJ8X7eFZRL908/m49uwpXLVjsEMvL3zk+ZAINQfNw7uv3HpaxlW0p2YR1QsmbBeBg0X0QkPNQR8mMJVsC6/eMYFjKz1csGEkd7t6AQA8XnFwkP59rf1H//337MSrd0zgyiFrfZjWj5TxBBoA8p29VdfiQUhFnJqqEmemyZoINU/9fh8pWH4uAsRB63hDJcaJrjHwGSQ6NdfyPB4p2bzsPw8yysBSdX6ZHpc5168ISJbL+QeFRjHImNtTszY43Z3tB0iApQpGTtZIb07uJB5wbRgAzZvPsmOhZJvoBxFWOn5m/WhpaWlpaWlpaWlpFZeGmlqFxWDJWl2MRSW+XK61xyVzAg6CCUV7eBaRa5t4/fnr1rSP062S6NQ8TenugzRyGqFmEffh6VT5NJafF1GtVOx4n/7pa4cCvSJp8mMUVDnW2vvjlh0L150zvaZ9AFLP0AFBSGMVB4ttb+D58b6GBdoVAGt7vhQtPx8rWH7+784PcV9vI973hnNzt0n31Dz162eaBsarLpbaXi6EEx3CgNpFK/e4zHPEi0FBfVo6Lmu0UgxqpkrnCwJZFbBksJmlkavDfVwcXOxwqDnQqcmgppO/zUTVxYlGD8sdb2DAnZaWlpaWlpaWlpbWYOnyc63CqlLw8kIAMSD9crlWjlqkp+bpdGqeiSI9NYkGBV2cLtVKp6+c/4rtE6iXbFyzc2qtwyp2vG35oT7Ph15V8HimaQwFu8ydNsi1ykp31wqbT6eKlJ8DCfTKg3BAOqwlT2ICepE08txjSfNcpB/ooHlfVwH++N++cuCaEMHfWu/lcT6farC+abyS+lo1p2OSUzMPEottJvKCckYlSJwHbccqw522cvm5auyTBZyobD8J1BwcXAfkzyeQ7quppaWlpaWlpaWlpXXq0k5NrcJiDrAXIhkcSL8Ar9VNxntqDngZrQg9NV+O4Q3lF9ipmU4/X9uauWDDKB799ZtfMNj8M6/bCcMAbjhnEgcfuft5P96PX7cD/SDCa89du+Pxp2/YiYmqg+9/5ebcbRhge6Gcr0W0XnBqDnrGjBYYO3PfDerVOiW4BtfSJzhTfl7AWbjmnprivbXGa8jGlecs3Dye7pXqWtk5HS3bqTT5IufHtpW1YUyCqEWcmrnbDC8/z5aoZ8+POT5ZQvogkJz01Bze03a54+Vuo6WlpaWlpaWlpaU1XBpqahXWsF5hp1un8zistHxw2e4LW3L8QusFh5pCSfXpON4L6Z4t2Rb+4xvPhe/7OPjI83882zLxvtevLZiJ6azpGn75zRcM3IZBlTPVqTkI1HEgO2DsF28axTuv2IIrtue7HdM9NU99HsqOyft8AgNSryunxxkKpMvP1+qCZuAvb9ybx9Pl0aoPhlhbgCT9/NTHtGNKOl7ufA6HxJO14S7MyZoUJqSAu+Mn4dQs8u8kg6R5blUtLS0tLS0tLS0trWLSUFOrsC7fOo4fuHIrrj37hSkBHpaIfSr7KhoU9HJUKijoBXDb1kunr0RW6/SqCBh8obVuROipObC8d3hpuW2Z+Pi7Lht4PLH8fC3Q3TAMjJRtLNNS4rxxieXng8rri2i0YCl7EY1z52te+bnk1BwAGRnUXEt40fapWurrtfTUlAOMiiS3q+4J7tQs0FPztefO4Kodk3jPVdtyt+FOzbaGmlpaWlpaWlpaWlprkYaaWoVlWyY++s5LX7DjnU6n5uVbx2AawKVbxnK3qbov79vhRS0/zwkO0XpxxNx5Z1L5+TrBqWkOaP9wukrnRRffWuFuXYCaRSDcWkEkA7umsXYH8zCnZpGemkC6r+YgKD1SttHsBbk/3zE93BlKjjfcaSsCS9NQu1plN6fKqcl6ai60hqefz4yU8JmfuTb354AQTtTV5edaWlpaWlpaWv8/e/cd5kS1/gH8m2RTthd22UIHERQREAWBq4giRURQbNiw4VXBAl5/glcF9F5Rr125evUqeBUbqNhQ6SiyICC9l13q9mV7Szm/P5KZzCQz2Wxhswvfz/PsA5uczJw5mWQnb95zXqKGaD6faAOYM2cOOnbsCJvNhv79++OPP/7Qbbtz506MGzcOHTt2hMFgwOuvv950HaVG1ZiZmiPOS8X2mcNx00X62TM9AwQ8Twe2MEWhoCbI0IsNN8PkKWzTnKY5kyI7rxk9L60ivUHNQNNy+3gK6PRIi2nY/pRrajZ0jUtr7VmDsY26pmbjLR8gr6mp02+b2YTEKG/gT396fXCZ2TE+a5D6So62qfahu16mMvNV50sTZVDTEmbUXCs5mDU1fdfmbOiXQlLfWSiIiIiIiKhhms8nWh1ffPEFpk6dihkzZuDPP/9Er169MHz4cOTm5mq2r6ioQOfOnfHCCy8gJSWliXtLjUmvcEV9RQaoBg0AZydHY/69/bF0yqWNut/mwqrM1GyC9SmjrGF4/abeePPm3gxqNjMXdUrA+W1jMa6vfjGhpqbMOGzjkx2odH3fttg2cxiuu6Btg/bXyieY1RDKwj16Qbhoa5h8jA19PbSJC4c1zIi28frjFKwBXVoh0mIKuKyIMlszmKzIQJnZjw/vBgAYp/P8GY0GdFCsq9mQzNdwiwk2z98RvWrk0dYw1fuh9rqb6nOloc+fNFZFLBRERERERNQgzX6+7auvvoqJEyfirrvuAgC8++67+PHHH/Hhhx9i2rRpfu0vuugiXHTRRQCgeT+1HFeem4xnvt2Js1pHNdk+B53V8OrTzZVy+nlTFd0Z3SutSfZDdRMbbsZ3k/8S6m74+fHhv+BwQQXOaxM4a7q2bL9gKNe4LK1uWMacKqipk8loMBgQ45mmrpdZGKzYCDOWTLm01i9qgnFRxwRsmzk84HtCm7hwbDtWDCC4TNRA1evH9E5Dr3ZxaJ8QodumQ6tI7Mspc29LJytSWXjJYjICTu1txUdYkFVcFfB5iY+0yOtlamWitoryydRs8JR/qfo5MzWJiIiIiBqiWQc1a2pqsGnTJkyfPl2+zWg0YujQoUhPT2+0/VRXV6O6ulr+vaSkBABgt9tht5+6Dx3Stk/lPlqyxIgwrJ92GaKsYaox4rjVnd1uR5wF6N8xDonRNjgc+mvakRfPtfqp77idnRSBs5Mimny8i8urG7TPSEWRMYNw6m4rNtyMkxV2GITQbFOXcUuLsQTdNhgunaAgACRHe4N6BuHS3Ge0IhXcZNA+PknbWAtcTofuPtspihPp7U+ZPGkyuJfW0GoXG252BzVNBt0+xYeb5aCmCf59j7OpszxNhoaNe5TFHTg9WV5zys91vncRERER0emsWQc18/Pz4XQ6kZycrLo9OTkZe/bsabT9zJ49G7NmzfK7fcmSJYiI0M8maSxLly495fs4HXHc6sZoAG5JzQcALF58LMS9aVl4rtVPcx+33q2M2FtkgDl7BxYv3lHv7RRmGyGt5rJm9SrEWbXb9Y02IMxuQO7u9Vi8T397zW3cCo4bALgDe6uWL0O4xpXD8Sxvm8OZGVi8+GC991es2NbqFcsRqZGYW+kApEuYI5mHcE5b7XFzVrifG3tVJRYvXqy5P1eV9/nbuW0Lwo5vVt8vACNMcMGdoZmfm6O7rWBkV7j7nldS3qDtBKOiouKUbp+IiIiIKJSadVCzqUyfPh1Tp06Vfy8pKUG7du0wbNgwxMQ0rBhFIHa7HUuXLsWVV14Js7nh0ynPFBy3uuOY1Q/HrX5ayriNHClQ4xS6xW+CtWfpfvyWkwEAGDFsqN8ajJKratlOcx23qs3H8f2RnQCAq0cOh1WjiJtjaxa+ytwOAOje9SxcdcVZ9d6fZXcuvsrcAgAYOWIYojSm2Qsh8PdNy+B0CZzT7WygfK/muP1SuhX7d+QgITYaV101UHN/P5dsxYGdOQCAAf0vxGVnJ/m1eWHnauR4sjnbtEnDVVedX+/jyyutxuytq1HpNGD4iJGndDkQaeYJEREREdHpqFkHNRMTE2EymZCTk6O6PScnp1GLAFmtVlit/qk1ZrO5ST5YNtV+Tjcct7rjmNUPx61+WsK4NUa5oJgI79+PyHArzOaG/WltbuOWEhcp/z/CZoVRIwiXGOMtJmSzhDWo/x2TohX7s8CsU+RHWqPUZgkDyrXHLcFT5d4aoE+tor3PX4TVotkuKcYqBzWtYaYGHV9ijPt4hACqnECc9dQ9183pPCIiIiIiamzNuiSxxWJB3759sXz5cvk2l8uF5cuXY8CAASHsGRERkZuyUJBZp7BNS3a+onCTVkATAOIUhZfCGlgdvHtKNEadn4pxF7TVrVoOAHGeKuJ6FecBb6Vxa4A2CYrK7XpZu4lR3sCnXvGiYFnCjDi/bSwu6hiPGoerQdsiIiIiIjqTNeugJgBMnToV77//Pj766CPs3r0bDzzwAMrLy+Vq6HfccYeqkFBNTQ22bNmCLVu2oKamBsePH8eWLVtw4MCBUB0CERGdxlTVzxsY0GuO4iMt+O3/huCPJ6/QbROnqn7esKCfwWDAnFsuwCs39grYTqpgbw4w5nLgM8ASA/GRyqCmdhA1SRXUbPhz/N3kv2DB/QPROsZWe2NqlmbPno2LLroI0dHRaN26NcaOHYu9e/eq2lx22WUwGAyqn/vvvz9EPSYiIiI6/TTr6ecAcNNNNyEvLw/PPPMMsrOz0bt3b/z8889y8aAjR47AaPR+wDhx4gT69Okj//7yyy/j5ZdfxuDBg7Fq1aqm7j4REZ3mpKCmxWSEwXD6ZWoCQLuEwEXz4sIbYyJ/3ZzVOgpbjhahbbwNJ3O025ydHAUgcP+Va6DqBT+TFFPUzadwDUxqOVavXo1JkybhoosugsPhwJNPPolhw4Zh165diIz0LtkwceJEPPvss/LvTVGAkoiIiOhM0eyDmgAwefJkTJ48WfM+30Blx44dIYRogl4REREB0TZ3xmCgbMDTnTJbtbza2ST7fHZMD0wY0BHdWofjpz3abf5yViJ+euQSdEqM1G4A7xR1QH/6uTKo2RiZmtTy/fzzz6rf582bh9atW2PTpk249NJL5dsjIiIadR14IiIiIvJqEUFNIiKi5krK9Iu06q//eLpTrrVZXuNokn1GWMLQs20s7Ha7bhuDwYBzUmMCbkeZqWk1BxPUZKYm+SsuLgYAJCQkqG6fP38+PvnkE6SkpGD06NF4+umndbM1q6urUV1dLf8uVa+32+0Bz/OWQjqG0+FYQoVj2DAcv4YJ1fgZm9l3icJQvw5Jj6vv4093RqP2eSWdbnz9Nkwox+9U75NBTSIiogbonBiJaSO7o3OAbMAzSVl10wQ1G4tyTU29NVGVhYLMze3TFYWcy+XCo48+ikGDBuG8886Tb7/lllvQoUMHpKWlYdu2bXjiiSewd+9efP3115rbmT17NmbNmuV3+5IlS06raetLly4NdRdaPI5hw3D8Gqapx69X4CW2m1wJGtah0rY9G6knp5de7RZr3r7Y52a+fhsmFONXUVFxSrfPoCYREVEDGAwG3D+4S6i70WzoTeFurlpFWmA2GSCEO/tTCzM1KZBJkyZhx44dWLNmjer2++67T/5/z549kZqaiiuuuAIHDx5Ely7+7xnTp0/H1KlT5d9LSkrQrl07DBs2DDExgTOOWwK73Y6lS5fiyiuvhNlsrv0B5Idj2DAcv4YJ1fjNnt1kuwrKJQn165AwGFHatieij22HQbgauVenr7/8xf2v3WXE0qM9cWW77TAbG2n8ekyvvc1pIpTvf9LMk1OFQU0iIiJqsJdv6IUvNxzFpCFnhbordWIzm/DmzX3gcAmEW3SqnyuCmk4X1+0mr8mTJ+OHH37Ar7/+irZt2wZs279/fwDAgQMHNIOaVqsVVqvV73az2XxaBWBOt+MJBY5hw3D8Gqapx8/VzOJ/DQ1IGoSLQc068F0ZyGx0NV5Q8wx8HwjF+9+p3h+DmkRERNRg1/dti+v7Bg7qNFcje6YGvD/a6r1cKqrgWk4ECCHw0EMP4ZtvvsGqVavQqVOnWh+zZcsWAEBqauDzjYiIiIiCw6AmERERUQAGg3fK+cmKmhD2hJqLSZMm4dNPP8W3336L6OhoZGdnAwBiY2MRHh6OgwcP4tNPP8VVV12FVq1aYdu2bZgyZQouvfRSnH/++SHuPREREdHpgUFNIiIioiAxU5MA4J133gEAXHbZZarb586dizvvvBMWiwXLli3D66+/jvLycrRr1w7jxo3DU089FYLeEhEREZ2eGNQkIiIiqkVyjBU5JdW49OzEUHeFmgEhAq+t2q5dO6xevbqJekNERER0ZmJQk4iIiKgW30/+C9IPFWDkeVwPkYiIiIioOWBQk4iIiKgWrWNsGNO7Tai7QUREREREHsZQd4CIiIiIiIiIiIioLhjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqUcJC3QEiIiIiIiIiIqIms21m0+/z/BDs8zTHTE0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqURjUJCIiIiIiIiIiohaFQU0iIiIiIiIiIiJqUcJC3YFgzJkzB//617+QnZ2NXr164a233kK/fv102y9YsABPP/00MjMz0bVrV7z44ou46qqrmrDHRERERER1v44lIiIit1Wr3f8KA4B2wJo1gEGEtEsNsurruj9m5swG7nTbTMBlBNAL2DkbMLoauME6Kqs+pZtv9pmaX3zxBaZOnYoZM2bgzz//RK9evTB8+HDk5uZqtl+7di3Gjx+Pe+65B5s3b8bYsWMxduxY7Nixo4l7TkRERERnsrpexxIRERFR8Jp9puarr76KiRMn4q677gIAvPvuu/jxxx/x4YcfYtq0aX7t33jjDYwYMQKPP/44AOC5557D0qVL8fbbb+Pdd99t0r4TERER0ZmrrtexREREdPq6rNXMOj9m1VsN328oM13LK0/t9pt1ULOmpgabNm3C9OnT5duMRiOGDh2K9PR0zcekp6dj6tSpqtuGDx+ORYsW6e6nuroa1dXelNji4mIAQGFhIex2ewOOIDC73Y6KigoUFBTAbDafsv2cbjhudccxqx+OW/1w3OqH41Y/HDd9paWlAAAhWvA8rRasrtexoboebSp8rTYcx7BhOH4NE6rxq6lpsl0Fpayqfh0SBiMqKipgrKqBQTTx9N/TAMevYUI5fhXV7tfMqboebdZBzfz8fDidTiQnJ6tuT05Oxp49ezQfk52drdk+Oztbdz+zZ8/GrFmz/G7v1KlTPXpNRERE1HyUlpYiNjY21N0449T1OpbXo0RERHS6OlXXo806qNlUpk+frsrudLlcKCwsRKtWrWAwGE7ZfktKStCuXTscPXoUMTExp2w/pxuOW91xzOqH41Y/HLf64bjVD8dNnxACpaWlSEtLC3VXKAihuh5tKnytNhzHsGE4fg3D8WsYjl/DcPwaJpTjd6qvR5t1UDMxMREmkwk5OTmq23NycpCSkqL5mJSUlDq1BwCr1Qqr1aq6LS4urn6droeYmBi+MOuB41Z3HLP64bjVD8etfjhu9cNx08YMzdCp63VsqK9Hmwpfqw3HMWwYjl/DcPwahuPXMBy/hgnV+J3K69FmXf3cYrGgb9++WL58uXyby+XC8uXLMWDAAM3HDBgwQNUeAJYuXarbnoiIiIiosdXnOpaIiIiIgtesMzUBYOrUqZgwYQIuvPBC9OvXD6+//jrKy8vlKpJ33HEH2rRpg9mzZwMAHnnkEQwePBivvPIKRo0ahc8//xwbN27Ee++9F8rDICIiIqIzTG3XsURERERUf80+qHnTTTchLy8PzzzzDLKzs9G7d2/8/PPP8qLrR44cgdHoTTgdOHAgPv30Uzz11FN48skn0bVrVyxatAjnnXdeqA5Bl9VqxYwZM/ymGlFgHLe645jVD8etfjhu9cNxqx+OGzVntV3Hnkn4Wm04jmHDcPwahuPXMBy/huH4NczpPH4GcarqqhMRERERERERERGdAs16TU0iIiIiIiIiIiIiXwxqEhERERERERERUYvCoCYRERERERERERG1KAxqEhERERERERERUYvCoGaIzJkzBx07doTNZkP//v3xxx9/hLpLzcrMmTNhMBhUP927d5fvr6qqwqRJk9CqVStERUVh3LhxyMnJCWGPQ+PXX3/F6NGjkZaWBoPBgEWLFqnuF0LgmWeeQWpqKsLDwzF06FDs379f1aawsBC33norYmJiEBcXh3vuuQdlZWVNeBRNr7Zxu/POO/3OvxEjRqjanGnjNnv2bFx00UWIjo5G69atMXbsWOzdu1fVJpjX5ZEjRzBq1ChERESgdevWePzxx+FwOJryUJpUMON22WWX+Z1v999/v6rNmTZu77zzDs4//3zExMQgJiYGAwYMwE8//STfz3ONqGWo79/K9PR0XH755YiMjERMTAwuvfRSVFZWNkGPm5eGXGsIITBy5EjN65wzRV3Hr7CwEA899BC6deuG8PBwtG/fHg8//DCKi4ubsNehVdfPqAsWLED37t1hs9nQs2dPLF68uIl62jzVZfzef/99XHLJJYiPj0d8fDyGDh16xscE6hsj+fzzz2EwGDB27NhT28Fmrq7jV1RUhEmTJiE1NRVWqxVnn312i3wNM6gZAl988QWmTp2KGTNm4M8//0SvXr0wfPhw5ObmhrprzUqPHj2QlZUl/6xZs0a+b8qUKfj++++xYMECrF69GidOnMB1110Xwt6GRnl5OXr16oU5c+Zo3v/SSy/hzTffxLvvvov169cjMjISw4cPR1VVldzm1ltvxc6dO7F06VL88MMP+PXXX3Hfffc11SGERG3jBgAjRoxQnX+fffaZ6v4zbdxWr16NSZMmYd26dVi6dCnsdjuGDRuG8vJyuU1tr0un04lRo0ahpqYGa9euxUcffYR58+bhmWeeCcUhNYlgxg0AJk6cqDrfXnrpJfm+M3Hc2rZtixdeeAGbNm3Cxo0bcfnll2PMmDHYuXMnAJ5rRC1Fff5WpqenY8SIERg2bBj++OMPbNiwAZMnT4bReOZ9bGnItcbrr78Og8FwinvYvNV1/E6cOIETJ07g5Zdfxo4dOzBv3jz8/PPPuOeee5qw16FT18+oa9euxfjx43HPPfdg8+bNGDt2LMaOHYsdO3Y0cc+bh7qO36pVqzB+/HisXLkS6enpaNeuHYYNG4bjx483cc+bh/rGSDIzM/G3v/0Nl1xySRP1tHmq6/jV1NTgyiuvRGZmJhYuXIi9e/fi/fffR5s2bZq4541AUJPr16+fmDRpkvy70+kUaWlpYvbs2SHsVfMyY8YM0atXL837ioqKhNlsFgsWLJBv2717twAg0tPTm6iHzQ8A8c0338i/u1wukZKSIv71r3/JtxUVFQmr1So+++wzIYQQu3btEgDEhg0b5DY//fSTMBgM4vjx403W91DyHTchhJgwYYIYM2aM7mM4bkLk5uYKAGL16tVCiOBel4sXLxZGo1FkZ2fLbd555x0RExMjqqurm/YAQsR33IQQYvDgweKRRx7RfQzHzS0+Pl7897//5blG1ELU929l//79xVNPPdUUXWzWGnKtsXnzZtGmTRuRlZWleZ1zJmisa7Uvv/xSWCwWYbfbT0U3m5W6fka98cYbxahRo1S39e/fX/z1r389pf1srhr6Gd/hcIjo6Gjx0UcfnaouNmv1GT+HwyEGDhwo/vvf/9b6+e10V9fxe+edd0Tnzp1FTU1NU3XxlDnzvvIMsZqaGmzatAlDhw6VbzMajRg6dCjS09ND2LPmZ//+/UhLS0Pnzp1x66234siRIwCATZs2wW63q8awe/fuaN++PcdQISMjA9nZ2apxio2NRf/+/eVxSk9PR1xcHC688EK5zdChQ2E0GrF+/fom73NzsmrVKrRu3RrdunXDAw88gIKCAvk+jhvkqVgJCQkAgntdpqeno2fPnkhOTpbbDB8+HCUlJXIG3unOd9wk8+fPR2JiIs477zxMnz4dFRUV8n1n+rg5nU58/vnnKC8vx4ABA3iuEbUQ9flbmZubi/Xr16N169YYOHAgkpOTMXjwYNVsnTNFfa81KioqcMstt2DOnDlISUlpiq42S411rVZcXIyYmBiEhYWdim42G/X5jJqenq5qD7j/1p6Jn8ca4zN+RUUF7Ha73zXimaC+4/fss8+idevWZ0w2tZ76jN93332HAQMGYNKkSUhOTsZ5552H559/Hk6ns6m63WhO73fnZig/Px9Op1P1QQsAkpOTsWfPnhD1qvnp378/5s2bh27duiErKwuzZs3CJZdcgh07diA7OxsWiwVxcXGqxyQnJyM7Ozs0HW6GpLHQOtek+7Kzs9G6dWvV/WFhYUhISDijx3LEiBG47rrr0KlTJxw8eBBPPvkkRo4cifT0dJhMpjN+3FwuFx599FEMGjQI5513HgAE9brMzs7WPB+l+053WuMGALfccgs6dOiAtLQ0bNu2DU888QT27t2Lr7/+GsCZO27bt2/HgAEDUFVVhaioKHzzzTc499xzsWXLFp5rRC1Aff5WHjp0CIB7bfWXX34ZvXv3xv/+9z9cccUV2LFjB7p27XrK+91c1PdaY8qUKRg4cCDGjBlzqrvYrDXGtVp+fj6ee+6503p5IUl9PqPq/a09E//ONsZn/CeeeAJpaWl+geIzQX3Gb82aNfjggw+wZcuWJuhh81af8Tt06BBWrFiBW2+9FYsXL8aBAwfw4IMPwm63Y8aMGU3R7UbDoCY1SyNHjpT/f/7556N///7o0KEDvvzyS4SHh4ewZ3QmuPnmm+X/9+zZE+effz66dOmCVatW4Yorrghhz5qHSZMmYceOHWdk5kxD6I2b8sNSz549kZqaiiuuuAIHDx5Ely5dmrqbzUa3bt2wZcsWFBcXY+HChZgwYQJWr14d6m4RnfGmTZuGF198MWCb3bt312vbLpcLAPDXv/4Vd911FwCgT58+WL58OT788EPMnj27XtttTk7l+H333XdYsWIFNm/eXK/HtwSncvyUSkpKMGrUKJx77rmYOXNmg7dHFMgLL7yAzz//HKtWrYLNZgt1d5q90tJS3H777Xj//feRmJgY6u60SC6XC61bt8Z7770Hk8mEvn374vjx4/jXv/7FoCYFlpiYCJPJ5FelNScn54yeIlKbuLg4nH322Thw4ACuvPJK1NTUoKioSJWpwzFUk8YiJycHqamp8u05OTno3bu33MZ38WCHw4HCwkKOpULnzp2RmJiIAwcO4Iorrjijx23y5MnyYvtt27aVb09JSan1dZmSkuJXhU96LzxTx01L//79AQAHDhxAly5dzthxs1gsOOusswAAffv2xYYNG/DGG2/gpptu4rlGFEKPPfYY7rzzzoBtOnfuXK+/ldL1yrnnnqu6/ZxzzpGXIWrpTuX4rVixAgcPHvTLZB83bhwuueQSrFq1qgE9bx5O5fhJSktLMWLECERHR+Obb76B2WxuaLebvfp8Rk1JSeFnWo+GfMZ/+eWX8cILL2DZsmU4//zzT2U3m626jt/BgweRmZmJ0aNHy7dJX4qFhYVh7969Z1RiQH3Ov9TUVJjNZphMJvm2c845B9nZ2aipqYHFYjmlfW5MXFOziVksFvTt2xfLly+Xb3O5XFi+fDkGDBgQwp41b2VlZTh48CBSU1PRt29fmM1m1Rju3bsXR44c4RgqdOrUCSkpKapxKikpwfr16+VxGjBgAIqKirBp0ya5zYoVK+ByueTACgHHjh1DQUGB/GHrTBw3IQQmT56Mb775BitWrECnTp1U9wfzuhwwYAC2b9+u+pCxdOlSxMTE+H2APV3UNm5apGk0yvPtTBs3LS6XC9XV1TzXiEIsKSkJ3bt3D/hjsVjq9beyY8eOSEtLw969e1W379u3Dx06dDilx9VUTuX4TZs2Ddu2bcOWLVvkHwB47bXXMHfu3KY4vFPuVI4f4L5WHjZsGCwWC7777rszJmuuPp9RBwwYoGoPuP/Wnomfx+r7Gf+ll17Cc889h59//lm1/uuZpq7j1717d2zfvl31XnfNNddgyJAh2LJlC9q1a9eU3Q+5+px/gwYNwoEDB+RgMOD+W5uamtqiApoAWP08FD7//HNhtVrFvHnzxK5du8R9990n4uLiVFVaz3SPPfaYWLVqlcjIyBC///67GDp0qEhMTBS5ublCCCHuv/9+0b59e7FixQqxceNGMWDAADFgwIAQ97rplZaWis2bN4vNmzcLAOLVV18VmzdvFocPHxZCCPHCCy+IuLg48e2334pt27aJMWPGiE6dOonKykp5GyNGjBB9+vQR69evF2vWrBFdu3YV48ePD9UhNYlA41ZaWir+9re/ifT0dJGRkSGWLVsmLrjgAtG1a1dRVVUlb+NMG7cHHnhAxMbGilWrVomsrCz5p6KiQm5T2+vS4XCI8847TwwbNkxs2bJF/PzzzyIpKUlMnz49FIfUJGobtwMHDohnn31WbNy4UWRkZIhvv/1WdO7cWVx66aXyNs7EcZs2bZpYvXq1yMjIENu2bRPTpk0TBoNBLFmyRAjBc42opajtb+WxY8dEt27dxPr16+XbXnvtNRETEyMWLFgg9u/fL5566ilhs9nEgQMHQnEIIVWf8fOFM7T6uRB1H7/i4mLRv39/0bNnT3HgwAHV322HwxGqw2gytX1Gvf3228W0adPk9r///rsICwsTL7/8sti9e7eYMWOGMJvNYvv27aE6hJCq6/i98MILwmKxiIULF6rOtdLS0lAdQkjVdfx8nenVz+s6fkeOHBHR0dFi8uTJYu/eveKHH34QrVu3Fv/4xz9CdQj1xqBmiLz11luiffv2wmKxiH79+ol169aFukvNyk033SRSU1OFxWIRbdq0ETfddJPqYrayslI8+OCDIj4+XkRERIhrr71WZGVlhbDHobFy5UoBwO9nwoQJQgghXC6XePrpp0VycrKwWq3iiiuuEHv37lVto6CgQIwfP15ERUWJmJgYcdddd532f0wDjVtFRYUYNmyYSEpKEmazWXTo0EFMnDjR70uHM23ctMYLgJg7d67cJpjXZWZmphg5cqQIDw8XiYmJ4rHHHhN2u72Jj6bp1DZuR44cEZdeeqlISEgQVqtVnHXWWeLxxx8XxcXFqu2caeN29913iw4dOgiLxSKSkpLEFVdcIQc0heC5RtRS1Pa3MiMjQwAQK1euVD1u9uzZom3btiIiIkIMGDBA/Pbbb03c8+ahvuOndCYHNes6fnrXhwBERkZGaA6iiQX6jDp48GD5M4bkyy+/FGeffbawWCyiR48e4scff2ziHjcvdRm/Dh06aJ5rM2bMaPqONxN1Pf+UzvSgphB1H7+1a9eK/v37C6vVKjp37iz++c9/tsgvcAxCCHHq8kCJiIiIiIiIiIiIGhfX1CQiIiIiIiIiIqIWhUFNIiIiIiIiIiIialEY1CQiIiIiIiIiIqIWhUFNIiIiIiIiIiIialEY1CQiIiIiIiIiIqIWhUFNIiIiIiIiIiIialEY1CQiIiIiIiIiIqIWhUFNIiIiIiIiIiIialEY1CQiqieDwYBFixbV2u7pp5/Gfffd16j7XrVqFQwGA4qKihp1u7XZtWsX2rZti/Ly8ibdLxEREREREZESg5pE1CLdeeedMBgMfj8jRowIdddUsrOz8cYbb+Dvf/+7fFteXh4eeOABtG/fHlarFSkpKRg+fDh+//33EPbU32WXXYZHH31Uddu5556Liy++GK+++mpoOkVEREREfu68806MHTs21N0gImpSYaHuABFRfY0YMQJz585V3Wa1WkPUG23//e9/MXDgQHTo0EG+bdy4caipqcFHH32Ezp07IycnB8uXL0dBQUEIexq8u+66CxMnTsT06dMRFsY/I0RERERERNT0mKlJRC2WlOWo/ImPjwfgnhr+zjvvYOTIkQgPD0fnzp2xcOFC1eO3b9+Oyy+/HOHh4WjVqhXuu+8+lJWVqdp8+OGH6NGjB6xWK1JTUzF58mTV/fn5+bj22msRERGBrl274rvvvlPd//nnn2P06NHy70VFRfjtt9/w4osvYsiQIejQoQP69euH6dOn45prrgEAZGZmwmAwYMuWLarHGQwGrFq1SrX933//Heeffz5sNhsuvvhi7NixQ77v8OHDGD16NOLj4xEZGYkePXpg8eLF8v07duzAyJEjERUVheTkZNx+++3Iz88H4P62f/Xq1XjjjTfkLNjMzEwAwJVXXonCwkKsXr26tqeIiIiIiEJs9erV6Nevn3w9O23aNDgcDvn+hQsXomfPnvI18dChQ+WlhlatWoV+/fohMjIScXFxGDRoEA4fPhyqQyEiUmFQk4hOW08//TTGjRuHrVu34tZbb8XNN9+M3bt3AwDKy8sxfPhwxMfHY8OGDViwYAGWLVumClq+8847mDRpEu677z5s374d3333Hc466yzVPmbNmoUbb7wR27Ztw1VXXYVbb70VhYWFAIDCwkLs2rULF154odw+KioKUVFRWLRoEaqrqxt8jI8//jheeeUVbNiwAUlJSRg9ejTsdjsAYNKkSaiursavv/6K7du348UXX0RUVBQAd5D08ssvR58+fbBx40b8/PPPyMnJwY033ggAeOONNzBgwABMnDgRWVlZyMrKQrt27QAAFosFvXv3xm+//dbg/hMRERHRqXP8+HFcddVVuOiii7B161a88847+OCDD/CPf/wDAJCVlYXx48fj7rvvxu7du7Fq1Spcd911EELA4XBg7NixGDx4MLZt24b09HTcd999MBgMIT4qIiIPQUTUAk2YMEGYTCYRGRmp+vnnP/8phBACgLj//vtVj+nfv7944IEHhBBCvPfeeyI+Pl6UlZXJ9//444/CaDSK7OxsIYQQaWlp4u9//7tuHwCIp556Sv69rKxMABA//fSTEEKIzZs3CwDiyJEjqsctXLhQxMfHC5vNJgYOHCimT58utm7dKt+fkZEhAIjNmzfLt508eVIAECtXrhRCCLFy5UoBQHz++edym4KCAhEeHi6++OILIYQQPXv2FDNnztTs+3PPPSeGDRumuu3o0aMCgNi7d68QQojBgweLRx55RPPx1157rbjzzjt1x4aIiIiIms6ECRPEmDFj/G5/8sknRbdu3YTL5ZJvmzNnjoiKihJOp1Ns2rRJABCZmZl+jy0oKBAAxKpVq05l14mI6o2ZmkTUYg0ZMgRbtmxR/dx///3y/QMGDFC1HzBggJypuXv3bvTq1QuRkZHy/YMGDYLL5cLevXuRm5uLEydO4IorrgjYh/PPP1/+f2RkJGJiYpCbmwsAqKysBADYbDbVY8aNG4cTJ07gu+++w4gRI7Bq1SpccMEFmDdvXp3HQHmMCQkJ6Natm3yMDz/8MP7xj39g0KBBmDFjBrZt2ya33bp1K1auXClnjkZFRaF79+4AgIMHD9a63/DwcFRUVNS5v0RERETUdHbv3o0BAwaosisHDRqEsrIyHDt2DL169cIVV1yBnj174oYbbsD777+PkydPAnBfW955550YPnw4Ro8ejTfeeANZWVmhOhQiIj8MahJRixUZGYmzzjpL9ZOQkNAo2w4PDw+qndlsVv1uMBjgcrkAAImJiQAgXxgq2Ww2XHnllXj66aexdu1a3HnnnZgxYwYAwGh0vzULIeT20pTyurj33ntx6NAh3H777di+fTsuvPBCvPXWWwCAsrIyjB492i8ovH//flx66aW1bruwsBBJSUl17hMRERERNR8mkwlLly7FTz/9hHPPPRdvvfUWunXrhoyMDADA3LlzkZ6ejoEDB+KLL77A2WefjXXr1oW410REbgxqEtFpy/eCa926dTjnnHMAAOeccw62bt0qL4IOuIvuGI1GdOvWDdHR0ejYsSOWL19e7/136dIFMTEx2LVrV61tzz33XLkvUrBQ+U24smiQkvIYT548iX379snHCADt2rXD/fffj6+//hqPPfYY3n//fQDABRdcgJ07d6Jjx45+gWEpe9ViscDpdGrud8eOHejTp0+tx0VEREREoXPOOecgPT1d9WX577//jujoaLRt2xaA+0v5QYMGYdasWdi8eTMsFgu++eYbuX2fPn0wffp0rF27Fueddx4+/fTTJj8OIiItDGoSUYtVXV2N7Oxs1Y9UvRsAFixYgA8//BD79u3DjBkz8Mcff8iFgG699VbYbDZMmDABO3bswMqVK/HQQw/h9ttvR3JyMgBg5syZeOWVV/Dmm29i//79+PPPP+VMx2AYjUYMHToUa9askW8rKCjA5Zdfjk8++QTbtm1DRkYGFixYgJdeegljxowB4M4Svfjii/HCCy9g9+7dWL16NZ566inNfTz77LNYvnw5duzYgTvvvBOJiYkYO3YsAODRRx/FL7/8goyMDPz5559YuXKlHPCcNGkSCgsLMX78eGzYsAEHDx7EL7/8grvuuksOZHbs2BHr169HZmYm8vPz5QzUzMxMHD9+HEOHDg16LIiIiIjo1CouLvabhXPffffh6NGjeOihh7Bnzx58++23mDFjBqZOnQqj0Yj169fj+eefx8aNG3HkyBF8/fXXyMvLwznnnIOMjAxMnz4d6enpOHz4MJYsWYL9+/ervkAnIgqpUC/qSURUHxMmTBAA/H66desmhHAX8ZkzZ4648sorhdVqFR07dpQL6Ei2bdsmhgwZImw2m0hISBATJ04UpaWlqjbvvvuu6NatmzCbzSI1NVU89NBD8n0AxDfffKNqHxsbK+bOnSv/vnjxYtGmTRvhdDqFEEJUVVWJadOmiQsuuEDExsaKiIgI0a1bN/HUU0+JiooK+XG7du0SAwYMEOHh4aJ3795iyZIlmoWCvv/+e9GjRw9hsVhEv379VAWHJk+eLLp06SKsVqtISkoSt99+u8jPz5fv37dvn7j22mtFXFycCA8PF927dxePPvqovJD83r17xcUXXyzCw8MFAJGRkSGEEOL5558Xw4cPr8OzRURERESnkt618T333CNWrVolLrroImGxWERKSop44oknhN1uF0K4rzmHDx8ukpKShNVqFWeffbZ46623hBBCZGdni7Fjx4rU1FRhsVhEhw4dxDPPPCNf1xIRhZpBCEUeOhHRacJgMOCbb76RsxZDRQiB/v37Y8qUKRg/fnxI+9IYampq0LVrV3z66acYNGhQqLtDREREREREZyhOPyciOoUMBgPee+89OByOUHelURw5cgRPPvkkA5pEREREREQUUszUJKLTUnPJ1CQiIiIiIiKixhcW6g4QEZ0K/L6GiIiIiIiI6PTF6edERERERERERETUojCoSURERERERERERC0Kg5pERERERERERETUojCoSURnHIPBgJkzZ9b5cZmZmTAYDJg3b16j94mIiIiIQq++14mnyp133omOHTs2yb5ycnJw/fXXo1WrVjAYDHj99debZL9ERPXFoCYRhcS8efNgMBhgMBiwZs0av/uFEGjXrh0MBgOuvvrqEPSwcSxevBgGgwFpaWlwuVyh7g4RERFRk1Ne9xkMBthsNqSlpWH48OF48803UVpaGuou6lq7di1mzpyJoqKiRt3uZZddphqThIQEXHTRRfjwww8b7Zrx+eefx6JFi4JuP2XKFPzyyy+YPn06Pv74Y4wYMaJR+lGboqIi2Gw2GAwG7N69u0n2SUSnBwY1iSikbDYbPv30U7/bV69ejWPHjsFqtYagV41n/vz56NixI7KysrBixYpQd4eIiIgoZJ599ll8/PHHeOedd/DQQw8BAB599FH07NkT27ZtC3Hv3CorK/HUU0/Jv69duxazZs1q9KAmALRt2xYff/wxPv74Yzz99NNwOBy455578OSTTzbK9usa1FyxYgXGjBmDv/3tb7jtttvQvXv3RulHbRYsWACDwYCUlBTMnz+/SfZJRKcHBjWJKKSuuuoqLFiwAA6HQ3X7p59+ir59+yIlJSVEPWu48vJyfPvtt5g6dSr69OnTrC/SysvLQ90FIiIiOs2NHDkSt912G+666y5Mnz4dv/zyC5YtW4bc3Fxcc801qKysDHUXYbPZEBYW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tavftocOHSpfgwghxJQpU4TJZBJFRUVCCCG++eabWvsghP9107/+9S8BQGRkZKjaFRUVCZvNJp544gnV7Q8//LCIjIwUZWVlAfczePBg0b17d5GXlyfy8vLE7t27xcMPPywAiNGjR8vtJkyYIDp06CD/Huy1sBBCREZG1umaC4CYNGmS6rZHH31UABC//fabfFtpaano1KmT6Nixo3A6nUIIIVauXCkAiM6dO2teT+rp2bOnuPXWW+Xfn3zySZGYmCjsdrt82/79+4XRaBTXXnutvD+J9JwXFRWJ6Oho0b9/f1FZWanZRgj3ZwutMRk8eLAYPHiw/Hug46mqqvLrR0ZGhrBareLZZ5+VbwvmOn/v3r0CgHjnnXdU919zzTWiY8eOqr4TkT9OPyeikLvxxhtRWVmJH374AaWlpfjhhx90v01dvHgxTCYTHn74YdXtjz32GIQQ+Omnn+R2APza+WZdCiHw1VdfYfTo0RBCID8/X/4ZPnw4iouL8eeff9b5mD7//HMYjUaMGzdOvm38+PH46aefcPLkSfm2r776ComJifJi+UpSVuRXX30Fg8GAGTNm6Lapj/vvv9/vtvDwcPn/VVVVyM/Px8UXXwwA8ji4XC4sWrQIo0eP1swSlfp04403wmazqdYS/eWXX5Cfn89vnYmIiEglKipKroJeWFiIFStW4MYbb0Rpaal8bVZQUIDhw4dj//79OH78uOrx9913n+q66JJLLoHT6cThw4cBQM58/OGHHxplvcrY2FiMGTMGn332mTzjxel04osvvsDYsWMRGRlZ6zb27NmDpKQkJCUl4ZxzzsFbb72FUaNGBVwCKdhr4cayePFi9OvXT16qCHA/V/fddx8yMzOxa9cuVfsJEyaoricD2bZtG7Zv347x48fLt40fPx75+fn45Zdf5NsWLVoEl8uFZ555BkajOoQhPedLly5FaWkppk2bBpvNptmmPrSOx2q1yv1wOp0oKChAVFQUunXrpvrcEMx1/tlnn43+/furrpcLCwvx008/4dZbb21Q34nOBAxqElHIJSUlYejQofj000/x9ddfw+l04vrrr9dse/jwYaSlpSE6Olp1+znnnCPfL/1rNBr9ptl069ZN9XteXh6Kiorw3nvvyReV0s9dd90FwD1dqa6kNX8KCgpw4MABHDhwAH369EFNTQ0WLFggtzt48CC6desWcEH6gwcPIi0tTTUlpTF06tTJ77bCwkI88sgjSE5ORnh4OJKSkuR2xcXFANxjVlJSoppqpSUuLg6jR49WrWM0f/58tGnTBpdffnkjHgkRERG1dGVlZfL13YEDByCEwNNPP+13fSZ9yet7fda+fXvV7/Hx8QAgf5k8ePBgjBs3DrNmzUJiYiLGjBmDuXPnorq6ut59vuOOO+Q1IQFg2bJlyMnJwe233x7U4zt27IilS5di2bJlWLNmDbKzs/HDDz/I09y1BHst3FgOHz7sd/0caH9a15d6PvnkE0RGRqJz587y9bLNZkPHjh1VQb6DBw/CaDTi3HPP1d2WtBZ9bdendaV1PC6XC6+99hq6du0Kq9WKxMREJCUlYdu2bfL1stSn2q7zAfd59Pvvv8tjuWDBAtjt9qDPI6IzGdfUJKJm4ZZbbsHEiRORnZ2NkSNHNmrlxUCkCoa33XYbJkyYoNnm/PPPr9M29+/fjw0bNgAAunbt6nf//Pnz5bWNGovet7hOp1P3MVrfot94441Yu3YtHn/8cfTu3RtRUVFwuVwYMWJEvao93nHHHViwYAHWrl2Lnj174rvvvsODDz7o9y07ERERnbmOHTuG4uJinHXWWQC812d/+9vfdAvuSG0lJpNJs52URWkwGLBw4UKsW7cO33//PX755RfcfffdeOWVV7Bu3TpERUXVud/Dhw9HcnIyPvnkE1x66aX45JNPkJKSgqFDhwb1+MjIyKDbthTBZmkKIfDZZ5+hvLxcM1iZm5uLsrKyej0vgQS6ZtY6h7SO5/nnn8fTTz+Nu+++G8899xwSEhJgNBrx6KOP1ut6+eabb8aUKVMwf/58PPnkk/jkk09w4YUXagaTiUiNQU0iahauvfZa/PWvf8W6devkBd21dOjQAcuWLUNpaanqG+o9e/bI90v/ulwu+RtSyd69e1XbkyqjO53ORruonD9/PsxmMz7++GO/i6M1a9bgzTffxJEjR9C+fXt06dIF69evh91uh9ls1txely5d8Msvv/gtIK4kZSMUFRWpbq/Lt/UnT57E8uXLMWvWLDzzzDPy7fv371e1S0pKQkxMDHbs2FHrNkeMGIGkpCTMnz8f/fv3R0VFBb91JiIiIpWPP/4YAOQAZufOnQEAZrO50YN+F198MS6++GL885//xKeffopbb70Vn3/+Oe69917N9oGm/5pMJtxyyy2YN28eXnzxRSxatAgTJ07UDbA2hmCvhWvre13253v9rLe/uli9ejWOHTuGZ599Vs76lJw8eRL33XcfFi1ahNtuuw1dunSBy+XCrl270Lt3b83tSbOzduzY4RfwVoqPj/e7Xgbc18zSeVebhQsXYsiQIfjggw9UtxcVFamybIO5zgeAhIQEjBo1CvPnz8ett96K33//Ha+//npQfSE60zFVhoiahaioKLzzzjuYOXMmRo8erdvuqquugtPpxNtvv626/bXXXoPBYJArqEv/+lZP971AMJlMGDduHL766ivNIF1eXl6dj2X+/Pm45JJLcNNNN+H6669X/Tz++OMA3JUeAWDcuHHIz8/3Ox7Am1kwbtw4CCEwa9Ys3TYxMTFITEzEr7/+qrr/3//+d9D9li7ApW1KfMfMaDRi7Nix+P7777Fx40bdPgFAWFgYxo8fjy+//BLz5s1Dz54965z5SkRERKevFStW4LnnnkOnTp1w6623AgBat26Nyy67DP/5z3+QlZXl95j6XJ+dPHnS7xpHCpAFmoIurY2pFQgD3JXbT548ib/+9a8oKys75euGB3stDLj7rtfvuuzvjz/+QHp6unxbeXk53nvvPXTs2DHglPBApKnnjz/+uN/18sSJE9G1a1d5CvrYsWNhNBrx7LPP+mVCSs/psGHDEB0djdmzZ6OqqkqzDeAONK5btw41NTXybT/88AOOHj0adN9NJpPfubRgwQK/dV6Duc6X3H777di1axcef/xxmEwm3HzzzUH3h+hMxkxNImo29KZ/K40ePRpDhgzB3//+d2RmZqJXr15YsmQJvv32Wzz66KPyt7S9e/fG+PHj8e9//xvFxcUYOHAgli9fjgMHDvht84UXXsDKlSvRv39/TJw4Eeeeey4KCwvx559/YtmyZSgsLAz6GNavX48DBw5g8uTJmve3adMGF1xwAebPn48nnngCd9xxB/73v/9h6tSp+OOPP3DJJZegvLwcy5Ytw4MPPogxY8ZgyJAhuP322/Hmm29i//798lTw3377DUOGDJH3de+99+KFF17AvffeiwsvvBC//vor9u3bF3TfY2JicOmll+Kll16C3W5HmzZtsGTJEmRkZPi1ff7557FkyRIMHjwY9913H8455xxkZWVhwYIFWLNmjWr5gDvuuANvvvkmVq5ciRdffDHo/hAREdHp5aeffsKePXvgcDiQk5ODFStWYOnSpejQoQO+++47VYGXOXPm4C9/+Qt69uyJiRMnonPnzsjJyUF6ejqOHTuGrVu31mnfH330Ef7973/j2muvRZcuXVBaWor3338fMTExuOqqq3Qf17dvXwDA3//+d9x8880wm80YPXq0HOzs06cPzjvvPCxYsADnnHMOLrjggnqMTPCCvRaW+r5s2TK8+uqrSEtLQ6dOndC/f/867W/atGn47LPPMHLkSDz88MNISEjARx99hIyMDHz11Vf1WlKouroaX331Fa688kq/oj6Sa665Bm+88QZyc3Nx1lln4e9//zuee+45XHLJJbjuuutgtVqxYcMGpKWlYfbs2YiJicFrr72Ge++9FxdddBFuueUWxMfHY+vWraioqMBHH30EwH29vHDhQowYMQI33ngjDh48iE8++cRvHf5Arr76ajz77LO46667MHDgQGzfvh3z58/3y/QM5jpfMmrUKLRq1QoLFizAyJEj0bp16zqPK9EZqanLrRMRCSHE3LlzBQCxYcOGgO06dOggRo0apbqttLRUTJkyRaSlpQmz2Sy6du0q/vWvfwmXy6VqV1lZKR5++GHRqlUrERkZKUaPHi2OHj0qAIgZM2ao2ubk5IhJkyaJdu3aCbPZLFJSUsQVV1wh3nvvPblNRkaGACDmzp2r29+HHnpIABAHDx7UbTNz5kwBQGzdulUIIURFRYX4+9//Ljp16iTv+/rrr1dtw+FwiH/961+ie/fuwmKxiKSkJDFy5EixadMmuU1FRYW45557RGxsrIiOjhY33nijyM3N9TveGTNmCAAiLy/Pr2/Hjh0T1157rYiLixOxsbHihhtuECdOnNAcs8OHD4s77rhDJCUlCavVKjp37iwmTZokqqur/bbbo0cPYTQaxbFjx3THhYiIiE5P0nWf9GOxWERKSoq48sorxRtvvCFKSko0H3fw4EFxxx13iJSUFGE2m0WbNm3E1VdfLRYuXOi3bd9rypUrVwoAYuXKlUIIIf78808xfvx40b59e2G1WkXr1q3F1VdfLTZu3Kh6nNY1z3PPPSfatGkjjEajACAyMjJU97/00ksCgHj++eeDHpPBgweLHj161NpuwoQJokOHDqrbgr0W3rNnj7j00ktFeHi4ACAmTJgQcF8AxKRJk/xuP3jwoLj++utFXFycsNlsol+/fuKHH35QtZHGe8GCBbUe01dffSUAiA8++EC3zapVqwQA8cYbb8i3ffjhh6JPnz7CarWK+Ph4MXjwYLF06VLV47777jsxcOBAER4eLmJiYkS/fv3EZ599pmrzyiuviDZt2gir1SoGDRokNm7cKAYPHiwGDx4c1PFUVVWJxx57TKSmporw8HAxaNAgkZ6e7rcNIYK7zpc8+OCDAoD49NNPAw0fESkYhPDJeyYiImpkffr0QUJCApYvXx7qrhARERE1qjfeeANTpkxBZmamXxV2omBNmTIFH3zwAbKzsxERERHq7hC1CFxTk4iITqmNGzdiy5YtuOOOO0LdFSIiIqJGJYTABx98gMGDBzOgSfVWVVWFTz75BOPGjWNAk6gOuKYmERGdEjt27MCmTZvwyiuvIDU1FTfddFOou0RERETUKMrLy/Hdd99h5cqV2L59O7799ttQd4laoNzcXCxbtgwLFy5EQUEBHnnkkVB3iahFYVCTiIhOiYULF+LZZ59Ft27d8Nlnn+kuBE9ERETU0uTl5eGWW25BXFwcnnzySVxzzTWh7hK1QLt27cKtt96K1q1b480330Tv3r1D3SWiFoVrahIREREREREREVGLEtI1NX/99VeMHj0aaWlpMBgMWLRoUa2PWbVqFS644AJYrVacddZZmDdvnl+bOXPmoGPHjrDZbOjfvz/++OOPxu88ERERERERERERhURIg5rl5eXo1asX5syZE1T7jIwMjBo1CkOGDMGWLVvw6KOP4t5778Uvv/wit/niiy8wdepUzJgxA3/++Sd69eqF4cOHIzc391QdBhERERERERERETWhZjP93GAw4JtvvsHYsWN12zzxxBP48ccfsWPHDvm2m2++GUVFRfj5558BAP3798dFF12Et99+GwDgcrnQrl07PPTQQ5g2bVpQfXG5XDhx4gSio6NhMBjqf1BEREREISKEQGlpKdLS0mA0hvR7bKoHXo8SERFRS3eqr0dbVKGg9PR0DB06VHXb8OHD8eijjwIAampqsGnTJkyfPl2+32g0YujQoUhPT9fdbnV1Naqrq+Xfjx8/jnPPPbdxO09EREQUAkePHkXbtm1D3Q2qoxMnTqBdu3ah7gYRERFRg52q69EWFdTMzs5GcnKy6rbk5GSUlJSgsrISJ0+ehNPp1GyzZ88e3e3Onj0bs2bN8rv9v//9LyIiIhqn80RERERNqKKi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wAENGDBAL7zwgqQrtwqNGzeuUlL4k08+0V133VVt26dPn6500QsAAADPpKenq6ysTB06dFCzZs3UrFkzrVixQq+++qrOnj173WvT6q5bAwICXK4rJffXllf/s7/CuHHjdPr0af3+97/Xzp07tXPnTknfTiRU3b6Dg4P1wAMPaNWqVbp06ZLWrFmjH/7wh9fdBgBqiqQmgCZrx44dlZZ79uwpSerZs6f27dunkpIS5/r33ntPAQEBiouLU8uWLdW5c2dlZmZ6vP9u3bopPDxcBw8erLZur169nH2pSBaeOHHCuf7qSYOudvVr/Prrr/Xxxx87X6MkxcbGas6cOXrttdf04x//WL///e8lSbfddps+/PBDde7cuVJiuOKCNjg4WJcvX3a739zcXN16663Vvi4AAABcX1lZmf70pz/pV7/6lcs/m/ft26cOHTpo7dq16tOnT5XXpb1791Z5eXmVkzi2a9dO586dc7nurera8mpFRUXKy8vTwoULNWLECPXs2bPSP+v79OmjnJwc5zPl3XnwwQf1r3/9Sy+++KLKysp07733VrtvAKgJkpoAfFZpaakKCgpcvipm75akDRs2aOXKlfr444+VmpqqXbt2OScCmjJlikJCQjRt2jTl5uZq27ZtevjhhzV16lRFRUVJujIL5K9+9Sv95je/0SeffKIPPvjAOdKxJgICApSYmKh3333XWVZUVKThw4frz3/+s/bv36/8/Hxt2LBBv/jFL3TPPfdIuvIf70GDBum5557ToUOHtH37di1cuNDtPp5++mllZmYqNzdX06dPV2RkpMaPHy9JevTRR/Xmm28qPz9fH3zwgbZt2+ZMeM6dO1enT5/W5MmT9f777+vIkSN68803NWPGDGcis3Pnzs6ZK0+dOuUcgXrs2DF98cUXSkxMrHEsAAAA4N4//vEPff3115o5c6ZuueUWl6+JEycqPT1dqampWrt2rVJTU3Xo0CHnJJDSlWu2adOm6Yc//KE2bdqk/Px8ZWVl6a9//askKT4+XmFhYVqwYIGOHDmiNWvW1OixR61bt1bbtm318ssv6/Dhw3rrrbeUnJzsUmfy5MmKjo7W+PHj9d577+no0aN69dVXlZ2d7azTs2dPDRo0SD/5yU80efLkGt8RBQDVsvqhngDgiWnTphlJlb7i4uKMMVcm8Vm+fLkZOXKksdvtpnPnzs4JdCrs37/fDBs2zISEhJg2bdqYWbNmmXPnzrnUeemll0xcXJwJCgoyMTEx5uGHH3auk2Q2btzoUj8iIsKsWrXKubx582Zzww03mMuXLxtjjLl48aKZP3++ue2220xERIQJCwszcXFxZuHChebChQvO7Q4ePGgSEhJMaGio6devn9m6davbiYL+/ve/m5tvvtkEBwebgQMHukw4NG/ePNOtWzdjt9tNu3btzNSpU82pU6ec6z/++GMzYcIE06pVKxMaGmp69OhhHn30UVNeXm6MufLQ+UGDBpnQ0FAjyflA92effdYkJSXV4mgBAACgKt/97nfN2LFj3a7buXOnkWT27dtnXn31VdOvXz8THBxsIiMjzb333uus980335jHHnvMxMTEmODgYNO9e3ezcuVK5/qNGzea7t27m9DQUPPd737XvPzyy5UmCurbt2+l/WdkZJiePXsau91u+vTpY7KysipdAx87dsxMnDjRhIeHm7CwMDNgwACzc+dOl3bS09ONJLNr1y4PowQAldmMuebhGgDQBNhsNm3cuNE5atEqxhjFx8frsccecz743ZddunRJN910k9asWaPBgwdb3R0AAAD4gGeeeUYbNmxwmbgSAOqK288BwItsNptefvlllZWVWd2VenH8+HEtWLCAhCYAAACqdf78eeXm5uq3v/2tHn74Yau7A6CJYaQmgCapsYzUBAAAAPzV9OnTtXbtWo0fP15r1qxRYGCg1V0C0ISQ1AQAAAAAAADgU7j9HAAAAAAAAIBPIakJAAAAAAAAwKeQ1AQAAAAAAADgU0hqAgAAAAAAAPApJDUBAAAAAAAA+BSSmgAAAAAAAAB8CklNAAAAAAAAAD6FpCYAAAAAAAAAn/L/3E1P3ZUNeMwAAAAASUVORK5CYII=",
+ "text/plain": [
+ "