diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/checksums.lock b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/checksums.lock new file mode 100644 index 0000000..d67e762 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/checksums.lock differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/md5-checksums.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/md5-checksums.bin new file mode 100644 index 0000000..ed422e3 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/md5-checksums.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/sha1-checksums.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/sha1-checksums.bin new file mode 100644 index 0000000..c14f641 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/checksums/sha1-checksums.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock new file mode 100644 index 0000000..3689f1b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/dependencies-accessors/dependencies-accessors.lock differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/dependencies-accessors/gc.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/dependencies-accessors/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.bin new file mode 100644 index 0000000..95559ba Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.lock b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.lock new file mode 100644 index 0000000..f7de801 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/executionHistory/executionHistory.lock differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileChanges/last-build.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileChanges/last-build.bin new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileChanges/last-build.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.bin new file mode 100644 index 0000000..b6fbe9c Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.lock b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.lock new file mode 100644 index 0000000..d1b727c Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/fileHashes/fileHashes.lock differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/gc.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/7.4.2/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000..e0e9501 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/cache.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 0000000..9e2d298 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Tue Oct 04 18:33:01 MSK 2022 +gradle.version=7.4.2 diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/outputFiles.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/outputFiles.bin new file mode 100644 index 0000000..a840564 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/buildOutputCleanup/outputFiles.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/file-system.probe b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/file-system.probe new file mode 100644 index 0000000..58b667b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/file-system.probe differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/vcs-1/gc.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/.gradle/vcs-1/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/.gitignore b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/HemmingCoder.iml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/HemmingCoder.iml new file mode 100644 index 0000000..4a11b6a --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/HemmingCoder.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/Project.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/Project.xml new file mode 100644 index 0000000..1bec35e --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/Project.xml @@ -0,0 +1,10 @@ + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/codeStyleConfig.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 0000000..79ee123 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/compiler.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/compiler.xml new file mode 100644 index 0000000..fb7f4a8 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/dbnavigator.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/dbnavigator.xml new file mode 100644 index 0000000..a397ff1 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/dbnavigator.xml @@ -0,0 +1,469 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/gradle.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/gradle.xml new file mode 100644 index 0000000..592fdc7 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/jarRepositories.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/jarRepositories.xml new file mode 100644 index 0000000..fdc392f --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/kotlinc.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/kotlinc.xml new file mode 100644 index 0000000..b1077fb --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/kotlinc.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/ktlint.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/ktlint.xml new file mode 100644 index 0000000..6c881ef --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/ktlint.xml @@ -0,0 +1,6 @@ + + + + false + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_apiguardian_apiguardian_api_1_1_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_apiguardian_apiguardian_api_1_1_0.xml new file mode 100644 index 0000000..d5714fb --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_apiguardian_apiguardian_api_1_1_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml new file mode 100644 index 0000000..1fa0fa9 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_annotations_13_0.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_7_10.xml new file mode 100644 index 0000000..8d8ca77 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_1_7_10.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_7_10.xml new file mode 100644 index 0000000..ebf4d64 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_common_1_7_10.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_7_10.xml new file mode 100644 index 0000000..f816a47 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk7_1_7_10.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_7_10.xml new file mode 100644 index 0000000..3807fef --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_stdlib_jdk8_1_7_10.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_7_10.xml new file mode 100644 index 0000000..53a983c --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_1_7_10.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit5_1_7_10.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit5_1_7_10.xml new file mode 100644 index 0000000..92cd62e --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_jetbrains_kotlin_kotlin_test_junit5_1_7_10.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_api_5_6_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_api_5_6_0.xml new file mode 100644 index 0000000..c5efb83 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_api_5_6_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_engine_5_6_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_engine_5_6_0.xml new file mode 100644 index 0000000..ba48c80 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_jupiter_junit_jupiter_engine_5_6_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_commons_1_6_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_commons_1_6_0.xml new file mode 100644 index 0000000..e27f0c5 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_commons_1_6_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_engine_1_6_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_engine_1_6_0.xml new file mode 100644 index 0000000..b31e1c9 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_junit_platform_junit_platform_engine_1_6_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_opentest4j_opentest4j_1_2_0.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_opentest4j_opentest4j_1_2_0.xml new file mode 100644 index 0000000..c0ad60c --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/libraries/Gradle__org_opentest4j_opentest4j_1_2_0.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/misc.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/misc.xml new file mode 100644 index 0000000..b4e6022 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/misc.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules.xml new file mode 100644 index 0000000..f05fed8 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.main.iml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.main.iml new file mode 100644 index 0000000..ae4ed2b --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.main.iml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.7.10/d70d7d2c56371f7aa18f32e984e3e2e998fe9081/kotlin-stdlib-jdk8-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.7.10/1ef73fee66f45d52c67e2aca12fd945dbe0659bf/kotlin-stdlib-jdk7-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar + + + + + + + + + + + + + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-scripting-jvm/1.7.10/c1e3bade3e9795023867dce31404736995037e4f/kotlin-scripting-jvm-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-scripting-common/1.7.10/bddf009658701ba5fb98e40e7877dcce7d8695ee/kotlin-scripting-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-script-runtime/1.7.10/c99c87a6988d8fd8d5142e9ed5c9f34a7cf561ee/kotlin-script-runtime-1.7.10.jar + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.test.iml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.test.iml new file mode 100644 index 0000000..8d95dda --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/modules/HemmingCoder.test.iml @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + + $MODULE_DIR$/../../build/classes/kotlin/main + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk8/1.7.10/d70d7d2c56371f7aa18f32e984e3e2e998fe9081/kotlin-stdlib-jdk8-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test-junit5/1.7.10/1977faecddc1c312be4775e6110d3072f553d89d/kotlin-test-junit5-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-test/1.7.10/4d644a88cc0a386712d4b1c1b4ca748203421e07/kotlin-test-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-jdk7/1.7.10/1ef73fee66f45d52c67e2aca12fd945dbe0659bf/kotlin-stdlib-jdk7-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.junit.platform/junit-platform-commons/1.6.0/b0a75795cf03841d4f9cc54099557baffc11c727/junit-platform-commons-1.6.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.junit.jupiter/junit-jupiter-api/5.6.0/f29e6318333d2303ce4965c9819cfad08de7d1e5/junit-jupiter-api-5.6.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.apiguardian/apiguardian-api/1.1.0/fc9dff4bb36d627bdc553de77e1f17efd790876c/apiguardian-api-1.1.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.opentest4j/opentest4j/1.2.0/28c11eb91f9b6d8e200631d46e20a7f407f2a046/opentest4j-1.2.0.jar + + + + + + + + + + + + $MODULE_DIR$/../../build/classes/java/main + $MODULE_DIR$/../../build/classes/kotlin/main + $MODULE_DIR$/../../build/libs/HemmingCoder-1.0-SNAPSHOT.jar + + + + + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-scripting-jvm/1.7.10/c1e3bade3e9795023867dce31404736995037e4f/kotlin-scripting-jvm-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-scripting-common/1.7.10/bddf009658701ba5fb98e40e7877dcce7d8695ee/kotlin-scripting-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib/1.7.10/d2abf9e77736acc4450dc4a3f707fa2c10f5099d/kotlin-stdlib-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-stdlib-common/1.7.10/bac80c520d0a9e3f3673bc2658c6ed02ef45a76a/kotlin-stdlib-common-1.7.10.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains/annotations/13.0/919f0dfe192fb4e063e7dacadee7f8bb9a2672a9/annotations-13.0.jar + $USER_HOME$/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlin/kotlin-script-runtime/1.7.10/c99c87a6988d8fd8d5142e9ed5c9f34a7cf561ee/kotlin-script-runtime-1.7.10.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/vcs.xml b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build.gradle.kts b/Informatics/Labs/Hemming - 2/HemmingCoder/build.gradle.kts new file mode 100644 index 0000000..cff1f50 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/build.gradle.kts @@ -0,0 +1,29 @@ +import org.jetbrains.kotlin.gradle.tasks.KotlinCompile + +plugins { + kotlin("jvm") version "1.7.10" + application +} + +group = "org.example" +version = "1.0-SNAPSHOT" + +repositories { + mavenCentral() +} + +dependencies { + testImplementation(kotlin("test")) +} + +tasks.test { + useJUnitPlatform() +} + +tasks.withType { + kotlinOptions.jvmTarget = "1.8" +} + +application { + mainClass.set("MainKt") +} \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/classes/kotlin/main/META-INF/HemmingCoder.kotlin_module b/Informatics/Labs/Hemming - 2/HemmingCoder/build/classes/kotlin/main/META-INF/HemmingCoder.kotlin_module new file mode 100644 index 0000000..4e7592e Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/classes/kotlin/main/META-INF/HemmingCoder.kotlin_module differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab new file mode 100644 index 0000000..5036096 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream new file mode 100644 index 0000000..4dafafc Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len new file mode 100644 index 0000000..b9a3d70 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len new file mode 100644 index 0000000..01bdaa1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at new file mode 100644 index 0000000..76d0437 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i new file mode 100644 index 0000000..2aee4e1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab new file mode 100644 index 0000000..c08b7ae Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream new file mode 100644 index 0000000..271ca42 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len new file mode 100644 index 0000000..541378f Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len new file mode 100644 index 0000000..a9f80ae Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at new file mode 100644 index 0000000..ab739f2 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i new file mode 100644 index 0000000..5a6dbd5 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab new file mode 100644 index 0000000..8eadf79 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream new file mode 100644 index 0000000..271ca42 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len new file mode 100644 index 0000000..541378f Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len new file mode 100644 index 0000000..a9f80ae Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at new file mode 100644 index 0000000..34b3bd9 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i new file mode 100644 index 0000000..5a6dbd5 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab new file mode 100644 index 0000000..26cd765 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream new file mode 100644 index 0000000..b3fbe58 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len new file mode 100644 index 0000000..1c209ae Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len new file mode 100644 index 0000000..93a595b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at new file mode 100644 index 0000000..df1bc51 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i new file mode 100644 index 0000000..0286471 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab new file mode 100644 index 0000000..853981e Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream new file mode 100644 index 0000000..a14e187 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len new file mode 100644 index 0000000..379d85c Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len new file mode 100644 index 0000000..2a17e6e Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at new file mode 100644 index 0000000..b30d638 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i new file mode 100644 index 0000000..61f679b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab new file mode 100644 index 0000000..2c0cd29 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream new file mode 100644 index 0000000..c0dc80b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len new file mode 100644 index 0000000..30b8abe Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len new file mode 100644 index 0000000..ec8f944 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at new file mode 100644 index 0000000..c6f8f61 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i new file mode 100644 index 0000000..062c681 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab new file mode 100644 index 0000000..40f4998 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream new file mode 100644 index 0000000..4dafafc Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len new file mode 100644 index 0000000..b9a3d70 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len new file mode 100644 index 0000000..01bdaa1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at new file mode 100644 index 0000000..fcd61a5 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i new file mode 100644 index 0000000..2aee4e1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/counters.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/counters.tab new file mode 100644 index 0000000..2ceb12b --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/counters.tab @@ -0,0 +1,2 @@ +2 +0 \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab new file mode 100644 index 0000000..3d0aca3 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream new file mode 100644 index 0000000..4dafafc Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len new file mode 100644 index 0000000..b9a3d70 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len new file mode 100644 index 0000000..01bdaa1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at new file mode 100644 index 0000000..60c3fbb Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i new file mode 100644 index 0000000..63b6020 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab new file mode 100644 index 0000000..a880e23 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream new file mode 100644 index 0000000..6e7a926 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len new file mode 100644 index 0000000..eb52963 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len new file mode 100644 index 0000000..93a595b Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at new file mode 100644 index 0000000..38d41fb Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i new file mode 100644 index 0000000..6936967 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab new file mode 100644 index 0000000..e84dbd0 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream new file mode 100644 index 0000000..26423e1 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len new file mode 100644 index 0000000..180f383 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.len new file mode 100644 index 0000000..b492c4d Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values new file mode 100644 index 0000000..3741724 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at new file mode 100644 index 0000000..016ce0e Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s new file mode 100644 index 0000000..5a1cdbe --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s @@ -0,0 +1 @@ +؉ńƒρɁɁƆҎډܐۉ͒׋~ς߅ \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i new file mode 100644 index 0000000..292fa53 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len new file mode 100644 index 0000000..131e265 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/last-build.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/last-build.bin new file mode 100644 index 0000000..9290f24 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/cacheable/last-build.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/local-state/build-history.bin b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/local-state/build-history.bin new file mode 100644 index 0000000..8fc0127 Binary files /dev/null and b/Informatics/Labs/Hemming - 2/HemmingCoder/build/kotlin/compileKotlin/local-state/build-history.bin differ diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/gradle.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/gradle.properties new file mode 100644 index 0000000..7fc6f1f --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/gradle.properties @@ -0,0 +1 @@ +kotlin.code.style=official diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/gradle/wrapper/gradle-wrapper.properties b/Informatics/Labs/Hemming - 2/HemmingCoder/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..60c76b3 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,5 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists \ No newline at end of file diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew b/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew new file mode 100644 index 0000000..1b6c787 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew @@ -0,0 +1,234 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit + +APP_NAME="Gradle" +APP_BASE_NAME=${0##*/} + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + +# Collect all arguments for the java command; +# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of +# shell script including quotes and variable substitutions, so put them in +# double quotes to make sure that they get re-expanded; and +# * put everything else in single quotes, so that it's not re-expanded. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + org.gradle.wrapper.GradleWrapperMain \ + "$@" + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew.bat b/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/settings.gradle.kts b/Informatics/Labs/Hemming - 2/HemmingCoder/settings.gradle.kts new file mode 100644 index 0000000..c3688d5 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/settings.gradle.kts @@ -0,0 +1,3 @@ + +rootProject.name = "HemmingCoder" + diff --git a/Informatics/Labs/Hemming - 2/HemmingCoder/src/main/kotlin/Main.kt b/Informatics/Labs/Hemming - 2/HemmingCoder/src/main/kotlin/Main.kt new file mode 100644 index 0000000..d604933 --- /dev/null +++ b/Informatics/Labs/Hemming - 2/HemmingCoder/src/main/kotlin/Main.kt @@ -0,0 +1,217 @@ +import kotlin.math.pow +import kotlin.math.abs + +fun main(args: Array) { + + println("0 - Кодировать bin") + println("1 - Декодировать и исправить bin по хеммингу") + + when (readLine()!!.trim()) { + "0" -> coder() + "1" -> decoder() + } +} + +fun coder() { + println("Введите битовую последовательность") + val bytes = readLine()!!.trim() + println(Coder(bytes).encode().toString()) +} + +fun decoder() { + println("Введите закодированную последовательность") + val raw = readLine()!!.trim() + + var bytes = raw + + if (bytes.isNotBlank()) { + + println("Ввод корректен") + println("Парсинг строки...") + + var control_r = "" + + var s = 0 + var index = 0 // 0(1), 1(2), 3(4) ... + + while (index < bytes.length - 1) { + control_r += bytes[index].toString() + val arr = bytes.toCharArray() + arr[index] = '-' + bytes = String(arr) + s++ + index = 2.0.pow(s).toInt() - 1 + } + + val info_r: String = bytes.filter { it != '-' } + + printBits(info_r, control_r) + + println("Перерасчёт...") + println(Coder(info_r).encode().controlSequence) + + if (Coder(info_r).encode().str == raw) { + println("В исходной последовательности нет ошибок") + } else { + println("Ошибка") + Coder.repair(raw, true) + } + + } + + println() + main(arrayOf()) + +} + +private fun printBits(info: String, control: String) { + print("Информационные биты исходные: ") + + info.toCharArray().forEachIndexed { index, c -> + print("i$index = $c; ") + } + + print("\nКонтрольные биты исходные: ") + + control.toCharArray().forEachIndexed { index, c -> + print("r$index = $c; ") + } + + println() + +} + +operator fun String.set(index: Int, value: String): String { + val chars = this.toCharArray() + chars[index] = value[0] + this.chars() + return String(chars) +} + +fun String.insert(index: Int, string: String): String { + return this.substring(0, index) + string + this.substring(index) +} + +fun String.invert(): String { + return this.toCharArray().reversedArray().concatToString() +} + +class Coder(private val bits: String) { + fun encode(): HemmingResult { + + var str = bits + + var s = 0 + var index = 0 // 0(1), 1(2), 3(4) ... + + while (index < str.length - 1) { + str = str.insert(index, "-") + + s++ + index = 2.0.pow(s).toInt() - 1 + } + + //println(str) + + s = 0 + while (str.count { it == '-' } > 0) { + + val bitpow = 2.0.pow(s).toInt() + + var sum = 0 + + for (i in bitpow until str.length + 1 step bitpow * 2) { + val x: String = if (bitpow == 1) { + str[i - 1].toString() + } else { + try { + str.substring(i - 1, i + bitpow - 1) + } catch (e: StringIndexOutOfBoundsException) { + str.substring(i - 1) + } + } + sum += x.count { it == '1' } + } + str = str.replaceFirst("-", (sum % 2).toString()) + s++ + } + + return HemmingResult(str) + + } + + data class HemmingResult( + var str: String + ) { + var infoSequence: String + var controlSequence: String = "" + + init { // делим на контрольную и информационную последовательности + var result = str + var s = 0 + var index = 0 // 0(1), 1(2), 3(4) ... + + while (index < result.length - 1) { + controlSequence += result[index].toString() + val q = result.toCharArray() + q[index] = '-' + result = String(q) + s++ + index = 2.0.pow(s).toInt() - 1 + } + + infoSequence = result.filter { it != '-' } + } + } + + companion object { + private fun getInfo(str: String): String { + var result = str + var s = 0 + var index = 0 // 0(1), 1(2), 3(4) ... + var controlSequence = "" + var infoSequence = "" + + while (index < result.length - 1) { + controlSequence += result[index].toString() + val q = result.toCharArray() + q[index] = '-' + result = String(q) + s++ + index = 2.0.pow(s).toInt() - 1 + } + + infoSequence = result.filter { it != '-' } + return infoSequence + } + + fun repair(raw: String, logging: Boolean = false): HemmingResult { + val res = HemmingResult(raw) + val raw_control = res.controlSequence + var syndrom = "" + Coder(res.infoSequence).encode().controlSequence.toCharArray().forEachIndexed { index, c -> + syndrom += if (c != raw_control[index]) + "1" + else + "0" + } + val err_index = (syndrom.invert()).toInt(2) - 1 + if (logging) { + println("Синдром: $syndrom") + println("Индекс ошибки: $err_index") + } + var new = res.str + val q = new.toCharArray() + q[err_index] = if (q[err_index] == '1') '0' else '1' + new = q.concatToString() + + println("Исправленная полная последовательность: $new") + println("Исходная посылка: ${getInfo(new)}") + + return Coder(new).encode() + } + } + +} + + diff --git a/Informatics/Labs/Regex - 3/.idea/.gitignore b/Informatics/Labs/Regex - 3/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/Informatics/Labs/Regex - 3/.idea/Regex - 3.iml b/Informatics/Labs/Regex - 3/.idea/Regex - 3.iml new file mode 100644 index 0000000..d0876a7 --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/Regex - 3.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/Project_Default.xml b/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..ff21f07 --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,35 @@ + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/profiles_settings.xml b/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/.idea/misc.xml b/Informatics/Labs/Regex - 3/.idea/misc.xml new file mode 100644 index 0000000..32d0a90 --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/.idea/modules.xml b/Informatics/Labs/Regex - 3/.idea/modules.xml new file mode 100644 index 0000000..f3ea113 --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/.idea/vcs.xml b/Informatics/Labs/Regex - 3/.idea/vcs.xml new file mode 100644 index 0000000..c2365ab --- /dev/null +++ b/Informatics/Labs/Regex - 3/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Informatics/Labs/Regex - 3/main.py b/Informatics/Labs/Regex - 3/main.py new file mode 100644 index 0000000..39aabbc --- /dev/null +++ b/Informatics/Labs/Regex - 3/main.py @@ -0,0 +1,79 @@ +import random +import re + + +def generateEmojiByISU(isu): + eyes = [":", ";", "X", "8", "="] + nose = ["-", "<", "-{", "<{"] + month = ["(", ")", "O", "|", "\\", "/", "P"] + return eyes[isu % 5] + nose[isu % 4] + month[isu % 7] + + +def generateTestEmojiStr(): + list = ["hello", "world", "kotlin", "is", "cool", "and", "fun", "---", "I", "like", "it", "a", "lot"] + count = random.randrange(start=2, stop=6) + print("Emoji count expected = " + str(count)) + print("emoji = " + "\"" + generateEmojiByISU(isu) + "\"") + for i in range(count): + list.append(generateEmojiByISU(isu)) + random.shuffle(list) + teststr = ' '.join(list) + print("Autotest str: \"", teststr, "\"", sep="") + countEmoji(teststr) + + +def countEmoji(emojistring): + print("Emoji count = " + re + .findall(generateEmojiByISU(isu), emojistring).__len__().__str__()) + + +print("1 task\n") +print("ISU Number: ", end="") +isu = int(input()) +generateTestEmojiStr() + +print("\ndop task 1") +print("Variant №" + str(isu % 6) + " //isu number doesn't matter") + + +def generateVT(): + return random.choice(["ВТ - лучшая кафедра ИТМО", "ВТ - ван лав ИТМО", "ВТ плюс ИТМО = ♥"]) + + +def generateText(log=False): + list = ["Университет", "Привет", "Другие, ", "ВТ вообще не очень хорошая кафедра ИТМО, но в в принципе ок", + "Слова, ", "Текст", "Студент", "Осмысленность.", "вф", ":):):)", "Ректор", "qowei@niuitmo.tu"] + count = random.randrange(start=1, stop=2) + if log: + print("Count expected = " + str(count)) + for i in range(count): + list.append(generateVT()) + random.shuffle(list) + teststr = ' '.join(list) + if log: + print("Autotest str: \"", teststr, "\"", sep="") + return teststr + + +def countVT(): + print("Count = " + re.findall(r"ВТ(\s*?\S*?\s*?){1,4}ИТМО", generateText(True)).__len__().__str__()) + print((re.findall(r"ВТ(?:\s*?\S*?\s*?){1,4}ИТМО", generateText())[0])) + + +countVT() + +print("\ndop task 2") +print("Variant №" + str(isu % 4) + " //isu number doesn't matter") + + +def generateExpr(): + return str(random.randint(0, 100)) + " + " + str(random.randint(0, 100)) + " = " + str(random.randint(0, 100)) + +def expr(): + exp = generateExpr() + print("Autotest str: " + exp) + find = re.findall(r"\d+", exp) + result = str(3*int(find[0])**2 + 5) + " + " + str(3*int(find[1])**2 + 5) + " = " + str(3*int(find[2])**2 + 5) + print(result) + +expr() \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/artifacts/Lab0.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/artifacts/Lab0.xml new file mode 100644 index 0000000..b0a99a4 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/artifacts/Lab0.xml @@ -0,0 +1,11 @@ + + + $PROJECT_DIR$ + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/dbnavigator.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/dbnavigator.xml new file mode 100644 index 0000000..508337b --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/dbnavigator.xml @@ -0,0 +1,469 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/misc.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/misc.xml new file mode 100644 index 0000000..0548357 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/modules.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/modules.xml new file mode 100644 index 0000000..010ee29 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/uiDesigner.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/uiDesigner.xml new file mode 100644 index 0000000..2b63946 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/uiDesigner.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/vcs.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/.idea/workspace.xml b/Programming/Labs/First - Basics of Java development/Lab0/.idea/workspace.xml new file mode 100644 index 0000000..684be5b --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/.idea/workspace.xml @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + { + "keyToString": { + "Project.color": "0e0226", + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "WebServerToolWindowFactoryState": "false", + "last_opened_file_path": "S:/Projects/ITMO/Programming/Labs/First - Basics of Java development/Lab0", + "project.structure.last.edited": "Artifacts", + "project.structure.proportion": "0.15", + "project.structure.side.proportion": "0.2", + "settings.editor.selected.configurable": "preferences.pluginManager" + } +} + + + + + + + + + + + + + 1663501415161 + + + 1663502288771 + + + 1663502888600 + + + 1663503188846 + + + 1663510416362 + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/First - Basics of Java development/Lab0/META-INF/MANIFEST.MF b/Programming/Labs/First - Basics of Java development/Lab0/META-INF/MANIFEST.MF new file mode 100644 index 0000000..ded71df --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: progalab0.Hello + diff --git a/Programming/Labs/First - Basics of Java development/Lab0/src/progalab0/Hello.java b/Programming/Labs/First - Basics of Java development/Lab0/src/progalab0/Hello.java new file mode 100644 index 0000000..bc53c62 --- /dev/null +++ b/Programming/Labs/First - Basics of Java development/Lab0/src/progalab0/Hello.java @@ -0,0 +1,85 @@ +package progalab0; + +import java.text.DecimalFormat; +import java.util.Random; + +public class Hello { + + public static void main(String[] args) { + short[] a = createFirstArray(); // создаем первый массив + System.out.print(a[0] + "\n"); + + float[] x = createSecondArray(); // создаем второй массив + System.out.print(x[12] + "\n"); + + math(a, x); + } + + private static short[] createFirstArray() { + short[] firstArray = new short[17]; // создаем массив на 17 элементов + int count = 0; + for (short i = 5; i < 22; i++) { // заполняем массив числами от 5 до 21 включительно + firstArray[count] = i; + count++; + } + return firstArray; // возвращаем первый массив + } + + private static float[] createSecondArray() { + float[] secondArray = new float[13]; + Random random = new Random(); // создаем объект Random для заполнения массива числами, следуя ТЗ + for (int i = 0; i < 13; i++) { + /* + Случайное число от 0 до 1 + увеличиваем диапазон в 15 раз + смещаем на 11 единиц. + */ + secondArray[i] = random.nextFloat() * 15 - 11; + } + return secondArray; // возвращаем второй массив + } + + /* + Массивы в тз названы одинаково, поэтому + Итоговый массив именован как а + Второй массив именован как thin a + Так как в задании результирующий массив был выделен жирным, а предыдущий просто как "а" + * */ + private static void math(short[] thina, float[] d) { + double[][] a = new double[9][13]; // создаем массив на 9 строк и 13 столбцов (двухмерный) + for (int i = 0; i < 9; i++) { // X + for (int j = 0; j < 13; j++) { // Y + float x = d[j]; + if (thina[i] == 9) { + a[i][j] = Math.log(Math.sqrt(Math.pow((Math.sin(x)), 2))); + } else { + switch ((int) thina[i]) { // если а[i] принадлежит (5, 15, 7, 19), то + case 5: + case 15: + case 7: + case 19: + a[i][j] = Math.pow((Math.tan(Math.pow(Math.sqrt(x), 3))), + (4 - Math.sin(Math.pow(Math.E, x))) / 2); + break; + default: + a[i][j] = 4 * (Math.asin(Math.cos(Math.tan(x / (x + 0.25f)))) + 2.0 / 3.0); + } + } + } + } + for (int i = 0; i < 9; i++) { + for (int j = 0; j < 13; j++) { + if (((Double) (a[i][j])).isNaN()) { // проверка на Not a Number + System.out.print("NaN "); // если значение "не число", то выводим "NaN", чтобы было красиво :) + } else { + /* + Вывод чисел с плавающей точкой в формате 0.000 (3 знака после запятой) + Также для удобства чтения добавлены пробелы между столбцами + * */ + System.out.print(new DecimalFormat("#.###").format(a[i][j]) + " "); + } + } + System.out.print("\n"); // переход на новую строку (y++ по сути) + } + } +} \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/.gitignore b/Programming/Labs/Second - OOP/Pokemon/.idea/.gitignore new file mode 100644 index 0000000..13566b8 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/artifacts/Pokemon_jar.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/artifacts/Pokemon_jar.xml new file mode 100644 index 0000000..edff415 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/artifacts/Pokemon_jar.xml @@ -0,0 +1,17 @@ + + + $PROJECT_DIR$/out/artifacts/Pokemon_jar + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/dbnavigator.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/dbnavigator.xml new file mode 100644 index 0000000..a397ff1 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/dbnavigator.xml @@ -0,0 +1,469 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/kotlinc.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/kotlinc.xml new file mode 100644 index 0000000..c729201 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/kotlinc.xml @@ -0,0 +1,10 @@ + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/ktlint.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/ktlint.xml new file mode 100644 index 0000000..6c881ef --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/ktlint.xml @@ -0,0 +1,6 @@ + + + + false + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/KotlinJavaRuntime.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/KotlinJavaRuntime.xml new file mode 100644 index 0000000..d0ec564 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/KotlinJavaRuntime.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/Pokemon.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/Pokemon.xml new file mode 100644 index 0000000..2a33617 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/libraries/Pokemon.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/misc.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/misc.xml new file mode 100644 index 0000000..0548357 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/modules.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/modules.xml new file mode 100644 index 0000000..f048aa7 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/.idea/vcs.xml b/Programming/Labs/Second - OOP/Pokemon/.idea/vcs.xml new file mode 100644 index 0000000..94a25f7 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/MANIFEST.MF b/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/MANIFEST.MF new file mode 100644 index 0000000..36a925a --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Main-Class: pokemon.GameKt +Class-Path: Pokemon.jar kotlin-stdlib.jar kotlin-reflect.jar kotlin-test + .jar + diff --git a/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/Pokemon.kotlin_module b/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/Pokemon.kotlin_module new file mode 100644 index 0000000..d394aad Binary files /dev/null and b/Programming/Labs/Second - OOP/Pokemon/out/production/Pokemon/META-INF/Pokemon.kotlin_module differ diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/Task.md b/Programming/Labs/Second - OOP/Pokemon/src/main/Task.md new file mode 100644 index 0000000..2b6736f --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/Task.md @@ -0,0 +1,51 @@ +# Задание +На основе базового класса pokemon написать свои классы для заданных видов покемонов. Каждый вид покемона должен иметь один или два типа и стандартные базовые характеристики: + +-очки здоровья (HP)\ +-атака (attack)\ +-защита (defense)\ +-специальная атака (special attack)\ +-специальная защита (special defense)\ +-скорость (speed) + +**Моё несогласие (DRY)** \ +Вышеизложенное считаю не целесообразным и неправильным с точки зрения принципов SOLID в части "_На основе базового класса pokemon написать свои классы для заданных видов покемонов_" т. к.:- +- разные классы воспроизводят одинаковую логику, но с разными параметрами. Это нарушение принципа DRY (Don't Repeat Yourself) + +## Классы +Классы покемонов должны наследоваться в соответствии с цепочкой эволюции покемонов. На основе базовых классов PhysicalMove, SpecialMove и StatusMove реализовать свои классы для заданных видов атак. + +Атака должна иметь стандартные тип, силу (power) и точность (accuracy). Должны быть реализованы стандартные эффекты атаки. Назначить каждому виду покемонов атаки в соответствии с вариантом. +Уровень покемона выбирается минимально необходимым для всех реализованных атак. + +Используя класс симуляции боя Battle, создать 2 команды покемонов (каждый покемон должен иметь имя) и запустить бой. + +Базовые классы и симулятор сражения находятся в jar-архиве (обновлен 9.10.2018, исправлен баг с добавлением атак и кодировкой). Документация в формате javadoc - здесь. + +Информацию о покемонах, цепочках эволюции и атаках можно найти на сайтах http://poke-universe.ru, http://pokemondb.net, http://veekun.com/dex/pokemon + +# Комментарии +**Цель работы:** на простом примере разобраться с основными концепциями ООП и научиться использовать их в программах. + +### Что надо сделать (краткое описание) + +Ознакомиться с документацией, обращая особое внимание на классы pokemon и Move. При дальнейшем выполнении лабораторной работы читать документацию еще несколько раз. +Скачать файл pokemon.jar. Его необходимо будет использовать как для компиляции, так и для запуска программы. Распаковывать его не надо! Нужно научиться подключать внешние jar-файлы к своей программе. +Написать минимально работающую программу и посмотреть как она работает. + + +> Battle b = new Battle();\ +> pokemon p1 = new pokemon("Чужой", 1);\ +> pokemon p2 = new pokemon("Хищник", 1);\ +> b.addAlly(p1);\ +> b.addFoe(p2);\ +> b.go(); + +Создать один из классов покемонов для своего варианта. Класс должен наследоваться от базового класса pokemon. В конструкторе нужно будет задать типы покемона и его базовые характеристики.\ +После этого попробуйте добавить покемона в сражение.\ +Создать один из классов атак для своего варианта (лучше всего начать с физической или специальной атаки). Класс должен наследоваться от класса PhysicalMove или SpecialMove.\ +В конструкторе нужно будет задать тип атаки, ее силу и точность. После этого добавить атаку покемону и проверить ее действие в сражении.\ +Не забудьте переопределить метод describe, чтобы выводилось нужное сообщение.\ +Если действие атаки отличается от стандартного, например, покемон не промахивается, либо атакующий покемон также получает повреждение, то в классе атаки нужно дополнительно переопределить соответствующие методы (см. документацию).\ +При реализации атак, которые меняют статус покемона (наследники StatusMove), скорее всего придется разобраться с классом Effect. Он позволяет на один или несколько ходов изменить состояние покемона или модификатор его базовых характеристик.\ +Доделать все необходимые атаки и всех покемонов, распределить покемонов по командам, запустить сражение. \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Extensions.kt b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Extensions.kt new file mode 100644 index 0000000..3004206 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Extensions.kt @@ -0,0 +1,18 @@ +package pokemon + +import ru.ifmo.se.pokemon.Battle +import ru.ifmo.se.pokemon.Pokemon + +fun Battle.addAllies(vararg allies: Pokemon) { + allies.forEach { addAlly(it) } +} +fun Battle.addFoes(vararg allies: Pokemon) { + allies.forEach { addFoe(it) } +} + +fun chance(percent: Int): Boolean { + return Math.random() < (percent / 100) +} +fun chance(percent: Int, action: () -> Unit): Boolean { + return Math.random() < (percent / 100) +} diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Game.kt b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Game.kt new file mode 100644 index 0000000..1eaf2c5 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/Game.kt @@ -0,0 +1,77 @@ +package pokemon + +import ru.ifmo.se.pokemon.* + + +fun main() { + val battle = Battle() + + val facade = CustomAttack( + Type.DARK, 70, 100, "Facade", + listOf(Effect().condition(Status.BURN).stat(Stat.ATTACK, (70 * 2)), + Effect().condition(Status.POISON).stat(Stat.ATTACK, (70 * 2)), + Effect().condition(Status.PARALYZE).stat(Stat.ATTACK, (70 * 2))) + ) + val zenHeadbutt = CustomAttack(Type.PSYCHIC, 80, 90, "Zen Headbutt") + val calmMind = CustomAttack(Type.PSYCHIC, 0, 0, "Calm Mind", + selfActions = { it.setMod(Stat.SPECIAL_ATTACK, 1); it.setMod(Stat.SPECIAL_DEFENSE, 1) } + ) + val doubleTeam = CustomAttack(Type.NORMAL, 0, 100, "Double Team", + selfActions = { it.setMod(Stat.EVASION, 1) } + ) + val tackle = CustomAttack(Type.NORMAL, 40, 100, "Tackle") + val sandAttack = CustomAttack(Type.GROUND, 0, 100, "Sand Attack", + opponentActions = { it.setMod(Stat.ACCURACY, -1) } + ) + val psychic = CustomAttack(Type.PSYCHIC, 90, 100, "Psychic", + opponentActions = { it.setMod(Stat.SPECIAL_DEFENSE, -1) } + ) + val chargeBeam = CustomAttack(Type.ELECTRIC, 50, 90, "Charge Beam", + opponentActions = { chance(70) { it.setMod(Stat.SPECIAL_ATTACK, 1) } } + ) + val wildCharge = CustomAttack(Type.ELECTRIC, 90, 100, "Wild Charge", + opponentActions = { chance(30) { it.setMod(Stat.SPEED, -1) } } + ) + val crunch = CustomAttack(Type.DARK, 80, 100, "Crunch", + opponentActions = { chance(20) { it.setMod(Stat.DEFENSE, -1) } } + ) + val stringShot = CustomAttack(Type.BUG, 0, 95, "String Shot", + opponentActions = { it.setMod(Stat.SPEED, -2) } + ) + + val sableye = Spok("Sableye", 1).apply { + setStatsFromArgs(50.0, 75.0, 75.0, 65.0, 65.0, 50.0) + addTypes(Type.DARK, Type.GHOST) + addMoves(facade, zenHeadbutt, calmMind, doubleTeam) + } + val eeve = Spok("Eevee", 1).apply { + setStatsFromArgs(55.0, 55.0, 50.0, 45.0, 65.0, 55.0) + addTypes(Type.NORMAL) + addMoves(tackle, facade, sandAttack) + } + val umbreon = Spok("Umbreon", 1).apply { + setStatsFromArgs(95.0, 65.0, 110.0, 60.0, 130.0, 65.0) + addTypes(Type.DARK) + addMoves(tackle, facade, sandAttack, psychic) + } + val grubbin = Spok("Grubbin", 1).apply { + setStatsFromArgs(47.0, 62.0, 45.0, 55.0, 45.0, 46.0) + addTypes(Type.BUG) + addMoves(chargeBeam, wildCharge) + } + val charjabug = Spok("Charjabug", 1).apply { + setStatsFromArgs(57.0, 82.0, 95.0, 55.0, 75.0, 36.0) + addTypes(Type.BUG, Type.ELECTRIC) + addMoves(chargeBeam, wildCharge, crunch) + } + val vikavolt = Spok("Vikavolt", 1).apply { + setStatsFromArgs(77.0, 70.0, 90.0, 145.0, 75.0, 43.0) + addTypes(Type.BUG, Type.ELECTRIC) + addMoves(chargeBeam, wildCharge, crunch, stringShot) + } + + battle.addAllies(sableye, eeve, umbreon) + battle.addFoes(grubbin, charjabug, vikavolt) + + battle.go() +} diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/CustomAttack.kt b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/CustomAttack.kt new file mode 100644 index 0000000..85e59ea --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/CustomAttack.kt @@ -0,0 +1,37 @@ +package pokemon + +import ru.ifmo.se.pokemon.Effect +import ru.ifmo.se.pokemon.PhysicalMove +import ru.ifmo.se.pokemon.Pokemon +import ru.ifmo.se.pokemon.Type + +open class CustomAttack( + type: Type, + power: Number, + accuracy: Number, + desc: String = "", + private val selfEffects: List = emptyList(), + private val opponentEffects: List = emptyList(), + private val selfActions: (Pokemon) -> Unit = {}, + private val opponentActions: (Pokemon) -> Unit = {}, +) : + PhysicalMove(type, power.toDouble(), (accuracy.toDouble() / 100)) { + + override fun applySelfEffects(p0: Pokemon?) { + super.applySelfEffects(p0) + selfEffects.forEach { p0?.addEffect(it) } + selfActions(p0!!) + } + + override fun applyOppEffects(p0: Pokemon?) { + super.applySelfEffects(p0) + opponentEffects.forEach { p0?.addEffect(it) } + opponentActions(p0!!) + } + + private var description: String = "использовал $desc" + override fun describe() = description + fun setDescription(desc: String) { + description = desc + } +} diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/Spok.kt b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/Spok.kt new file mode 100644 index 0000000..317e5d6 --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/kotlin/pokemon/Spok.kt @@ -0,0 +1,56 @@ +package pokemon + +import ru.ifmo.se.pokemon.Move +import ru.ifmo.se.pokemon.Pokemon +import ru.ifmo.se.pokemon.Stat +import ru.ifmo.se.pokemon.Type + +class Spok ( + name: String, + level: Int = 1, + types: List = emptyList(), + stats: Map = mapOf(), + moves: List = listOf(Move.getStruggleMove()) +) : Pokemon(name, level) { + + init { + super.setLevel(level) + super.setType(*types.toTypedArray()) + if (stats.isNotEmpty()) { setStatsFromMap(stats) } + moves.forEach { addMove(it) } + } + + fun setStatsFromArgs( + hp: Double, + attack: Double, + defense: Double, + specialAttack: Double, + specialDefense: Double, + speed: Double + ) { + super.setStats(hp, attack, defense, specialAttack, specialDefense, speed) + } + + private fun setStatsFromMap(stats: Map) { + try { + super.setStats( + stats[Stat.HP]!!, + stats[Stat.ATTACK]!!, + stats[Stat.DEFENSE]!!, + stats[Stat.SPECIAL_ATTACK]!!, + stats[Stat.SPECIAL_DEFENSE]!!, + stats[Stat.SPEED]!!, + ) + } catch (npe: NullPointerException) { + throw Exception("Stats Set Failed") + } + } + + fun addTypes(vararg types: Type) { + super.setType(*types) + } + + fun addMoves(vararg moves: Move) { + moves.forEach { addMove(it) } + } +} \ No newline at end of file diff --git a/Programming/Labs/Second - OOP/Pokemon/src/main/resources/META-INF/MANIFEST.MF b/Programming/Labs/Second - OOP/Pokemon/src/main/resources/META-INF/MANIFEST.MF new file mode 100644 index 0000000..36a925a --- /dev/null +++ b/Programming/Labs/Second - OOP/Pokemon/src/main/resources/META-INF/MANIFEST.MF @@ -0,0 +1,5 @@ +Manifest-Version: 1.0 +Main-Class: pokemon.GameKt +Class-Path: Pokemon.jar kotlin-stdlib.jar kotlin-reflect.jar kotlin-test + .jar + diff --git a/Programming/Labs/Second - OOP/Отчёт о лабораторной работе №2 по программированию.pdf b/Programming/Labs/Second - OOP/Отчёт о лабораторной работе №2 по программированию.pdf new file mode 100644 index 0000000..bf479e5 Binary files /dev/null and b/Programming/Labs/Second - OOP/Отчёт о лабораторной работе №2 по программированию.pdf differ