فهرست منبع

Git update 2024-04-26

Axel Nordh 2 سال پیش
والد
کامیت
2aa77c719f

+ 5 - 0
.gitignore

@@ -0,0 +1,5 @@
+*.log*
+*/.idea/*
+*/.settings/*
+*.iml*
+dependency-reduced-pom.xml

+ 2 - 1
.vscode/settings.json

@@ -1,3 +1,4 @@
 {
 {
-  "java.configuration.updateBuildConfiguration": "automatic"
+  "java.configuration.updateBuildConfiguration": "automatic",
+  "java.compile.nullAnalysis.mode": "disabled"
 }
 }

+ 0 - 41
Odds/.classpath

@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-18">
-		<attributes>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry including="**/*.java" kind="src" output="target/classes" path="src">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" path="target/generated-sources/annotations">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-			<attribute name="ignore_optional_problems" value="true"/>
-			<attribute name="m2e-apt" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" output="target/test-classes" path="target/generated-test-sources/test-annotations">
-		<attributes>
-			<attribute name="optional" value="true"/>
-			<attribute name="maven.pomderived" value="true"/>
-			<attribute name="ignore_optional_problems" value="true"/>
-			<attribute name="m2e-apt" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="src" path=".apt_generated">
-		<attributes>
-			<attribute name="optional" value="true"/>
-		</attributes>
-	</classpathentry>
-	<classpathentry kind="output" path="target/classes"/>
-</classpath>

+ 2 - 0
Odds/.gitignore

@@ -3,3 +3,5 @@
 /.settings/
 /.settings/
 .classpath
 .classpath
 /.apt_generated/
 /.apt_generated/
+.project
+.lck

+ 0 - 30
Odds/.project

@@ -1,30 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>Odds</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.statet.r.resourceProjects.RBuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-		<buildCommand>
-			<name>org.eclipse.m2e.core.maven2Builder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.m2e.core.maven2Nature</nature>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-		<nature>org.eclipse.statet.ide.resourceProjects.Statet</nature>
-		<nature>org.eclipse.statet.r.resourceProjects.R</nature>
-	</natures>
-</projectDescription>

+ 0 - 576
Odds/.settings/org.eclipse.jdt.core.prefs

@@ -1,576 +0,0 @@
-eclipse.preferences.version=1
-enableParallelJavaIndexSearch=true
-org.eclipse.jdt.core.builder.annotationPath.allLocations=disabled
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=
-org.eclipse.jdt.core.circularClasspath=warning
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.mainOnlyProjectHasTestOnlyDependency=error
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
-org.eclipse.jdt.core.codeComplete.argumentPrefixes=
-org.eclipse.jdt.core.codeComplete.argumentSuffixes=
-org.eclipse.jdt.core.codeComplete.camelCaseMatch=enabled
-org.eclipse.jdt.core.codeComplete.deprecationCheck=disabled
-org.eclipse.jdt.core.codeComplete.discouragedReferenceCheck=disabled
-org.eclipse.jdt.core.codeComplete.fieldPrefixes=
-org.eclipse.jdt.core.codeComplete.fieldSuffixes=
-org.eclipse.jdt.core.codeComplete.forbiddenReferenceCheck=enabled
-org.eclipse.jdt.core.codeComplete.forceImplicitQualification=disabled
-org.eclipse.jdt.core.codeComplete.localPrefixes=
-org.eclipse.jdt.core.codeComplete.localSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldPrefixes=
-org.eclipse.jdt.core.codeComplete.staticFinalFieldSuffixes=
-org.eclipse.jdt.core.codeComplete.subwordMatch=disabled
-org.eclipse.jdt.core.codeComplete.suggestStaticImports=enabled
-org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
-org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.lambda.genericSignature=do not generate
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.shareCommonFinallyBlocks=disabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=18
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=18
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.doc.comment.support=enabled
-org.eclipse.jdt.core.compiler.emulateJavacBug8031744=enabled
-org.eclipse.jdt.core.compiler.generateClassFiles=enabled
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.APILeak=warning
-org.eclipse.jdt.core.compiler.problem.annotatedTypeArgumentToUnannotated=info
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deadCodeInTrivialIfStatement=disabled
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
-org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.invalidJavadoc=ignore
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTags=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsDeprecatedRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsNotVisibleRef=disabled
-org.eclipse.jdt.core.compiler.problem.invalidJavadocTagsVisibility=public
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=ignore
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocComments=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocCommentsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagDescription=return_tag
-org.eclipse.jdt.core.compiler.problem.missingJavadocTags=ignore
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsMethodTypeParameters=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.missingJavadocTagsVisibility=public
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingMethodWithoutSuperInvocation=ignore
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.suppressWarningsNotFullyAnalysed=info
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.tasks=warning
-org.eclipse.jdt.core.compiler.problem.terminalDeprecation=warning
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.uninternedIdentityComparison=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentType=warning
-org.eclipse.jdt.core.compiler.problem.unlikelyCollectionMethodArgumentTypeStrict=disabled
-org.eclipse.jdt.core.compiler.problem.unlikelyEqualsArgumentType=info
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unstableAutoModuleName=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeArgumentsForMethodInvocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.processAnnotations=enabled
-org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=18
-org.eclipse.jdt.core.compiler.storeAnnotations=disabled
-org.eclipse.jdt.core.compiler.taskCaseSensitive=enabled
-org.eclipse.jdt.core.compiler.taskPriorities=NORMAL,HIGH,NORMAL
-org.eclipse.jdt.core.compiler.taskTags=TODO,FIXME,XXX
-org.eclipse.jdt.core.computeJavaBuildOrder=ignore
-org.eclipse.jdt.core.encoding=utf8
-org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
-org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
-org.eclipse.jdt.core.formatter.align_selector_in_method_invocation_on_expression_first_line=true
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
-org.eclipse.jdt.core.formatter.align_with_spaces=false
-org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_enum_constant=49
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_field=49
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_local_variable=49
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_method=49
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_package=49
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_parameter=0
-org.eclipse.jdt.core.formatter.alignment_for_annotations_on_type=49
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assertion_message=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_arrow=16
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_switch_case_with_colon=16
-org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
-org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_record_components=16
-org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
-org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_switch_case_with_arrow=20
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_type_annotations=0
-org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
-org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
-org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
-org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
-org.eclipse.jdt.core.formatter.comment.line_length=80
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_permitted_types=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
-org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_permitted_types=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=false
-org.eclipse.jdt.core.formatter.join_wrapped_lines=false
-org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_switch_body_block_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_switch_case_with_arrow_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
-org.eclipse.jdt.core.formatter.lineSplit=120
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
-org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=space
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.text_block_indentation=0
-org.eclipse.jdt.core.formatter.use_on_off_tags=true
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
-org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
-org.eclipse.jdt.core.formatter.wrap_before_switch_case_arrow_operator=false
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
-org.eclipse.jdt.core.timeoutForParameterNameFromAttachedJavadoc=50

+ 0 - 46
Odds/dependency-reduced-pom.xml

@@ -1,46 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>Odds</groupId>
-  <artifactId>Odds</artifactId>
-  <version>0.0.1-SNAPSHOT</version>
-  <build>
-    <sourceDirectory>src</sourceDirectory>
-    <plugins>
-      <plugin>
-        <artifactId>maven-compiler-plugin</artifactId>
-        <version>3.8.1</version>
-        <configuration>
-          <source>18</source>
-          <target>18</target>
-        </configuration>
-      </plugin>
-      <plugin>
-        <artifactId>maven-shade-plugin</artifactId>
-        <version>3.4.1</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <goals>
-              <goal>shade</goal>
-            </goals>
-            <configuration>
-              <transformers>
-                <transformer>
-                  <mainClass>main.Main</mainClass>
-                </transformer>
-              </transformers>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-    </plugins>
-  </build>
-  <repositories>
-    <repository>
-      <id>nordhs-repo</id>
-      <name>Nords Repo</name>
-      <url>http://nordh.xyz:9099/repository/nordhs-repo/</url>
-    </repository>
-  </repositories>
-</project>

+ 3 - 3
Odds/src/main/Main.java

@@ -50,13 +50,13 @@ public class Main {
         final OddsPortal op = new OddsPortal();
         final OddsPortal op = new OddsPortal();
 
 
         System.out.println("Getting One days ago matches");
         System.out.println("Getting One days ago matches");
-        op.getMatches(LocalDateTime.now().plusDays(-1));
+        //op.getMatches(LocalDateTime.now().plusDays(-1));
         System.out.println("Getting Todays matches");
         System.out.println("Getting Todays matches");
         op.getMatches(LocalDateTime.now().plusDays(0));
         op.getMatches(LocalDateTime.now().plusDays(0));
         System.out.println("Getting Tomorrows matches");
         System.out.println("Getting Tomorrows matches");
-        op.getMatches(LocalDateTime.now().plusDays(1));
+        //op.getMatches(LocalDateTime.now().plusDays(1));
         System.out.println("Getting Next days matches");
         System.out.println("Getting Next days matches");
-        op.getMatches(LocalDateTime.now().plusDays(2));
+        //op.getMatches(LocalDateTime.now().plusDays(2));
     }
     }
 
 
 }
 }

+ 1 - 0
Odds/src/parser/OddsPortal.java

