From bc2e9e9a6cb1f8cf0e1937e779b4cef5e0b7e28f Mon Sep 17 00:00:00 2001 From: Jiga228 Date: Tue, 14 Jul 2026 11:53:44 +0700 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=BE=D1=88=D0=B8=D1=8E=D0=BA=D1=83=20=D0=BF=D0=B0?= =?UTF-8?q?=D1=80=D1=81=D0=B8=D0=BD=D0=B3=D0=B0.=20=D0=94=D0=BE=D0=B1?= =?UTF-8?q?=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=BE=D1=82=D0=B4=D0=B5=D0=BB=D1=8C?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20=D0=B0=D1=81=D1=81=D0=B5=D1=82=20=D0=B4?= =?UTF-8?q?=D0=BB=D1=8F=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2.=20=D0=94?= =?UTF-8?q?=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20=D0=B2=D1=8B=D0=B2=D0=BE?= =?UTF-8?q?=D0=B4=20=D1=82=D0=B5=D1=81=D1=82=D0=BE=D0=B2=20=D0=B2=20=D1=84?= =?UTF-8?q?=D0=B0=D0=B9=D0=BB=20answer.txt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + README.txt | 8 +- TitanicAI.cpp | 68 +++--- TitanicAI.sln.DotSettings.user | 2 + test.txt | 418 +++++++++++++++++++++++++++++++++ test.xlsx | Bin 0 -> 30820 bytes 6 files changed, 459 insertions(+), 38 deletions(-) create mode 100644 TitanicAI.sln.DotSettings.user create mode 100644 test.txt create mode 100644 test.xlsx diff --git a/.gitignore b/.gitignore index 8ec79ac..8faa802 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ .idea/ x64/ +answer.txt \ No newline at end of file diff --git a/README.txt b/README.txt index b79bfaf..39c2b05 100644 --- a/README.txt +++ b/README.txt @@ -1,10 +1,12 @@ # TitanicAI -Эта неросеть предсказывает смерть пасажиров Титаника с вероятностью 0.76 +Эта неросеть предсказывает смерть пасажиров Титаника с точностью 0.67 В файле train.txt находится ассет для обучет +В файле test.txt находится ассет для одемонстрации -В файле TitanicAI.cpp константа count_train_items указыает на количество ассетов для обучения. Остальные пойдут на тесты. -Скорость обучения решулируется во втором параметре конструктора +Скорость/Точность обучения решулируется во втором параметре конструктора Вектора в ассете: Survived|Pclass|Sex|Age|Relatives|Fare|Embarked + +Задача и ассеты отсюда https://www.kaggle.com/competitions/titanic/ \ No newline at end of file diff --git a/TitanicAI.cpp b/TitanicAI.cpp index 33beea0..ac26b89 100644 --- a/TitanicAI.cpp +++ b/TitanicAI.cpp @@ -16,7 +16,7 @@ protected: } public: - TitanicAI() : NeuronsNetworkBase(count_neurons, 0.01) + TitanicAI() : NeuronsNetworkBase(count_neurons, 0.0000001) {} double call(const data_item& data) override @@ -48,61 +48,59 @@ public: } }; -constexpr size_t count_train_items = 700; -std::vector train_data; +void test(TitanicAI& ai) +{ + std::ifstream file("test.txt"); + std::vector test_data; + + data_item item; + while (file >> item[0] >> item[1] >> item[2] >> item[3] >> item[4] >> item[5] >> item[6]) + { + test_data.push_back(item); + } + + std::ofstream answer("answer.txt"); + + answer << "PassengerId,Survived\n"; + for (auto& i : test_data) + { + answer << static_cast(i[0]) << ',' << (ai.call(i) > 0.5) << '\n'; + } +} int main(int argc, char* argv[]) { TitanicAI ai; std::ifstream file("train.txt"); - while (file.eof() == false) + std::vector train_data; + data_item item; + while (file >> item[0] >> item[1] >> item[2] >> item[3] >> item[4] >> item[5] >> item[6]) { - data_item item{}; - - std::string vec; - file >> vec; - if (vec.empty() == false) - item[0] = std::stod(vec); - file >> vec; - if (vec.empty() == false) - item[1] = std::stod(vec); - file >> vec; - if (vec.empty() == false) - item[2] = std::stod(vec); - file >> vec; - if (vec.empty() == false) - item[3] = std::stod(vec); - file >> vec; - if (vec.empty() == false) - item[4] = std::stod(vec); - file >> vec; - if (vec.empty() == false) - item[5] = std::stod(vec); - if (vec.empty() == false) - item[6] = std::stod(vec); - train_data.push_back(item); } + file.close(); - for (size_t i = 0; i < count_train_items; ++i) + for (auto& i : train_data) { - ai.train(train_data[i][0] - ai.call(train_data[i]), train_data[i]); + ai.train(i[0] - ai.call(i), i); } size_t score = 0; - const size_t max_score = train_data.size() - count_train_items; - constexpr double delta = 0.001; - for (size_t i = count_train_items + 1; i < train_data.size(); ++i) + const size_t max_score = train_data.size(); + for (auto& i : train_data) { - double activate_result = ai.call(train_data[i]); + constexpr double delta = 0.001; + double activate_result = ai.call(i); bool is_dead = activate_result + delta > 0.5; - if (is_dead == static_cast(train_data[i][0])) + if (is_dead == static_cast(i[0])) ++score; } std::cout << "Accuracy: " << score << '/' << max_score << " (float: " << (static_cast(score) / static_cast(max_score)) << ")\n"; std::cout << "Masses: "; ai.print_masses(); + test(ai); + return 0; } diff --git a/TitanicAI.sln.DotSettings.user b/TitanicAI.sln.DotSettings.user new file mode 100644 index 0000000..c7b6416 --- /dev/null +++ b/TitanicAI.sln.DotSettings.user @@ -0,0 +1,2 @@ + + ForceIncluded \ No newline at end of file diff --git a/test.txt b/test.txt new file mode 100644 index 0000000..725e786 --- /dev/null +++ b/test.txt @@ -0,0 +1,418 @@ +892 3 1 34.5 0 7.8292 3 +893 3 0 47 1 7 2 +894 2 1 62 0 9.6875 3 +895 3 1 27 0 8.6625 2 +896 3 0 22 2 12.2875 2 +897 3 1 14 0 9.225 2 +898 3 0 30 0 7.6292 3 +899 2 1 26 2 29 2 +900 3 0 18 0 7.2292 1 +901 3 1 21 2 24.15 2 +902 3 1 28 0 7.8958 2 +903 1 1 46 0 26 2 +904 1 0 23 1 82.2667 2 +905 2 1 63 1 26 2 +906 1 0 47 1 61.175 2 +907 2 0 24 1 27.7208 1 +908 2 1 35 0 12.35 3 +909 3 1 21 0 7.225 1 +910 3 0 27 1 7.925 2 +911 3 0 45 0 7.225 1 +912 1 1 55 1 59.4 1 +913 3 1 9 1 3.1708 2 +914 1 0 28 0 31.6833 2 +915 1 1 21 1 61.3792 1 +916 1 0 48 4 262.375 1 +917 3 1 50 1 14.5 2 +918 1 0 22 1 61.9792 1 +919 3 1 22.5 0 7.225 1 +920 1 1 41 0 30.5 2 +921 3 1 28 2 21.6792 1 +922 2 1 50 1 26 2 +923 2 1 24 2 31.5 2 +924 3 0 33 3 20.575 2 +925 3 0 28 3 23.45 2 +926 1 1 30 1 57.75 1 +927 3 1 18.5 0 7.2292 1 +928 3 0 28 0 8.05 2 +929 3 0 21 0 8.6625 2 +930 3 1 25 0 9.5 2 +931 3 1 28 0 56.4958 2 +932 3 1 39 1 13.4167 1 +933 1 1 28 0 26.55 2 +934 3 1 41 0 7.85 2 +935 2 0 30 0 13 2 +936 1 0 45 1 52.5542 2 +937 3 1 25 0 7.925 2 +938 1 1 45 0 29.7 1 +939 3 1 28 0 7.75 3 +940 1 0 60 0 76.2917 1 +941 3 0 36 2 15.9 2 +942 1 1 24 1 60 2 +943 2 1 27 0 15.0333 1 +944 2 0 20 3 23 2 +945 1 0 28 5 263 2 +946 2 1 28 0 15.5792 1 +947 3 1 10 5 29.125 3 +948 3 1 35 0 7.8958 2 +949 3 1 25 0 7.65 2 +950 3 1 28 1 16.1 2 +951 1 0 36 0 262.375 1 +952 3 1 17 0 7.8958 2 +953 2 1 32 0 13.5 2 +954 3 1 18 0 7.75 2 +955 3 0 22 0 7.725 3 +956 1 1 13 4 262.375 1 +957 2 0 28 0 21 2 +958 3 0 18 0 7.8792 3 +959 1 1 47 0 42.4 2 +960 1 1 31 0 28.5375 1 +961 1 0 60 5 263 2 +962 3 0 24 0 7.75 3 +963 3 1 21 0 7.8958 2 +964 3 0 29 0 7.925 2 +965 1 1 28.5 0 27.7208 1 +966 1 0 35 0 211.5 1 +967 1 1 32.5 0 211.5 1 +968 3 1 28 0 8.05 2 +969 1 0 55 2 25.7 2 +970 2 1 30 0 13 2 +971 3 0 24 0 7.75 3 +972 3 1 6 2 15.2458 1 +973 1 1 67 1 221.7792 2 +974 1 1 49 0 26 2 +975 3 1 28 0 7.8958 2 +976 2 1 28 0 10.7083 3 +977 3 1 28 1 14.4542 1 +978 3 0 27 0 7.8792 3 +979 3 0 18 0 8.05 2 +980 3 0 28 0 7.75 3 +981 2 1 2 2 23 2 +982 3 0 22 1 13.9 2 +983 3 1 28 0 7.775 2 +984 1 0 27 3 52 2 +985 3 1 28 0 8.05 2 +986 1 1 25 0 26 1 +987 3 1 25 0 7.7958 2 +988 1 0 76 1 78.85 2 +989 3 1 29 0 7.925 2 +990 3 0 20 0 7.8542 2 +991 3 1 33 0 8.05 2 +992 1 0 43 1 55.4417 1 +993 2 1 27 1 26 2 +994 3 1 28 0 7.75 3 +995 3 1 26 0 7.775 2 +996 3 0 16 2 8.5167 1 +997 3 1 28 0 22.525 2 +998 3 1 21 0 7.8208 3 +999 3 1 28 0 7.75 3 +1000 3 1 28 0 8.7125 2 +1001 2 1 18.5 0 13 2 +1002 2 1 41 0 15.0458 1 +1003 3 0 28 0 7.7792 3 +1004 1 0 36 0 31.6792 1 +1005 3 0 18.5 0 7.2833 3 +1006 1 0 63 1 221.7792 2 +1007 3 1 18 1 14.4542 1 +1008 3 1 28 0 6.4375 1 +1009 3 0 1 2 16.7 2 +1010 1 1 36 0 75.2417 1 +1011 2 0 29 1 26 2 +1012 2 0 12 0 15.75 2 +1013 3 1 28 1 7.75 3 +1014 1 0 35 1 57.75 1 +1015 3 1 28 0 7.25 2 +1016 3 1 28 0 7.75 3 +1017 3 0 17 1 16.1 2 +1018 3 1 22 0 7.7958 2 +1019 3 0 28 2 23.25 3 +1020 2 1 42 0 13 2 +1021 3 1 24 0 8.05 2 +1022 3 1 32 0 8.05 2 +1023 1 1 53 0 28.5 1 +1024 3 0 28 4 25.4667 2 +1025 3 1 28 1 6.4375 1 +1026 3 1 43 0 7.8958 2 +1027 3 1 24 0 7.8542 2 +1028 3 1 26.5 0 7.225 1 +1029 2 1 26 0 13 2 +1030 3 0 23 0 8.05 2 +1031 3 1 40 7 46.9 2 +1032 3 0 10 7 46.9 2 +1033 1 0 33 0 151.55 2 +1034 1 1 61 4 262.375 1 +1035 2 1 28 0 26 2 +1036 1 1 42 0 26.55 2 +1037 3 1 31 3 18 2 +1038 1 1 28 0 51.8625 2 +1039 3 1 22 0 8.05 2 +1040 1 1 28 0 26.55 2 +1041 2 1 30 2 26 2 +1042 1 0 23 1 83.1583 1 +1043 3 1 28 0 7.8958 1 +1044 3 1 60.5 0 51 2 +1045 3 0 36 2 12.1833 2 +1046 3 1 13 6 31.3875 2 +1047 3 1 24 0 7.55 2 +1048 1 0 29 0 221.7792 2 +1049 3 0 23 0 7.8542 2 +1050 1 1 42 0 26.55 2 +1051 3 0 26 2 13.775 2 +1052 3 0 28 0 7.7333 3 +1053 3 1 7 2 15.2458 1 +1054 2 0 26 0 13.5 2 +1055 3 1 28 0 7 2 +1056 2 1 41 0 13 2 +1057 3 0 26 2 22.025 2 +1058 1 1 48 0 50.4958 1 +1059 3 1 18 4 34.375 2 +1060 1 0 28 0 27.7208 1 +1061 3 0 22 0 8.9625 2 +1062 3 1 28 0 7.55 2 +1063 3 1 27 0 7.225 1 +1064 3 1 23 1 13.9 2 +1065 3 1 28 0 7.2292 1 +1066 3 1 40 6 31.3875 2 +1067 2 0 15 2 39 2 +1068 2 0 20 0 36.75 2 +1069 1 1 54 1 55.4417 1 +1070 2 0 36 3 39 2 +1071 1 0 64 2 83.1583 1 +1072 2 1 30 0 13 2 +1073 1 1 37 2 83.1583 1 +1074 1 0 18 1 53.1 2 +1075 3 1 28 0 7.75 3 +1076 1 0 27 2 247.5208 1 +1077 2 1 40 0 16 2 +1078 2 0 21 1 21 2 +1079 3 1 17 2 8.05 2 +1080 3 0 28 10 69.55 2 +1081 2 1 40 0 13 2 +1082 2 1 34 1 26 2 +1083 1 1 28 0 26 2 +1084 3 1 11.5 2 14.5 2 +1085 2 1 61 0 12.35 3 +1086 2 1 8 2 32.5 2 +1087 3 1 33 0 7.8542 2 +1088 1 1 6 2 134.5 1 +1089 3 0 18 0 7.775 2 +1090 2 1 23 0 10.5 2 +1091 3 0 28 0 8.1125 2 +1092 3 0 28 0 15.5 3 +1093 3 1 0.33 2 14.4 2 +1094 1 1 47 1 227.525 1 +1095 2 0 8 2 26 2 +1096 2 1 25 0 10.5 2 +1097 1 1 28 0 25.7417 1 +1098 3 0 35 0 7.75 3 +1099 2 1 24 0 10.5 2 +1100 1 0 33 0 27.7208 1 +1101 3 1 25 0 7.8958 2 +1102 3 1 32 0 22.525 2 +1103 3 1 28 0 7.05 2 +1104 2 1 17 0 73.5 2 +1105 2 0 60 1 26 2 +1106 3 0 38 6 7.775 2 +1107 1 1 42 0 42.5 2 +1108 3 0 28 0 7.8792 3 +1109 1 1 57 2 164.8667 2 +1110 1 0 50 2 211.5 1 +1111 3 1 28 0 8.05 2 +1112 2 0 30 1 13.8583 1 +1113 3 1 21 0 8.05 2 +1114 2 0 22 0 10.5 2 +1115 3 1 21 0 7.7958 2 +1116 1 0 53 0 27.4458 1 +1117 3 0 28 2 15.2458 1 +1118 3 1 23 0 7.7958 2 +1119 3 0 28 0 7.75 3 +1120 3 1 40.5 0 15.1 2 +1121 2 1 36 0 13 2 +1122 2 1 14 0 65 2 +1123 1 0 21 0 26.55 2 +1124 3 1 21 1 6.4958 2 +1125 3 1 28 0 7.8792 3 +1126 1 1 39 1 71.2833 1 +1127 3 1 20 0 7.8542 2 +1128 1 1 64 1 75.25 1 +1129 3 1 20 0 7.225 1 +1130 2 0 18 2 13 2 +1131 1 0 48 1 106.425 1 +1132 1 0 55 0 27.7208 1 +1133 2 0 45 2 30 2 +1134 1 1 45 2 134.5 1 +1135 3 1 28 0 7.8875 2 +1136 3 1 28 3 23.45 2 +1137 1 1 41 1 51.8625 2 +1138 2 0 22 0 21 2 +1139 2 1 42 2 32.5 2 +1140 2 0 29 1 26 2 +1141 3 0 28 1 14.4542 1 +1142 2 0 0.92 3 27.75 2 +1143 3 1 20 0 7.925 2 +1144 1 1 27 1 136.7792 1 +1145 3 1 24 0 9.325 2 +1146 3 1 32.5 0 9.5 2 +1147 3 1 28 0 7.55 2 +1148 3 1 28 0 7.75 3 +1149 3 1 28 0 8.05 2 +1150 2 0 19 0 13 2 +1151 3 1 21 0 7.775 2 +1152 3 1 36.5 1 17.4 2 +1153 3 1 21 0 7.8542 2 +1154 2 0 29 2 23 2 +1155 3 0 1 2 12.1833 2 +1156 2 1 30 0 12.7375 1 +1157 3 1 28 0 7.8958 2 +1158 1 1 28 0 0 2 +1159 3 1 28 0 7.55 2 +1160 3 0 28 0 8.05 2 +1161 3 1 17 0 8.6625 2 +1162 1 1 46 0 75.2417 1 +1163 3 1 28 0 7.75 3 +1164 1 0 26 1 136.7792 1 +1165 3 0 28 1 15.5 3 +1166 3 1 28 0 7.225 1 +1167 2 0 20 1 26 2 +1168 2 1 28 0 10.5 2 +1169 2 1 40 1 26 2 +1170 2 1 30 1 21 2 +1171 2 1 22 0 10.5 2 +1172 3 0 23 0 8.6625 2 +1173 3 1 0.75 2 13.775 2 +1174 3 0 28 0 7.75 3 +1175 3 0 9 2 15.2458 1 +1176 3 0 2 2 20.2125 2 +1177 3 1 36 0 7.25 2 +1178 3 1 28 0 7.25 2 +1179 1 1 24 1 82.2667 2 +1180 3 1 28 0 7.2292 1 +1181 3 1 28 0 8.05 2 +1182 1 1 28 0 39.6 2 +1183 3 0 30 0 6.95 3 +1184 3 1 28 0 7.2292 1 +1185 1 1 53 2 81.8583 2 +1186 3 1 36 0 9.5 2 +1187 3 1 26 0 7.8958 2 +1188 2 0 1 3 41.5792 1 +1189 3 1 28 2 21.6792 1 +1190 1 1 30 0 45.5 2 +1191 3 1 29 0 7.8542 2 +1192 3 1 32 0 7.775 2 +1193 2 1 28 0 15.0458 1 +1194 2 1 43 1 21 2 +1195 3 1 24 0 8.6625 2 +1196 3 0 28 0 7.75 3 +1197 1 0 64 2 26.55 2 +1198 1 1 30 3 151.55 2 +1199 3 1 0.83 1 9.35 2 +1200 1 1 55 2 93.5 2 +1201 3 0 45 1 14.1083 2 +1202 3 1 18 0 8.6625 2 +1203 3 1 22 0 7.225 1 +1204 3 1 28 0 7.575 2 +1205 3 0 37 0 7.75 3 +1206 1 0 55 0 135.6333 1 +1207 3 0 17 0 7.7333 3 +1208 1 1 57 1 146.5208 1 +1209 2 1 19 0 10.5 2 +1210 3 1 27 0 7.8542 2 +1211 2 1 22 2 31.5 2 +1212 3 1 26 0 7.775 2 +1213 3 1 25 0 7.2292 1 +1214 2 1 26 0 13 2 +1215 1 1 33 0 26.55 2 +1216 1 0 39 0 211.3375 2 +1217 3 1 23 0 7.05 2 +1218 2 0 12 3 39 2 +1219 1 1 46 0 79.2 1 +1220 2 1 29 1 26 2 +1221 2 1 21 0 13 2 +1222 2 0 48 2 36.75 2 +1223 1 1 39 0 29.7 1 +1224 3 1 28 0 7.225 1 +1225 3 0 19 2 15.7417 1 +1226 3 1 27 0 7.8958 2 +1227 1 1 30 0 26 2 +1228 2 1 32 0 13 2 +1229 3 1 39 2 7.2292 1 +1230 2 1 25 0 31.5 2 +1231 3 1 28 0 7.2292 1 +1232 2 1 18 0 10.5 2 +1233 3 1 32 0 7.5792 2 +1234 3 1 28 10 69.55 2 +1235 1 0 58 1 512.3292 1 +1236 3 1 28 2 14.5 2 +1237 3 0 16 0 7.65 2 +1238 2 1 26 0 13 2 +1239 3 0 38 0 7.2292 1 +1240 2 1 24 0 13.5 2 +1241 2 0 31 0 21 2 +1242 1 0 45 1 63.3583 1 +1243 2 1 25 0 10.5 2 +1244 2 1 18 0 73.5 2 +1245 2 1 49 3 65 2 +1246 3 0 0.17 3 20.575 2 +1247 1 1 50 0 26 2 +1248 1 0 59 2 51.4792 2 +1249 3 1 28 0 7.8792 2 +1250 3 1 28 0 7.75 3 +1251 3 0 30 1 15.55 2 +1252 3 1 14.5 10 69.55 2 +1253 2 0 24 2 37.0042 1 +1254 2 0 31 0 21 2 +1255 3 1 27 0 8.6625 2 +1256 1 0 25 1 55.4417 1 +1257 3 0 28 10 69.55 2 +1258 3 1 28 1 14.4583 1 +1259 3 0 22 0 39.6875 2 +1260 1 0 45 1 59.4 1 +1261 2 1 29 0 13.8583 1 +1262 2 1 21 1 11.5 2 +1263 1 0 31 0 134.5 1 +1264 1 1 49 0 0 2 +1265 2 1 44 0 13 2 +1266 1 0 54 2 81.8583 2 +1267 1 0 45 0 262.375 1 +1268 3 0 22 2 8.6625 2 +1269 2 1 21 0 11.5 2 +1270 1 1 55 0 50 2 +1271 3 1 5 6 31.3875 2 +1272 3 1 28 0 7.75 3 +1273 3 1 26 0 7.8792 3 +1274 3 0 28 0 14.5 2 +1275 3 0 19 1 16.1 2 +1276 2 1 28 0 12.875 2 +1277 2 0 24 3 65 2 +1278 3 1 24 0 7.775 2 +1279 2 1 57 0 13 2 +1280 3 1 21 0 7.75 3 +1281 3 1 6 4 21.075 2 +1282 1 1 23 0 93.5 2 +1283 1 0 51 1 39.4 2 +1284 3 1 13 2 20.25 2 +1285 2 1 47 0 10.5 2 +1286 3 1 29 4 22.025 2 +1287 1 0 18 1 60 2 +1288 3 1 24 0 7.25 3 +1289 1 0 48 2 79.2 1 +1290 3 1 22 0 7.775 2 +1291 3 1 31 0 7.7333 3 +1292 1 0 30 0 164.8667 2 +1293 2 1 38 1 21 2 +1294 1 0 22 1 59.4 1 +1295 1 1 17 0 47.1 2 +1296 1 1 43 1 27.7208 1 +1297 2 1 20 0 13.8625 1 +1298 2 1 23 1 10.5 2 +1299 1 1 50 2 211.5 1 +1300 3 0 28 0 7.7208 3 +1301 3 0 3 2 13.775 2 +1302 3 0 28 0 7.75 3 +1303 1 0 37 1 90 3 +1304 3 0 28 0 7.775 2 +1305 3 1 28 0 8.05 2 +1306 1 0 39 0 108.9 1 +1307 3 1 38.5 0 7.25 2 +1308 3 1 28 0 8.05 2 +1309 3 1 28 2 22.3583 1 diff --git a/test.xlsx b/test.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..eadfd74da1eee93e343610cf784d11e25f1bcecd GIT binary patch literal 30820 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%0A&e?X}gv55w^?394 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 PQZi5nF!@J%{{HkoOC(PB literal 0 HcmV?d00001