diff --git a/java/com.google.gwt.dev/spartanizer.xml b/java/com.google.gwt.dev/spartanizer.xml
new file mode 100644
index 00000000000..b432c016b32
--- /dev/null
+++ b/java/com.google.gwt.dev/spartanizer.xml
@@ -0,0 +1,178 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties b/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties
index bdb6b361c45..00cc5cfc943 100644
--- a/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties
+++ b/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages.properties
@@ -70,6 +70,7 @@ NumberOfJibes=Number of Jibes
NumberOfPenaltyCircles=Number of Penalty Circles
RankGainsOrLosses=Rank Gains or Losses
DistanceToStarboardSideAtStart=Distance to Starboard Side (% of Length)
+DistanceToStarboardSideAtStartVsRankAtFirstMark=Distance to Starboard Side (% of Length) vs. Rank at First Mark
NumberOfPodiumFinish=Number of Podium Finishes
NumberOfWins=Number of Wins
RankGainsOrLossesBetweenFirstMarkAndFinish=Rank Gains or Losses (1st Mark -> Finish)
diff --git a/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages_de.properties b/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages_de.properties
index 134179d2064..cccb6af75fb 100644
--- a/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages_de.properties
+++ b/java/com.sap.sailing.datamining/resources/stringmessages/Sailing_StringMessages_de.properties
@@ -70,6 +70,7 @@ NumberOfJibes=Anzahl der Halsen
NumberOfPenaltyCircles=Anzahl der Straf-Kreise
RankGainsOrLosses=Positions-Verluste oder -Gewinne
DistanceToStarboardSideAtStart=Distanz zur Steuerbordseite (% der Länge)
+DistanceToStarboardSideAtStartVsRankAtFirstMark=Distanz zur Steuerbordseite (% der Länge) vs. Position beim ersten Wegpunkt
NumberOfPodiumFinish=Azahl der Podium-Siege
NumberOfWins=Anzahl der Siege
RankGainsOrLossesBetweenFirstMarkAndFinish=Positions-Verluste oder -Gewinne (1ter Wegpunkt -> Ziel)
diff --git a/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasRaceOfCompetitorContext.java b/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasRaceOfCompetitorContext.java
index ea9d2c50ccb..eb16414fd36 100644
--- a/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasRaceOfCompetitorContext.java
+++ b/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/data/HasRaceOfCompetitorContext.java
@@ -5,6 +5,7 @@ import com.sap.sailing.domain.common.Distance;
import com.sap.sailing.domain.common.NoWindException;
import com.sap.sailing.domain.common.Speed;
import com.sap.sailing.domain.common.Tack;
+import com.sap.sse.common.Util.Pair;
import com.sap.sse.datamining.annotations.Connector;
import com.sap.sse.datamining.annotations.Dimension;
import com.sap.sse.datamining.annotations.Statistic;
@@ -34,6 +35,9 @@ public interface HasRaceOfCompetitorContext {
@Statistic(messageKey="DistanceToStarboardSideAtStart", resultDecimals=2, ordinal=1)
public Double getNormalizedDistanceToStarboardSideAtStart();
+ @Statistic(messageKey="DistanceToStarboardSideAtStartVsRankAtFirstMark", resultDecimals=2, ordinal=1)
+ public Pair getNormalizedDistanceToStarboardSideAtStartVsRankAtFirstMark();
+
@Statistic(messageKey="WindwardDistanceToAdvantageousEndOfLine", resultDecimals=2, ordinal=2)
public Distance getWindwardDistanceToAdvantageousLineEndAtStart();
diff --git a/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceOfCompetitorWithContext.java b/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceOfCompetitorWithContext.java
index ff51b9e67ab..7ddb365b32e 100644
--- a/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceOfCompetitorWithContext.java
+++ b/java/com.sap.sailing.datamining/src/com/sap/sailing/datamining/impl/data/RaceOfCompetitorWithContext.java
@@ -27,6 +27,7 @@ import com.sap.sailing.domain.tracking.TrackedLegOfCompetitor;
import com.sap.sailing.domain.tracking.TrackedRace;
import com.sap.sailing.domain.tracking.WindPositionMode;
import com.sap.sse.common.TimePoint;
+import com.sap.sse.common.Util.Pair;
import com.sap.sse.common.impl.MillisecondsTimePoint;
import com.sap.sse.datamining.data.Cluster;
import com.sap.sse.datamining.shared.impl.dto.ClusterDTO;
@@ -92,6 +93,11 @@ public class RaceOfCompetitorWithContext implements HasRaceOfCompetitorContext {
return distance / length;
}
+ @Override
+ public Pair getNormalizedDistanceToStarboardSideAtStartVsRankAtFirstMark(){
+ return new Pair (getNormalizedDistanceToStarboardSideAtStart(), getRankAtFirstMark());
+ }
+
@Override
public Distance getWindwardDistanceToAdvantageousLineEndAtStart() {
TrackedRace trackedRace = getTrackedRace();