@@ -149,6 +149,7 @@ public class OddsPortal extends ParserBase implements ParserJoinedFunctions {
             try {
             try {
                 WebElement element = divs.get(i);
                 WebElement element = divs.get(i);
                 scrollElementIntoView(driver, element);
                 scrollElementIntoView(driver, element);
+                scrollElementIntoView(driver, element);
                 ResultDTO result = new ResultDTO(SOCCER_RESULTS_TABLE_NAME);
                 ResultDTO result = new ResultDTO(SOCCER_RESULTS_TABLE_NAME);
 
 
                 boolean somethingWrong = false;
                 boolean somethingWrong = false;

+ 2 - 2
OddsJavaFx/.project

@@ -34,12 +34,12 @@
 	</natures>
 	</natures>
 	<filteredResources>
 	<filteredResources>
 		<filter>
 		<filter>
-			<id>1657788801035</id>
+			<id>1712071853108</id>
 			<name></name>
 			<name></name>
 			<type>30</type>
 			<type>30</type>
 			<matcher>
 			<matcher>
 				<id>org.eclipse.core.resources.regexFilterMatcher</id>
 				<id>org.eclipse.core.resources.regexFilterMatcher</id>
-				<arguments>node_modules|.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
+				<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
 			</matcher>
 			</matcher>
 		</filter>
 		</filter>
 	</filteredResources>
 	</filteredResources>

+ 6 - 6
OddsJavaFx/.settings/org.eclipse.jdt.core.prefs

@@ -31,13 +31,13 @@ org.eclipse.jdt.core.codeComplete.suggestStaticImports=enabled
 org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
 org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
 org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
 org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
 org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
 org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=javax.annotation.Nonnull
+org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
 org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
 org.eclipse.jdt.core.compiler.annotation.nonnull.secondary=
 org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
 org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
 org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
 org.eclipse.jdt.core.compiler.annotation.nonnullbydefault.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullable=javax.annotation.Nullable
+org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
 org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
 org.eclipse.jdt.core.compiler.annotation.nullable.secondary=
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=enabled
+org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
 org.eclipse.jdt.core.compiler.codegen.lambda.genericSignature=do not generate
 org.eclipse.jdt.core.compiler.codegen.lambda.genericSignature=do not generate
 org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
 org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
@@ -107,16 +107,16 @@ org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
 org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
 org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
 org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
 org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
 org.eclipse.jdt.core.compiler.problem.nonnullTypeVariableFromLegacyInvocation=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=warning
+org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
 org.eclipse.jdt.core.compiler.problem.nullReference=warning
 org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=warning
+org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
 org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
 org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
 org.eclipse.jdt.core.compiler.problem.overridingMethodWithoutSuperInvocation=ignore
 org.eclipse.jdt.core.compiler.problem.overridingMethodWithoutSuperInvocation=ignore
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
 org.eclipse.jdt.core.compiler.problem.pessimisticNullAnalysisForFreeTypeVariables=warning
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
 org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
 org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
 org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=ignore
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

+ 1 - 1
OddsJavaFx/OddsFx.iml

@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?xml version="1.0" encoding="UTF-8"?>
 <module version="4">
 <module version="4">
   <component name="SonarLintModuleSettings">
   <component name="SonarLintModuleSettings">
-    <option name="uniqueId" value="a1175abb-cb66-4bbb-b5f6-83a865cc592f" />
+    <option name="uniqueId" value="88f633da-5128-4ffc-97f4-37ed6e965a1d" />
   </component>
   </component>
 </module>
 </module>

+ 6 - 5
OddsJavaFx/pom.xml

@@ -19,8 +19,9 @@
         <sourceDirectory>src</sourceDirectory>
         <sourceDirectory>src</sourceDirectory>
         <plugins>
         <plugins>
             <plugin>
             <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <artifactId>maven-compiler-plugin</artifactId>
-                <version>3.10.1</version>
+                <version>3.12.1</version>
             </plugin>
             </plugin>
             <plugin>
             <plugin>
                 <groupId>org.openjfx</groupId>
                 <groupId>org.openjfx</groupId>
@@ -72,12 +73,12 @@
         <dependency>
         <dependency>
             <groupId>org.openjfx</groupId>
             <groupId>org.openjfx</groupId>
             <artifactId>javafx-controls</artifactId>
             <artifactId>javafx-controls</artifactId>
-            <version>19-ea+8</version>
+            <version>22.0.1</version>
         </dependency>
         </dependency>
         <dependency>
         <dependency>
             <groupId>org.openjfx</groupId>
             <groupId>org.openjfx</groupId>
             <artifactId>javafx-fxml</artifactId>
             <artifactId>javafx-fxml</artifactId>
-            <version>19-ea+8</version>
+            <version>22.0.1</version>
         </dependency>
         </dependency>
         <dependency>
         <dependency>
             <groupId>com.google.guava</groupId>
             <groupId>com.google.guava</groupId>
@@ -93,13 +94,13 @@
         <dependency>
         <dependency>
             <groupId>org.seleniumhq.selenium</groupId>
             <groupId>org.seleniumhq.selenium</groupId>
             <artifactId>selenium-java</artifactId>
             <artifactId>selenium-java</artifactId>
-            <version>4.12.1</version>
+            <version>4.19.1</version>
         </dependency>
         </dependency>
         <!-- https://mvnrepository.com/artifact/io.github.bonigarcia/webdrivermanager -->
         <!-- https://mvnrepository.com/artifact/io.github.bonigarcia/webdrivermanager -->
         <dependency>
         <dependency>
             <groupId>io.github.bonigarcia</groupId>
             <groupId>io.github.bonigarcia</groupId>
             <artifactId>webdrivermanager</artifactId>
             <artifactId>webdrivermanager</artifactId>
-            <version>5.5.3</version>
+            <version>5.8.0</version>
         </dependency>
         </dependency>
 
 
     </dependencies>
     </dependencies>

+ 29 - 36
OddsJavaFx/src/controllers/AnalysisTestController.java

@@ -1,28 +1,12 @@
 package controllers;
 package controllers;
 
 
-import java.math.RoundingMode;
-import java.net.URL;
-import java.text.DecimalFormat;
-import java.text.DecimalFormatSymbols;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Optional;
-import java.util.ResourceBundle;
-
 import data.GuiMysql;
 import data.GuiMysql;
 import javafx.collections.FXCollections;
 import javafx.collections.FXCollections;
 import javafx.collections.ObservableList;
 import javafx.collections.ObservableList;
 import javafx.event.ActionEvent;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.fxml.FXML;
 import javafx.fxml.Initializable;
 import javafx.fxml.Initializable;
-import javafx.scene.control.Button;
-import javafx.scene.control.DatePicker;
-import javafx.scene.control.TableCell;
-import javafx.scene.control.TableColumn;
-import javafx.scene.control.TableView;
-import javafx.scene.control.TextField;
+import javafx.scene.control.*;
 import javafx.scene.control.cell.MapValueFactory;
 import javafx.scene.control.cell.MapValueFactory;
 import javafx.scene.control.cell.PropertyValueFactory;
 import javafx.scene.control.cell.PropertyValueFactory;
 import javafx.scene.control.cell.TextFieldTableCell;
 import javafx.scene.control.cell.TextFieldTableCell;
@@ -34,6 +18,12 @@ import objects.SoccerMatchAnalysis;
 import objects.bets.Bet;
 import objects.bets.Bet;
 import objects.bets.Bet.Status;
 import objects.bets.Bet.Status;
 
 
+import java.math.RoundingMode;
+import java.net.URL;
+import java.text.DecimalFormat;
+import java.text.DecimalFormatSymbols;
+import java.util.*;
+
 @SuppressWarnings("rawtypes")
 @SuppressWarnings("rawtypes")
 public class AnalysisTestController implements Initializable {
 public class AnalysisTestController implements Initializable {
 
 
@@ -307,30 +297,33 @@ public class AnalysisTestController implements Initializable {
 
 
         return returnValue;
         return returnValue;
     }
     }
-
-    private Integer getAnalyzeValue(SoccerMatch soccerMatch) {
+    /**
+     * Calculate and return the analyze value based on the given soccer match.
+     *
+     * @param  soccerMatch    the soccer match to analyze
+     * @return                the calculated analyze value
+     */
+    private int getAnalyzeValue(SoccerMatch soccerMatch) {
         int result = 0;
         int result = 0;
 
 
         SoccerMatchAnalysis analysis = new SoccerMatchAnalysis(soccerMatch);
         SoccerMatchAnalysis analysis = new SoccerMatchAnalysis(soccerMatch);
-        League leagueInfo = GuiMysql.getInstance().getLeagueInfo(soccerMatch.getHomeTeam().getTeamLeagueId());
-        if (leagueInfo != null) {
-            int homeWinsCount = analysis.winLossRatio(leagueInfo.getWinLossRatio(), true);
-            int awayWinsCount = analysis.winLossRatio(leagueInfo.getWinLossRatio(), false);
-
-            int homeWinLossRatioCount = analysis.winLossRatioHomeAndAway(true,
-                    leagueInfo.getWinLossRatioHomeAndAway());
-            int awayWinLossRatioCount = analysis.winLossRatioHomeAndAway(false,
-                    leagueInfo.getWinLossRatioHomeAndAway());
-
-            int homeScoringTotal = analysis.scoringTotal(leagueInfo.getScoringTotal(), true);
-            int awayScoringTotal = analysis.scoringTotal(leagueInfo.getScoringTotal(), false);
-
-            int scoringDiffLastGames = analysis.getScoringDiffLastGames(leagueInfo.getScoringDiffLastGame());
-            int winsCountDiff = homeWinsCount - awayWinsCount;
-            int winLossRatioDiff = homeWinLossRatioCount - awayWinLossRatioCount;
+        League league = GuiMysql.getInstance().getLeagueInfo(soccerMatch.getHomeTeam().getTeamLeagueId());
+        if (league != null) {
+            int homeWins = analysis.winLossRatio(league.getWinLossRatio(), true);
+            int awayWins = analysis.winLossRatio(league.getWinLossRatio(), false);
+
+            int homeWinLossRatio = analysis.winLossRatioHomeAndAway(true, league.getWinLossRatioHomeAndAway());
+            int awayWinLossRatio = analysis.winLossRatioHomeAndAway(false, league.getWinLossRatioHomeAndAway());
+
+            int homeScoringTotal = analysis.scoringTotal(league.getScoringTotal(), true);
+            int awayScoringTotal = analysis.scoringTotal(league.getScoringTotal(), false);
+
+            int scoringDiffLastGames = analysis.getScoringDiffLastGames(league.getScoringDiffLastGame());
+            int winsCountDiff = homeWins - awayWins;
+            int winLossRatioDiff = homeWinLossRatio - awayWinLossRatio;
             int scoringTotalDiff = homeScoringTotal - awayScoringTotal;
             int scoringTotalDiff = homeScoringTotal - awayScoringTotal;
 
 
-            if ((scoringDiffLastGames < 0 && winsCountDiff < 0 && winLossRatioDiff < 0 && scoringTotalDiff < 0) ||
+            if (scoringDiffLastGames < 0 && winsCountDiff < 0 && winLossRatioDiff < 0 && scoringTotalDiff < 0 ||
                     scoringDiffLastGames > 0 && winsCountDiff > 0 && winLossRatioDiff > 0 && scoringTotalDiff > 0) {
                     scoringDiffLastGames > 0 && winsCountDiff > 0 && winLossRatioDiff > 0 && scoringTotalDiff > 0) {
                 result = (scoringDiffLastGames + winsCountDiff + winLossRatioDiff + scoringTotalDiff) / 4;
                 result = (scoringDiffLastGames + winsCountDiff + winLossRatioDiff + scoringTotalDiff) / 4;
             }
             }

+ 58 - 0
OddsJavaFx/src/controllers/AnalyzerController.java

@@ -0,0 +1,58 @@
+package controllers;
+
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.ResourceBundle;
+
+import data.GuiMysql;
+import dev.failsafe.internal.util.Lists;
+import javafx.fxml.FXML;
+import javafx.fxml.Initializable;
+import javafx.scene.control.CheckBox;
+import javafx.scene.control.Label;
+import javafx.scene.control.TextField;
+import javafx.scene.layout.HBox;
+import javafx.scene.layout.Priority;
+import javafx.scene.layout.VBox;
+import objects.League;
+
+public class AnalyzerController implements Initializable {
+
+    @FXML
+    VBox leagueList;
+
+    @FXML
+    Label bankLabel;
+    @FXML
+    TextField bankTextField;
+    @FXML
+    Label percentLabel;
+    @FXML
+    TextField percentTextField;
+    @FXML
+    HBox topPanelBox;
+
+    @Override
+    public void initialize(URL arg0, ResourceBundle arg1) {
+        HBox.setHgrow(leagueList, Priority.ALWAYS);
+        populateLeagueList();
+
+    }
+
+    private void populateLeagueList() {
+        List<League> leagues = GuiMysql.getInstance().getLeagues(GuiMysql.getInstance().getSportId("Soccer"));
+
+        for (League league : leagues) {
+            CheckBox c = new CheckBox(league.getLeagueName() + " (" + league.getCountryName() + ")");
+            c.selectedProperty().set(league.isPrio());
+            leagueList.getChildren().add(c);
+        }
+    }
+
+    @FXML
+    private void runTest() {
+
+    }
+}

+ 17 - 37
OddsJavaFx/src/controllers/MatchTabController.java

@@ -1,39 +1,16 @@
 package controllers;
 package controllers;
 
 
-import java.math.BigDecimal;
-import java.math.RoundingMode;
-import java.net.URL;
-import java.text.DecimalFormat;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.ResourceBundle;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.function.Function;
-import java.util.function.Predicate;
-import java.util.stream.Collectors;
-
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
-
 import data.GuiMysql;
 import data.GuiMysql;
 import javafx.beans.binding.Bindings;
 import javafx.beans.binding.Bindings;
 import javafx.beans.property.StringProperty;
 import javafx.beans.property.StringProperty;
-import javafx.beans.value.ChangeListener;
 import javafx.collections.FXCollections;
 import javafx.collections.FXCollections;
 import javafx.collections.ObservableList;
 import javafx.collections.ObservableList;
 import javafx.event.ActionEvent;
 import javafx.event.ActionEvent;
 import javafx.fxml.FXML;
 import javafx.fxml.FXML;
 import javafx.fxml.Initializable;
 import javafx.fxml.Initializable;
 import javafx.scene.Node;
 import javafx.scene.Node;
-import javafx.scene.control.Button;
-import javafx.scene.control.ComboBox;
-import javafx.scene.control.TableCell;
-import javafx.scene.control.TableColumn;
-import javafx.scene.control.TablePosition;
-import javafx.scene.control.TableView;
-import javafx.scene.control.TextField;
+import javafx.scene.control.*;
 import javafx.scene.control.cell.PropertyValueFactory;
 import javafx.scene.control.cell.PropertyValueFactory;
 import javafx.scene.control.cell.TextFieldTableCell;
 import javafx.scene.control.cell.TextFieldTableCell;
 import javafx.util.Callback;
 import javafx.util.Callback;
@@ -42,6 +19,16 @@ import javafx.util.converter.FloatStringConverter;
 import objects.BetDTO;
 import objects.BetDTO;
 import objects.SoccerMatch;
 import objects.SoccerMatch;
 
 
+import java.math.BigDecimal;
+import java.math.RoundingMode;
+import java.net.URL;
+import java.text.DecimalFormat;
+import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.function.Function;
+import java.util.function.Predicate;
+import java.util.stream.Collectors;
+
 @SuppressWarnings("rawtypes")
 @SuppressWarnings("rawtypes")
 public class MatchTabController implements Initializable {
 public class MatchTabController implements Initializable {
 
 
@@ -123,7 +110,6 @@ public class MatchTabController implements Initializable {
     private ObservableList<SoccerMatch> coutryFilteredMatches;
     private ObservableList<SoccerMatch> coutryFilteredMatches;
     private List<SoccerMatch> upcomingMatches;
     private List<SoccerMatch> upcomingMatches;
     private int countryId;
     private int countryId;
-    private static final String FLOAT_FORMAT = "%.02f";
 
 
     private ObservableList<String> betSeriesOptions = FXCollections.observableArrayList();
     private ObservableList<String> betSeriesOptions = FXCollections.observableArrayList();
     private List<BetDTO> dbBetSeries;
     private List<BetDTO> dbBetSeries;
@@ -214,19 +200,15 @@ public class MatchTabController implements Initializable {
 
 
         betAmountTextField.setText(GuiMysql.getInstance().getBetBaseAmount());
         betAmountTextField.setText(GuiMysql.getInstance().getBetBaseAmount());
 
 
-        betAmountTextField.focusedProperty().addListener(new ChangeListener<Boolean>() {
-            @Override
-            public void changed(javafx.beans.value.ObservableValue<? extends Boolean> observable, Boolean oldValue,
-                    Boolean newValue) {
-                if (!newValue) { // Textfield focus lost
-                    GuiMysql.getInstance().updateBetBaseAmount(betAmountTextField.getText());
-                }
-            };
+        betAmountTextField.focusedProperty().addListener((observable, oldValue, newValue) -> {
+            if (!newValue) { // Textfield focus lost
+                GuiMysql.getInstance().updateBetBaseAmount(betAmountTextField.getText());
+            }
         });
         });
     }
     }
 
 
     private void setBetAmount(SoccerMatch soccerMatch) {
     private void setBetAmount(SoccerMatch soccerMatch) {
-        if (betAmountTextField.getText().length() > 0) {
+        if (!betAmountTextField.getText().isEmpty()) {
             float betAmountValue = Float.parseFloat(betAmountTextField.getText());
             float betAmountValue = Float.parseFloat(betAmountTextField.getText());
             soccerMatch.setBetAmount(betAmountValue * (soccerMatch.getPercentageToBet() / 100f));
             soccerMatch.setBetAmount(betAmountValue * (soccerMatch.getPercentageToBet() / 100f));
         }
         }
@@ -434,7 +416,7 @@ public class MatchTabController implements Initializable {
     @FXML
     @FXML
     public void addRowAction(ActionEvent event) {
     public void addRowAction(ActionEvent event) {
         ObservableList<TablePosition> selectedCells = matchTable.getSelectionModel().getSelectedCells();
         ObservableList<TablePosition> selectedCells = matchTable.getSelectionModel().getSelectedCells();
-        if (selectedCells.size() > 0) {
+        if (!selectedCells.isEmpty()) {
             SoccerMatch selectedRow = matchTable.getItems().get(selectedCells.get(0).getRow());
             SoccerMatch selectedRow = matchTable.getItems().get(selectedCells.get(0).getRow());
             BetDTO betDTO = new BetDTO();
             BetDTO betDTO = new BetDTO();
             betDTO.setCountryId(countryId);
             betDTO.setCountryId(countryId);
@@ -450,8 +432,6 @@ public class MatchTabController implements Initializable {
             betDTO.setGameId(selectedRow.getMatchId());
             betDTO.setGameId(selectedRow.getMatchId());
 
 
             betObservableList.add(betDTO);
             betObservableList.add(betDTO);
-        } else {
-            System.out.println("No row selected");
         }
         }
     }
     }
 
 

+ 19 - 0
OddsJavaFx/src/controllers/TestsController.java

@@ -2,6 +2,7 @@ package controllers;
 
 
 import java.net.URL;
 import java.net.URL;
 import java.time.LocalDate;
 import java.time.LocalDate;
+import java.time.LocalDateTime;
 import java.util.AbstractMap.SimpleEntry;
 import java.util.AbstractMap.SimpleEntry;
 import java.util.List;
 import java.util.List;
 import java.util.Optional;
 import java.util.Optional;
@@ -27,6 +28,7 @@ import javafx.scene.control.TextField;
 import javafx.scene.layout.AnchorPane;
 import javafx.scene.layout.AnchorPane;
 import javafx.scene.layout.Priority;
 import javafx.scene.layout.Priority;
 import javafx.scene.layout.VBox;
 import javafx.scene.layout.VBox;
+import objects.League;
 import parser.OddsPortal;
 import parser.OddsPortal;
 import tests.AddedScoringTest;
 import tests.AddedScoringTest;
 import tests.AnalysisBettDrawTester;
 import tests.AnalysisBettDrawTester;
@@ -431,4 +433,21 @@ public class TestsController implements Initializable {
         final PrioCountriesAll prioCountriesAll = new PrioCountriesAll();
         final PrioCountriesAll prioCountriesAll = new PrioCountriesAll();
         prioCountriesAll.runTest();
         prioCountriesAll.runTest();
     }
     }
+
+    @FXML
+    private void updatePrioLeagues() {
+        List<League> leaguesWithPrio = GuiMysql.getInstance().getLeaguesWithPrio();
+
+        for (League league : leaguesWithPrio) {
+            long startTime = System.currentTimeMillis();
+            System.out.println("Starting with " + league.getLeagueName() + " " + new java.util.Date());
+            RelevanceTest test = new RelevanceTest();
+            test.setup("", -1, -1, 0.0f, -1, -1, -1, league.getLeagueId());
+
+            test.runTest();
+            long endTime = System.currentTimeMillis();
+            System.out.println("Done with " + league.getLeagueName() + " " + new java.util.Date()
+                    + " took " + new java.util.Date(System.currentTimeMillis() + (endTime - startTime)));
+        }
+    }
 }
 }

+ 172 - 86
OddsJavaFx/src/data/GuiMysql.java

@@ -1,7 +1,9 @@
 package data;
 package data;
 
 
+import java.io.IOException;
 import java.math.BigDecimal;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.math.RoundingMode;
+import java.sql.Array;
 import java.sql.Connection;
 import java.sql.Connection;
 import java.sql.PreparedStatement;
 import java.sql.PreparedStatement;
 import java.sql.ResultSet;
 import java.sql.ResultSet;
@@ -12,12 +14,17 @@ import java.text.SimpleDateFormat;
 import java.time.LocalDateTime;
 import java.time.LocalDateTime;
 import java.util.*;
 import java.util.*;
 import java.util.AbstractMap.SimpleEntry;
 import java.util.AbstractMap.SimpleEntry;
+import java.util.logging.FileHandler;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.util.logging.SimpleFormatter;
 
 
 import objects.*;
 import objects.*;
 import org.eclipse.jetty.util.log.Log;
 import org.eclipse.jetty.util.log.Log;
 
 
 import com.google.common.base.Strings;
 import com.google.common.base.Strings;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Lists;
+import com.mysql.cj.x.protobuf.MysqlxPrepare.Prepare;
 
 
 import mysql.Mysql;
 import mysql.Mysql;
 import objects.bets.Bet;
 import objects.bets.Bet;
@@ -42,9 +49,22 @@ public class GuiMysql extends Mysql {
     public static final String GAME_DATE = "gameDate";
     public static final String GAME_DATE = "gameDate";
     private final Connection conn;
     private final Connection conn;
 
 
+    private Logger settingsLogger = Logger.getLogger("SettingsLogger");
+    FileHandler settingsLoggerFileHandler;
+
     protected GuiMysql() {
     protected GuiMysql() {
         super();
         super();
         conn = this.getConnection();
         conn = this.getConnection();
+        try {
+            settingsLoggerFileHandler = new FileHandler(System.getProperty("user.dir") + "/SettingsLogger.log");
+            settingsLogger.addHandler(settingsLoggerFileHandler);
+            settingsLogger.setLevel(Level.ALL);
+            SimpleFormatter formatter = new SimpleFormatter();
+            settingsLoggerFileHandler.setFormatter(formatter);
+
+        } catch (SecurityException | IOException e) {
+            e.printStackTrace();
+        }
     }
     }
 
 
     public static GuiMysql getInstance() {
     public static GuiMysql getInstance() {
@@ -158,13 +178,12 @@ public class GuiMysql extends Mysql {
     public List<Bet> getAnalysisBetStatistics() {
     public List<Bet> getAnalysisBetStatistics() {
         List<Bet> result = new ArrayList<>();
         List<Bet> result = new ArrayList<>();
 
 
-        String sql =
-                "SELECT sr.id as soccerMatchId, ht.id as homeTeamId, awt.id as awayTeamId, sr.odds1, sr.oddsX, " +
-                        "sr.odds2, " + "sr.homeScore, sr.awayScore, sr.gameDate, sr.season, l.name as leagueName, abt" +
-                        ".id as betId, abt" + ".bet, abt.betAmount, abt.betOdds " + "FROM AnalysisBetTable abt " +
-                        "INNER JOIN SoccerResults sr ON abt.matchId = sr.id " + "INNER JOIN Team ht ON ht.id = sr" +
-                        ".homeTeamId " + "INNER JOIN Team awt ON awt.id = sr.awayTeamId " + "INNER JOIN League l ON l" +
-                        ".id = sr.leagueId " + "WHERE abt.status != 'OPEN'";
+        String sql = "SELECT sr.id as soccerMatchId, ht.id as homeTeamId, awt.id as awayTeamId, sr.odds1, sr.oddsX, " +
+                "sr.odds2, " + "sr.homeScore, sr.awayScore, sr.gameDate, sr.season, l.name as leagueName, abt" +
+                ".id as betId, abt" + ".bet, abt.betAmount, abt.betOdds " + "FROM AnalysisBetTable abt " +
+                "INNER JOIN SoccerResults sr ON abt.matchId = sr.id " + "INNER JOIN Team ht ON ht.id = sr" +
+                ".homeTeamId " + "INNER JOIN Team awt ON awt.id = sr.awayTeamId " + "INNER JOIN League l ON l" +
+                ".id = sr.leagueId " + "WHERE abt.status != 'OPEN'";
 
 
         try (PreparedStatement stat = getConnection().prepareStatement(sql)) {
         try (PreparedStatement stat = getConnection().prepareStatement(sql)) {
             ResultSet rs = stat.executeQuery();
             ResultSet rs = stat.executeQuery();
@@ -216,10 +235,12 @@ public class GuiMysql extends Mysql {
     public List<Float> getAvgAwayScoreThisSeason(int teamId, int countryId, int leagueId, String gameDate) {
     public List<Float> getAvgAwayScoreThisSeason(int teamId, int countryId, int leagueId, String gameDate) {
         final ArrayList<Float> returnValue = Lists.newArrayList();
         final ArrayList<Float> returnValue = Lists.newArrayList();
         final String sql = "SELECT AVG(homeScore) as avgConcededSeason, AVG(awayScore) as avgScoredSeason FROM " +
         final String sql = "SELECT AVG(homeScore) as avgConcededSeason, AVG(awayScore) as avgScoredSeason FROM " +
-                "SoccerResults WHERE awayScore != -1 AND awayTeamId = ? AND season = ? AND DATE(gameDate) < ? ORDER " + "BY gameDate ASC";
+                "SoccerResults WHERE awayScore != -1 AND awayTeamId = ? AND season = ? AND DATE(gameDate) < ? ORDER "
+                + "BY gameDate ASC";
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             stat.setInt(1, teamId);
             stat.setInt(1, teamId);
-            if (Strings.isNullOrEmpty(gameDate) || getSeasonFromDate(countryId, leagueId, gameDate).equals(getLastSeason(countryId, leagueId))) {
+            if (Strings.isNullOrEmpty(gameDate)
+                    || getSeasonFromDate(countryId, leagueId, gameDate).equals(getLastSeason(countryId, leagueId))) {
                 stat.setString(2, getLastSeason(countryId, leagueId));
                 stat.setString(2, getLastSeason(countryId, leagueId));
             } else {
             } else {
                 String seasonFromDate = getSeasonFromDate(countryId, leagueId, gameDate);
                 String seasonFromDate = getSeasonFromDate(countryId, leagueId, gameDate);
@@ -273,11 +294,13 @@ public class GuiMysql extends Mysql {
     public List<Float> getAvgHomeScoreThisSeason(int teamId, int countryId, int leagueId, String gameDate) {
     public List<Float> getAvgHomeScoreThisSeason(int teamId, int countryId, int leagueId, String gameDate) {
         final ArrayList<Float> returnValue = Lists.newArrayList();
         final ArrayList<Float> returnValue = Lists.newArrayList();
         final String sql = "SELECT AVG(homeScore) as avgScoredSeason, AVG(awayScore) as avgConcededSeason FROM " +
         final String sql = "SELECT AVG(homeScore) as avgScoredSeason, AVG(awayScore) as avgConcededSeason FROM " +
-                "SoccerResults WHERE homeScore != -1 AND homeTeamId = ? AND season = ? AND DATE(gameDate) < ? ORDER " + "BY gameDate ASC";
+                "SoccerResults WHERE homeScore != -1 AND homeTeamId = ? AND season = ? AND DATE(gameDate) < ? ORDER "
+                + "BY gameDate ASC";
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             stat.setInt(1, teamId);
             stat.setInt(1, teamId);
 
 
-            if (Strings.isNullOrEmpty(gameDate) || getSeasonFromDate(countryId, leagueId, gameDate).equals(getLastSeason(countryId, leagueId))) {
+            if (Strings.isNullOrEmpty(gameDate)
+                    || getSeasonFromDate(countryId, leagueId, gameDate).equals(getLastSeason(countryId, leagueId))) {
                 stat.setString(2, getLastSeason(countryId, leagueId));
                 stat.setString(2, getLastSeason(countryId, leagueId));
             } else {
             } else {
                 String seasonFromDate = getSeasonFromDate(countryId, leagueId, gameDate);
                 String seasonFromDate = getSeasonFromDate(countryId, leagueId, gameDate);
@@ -392,9 +415,9 @@ public class GuiMysql extends Mysql {
     }
     }
 
 
     public List<SimpleEntry<Integer, String>> getCountriesBySport(int sportId, String date) {
     public List<SimpleEntry<Integer, String>> getCountriesBySport(int sportId, String date) {
-        final String sql =
-                "SELECT * FROM Country WHERE id IN (SELECT DISTINCT(countryId) FROM SoccerResults WHERE " + "DATE" +
-                        "(gameDate) = ?) ORDER BY prio DESC, name ASC";
+        final String sql = "SELECT * FROM Country WHERE id IN (SELECT DISTINCT(countryId) FROM SoccerResults WHERE "
+                + "DATE" +
+                "(gameDate) = ?) ORDER BY prio DESC, name ASC";
         final ArrayList<SimpleEntry<Integer, String>> result = new ArrayList<>();
         final ArrayList<SimpleEntry<Integer, String>> result = new ArrayList<>();
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             if (date.equals("")) {
             if (date.equals("")) {
@@ -474,9 +497,9 @@ public class GuiMysql extends Mysql {
 
 
     public String getLastSeason(Integer countryId, Integer leagueId) {
     public String getLastSeason(Integer countryId, Integer leagueId) {
         String season = "";
         String season = "";
-        final String sql =
-                "SELECT season FROM SoccerResults WHERE leagueId = ? AND countryId = ? ORDER BY season " + "DESC " +
-                        "limit 1";
+        final String sql = "SELECT season FROM SoccerResults WHERE leagueId = ? AND countryId = ? ORDER BY season "
+                + "DESC " +
+                "limit 1";
         try (PreparedStatement stmt = conn.prepareStatement(sql)) {
         try (PreparedStatement stmt = conn.prepareStatement(sql)) {
             stmt.setInt(1, leagueId);
             stmt.setInt(1, leagueId);
             stmt.setInt(2, countryId);
             stmt.setInt(2, countryId);
@@ -576,6 +599,33 @@ public class GuiMysql extends Mysql {
         return leagues;
         return leagues;
     }
     }
 
 
+    public List<League> getLeagues(int sportId) {
+        List<League> result = new ArrayList<>();
+        String sql = "SELECT l.*, c.name as cName FROM League l JOIN Country c ON l.countryId = c.id WHERE l.countryId IN (SELECT id FROM Country WHERE prio = 1) ORDER BY prio DESC, name ASC";
+
+        try (PreparedStatement stat = getConnection().prepareStatement(sql)) {
+
+            ResultSet rs = stat.executeQuery();
+
+            while (rs.next()) {
+                League l = new League(rs.getInt("id"), rs.getString("name"), rs.getInt("scoringDiffLastGame"),
+                        rs.getInt("scoringTotal"),
+                        rs.getInt("winLossRatioHomeAndAway"), rs.getInt("winLossRatio"), rs.getInt("drawDiffHomeAway"),
+                        rs.getInt("drawDiffTotalGoals"),
+                        rs.getInt("drawWinningForm"), rs.getInt("drawWinningFormHomeAway"));
+                l.setCountryName(rs.getString("cName"));
+                l.setPrio(rs.getBoolean("prio"));
+                result.add(l);
+            }
+
+        } catch (SQLException e) {
+            System.out.println("Someting wrong with sql " + sql);
+            e.printStackTrace();
+        }
+
+        return result;
+    }
+
     public List<SimpleEntry<Integer, String>> getLeaguesByDate(int sportId, int countryId, String date) {
     public List<SimpleEntry<Integer, String>> getLeaguesByDate(int sportId, int countryId, String date) {
         final ArrayList<AbstractMap.SimpleEntry<Integer, String>> leagues = Lists.newArrayList();
         final ArrayList<AbstractMap.SimpleEntry<Integer, String>> leagues = Lists.newArrayList();
         final String sql = "SELECT id, name FROM League WHERE id IN (SELECT leagueId FROM SoccerResults WHERE " +
         final String sql = "SELECT id, name FROM League WHERE id IN (SELECT leagueId FROM SoccerResults WHERE " +
@@ -620,8 +670,8 @@ public class GuiMysql extends Mysql {
 
 
             final ResultSet rs = stat.executeQuery();
             final ResultSet rs = stat.executeQuery();
             while (rs.next()) {
             while (rs.next()) {
-                final TeamStanding ts = new TeamStanding(rs.getString("teamName"), rs.getInt("wins"), rs.getInt("lost"
-                ), rs.getInt(DRAWS), rs.getInt("score"), rs.getFloat(Constants.HOME_SCORE),
+                final TeamStanding ts = new TeamStanding(rs.getString("teamName"), rs.getInt("wins"), rs.getInt("lost"),
+                        rs.getInt(DRAWS), rs.getInt("score"), rs.getFloat(Constants.HOME_SCORE),
                         rs.getFloat(Constants.AWAY_SCORE), rs.getFloat("goal_diff"));
                         rs.getFloat(Constants.AWAY_SCORE), rs.getFloat("goal_diff"));
                 result.add(ts);
                 result.add(ts);
             }
             }
@@ -635,7 +685,7 @@ public class GuiMysql extends Mysql {
     }
     }
 
 
     public List<SoccerMatch> getMatches(int sportId, Integer countryId, Integer leagueId, String date, String order,
     public List<SoccerMatch> getMatches(int sportId, Integer countryId, Integer leagueId, String date, String order,
-                                        boolean exactDate, boolean onlyPrio) {
+            boolean exactDate, boolean onlyPrio) {
         final ArrayList<SoccerMatch> matches = Lists.newArrayList();
         final ArrayList<SoccerMatch> matches = Lists.newArrayList();
         final String dateSql;
         final String dateSql;
         final String orderSql = " ORDER BY gameDate " + order;
         final String orderSql = " ORDER BY gameDate " + order;
@@ -671,7 +721,8 @@ public class GuiMysql extends Mysql {
                 "homeTeamName, aTeam.name as awayTeamName " + "FROM SoccerResults as res " + "INNER Join Team as " +
                 "homeTeamName, aTeam.name as awayTeamName " + "FROM SoccerResults as res " + "INNER Join Team as " +
                 "hTeam ON res.homeTeamId = hTeam.id AND res.leagueId = hTeam.leagueId " + "INNER Join Team as aTeam " +
                 "hTeam ON res.homeTeamId = hTeam.id AND res.leagueId = hTeam.leagueId " + "INNER Join Team as aTeam " +
                 "ON res.awayTeamId = aTeam.id AND res.leagueId = hTeam.leagueId " + "INNER JOIN League l ON res" +
                 "ON res.awayTeamId = aTeam.id AND res.leagueId = hTeam.leagueId " + "INNER JOIN League l ON res" +
-                ".leagueId = l.id " + "INNER JOIN Country c ON res.countryId = c.id " + "WHERE " + dateSql + leagueSql + countrySql + onlyPrioSql + orderSql;
+                ".leagueId = l.id " + "INNER JOIN Country c ON res.countryId = c.id " + "WHERE " + dateSql + leagueSql
+                + countrySql + onlyPrioSql + orderSql;
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             if (leagueId != null && countryId != null) {
             if (leagueId != null && countryId != null) {
                 stat.setInt(1, leagueId);
                 stat.setInt(1, leagueId);
@@ -753,23 +804,24 @@ public class GuiMysql extends Mysql {
     }
     }
 
 
     public Map<String, String> getPreviousMatches(int numberOfMatches, String homeTeamName, String awayTeamName,
     public Map<String, String> getPreviousMatches(int numberOfMatches, String homeTeamName, String awayTeamName,
-                                                  String date, int countryId, int leagueId) {
+            String date, int countryId, int leagueId) {
         Map<String, String> result = new HashMap<>();
         Map<String, String> result = new HashMap<>();
 
 
         String homeTeamSql = "SELECT * FROM SoccerResults sr INNER JOIN Team t ON sr.homeTeamId = t.id WHERE t.name " +
         String homeTeamSql = "SELECT * FROM SoccerResults sr INNER JOIN Team t ON sr.homeTeamId = t.id WHERE t.name " +
                 "=" + " ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC limit ?";
                 "=" + " ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC limit ?";
         String awayTeamSql = "SELECT * FROM SoccerResults sr INNER JOIN Team t ON sr.awayTeamId = t.id WHERE t.name " +
         String awayTeamSql = "SELECT * FROM SoccerResults sr INNER JOIN Team t ON sr.awayTeamId = t.id WHERE t.name " +
                 "=" + " ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC limit ?";
                 "=" + " ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC limit ?";
-        String combinedSql =
-                "SELECT * FROM SoccerResults sr INNER JOIN Team homeTeam ON homeTeamId = homeTeam.id " + "INNER JOIN " +
-                        "Team awayTeam ON sr.awayTeamId = awayTeam.id WHERE homeTeam.name = ? AND awayTeam.name = " + "? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC LIMIT ?";
+        String combinedSql = "SELECT * FROM SoccerResults sr INNER JOIN Team homeTeam ON homeTeamId = homeTeam.id "
+                + "INNER JOIN " +
+                "Team awayTeam ON sr.awayTeamId = awayTeam.id WHERE homeTeam.name = ? AND awayTeam.name = "
+                + "? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC LIMIT ?";
         String combinedReverseSql = "SELECT * FROM SoccerResults sr INNER JOIN Team homeTeam ON homeTeamId = " +
         String combinedReverseSql = "SELECT * FROM SoccerResults sr INNER JOIN Team homeTeam ON homeTeamId = " +
                 "homeTeam" + ".id INNER JOIN Team awayTeam ON sr.awayTeamId = awayTeam.id WHERE homeTeam.name = ? AND" +
                 "homeTeam" + ".id INNER JOIN Team awayTeam ON sr.awayTeamId = awayTeam.id WHERE homeTeam.name = ? AND" +
                 " awayTeam" + ".name = ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC LIMIT ?";
                 " awayTeam" + ".name = ? AND sr.leagueId = ? AND DATE(gameDate) < ? ORDER BY gameDate DESC LIMIT ?";
         try (PreparedStatement homeTeamStat = conn.prepareStatement(homeTeamSql);
         try (PreparedStatement homeTeamStat = conn.prepareStatement(homeTeamSql);
-             PreparedStatement awayTeamStat = conn.prepareStatement(awayTeamSql);
-             PreparedStatement combinedStat = conn.prepareStatement(combinedSql);
-             PreparedStatement combinedReversedStat = conn.prepareStatement(combinedReverseSql);) {
+                PreparedStatement awayTeamStat = conn.prepareStatement(awayTeamSql);
+                PreparedStatement combinedStat = conn.prepareStatement(combinedSql);
+                PreparedStatement combinedReversedStat = conn.prepareStatement(combinedReverseSql);) {
 
 
             homeTeamStat.setString(1, homeTeamName);
             homeTeamStat.setString(1, homeTeamName);
             homeTeamStat.setInt(2, leagueId);
             homeTeamStat.setInt(2, leagueId);
@@ -812,7 +864,8 @@ public class GuiMysql extends Mysql {
             }
             }
             String combinedReversedMeets = "";
             String combinedReversedMeets = "";
             while (combinedReversedTeamRs.next()) {
             while (combinedReversedTeamRs.next()) {
-                combinedReversedMeets += combinedReversedTeamRs.getInt(HOME_SCORE) + "-" + combinedReversedTeamRs.getInt(AWAY_SCORE) + ", ";
+                combinedReversedMeets += combinedReversedTeamRs.getInt(HOME_SCORE) + "-"
+                        + combinedReversedTeamRs.getInt(AWAY_SCORE) + ", ";
             }
             }
             if (homeTeamMeets.length() > 2) {
             if (homeTeamMeets.length() > 2) {
                 result.put("PrevHomeTeam", homeTeamMeets.substring(0, homeTeamMeets.length() - 2));
                 result.put("PrevHomeTeam", homeTeamMeets.substring(0, homeTeamMeets.length() - 2));
@@ -845,9 +898,8 @@ public class GuiMysql extends Mysql {
     }
     }
 
 
     public String getSeasonFromDate(int countryId, int leagueId, String gameDate) {
     public String getSeasonFromDate(int countryId, int leagueId, String gameDate) {
-        String sql =
-                "SELECT season FROM SoccerResults WHERE DATE(gameDate) = ? AND countryId = ? AND leagueId = ? " +
-                        "LIMIT 1";
+        String sql = "SELECT season FROM SoccerResults WHERE DATE(gameDate) = ? AND countryId = ? AND leagueId = ? " +
+                "LIMIT 1";
         String returnValue = "";
         String returnValue = "";
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             if (Strings.isNullOrEmpty(gameDate)) {
             if (Strings.isNullOrEmpty(gameDate)) {
@@ -934,11 +986,11 @@ public class GuiMysql extends Mysql {
                 while (rs.next()) {
                 while (rs.next()) {
                     final float diff = rs.getFloat("diff");
                     final float diff = rs.getFloat("diff");
                     final int numGoals = rs.getInt("numGoals");
                     final int numGoals = rs.getInt("numGoals");
-                    final Float formatted =
-                            round(BigDecimal.valueOf(diff), INCREMENT, RoundingMode.HALF_UP).floatValue();
+                    final Float formatted = round(BigDecimal.valueOf(diff), INCREMENT, RoundingMode.HALF_UP)
+                            .floatValue();
 
 
-                    final OverUnder entry =
-                            result.stream().filter(ou -> ou.getKey().compareTo(formatted) == 0).findFirst().orElse(new OverUnder(formatted));
+                    final OverUnder entry = result.stream().filter(ou -> ou.getKey().compareTo(formatted) == 0)
+                            .findFirst().orElse(new OverUnder(formatted));
                     entry.addGoalStat(numGoals);
                     entry.addGoalStat(numGoals);
                     result.add(entry);
                     result.add(entry);
                 }
                 }
@@ -989,8 +1041,8 @@ public class GuiMysql extends Mysql {
                     final float diff = rs.getFloat("roundedDiff");
                     final float diff = rs.getFloat("roundedDiff");
                     final int numGoals = rs.getInt("numGoals");
                     final int numGoals = rs.getInt("numGoals");
 
 
-                    final OverUnder entry =
-                            result.stream().filter(ou -> ou.getKey().compareTo(diff) == 0).findFirst().orElse(new OverUnder(diff));
+                    final OverUnder entry = result.stream().filter(ou -> ou.getKey().compareTo(diff) == 0).findFirst()
+                            .orElse(new OverUnder(diff));
                     entry.addGoalStat(numGoals);
                     entry.addGoalStat(numGoals);
                     entry.setDraws(rs.getInt(DRAWS));
                     entry.setDraws(rs.getInt(DRAWS));
                     entry.setTotalGames(rs.getInt("numGames"));
                     entry.setTotalGames(rs.getInt("numGames"));
@@ -1106,7 +1158,9 @@ public class GuiMysql extends Mysql {
                 " awayTeamName, " + "league.name as leagueName, " + "country.name as countryName, " + "country.prio " +
                 " awayTeamName, " + "league.name as leagueName, " + "country.name as countryName, " + "country.prio " +
                 "as prio " + "FROM " + sportResultTable + " as res " + "Join Team as hTeam ON res.homeTeamId = hTeam" +
                 "as prio " + "FROM " + sportResultTable + " as res " + "Join Team as hTeam ON res.homeTeamId = hTeam" +
                 ".id " + "Join Team as aTeam ON res.awayTeamId = aTeam.id " + "Join League as league ON res.leagueId " +
                 ".id " + "Join Team as aTeam ON res.awayTeamId = aTeam.id " + "Join League as league ON res.leagueId " +
-                "= league.id " + "Join Country as country ON res.countryId = country.id " + "WHERE homeScore = -1 " + dateSql + "AND league.name NOT LIKE '%cup%' AND league.name NOT LIKE '%group%' AND league.prio = 1 " + "ORDER BY country.prio DESC, country.name ASC";
+                "= league.id " + "Join Country as country ON res.countryId = country.id " + "WHERE homeScore = -1 "
+                + dateSql + "AND league.name NOT LIKE '%cup%' AND league.name NOT LIKE '%group%' AND league.prio = 1 "
+                + "ORDER BY country.prio DESC, country.name ASC";
 
 
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
 
 
@@ -1305,7 +1359,6 @@ public class GuiMysql extends Mysql {
     public List<SoccerMatchAnalysis> getMatchesForStryktipset(String date) {
     public List<SoccerMatchAnalysis> getMatchesForStryktipset(String date) {
         List<SoccerMatchAnalysis> result = new ArrayList<>();
         List<SoccerMatchAnalysis> result = new ArrayList<>();
 
 
-
         return result;
         return result;
     }
     }
 
 
@@ -1322,7 +1375,8 @@ public class GuiMysql extends Mysql {
             while (rs.next()) {
             while (rs.next()) {
                 match = new SoccerMatch(rs.getInt("id"), getTeam(rs.getInt(HOME_TEAM_ID)), getTeam(rs.getInt(
                 match = new SoccerMatch(rs.getInt("id"), getTeam(rs.getInt(HOME_TEAM_ID)), getTeam(rs.getInt(
                         AWAY_TEAM_ID)), rs.getFloat(ODDS_1), rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(
                         AWAY_TEAM_ID)), rs.getFloat(ODDS_1), rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(
-                                HOME_SCORE), rs.getInt(AWAY_SCORE), LocalDateTime.parse(rs.getString("gameDate")),
+                                HOME_SCORE),
+                        rs.getInt(AWAY_SCORE), LocalDateTime.parse(rs.getString("gameDate")),
                         rs.getString(SEASON));
                         rs.getString(SEASON));
             }
             }
         } catch (SQLException e) {
         } catch (SQLException e) {
@@ -1354,7 +1408,7 @@ public class GuiMysql extends Mysql {
     }
     }
 
 
     public List<SoccerMatchCalcBestValue> getMatchesForCalcBestValues(Integer countryId, Integer leagueId,
     public List<SoccerMatchCalcBestValue> getMatchesForCalcBestValues(Integer countryId, Integer leagueId,
-                                                                      String date) {
+            String date) {
 
 
         final ArrayList<SoccerMatchCalcBestValue> matches = Lists.newArrayList();
         final ArrayList<SoccerMatchCalcBestValue> matches = Lists.newArrayList();
 
 
@@ -1459,46 +1513,46 @@ public class GuiMysql extends Mysql {
                 ".homeScore, " +
                 ".homeScore, " +
                 "sr.awayScore, sr.gameDate, sr.season, " +
                 "sr.awayScore, sr.gameDate, sr.season, " +
                 "(SELECT COALESCE(sum(CASE " +
                 "(SELECT COALESCE(sum(CASE " +
-                    "WHEN sr.homeTeamId = ih.homeTeamId THEN homeScore " +
-                    "WHEN sr.homeTeamId = ih.awayTeamId THEN awayScore END), 0) " +
+                "WHEN sr.homeTeamId = ih.homeTeamId THEN homeScore " +
+                "WHEN sr.homeTeamId = ih.awayTeamId THEN awayScore END), 0) " +
                 "FROM (" +
                 "FROM (" +
-                    "SELECT * FROM SoccerResults sr2 " +
-                    "WHERE (sr.homeTeamId = sr2.homeTeamId OR sr.homeTeamId = sr2.awayTeamId) AND " +
-                    "sr2.gameDate < sr.gameDate ORDER BY gameDate DESC LIMIT ?) as ih) as homeRes, " +
+                "SELECT * FROM SoccerResults sr2 " +
+                "WHERE (sr.homeTeamId = sr2.homeTeamId OR sr.homeTeamId = sr2.awayTeamId) AND " +
+                "sr2.gameDate < sr.gameDate ORDER BY gameDate DESC LIMIT ?) as ih) as homeRes, " +
                 "(SELECT COALESCE(sum(CASE " +
                 "(SELECT COALESCE(sum(CASE " +
-                    "WHEN sr.awayTeamId = ia.awayTeamId THEN awayScore " +
-                    "WHEN sr.awayTeamId = ia.homeTeamId THEN homeScore " +
+                "WHEN sr.awayTeamId = ia.awayTeamId THEN awayScore " +
+                "WHEN sr.awayTeamId = ia.homeTeamId THEN homeScore " +
                 "END), 0) " +
                 "END), 0) " +
                 "FROM (SELECT * FROM SoccerResults sr2 " +
                 "FROM (SELECT * FROM SoccerResults sr2 " +
                 "WHERE " +
                 "WHERE " +
-                    "(sr.awayTeamId = sr2.awayTeamId OR sr.awayTeamId = sr2.homeTeamId) AND " +
-                    "sr2.gameDate < sr.gameDate ORDER BY gameDate DESC LIMIT ?) as ia) as awayRes " +
+                "(sr.awayTeamId = sr2.awayTeamId OR sr.awayTeamId = sr2.homeTeamId) AND " +
+                "sr2.gameDate < sr.gameDate ORDER BY gameDate DESC LIMIT ?) as ia) as awayRes " +
                 "FROM SoccerResults sr " +
                 "FROM SoccerResults sr " +
                 "WHERE LeagueId = ? AND " +
                 "WHERE LeagueId = ? AND " +
                 "DATE(gameDate) < ? AND homeScore >= 0 AND awayScore >= 0 " +
                 "DATE(gameDate) < ? AND homeScore >= 0 AND awayScore >= 0 " +
                 "ORDER BY gameDate ASC";
                 "ORDER BY gameDate ASC";
 
 
-            try (PreparedStatement stat = conn.prepareStatement(sql)) {
-                stat.setInt(1,limit);
-                stat.setInt(2,limit);
-                stat.setInt(3, leagueId);
-                stat.setString(4,date);
+        try (PreparedStatement stat = conn.prepareStatement(sql)) {
+            stat.setInt(1, limit);
+            stat.setInt(2, limit);
+            stat.setInt(3, leagueId);
+            stat.setString(4, date);
 
 
-                ResultSet rs = stat.executeQuery();
+            ResultSet rs = stat.executeQuery();
 
 
-                while (rs.next()) {
-                    SoccerMatchAnalysis sma = new SoccerMatchAnalysis(new SoccerMatch(rs.getInt("id"),
-                            GuiMysql.getInstance().getTeam(rs.getInt(HOME_TEAM_ID)),
-                            GuiMysql.getInstance().getTeam(rs.getInt(AWAY_TEAM_ID)),
-                            rs.getFloat(ODDS_1), rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(HOME_SCORE),
-                            rs.getInt(AWAY_SCORE), LocalDateTime.parse(rs.getString(GAME_DATE)), rs.getString(SEASON)));
-                    sma.setScoringTotalValue(rs.getInt("homeRes") - rs.getInt("awayRes"));
-
-                    addTotalGoalStat(sma, limit, leagueId, rs.getInt("homeRes") - rs.getInt("awayRes"));
-                }
-            } catch (SQLException e) {
-                e.printStackTrace();
+            while (rs.next()) {
+                SoccerMatchAnalysis sma = new SoccerMatchAnalysis(new SoccerMatch(rs.getInt("id"),
+                        GuiMysql.getInstance().getTeam(rs.getInt(HOME_TEAM_ID)),
+                        GuiMysql.getInstance().getTeam(rs.getInt(AWAY_TEAM_ID)),
+                        rs.getFloat(ODDS_1), rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(HOME_SCORE),
+                        rs.getInt(AWAY_SCORE), LocalDateTime.parse(rs.getString(GAME_DATE)), rs.getString(SEASON)));
+                sma.setScoringTotalValue(rs.getInt("homeRes") - rs.getInt("awayRes"));
+
+                addTotalGoalStat(sma, limit, leagueId, rs.getInt("homeRes") - rs.getInt("awayRes"));
             }
             }
+        } catch (SQLException e) {
+            e.printStackTrace();
+        }
 
 
         return result;
         return result;
     }
     }
@@ -1524,10 +1578,10 @@ public class GuiMysql extends Mysql {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
             stat.setInt(1, leagueId);
             stat.setInt(1, leagueId);
             stat.setInt(2, diff);
             stat.setInt(2, diff);
-            stat.setInt(3,lookback);
-            stat.setInt(4,homeWin);
-            stat.setInt(5,draw);
-            stat.setInt(6,awayWin);
+            stat.setInt(3, lookback);
+            stat.setInt(4, homeWin);
+            stat.setInt(5, draw);
+            stat.setInt(6, awayWin);
 
 
             stat.execute();
             stat.execute();
         } catch (SQLException e) {
         } catch (SQLException e) {
@@ -1594,6 +1648,7 @@ public class GuiMysql extends Mysql {
             addWinLossRatioStat(match, leagueId, lookback, diff);
             addWinLossRatioStat(match, leagueId, lookback, diff);
         }
         }
     }
     }
+
     public void addWinLossRatioStat(SoccerMatchAnalysis match, int leagueId, int lookback, int diff) {
     public void addWinLossRatioStat(SoccerMatchAnalysis match, int leagueId, int lookback, int diff) {
         String sql = "INSERT INTO WinLossRatioStatistics (lookback, leagueId, diff, homeWins, draws, " +
         String sql = "INSERT INTO WinLossRatioStatistics (lookback, leagueId, diff, homeWins, draws, " +
                 "awayWins) VALUES" +
                 "awayWins) VALUES" +
@@ -1640,9 +1695,10 @@ public class GuiMysql extends Mysql {
             while (rs.next()) {
             while (rs.next()) {
                 Team homeTeam = getTeam(rs.getInt(HOME_TEAM_ID));
                 Team homeTeam = getTeam(rs.getInt(HOME_TEAM_ID));
                 Team awayTeam = getTeam(rs.getInt(AWAY_TEAM_ID));
                 Team awayTeam = getTeam(rs.getInt(AWAY_TEAM_ID));
-                result.add(new SoccerMatchAnalysis(new SoccerMatch(rs.getInt("id"), homeTeam, awayTeam, rs.getFloat(ODDS_1),
-                        rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(HOME_SCORE), rs.getInt(AWAY_SCORE),
-                        LocalDateTime.parse(rs.getString(GAME_DATE)), rs.getString(SEASON))));
+                result.add(new SoccerMatchAnalysis(
+                        new SoccerMatch(rs.getInt("id"), homeTeam, awayTeam, rs.getFloat(ODDS_1),
+                                rs.getFloat(ODDS_X), rs.getFloat(ODDS_2), rs.getInt(HOME_SCORE), rs.getInt(AWAY_SCORE),
+                                LocalDateTime.parse(rs.getString(GAME_DATE)), rs.getString(SEASON))));
             }
             }
         } catch (SQLException e) {
         } catch (SQLException e) {
             e.printStackTrace();
             e.printStackTrace();
@@ -1721,9 +1777,9 @@ public class GuiMysql extends Mysql {
                 "lookback = ? and diff = ?";
                 "lookback = ? and diff = ?";
 
 
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
-            stat.setInt(1,leagueId);
+            stat.setInt(1, leagueId);
             stat.setInt(2, lookback);
             stat.setInt(2, lookback);
-            stat.setInt(3,diff);
+            stat.setInt(3, diff);
 
 
             ResultSet rs = stat.executeQuery();
             ResultSet rs = stat.executeQuery();
             while (rs.next()) {
             while (rs.next()) {
@@ -1736,14 +1792,15 @@ public class GuiMysql extends Mysql {
             e.printStackTrace();
             e.printStackTrace();
         }
         }
     }
     }
-    public void getTotalGoalStat(Percentages percentages,int leagueId, int lookback, int diff) {
+
+    public void getTotalGoalStat(Percentages percentages, int leagueId, int lookback, int diff) {
         String sql = "SELECT homeWins, draws, awayWins FROM TotalGoalStatistics WHERE leagueId = ? AND " +
         String sql = "SELECT homeWins, draws, awayWins FROM TotalGoalStatistics WHERE leagueId = ? AND " +
                 "lookback = ? and diff = ?";
                 "lookback = ? and diff = ?";
 
 
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
-            stat.setInt(1,leagueId);
+            stat.setInt(1, leagueId);
             stat.setInt(2, lookback);
             stat.setInt(2, lookback);
-            stat.setInt(3,diff);
+            stat.setInt(3, diff);
 
 
             ResultSet rs = stat.executeQuery();
             ResultSet rs = stat.executeQuery();
             while (rs.next()) {
             while (rs.next()) {
@@ -1756,14 +1813,15 @@ public class GuiMysql extends Mysql {
             e.printStackTrace();
             e.printStackTrace();
         }
         }
     }
     }
-    public void getWinLossRatioHomeAndAwayStatistics(Percentages percentages,int leagueId, int lookback, int diff) {
+
+    public void getWinLossRatioHomeAndAwayStatistics(Percentages percentages, int leagueId, int lookback, int diff) {
         String sql = "SELECT homeWins, draws, awayWins FROM WinLossRatioHomeAndAwayStatistics WHERE leagueId = ? AND " +
         String sql = "SELECT homeWins, draws, awayWins FROM WinLossRatioHomeAndAwayStatistics WHERE leagueId = ? AND " +
                 "lookback = ? and diff = ?";
                 "lookback = ? and diff = ?";
 
 
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
-            stat.setInt(1,leagueId);
+            stat.setInt(1, leagueId);
             stat.setInt(2, lookback);
             stat.setInt(2, lookback);
-            stat.setInt(3,diff);
+            stat.setInt(3, diff);
 
 
             ResultSet rs = stat.executeQuery();
             ResultSet rs = stat.executeQuery();
             while (rs.next()) {
             while (rs.next()) {
@@ -1776,14 +1834,15 @@ public class GuiMysql extends Mysql {
             e.printStackTrace();
             e.printStackTrace();
         }
         }
     }
     }
+
     public void getWinLossRatioStatisticsGames(Percentages percentages, int leagueId, int lookback, int diff) {
     public void getWinLossRatioStatisticsGames(Percentages percentages, int leagueId, int lookback, int diff) {
         String sql = "SELECT homeWins, draws, awayWins FROM WinLossRatioStatistics WHERE leagueId = ? AND " +
         String sql = "SELECT homeWins, draws, awayWins FROM WinLossRatioStatistics WHERE leagueId = ? AND " +
                 "lookback = ? and diff = ?";
                 "lookback = ? and diff = ?";
 
 
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
         try (PreparedStatement stat = conn.prepareStatement(sql)) {
-            stat.setInt(1,leagueId);
+            stat.setInt(1, leagueId);
             stat.setInt(2, lookback);
             stat.setInt(2, lookback);
-            stat.setInt(3,diff);
+            stat.setInt(3, diff);
 
 
             ResultSet rs = stat.executeQuery();
             ResultSet rs = stat.executeQuery();
             while (rs.next()) {
             while (rs.next()) {
@@ -1796,4 +1855,31 @@ public class GuiMysql extends Mysql {
             e.printStackTrace();
             e.printStackTrace();
         }
         }
     }
     }
+
+    public void updateLegueSetting(int leagueId, String setting, int value) {
+        String sql = "UPDATE League SET " + setting + " = ? WHERE id = ?";
+        String selectSql = "SELECT " + setting + " FROM League WHERE id = ?";
+
+        try (PreparedStatement stat = getConnection().prepareStatement(sql);
+                PreparedStatement selectStat = getConnection().prepareStatement(selectSql)) {
+            selectStat.setInt(1, leagueId);
+
+            ResultSet rs = selectStat.executeQuery();
+
+            int oldValue = 0;
+            while (rs.next()) {
+                oldValue = rs.getInt(1);
+            }
+
+            if (oldValue != value) {
+                stat.setInt(1, value);
+                stat.setInt(2, leagueId);
+
+                int res = stat.executeUpdate();
+                settingsLogger.log(Level.INFO, String.format("Updated %s to %s", setting, value));
+            }
+        } catch (SQLException e) {
+            e.printStackTrace();
+        }
+    }
 }
 }

+ 40 - 0
OddsJavaFx/src/fxml/Analyser.fxml

@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<?import javafx.scene.control.Button?>
+<?import javafx.scene.control.Label?>
+<?import javafx.scene.control.ScrollPane?>
+<?import javafx.scene.layout.AnchorPane?>
+<?import javafx.scene.layout.BorderPane?>
+<?import javafx.scene.layout.VBox?>
+<?import javafx.scene.layout.HBox?>
+<?import javafx.scene.control.TextField?>
+
+<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/21" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controllers.AnalyzerController">
+   <children>
+      <BorderPane prefHeight="400.0" prefWidth="600.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
+         <bottom>
+            <Button mnemonicParsing="false" onAction="#runTest" text="Execute" BorderPane.alignment="CENTER" />
+         </bottom>
+         <left>
+            <VBox BorderPane.alignment="CENTER">
+               <children>
+                  <Label text="Legues" />
+                  <ScrollPane hbarPolicy="NEVER" minWidth="200.0">
+                    <content>
+                        <VBox fx:id="leagueList" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
+                    </content>
+                  </ScrollPane>
+               </children>
+            </VBox>
+         </left>
+         <top>
+            <HBox>
+            <children>
+               <TextField fx:id="bankTextField"/>
+               <TextField fx:id="percentTextField"/>
+               </children>
+            </HBox>
+         </top>
+      </BorderPane>
+   </children>
+</AnchorPane>

+ 5 - 0
OddsJavaFx/src/fxml/OddsFxBuilder.fxml

@@ -129,6 +129,11 @@
                           <fx:include fx:id="stryktipset" source="Stryktipset.fxml" />
                           <fx:include fx:id="stryktipset" source="Stryktipset.fxml" />
                       </content>
                       </content>
                   </Tab>
                   </Tab>
+                  <Tab text="Analyser">
+                      <content>
+                          <fx:include fx:id="analyser" source="Analyser.fxml" />
+                      </content>
+                  </Tab>
               </tabs>
               </tabs>
             </TabPane>
             </TabPane>
          </center>
          </center>

+ 3 - 1
OddsJavaFx/src/fxml/Stryktipset.fxml

@@ -4,12 +4,13 @@
 <?import javafx.scene.control.DatePicker?>
 <?import javafx.scene.control.DatePicker?>
 <?import javafx.scene.control.SplitPane?>
 <?import javafx.scene.control.SplitPane?>
 <?import javafx.scene.control.TableView?>
 <?import javafx.scene.control.TableView?>
+<?import javafx.scene.control.TextField?>
 <?import javafx.scene.layout.AnchorPane?>
 <?import javafx.scene.layout.AnchorPane?>
 <?import javafx.scene.layout.FlowPane?>
 <?import javafx.scene.layout.FlowPane?>
 <?import javafx.scene.layout.Pane?>
 <?import javafx.scene.layout.Pane?>
 <?import javafx.scene.layout.VBox?>
 <?import javafx.scene.layout.VBox?>
 
 
-<AnchorPane xmlns="http://javafx.com/javafx/18" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controllers.StryktipsetController">
+<AnchorPane xmlns="http://javafx.com/javafx/21" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controllers.StryktipsetController">
    <children>
    <children>
       <VBox AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
       <VBox AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
          <children>
          <children>
@@ -31,6 +32,7 @@
             <Pane prefHeight="200.0" prefWidth="200.0">
             <Pane prefHeight="200.0" prefWidth="200.0">
                <children>
                <children>
                   <Button mnemonicParsing="false" onAction="#calculateTestData" text="TestButton" />
                   <Button mnemonicParsing="false" onAction="#calculateTestData" text="TestButton" />
+                  <TextField layoutX="91.0" layoutY="88.0" />
                </children>
                </children>
             </Pane>
             </Pane>
          </children>
          </children>

+ 1 - 1
OddsJavaFx/src/fxml/Testing.fxml

@@ -68,7 +68,7 @@
                                     <Button onAction="#relevanceTest" text="Test for Relevance" />
                                     <Button onAction="#relevanceTest" text="Test for Relevance" />
                                     <Button onAction="#analysisTets" text="Analysis Test" />
                                     <Button onAction="#analysisTets" text="Analysis Test" />
                                     <Button onAction="#analysisDrawTests" text="Analysis DRAW Test" />
                                     <Button onAction="#analysisDrawTests" text="Analysis DRAW Test" />
-                                    
+                                    <Button onAction="#updatePrioLeagues" prefWidth="75.0" text="Update Prio League Settings" />
                                  </children>
                                  </children>
                               </VBox>
                               </VBox>
                            </children>
                            </children>

+ 20 - 0
OddsJavaFx/src/objects/League.java

@@ -1,5 +1,8 @@
 package objects;
 package objects;
 
 
+import javafx.scene.control.CheckBox;
+import javafx.scene.layout.HBox;
+
 public class League {
 public class League {
 
 
     int leagueId;
     int leagueId;
@@ -23,6 +26,8 @@ public class League {
     private int drawTotalGoals;
     private int drawTotalGoals;
     private int drawWinningForm;
     private int drawWinningForm;
     private int drawWinningFormHomeAway;
     private int drawWinningFormHomeAway;
+    private String countryName;
+    private boolean prio;
 
 
     public League(int leagueId, String leagueName, int scoringDiffLastGame,
     public League(int leagueId, String leagueName, int scoringDiffLastGame,
             int scoringTotal, int winLossRatioHomeAndAway, int winLossRatio, int drawDiffHomeAway, int drawTotalGoals,
             int scoringTotal, int winLossRatioHomeAndAway, int winLossRatio, int drawDiffHomeAway, int drawTotalGoals,
@@ -183,4 +188,19 @@ public class League {
         this.winLossRatioHomeAndAway = winLossRatioHomeAndAway;
         this.winLossRatioHomeAndAway = winLossRatioHomeAndAway;
     }
     }
 
 
+    public void setCountryName(String countryName) {
+        this.countryName = countryName;
+    }
+
+    public String getCountryName() {
+        return countryName;
+    }
+
+    public boolean isPrio() {
+        return prio;
+    }
+
+    public void setPrio(boolean prio) {
+        this.prio = prio;
+    }
 }
 }

+ 10 - 7
OddsJavaFx/src/parser/Svenskaspel.java

@@ -29,10 +29,10 @@ public class Svenskaspel {
         this.date = date;
         this.date = date;
         String url = "https://spela.svenskaspel.se/stryktipset/resultat/" + date + "/statistik";
         String url = "https://spela.svenskaspel.se/stryktipset/resultat/" + date + "/statistik";
 
 
-        //RemoteWebDriver seleniumDriver = getSeleniumDriver();
-        //seleniumDriver.get(url);
+        // RemoteWebDriver seleniumDriver = getSeleniumDriver();
+        // seleniumDriver.get(url);
 
 
-        WebDriverManager.chromedriver().setup();
+        WebDriverManager.chromedriver().driverVersion("124.0.6367.60").setup();
         ChromeDriver driver = new ChromeDriver(getChromeOptions());
         ChromeDriver driver = new ChromeDriver(getChromeOptions());
         driver.get(url);
         driver.get(url);
 
 
@@ -76,7 +76,8 @@ public class Svenskaspel {
             try {
             try {
                 matchAnalyses.add(new SoccerMatchAnalysis(match));
                 matchAnalyses.add(new SoccerMatchAnalysis(match));
             } catch (NullPointerException e) {
             } catch (NullPointerException e) {
-                System.out.println("Failed to get team info between " + match.getHomeTeamName() + "-" + match.getAwayTeamName());
+                System.out.println(
+                        "Failed to get team info between " + match.getHomeTeamName() + "-" + match.getAwayTeamName());
             }
             }
         }
         }
 
 
@@ -125,9 +126,11 @@ public class Svenskaspel {
 
 
         // Changing the user agent / browser fingerprint
         // Changing the user agent / browser fingerprint
         options.addArguments("window-size=1920,1080");
         options.addArguments("window-size=1920,1080");
-        options.addArguments(
-                "user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36");
-
+        /*
+         * options.addArguments(
+         * "user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"
+         * );
+         */
         // Other
         // Other
         options.addArguments("disable-infobars");
         options.addArguments("disable-infobars");
 
 

+ 110 - 60
OddsJavaFx/src/tests/RelevanceTest.java

@@ -9,6 +9,7 @@ import java.util.Map.Entry;
 import java.util.Optional;
 import java.util.Optional;
 import java.util.TreeMap;
 import java.util.TreeMap;
 
 
+import data.GuiMysql;
 import data.TestDatabase;
 import data.TestDatabase;
 import objects.SoccerMatch;
 import objects.SoccerMatch;
 import objects.SoccerMatchAnalysis;
 import objects.SoccerMatchAnalysis;
@@ -95,67 +96,116 @@ public class RelevanceTest extends TestClass {
                 analyzeDiffTotalGoals(seasonMatches.getValue(), resultsDiffTotalGoals);
                 analyzeDiffTotalGoals(seasonMatches.getValue(), resultsDiffTotalGoals);
                 analyzeWinnigForm(seasonMatches.getValue(), resultsWinningForm);
                 analyzeWinnigForm(seasonMatches.getValue(), resultsWinningForm);
                 analyzeWinnigFormHomeVsAway(seasonMatches.getValue(), resultsWinnignFormHomeVsAway);
                 analyzeWinnigFormHomeVsAway(seasonMatches.getValue(), resultsWinnignFormHomeVsAway);
-//            System.out.println("Season " + seasonMatches.getKey());
-//            analyzeCombination(seasonMatches.getValue());
-//            break;
+                // System.out.println("Season " + seasonMatches.getKey());
+                // analyzeCombination(seasonMatches.getValue());
+                // break;
             }
             }
         }
         }
 
 
         resultsCombined.forEach((k, v) -> System.out.println(k + " result " + v));
         resultsCombined.forEach((k, v) -> System.out.println(k + " result " + v));
 
 
-        resultsDiffHomeAway.stream().sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsDiffHomeAway Lookback " + e.getLookback() + " value " + e.getResult()));
-        resultsDiffTotalGoals.stream().sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsDiffTotalGoals Lookback " + e.getLookback() + " value " + e.getResult()));
-
-        resultsWinningForm.stream().sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsWinningForm Lookback " + e.getLookback() + " value " + e.getResult()));
-
-        resultsWinnignFormHomeVsAway.stream().sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsWinnignFormHomeVsAway Lookback " + e.getLookback() + " value "
-                                + e.getResult()));
-
-        resultsDiffHomeAway.stream()
-                .sorted((r1, r2) -> Float
-                        .compare(r2.getDrawPercent(), r1.getDrawPercent()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsDiffHomeAway Draws correct " + e.getDrawPercent()
-                                + " played "
-                                + e.getDrawsPlayed() + " lookback " + e.getLookback()));
-
-        resultsDiffTotalGoals.stream()
-                .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsDiffTotalGoals Draws correct " + e.getDrawPercent()
-                                + " played "
-                                + e.getDrawsPlayed() + " lookback " + e.getLookback()));
-
-        resultsWinningForm.stream()
-                .sorted((r1, r2) -> Float
-                        .compare(r2.getDrawPercent(), r1.getDrawPercent()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsWinningForm Draws correct " + e.getDrawPercent()
-                                + " played "
-                                + e.getDrawsPlayed() + " lookback " + e.getLookback()));
-
-        resultsWinnignFormHomeVsAway.stream()
-                .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent()))
-                .limit(5)
-                .forEach(e -> System.out
-                        .println("resultsWinnignFormHomeVsAway Draws correct " + e.getDrawPercent()
-                                + " played "
-                                + e.getDrawsPlayed() + " lookback " + e.getLookback()));
+        // resultsDiffHomeAway.stream().sorted((r1, r2) -> Float.compare(r2.getResult(),
+        // r1.getResult()))
+        // .limit(5)
+        // .forEach(e -> System.out
+        // .println("scoringDiffLastGame Lookback " + e.getLookback() + " value " +
+        // e.getResult()));
+
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "scoringDiffLastGame", resultsDiffHomeAway.stream()
+                .sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult())).findFirst().get().getLookback());
+
+        // resultsDiffTotalGoals.stream().sorted((r1, r2) ->
+        // Float.compare(r2.getResult(), r1.getResult()))
+        // .limit(5)
+        // .forEach(e -> System.out
+        // .println("scoringTotal Lookback " + e.getLookback() + " value " +
+        // e.getResult()));
+
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "scoringTotal", resultsDiffTotalGoals.stream()
+                .sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult())).findFirst().get().getLookback());
+
+        // resultsWinningForm.stream().sorted((r1, r2) -> Float.compare(r2.getResult(),
+        // r1.getResult()))
+        // .limit(5)
+        // .forEach(e -> System.out
+        // .println("winLossRatio Lookback " + e.getLookback() + " value " +
+        // e.getResult()));
+
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "winLossRatio", resultsWinningForm.stream()
+                .sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult())).findFirst().get().getLookback());
+
+        /*
+         * resultsWinnignFormHomeVsAway.stream().sorted((r1, r2) ->
+         * Float.compare(r2.getResult(), r1.getResult()))
+         * .limit(5)
+         * .forEach(e -> System.out
+         * .println("winLossRatioHomeAndAway Lookback " + e.getLookback() + " value "
+         * + e.getResult()));
+         */
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "winLossRatioHomeAndAway",
+                resultsWinnignFormHomeVsAway.stream()
+                        .sorted((r1, r2) -> Float.compare(r2.getResult(), r1.getResult())).findFirst().get()
+                        .getLookback());
+
+        /*
+         * resultsDiffHomeAway.stream()
+         * .sorted((r1, r2) -> Float
+         * .compare(r2.getDrawPercent(), r1.getDrawPercent()))
+         * .limit(5)
+         * .forEach(e -> System.out
+         * .println("Draws drawDiffHomeAway correct " + e.getDrawPercent()
+         * + " played "
+         * + e.getDrawsPlayed() + " lookback " + e.getLookback()));
+         */
+
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "drawDiffHomeAway",
+                resultsDiffHomeAway.stream()
+                        .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent())).findFirst().get()
+                        .getLookback());
+
+        /*
+         * resultsDiffTotalGoals.stream()
+         * .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent()))
+         * .limit(5)
+         * .forEach(e -> System.out
+         * .println("Draws drawDiffTotalGoals correct " + e.getDrawPercent()
+         * + " played "
+         * + e.getDrawsPlayed() + " lookback " + e.getLookback()));
+         */
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "drawDiffTotalGoals",
+                resultsDiffTotalGoals.stream()
+                        .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent())).findFirst().get()
+                        .getLookback());
+
+        /*
+         * resultsWinningForm.stream()
+         * .sorted((r1, r2) -> Float
+         * .compare(r2.getDrawPercent(), r1.getDrawPercent()))
+         * .limit(5)
+         * .forEach(e -> System.out
+         * .println("Draw drawWinningForm correct " + e.getDrawPercent()
+         * + " played "
+         * + e.getDrawsPlayed() + " lookback " + e.getLookback()));
+         */
+
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "drawWinningForm",
+                resultsWinningForm.stream()
+                        .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent())).findFirst().get()
+                        .getLookback());
+
+        /*
+         * resultsWinnignFormHomeVsAway.stream()
+         * .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent()))
+         * .limit(5)
+         * .forEach(e -> System.out
+         * .println("drawWinningFormHomeAway Draws correct " + e.getDrawPercent()
+         * + " played "
+         * + e.getDrawsPlayed() + " lookback " + e.getLookback()));
+         */
+        GuiMysql.getInstance().updateLegueSetting(leagueId, "drawWinningFormHomeAway",
+                resultsWinnignFormHomeVsAway.stream()
+                        .sorted((r1, r2) -> Float.compare(r2.getDrawPercent(), r1.getDrawPercent())).findFirst().get()
+                        .getLookback());
 
 
         System.out.println("Best percent " + bestPercent + " best lookback " + bestLookback);
         System.out.println("Best percent " + bestPercent + " best lookback " + bestLookback);
 
 
@@ -178,7 +228,7 @@ public class RelevanceTest extends TestClass {
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
 
 
-        printResults(winsSorted, lossesSorted, true, resultsDiffHomeAway);
+        // printResults(winsSorted, lossesSorted, true, resultsDiffHomeAway);
     }
     }
 
 
     private TreeMap<Float, Integer> sortMap(Map<Float, Integer> map) {
     private TreeMap<Float, Integer> sortMap(Map<Float, Integer> map) {
@@ -209,7 +259,7 @@ public class RelevanceTest extends TestClass {
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
 
 
-        printResults(winsSorted, lossesSorted, true, resultsDiffTotalGoals);
+        // printResults(winsSorted, lossesSorted, true, resultsDiffTotalGoals);
     }
     }
 
 
     private void analyzeWinnigForm(List<SoccerMatch> matches, List<Res> resultsWinningForm) {
     private void analyzeWinnigForm(List<SoccerMatch> matches, List<Res> resultsWinningForm) {
@@ -234,7 +284,7 @@ public class RelevanceTest extends TestClass {
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
 
 
-        printResults(winsSorted, lossesSorted, true, resultsWinningForm);
+        // printResults(winsSorted, lossesSorted, true, resultsWinningForm);
     }
     }
 
 
     private void analyzeWinnigFormHomeVsAway(List<SoccerMatch> matches,
     private void analyzeWinnigFormHomeVsAway(List<SoccerMatch> matches,
@@ -260,7 +310,7 @@ public class RelevanceTest extends TestClass {
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> winsSorted = sortMap(winsOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
         TreeMap<Float, Integer> lossesSorted = sortMap(lossesOnDiff);
 
 
-        printResults(winsSorted, lossesSorted, true, resultsWinnignFormHomeVsAway);
+        // printResults(winsSorted, lossesSorted, true, resultsWinnignFormHomeVsAway);
     }
     }
 
 
     private void analyzeCombination(List<SoccerMatch> matches) {
     private void analyzeCombination(List<SoccerMatch> matches) {