mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-09-22 21:55:39 +00:00
bug6096: first compilable version of sailwave.html result
providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result providerbug6096: first compilable version of sailwave.html result provider
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<classpath>
|
||||
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
|
||||
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
|
||||
<classpathentry kind="src" path="src">
|
||||
<attributes>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="src" path="resources">
|
||||
<attributes>
|
||||
<attribute name="test" value="true"/>
|
||||
</attributes>
|
||||
</classpathentry>
|
||||
<classpathentry kind="output" path="bin"/>
|
||||
</classpath>
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>com.sap.sailing.sailwave.html.resultimport.test</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.jdt.core.javabuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.ManifestBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.pde.SchemaBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.pde.PluginNature</nature>
|
||||
<nature>org.eclipse.jdt.core.javanature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
+2
@@ -0,0 +1,2 @@
|
||||
eclipse.preferences.version=1
|
||||
encoding/<project>=UTF-8
|
||||
+7
@@ -0,0 +1,7 @@
|
||||
eclipse.preferences.version=1
|
||||
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
|
||||
org.eclipse.jdt.core.compiler.compliance=1.8
|
||||
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
|
||||
org.eclipse.jdt.core.compiler.release=disabled
|
||||
org.eclipse.jdt.core.compiler.source=1.8
|
||||
+3
@@ -0,0 +1,3 @@
|
||||
eclipse.preferences.version=1
|
||||
pluginProject.extensions=false
|
||||
resolve.requirebundle=false
|
||||
@@ -0,0 +1,10 @@
|
||||
Manifest-Version: 1.0
|
||||
Bundle-ManifestVersion: 2
|
||||
Bundle-Name: Test
|
||||
Bundle-SymbolicName: com.sap.sailing.sailwave.html.resultimport.test
|
||||
Bundle-Version: 1.0.0.qualifier
|
||||
Bundle-Vendor: SAP
|
||||
Fragment-Host: com.sap.sailing.sailwave.html.resultimport
|
||||
Require-Bundle: org.junit
|
||||
Automatic-Module-Name: com.sap.sailing.sailwave.html.resultimport.test
|
||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||
@@ -0,0 +1,4 @@
|
||||
source.. = src/
|
||||
output.. = bin/
|
||||
bin.includes = META-INF/,\
|
||||
.
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<artifactId>root</artifactId>
|
||||
<groupId>com.sap.sailing</groupId>
|
||||
<version>1.0.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<artifactId>com.sap.sailing.sailwave.html.resultimport.test</artifactId>
|
||||
<packaging>eclipse-test-plugin</packaging>
|
||||
</project>
|
||||
@@ -0,0 +1,542 @@
|
||||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=Big5">
|
||||
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="description" content="sailwave results">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
|
||||
<title>Sailwave results for 2025 29er Asian Championship at 2025</title>
|
||||
|
||||
<style type="text/css">
|
||||
body {font: 72% arial, helvetica, sans-serif; text-align: center;}
|
||||
.hardleft {text-align: left; float: left; margin: 15px 0 15px 25px;}
|
||||
.hardright {text-align: right; float: right; margin: 15px 25px 15px 0;}
|
||||
table {text-align: left; margin: 0px auto 30px auto; font-size: 1em; border-collapse: collapse; border: 1px #fff solid;}
|
||||
td, th {padding: 4px; border: 2px #fff solid; vertical-align: top;}
|
||||
.caption {padding: 5px; text-align: center; border: 0; font-weight: bold;}
|
||||
h1 {font-size: 1.6em;}
|
||||
h2 {font-size: 1.4em;}
|
||||
h3 {font-size: 1.2em;}
|
||||
p {text-align: center;}
|
||||
th {background-color: #aaf;}
|
||||
.contents {text-align: left; margin-left: 20%;}
|
||||
.even {background-color: #bbf;}
|
||||
.odd {background-color: #ddf;}
|
||||
.natflag {border: 1px #999 solid;}
|
||||
.nattext {font-size: 0.8em;}
|
||||
.place1 {font-weight: bold; background-color: #ffffaa;}
|
||||
.place2 {font-weight: bold; background-color: #aaaaff;}
|
||||
.place3 {font-weight: bold; background-color: #ffaaaa;}
|
||||
.placen {}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
</header>
|
||||
|
||||
<div id="wrap">
|
||||
|
||||
|
||||
<h1>2025 29er Asian Championship</h1>
|
||||
<h2></h2>
|
||||
|
||||
<div style="clear:both;"></div>
|
||||
|
||||
<style>
|
||||
div.applicant-break {page-break-after:always;}
|
||||
</style>
|
||||
<h3 class="seriestitle">Results are provisional as of 19:09 on February 15, 2025</h3>
|
||||
<h3 class="summarytitle">Overall</h3>
|
||||
<div class="caption summarycaption">Sailed: 12, Discards: 2, To count: 10, Entries: 19, Scoring system: Appendix A</div>
|
||||
<table class="summarytable" cellspacing="0" cellpadding="0" border="0">
|
||||
<colgroup span="20">
|
||||
<col class="rank">
|
||||
<col class="class">
|
||||
<col class="division">
|
||||
<col class="nat">
|
||||
<col class="sailno">
|
||||
<col class="helmname">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="total">
|
||||
<col class="nett">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="titlerow">
|
||||
<th>Rank</th>
|
||||
<th>Class</th>
|
||||
<th>Divisions</th>
|
||||
<th>Nat</th>
|
||||
<th>Sail No</th>
|
||||
<th>Sailors</th>
|
||||
<th>R1</th>
|
||||
<th>R2</th>
|
||||
<th>R3</th>
|
||||
<th>R4</th>
|
||||
<th>R5</th>
|
||||
<th>R6</th>
|
||||
<th>R7</th>
|
||||
<th>R8</th>
|
||||
<th>R9</th>
|
||||
<th>R10</th>
|
||||
<th>R11</th>
|
||||
<th>R12</th>
|
||||
<th>Total</th>
|
||||
<th>Nett</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd summaryrow">
|
||||
<td>1st</td>
|
||||
<td>29er</td>
|
||||
<td>Mixed</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3356</td>
|
||||
<td>Raphael Mak, Tiffany Mak</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank3">(3.0)</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>(6.0)</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>25.0</td>
|
||||
<td>16.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>2nd</td>
|
||||
<td>29er</td>
|
||||
<td>Men</td>
|
||||
<td><img class="natflag" title="USA" src="29er_files/USA.jpg"></td>
|
||||
<td>20</td>
|
||||
<td>Kevin Cason, Holland Vierling</td>
|
||||
<td>(7.0)</td>
|
||||
<td>(6.0)</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>5.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>36.0</td>
|
||||
<td>23.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>3rd</td>
|
||||
<td>29er</td>
|
||||
<td>Mixed</td>
|
||||
<td><img class="natflag" title="THA" src="29er_files/THA.jpg"></td>
|
||||
<td>621</td>
|
||||
<td>Patcharaphan Ongkaloy, Kan Kachachuen</td>
|
||||
<td>4.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>(6.0)</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>5.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>6.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>4.0</td>
|
||||
<td>(7.0)</td>
|
||||
<td>5.0</td>
|
||||
<td>4.0</td>
|
||||
<td>51.0</td>
|
||||
<td>38.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>4th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3354</td>
|
||||
<td>Ethan Kiu, Louis Polson</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>(8.0)</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(9.0)</td>
|
||||
<td>7.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>6.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>8.0</td>
|
||||
<td>4.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>58.0</td>
|
||||
<td>41.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>5th</td>
|
||||
<td>29er</td>
|
||||
<td>Women</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2840</td>
|
||||
<td>Sienne Thiry, Tomoe Thiry</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>5.0</td>
|
||||
<td>7.0</td>
|
||||
<td>4.0</td>
|
||||
<td>4.0</td>
|
||||
<td>4.0</td>
|
||||
<td>4.0</td>
|
||||
<td>(20.0 DSQ)</td>
|
||||
<td>5.0</td>
|
||||
<td>(9.0)</td>
|
||||
<td>8.0</td>
|
||||
<td>5.0</td>
|
||||
<td>78.0</td>
|
||||
<td>49.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>6th</td>
|
||||
<td>29er</td>
|
||||
<td>Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3398</td>
|
||||
<td>Ayden Pang, Xu Peng CHEN</td>
|
||||
<td>6.0</td>
|
||||
<td>4.0</td>
|
||||
<td>4.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>6.0</td>
|
||||
<td>11.0</td>
|
||||
<td>(20.0 DSQ)</td>
|
||||
<td>5.0</td>
|
||||
<td>7.0</td>
|
||||
<td>5.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>7.0</td>
|
||||
<td>89.0</td>
|
||||
<td>58.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>7th</td>
|
||||
<td>29er</td>
|
||||
<td>Mixed</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2566</td>
|
||||
<td>Chloe Kong, Ethan Kong</td>
|
||||
<td>5.0</td>
|
||||
<td>11.0</td>
|
||||
<td>5.0</td>
|
||||
<td>5.0</td>
|
||||
<td>8.0</td>
|
||||
<td>6.0</td>
|
||||
<td>(20.0 SCP50)</td>
|
||||
<td>(20.0 DSQ)</td>
|
||||
<td>9.0</td>
|
||||
<td>6.0</td>
|
||||
<td>6.0</td>
|
||||
<td>6.0</td>
|
||||
<td>107.0</td>
|
||||
<td>67.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>8th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Women</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3355</td>
|
||||
<td>ZiHan Liu, Bernice Pang</td>
|
||||
<td>8.0</td>
|
||||
<td>(12.0)</td>
|
||||
<td>10.0</td>
|
||||
<td>(12.0)</td>
|
||||
<td>11.0</td>
|
||||
<td>9.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>4.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>10.0</td>
|
||||
<td>9.0</td>
|
||||
<td>92.0</td>
|
||||
<td>68.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>9th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3405</td>
|
||||
<td>Nicholas Hon, Kaden Chan</td>
|
||||
<td>(12.0)</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>8.0</td>
|
||||
<td>10.0</td>
|
||||
<td>(15.0)</td>
|
||||
<td>12.0</td>
|
||||
<td>12.0</td>
|
||||
<td>7.0</td>
|
||||
<td>10.0</td>
|
||||
<td>4.0</td>
|
||||
<td>7.0</td>
|
||||
<td>8.0</td>
|
||||
<td>107.0</td>
|
||||
<td>80.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>10th</td>
|
||||
<td>29er</td>
|
||||
<td>Women</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3393</td>
|
||||
<td>Kristen Hwang, McCarley Wong</td>
|
||||
<td>9.0</td>
|
||||
<td>7.0</td>
|
||||
<td>12.0</td>
|
||||
<td>8.0</td>
|
||||
<td>7.0</td>
|
||||
<td>5.0</td>
|
||||
<td>7.0</td>
|
||||
<td>10.0</td>
|
||||
<td>8.0</td>
|
||||
<td>(14.0)</td>
|
||||
<td>(13.0)</td>
|
||||
<td>10.0</td>
|
||||
<td>110.0</td>
|
||||
<td>83.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>11th</td>
|
||||
<td>29er</td>
|
||||
<td>Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3055</td>
|
||||
<td>Yan Cheuk NG, Kam Hing HU</td>
|
||||
<td>11.0</td>
|
||||
<td>9.0</td>
|
||||
<td>9.0</td>
|
||||
<td>6.0</td>
|
||||
<td>(13.0)</td>
|
||||
<td>10.0</td>
|
||||
<td>9.0</td>
|
||||
<td>(20.0 DSQ)</td>
|
||||
<td>12.0</td>
|
||||
<td>11.0</td>
|
||||
<td>9.0</td>
|
||||
<td>11.0</td>
|
||||
<td>130.0</td>
|
||||
<td>97.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>12th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3383</td>
|
||||
<td>James Ashwood, Conrad Lumsden</td>
|
||||
<td>(13.0)</td>
|
||||
<td>10.0</td>
|
||||
<td>11.0</td>
|
||||
<td>9.0</td>
|
||||
<td>12.0</td>
|
||||
<td>(20.0 RET)</td>
|
||||
<td>8.0</td>
|
||||
<td>9.0</td>
|
||||
<td>13.0</td>
|
||||
<td>12.0</td>
|
||||
<td>11.0</td>
|
||||
<td>12.0</td>
|
||||
<td>140.0</td>
|
||||
<td>107.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>13th</td>
|
||||
<td>29er</td>
|
||||
<td>Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3056</td>
|
||||
<td>Kyle Lee, Brandon Liu</td>
|
||||
<td>10.0</td>
|
||||
<td>(14.0)</td>
|
||||
<td>(13.0)</td>
|
||||
<td>13.0</td>
|
||||
<td>10.0</td>
|
||||
<td>13.0</td>
|
||||
<td>10.0</td>
|
||||
<td>8.0</td>
|
||||
<td>11.0</td>
|
||||
<td>10.0</td>
|
||||
<td>12.0</td>
|
||||
<td>13.0</td>
|
||||
<td>137.0</td>
|
||||
<td>110.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>14th</td>
|
||||
<td>29er</td>
|
||||
<td>Mixed</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2750</td>
|
||||
<td>Hins Law, Daisy Chan</td>
|
||||
<td>14.0</td>
|
||||
<td>13.0</td>
|
||||
<td>14.0</td>
|
||||
<td>14.0</td>
|
||||
<td>(16.0)</td>
|
||||
<td>14.0</td>
|
||||
<td>13.0</td>
|
||||
<td>(20.0 UFD)</td>
|
||||
<td>15.0</td>
|
||||
<td>13.0</td>
|
||||
<td>14.0</td>
|
||||
<td>14.0</td>
|
||||
<td>174.0</td>
|
||||
<td>138.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>15th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Women</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2846</td>
|
||||
<td>Alexandra Yam, Keira Slaughter</td>
|
||||
<td>15.0</td>
|
||||
<td>15.0</td>
|
||||
<td>(20.0 RET)</td>
|
||||
<td>(20.0 DNF)</td>
|
||||
<td>20.0 RET</td>
|
||||
<td>15.0</td>
|
||||
<td>14.0</td>
|
||||
<td>12.0</td>
|
||||
<td>14.0</td>
|
||||
<td>16.0</td>
|
||||
<td>15.0</td>
|
||||
<td>15.0</td>
|
||||
<td>191.0</td>
|
||||
<td>151.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>16th</td>
|
||||
<td>29er</td>
|
||||
<td>Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>3053</td>
|
||||
<td>Cameron Law, Christopher Lam</td>
|
||||
<td>(20.0 DNC)</td>
|
||||
<td>(20.0 DNC)</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>8.0</td>
|
||||
<td>4.5 RDG</td>
|
||||
<td>20.0 DNS</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>193.5</td>
|
||||
<td>153.5</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>17th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior, Mixed</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2531</td>
|
||||
<td>Belmira Iong, Alfred Fong</td>
|
||||
<td>(20.0 NSC)</td>
|
||||
<td>(20.0 NSC)</td>
|
||||
<td>20.0 DNS</td>
|
||||
<td>20.0 RET</td>
|
||||
<td>17.0</td>
|
||||
<td>20.0 DNF</td>
|
||||
<td>20.0 DNF</td>
|
||||
<td>13.0</td>
|
||||
<td>16.0</td>
|
||||
<td>15.0</td>
|
||||
<td>16.0</td>
|
||||
<td>16.0</td>
|
||||
<td>213.0</td>
|
||||
<td>173.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>18th</td>
|
||||
<td>29er</td>
|
||||
<td>Mixed</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2521</td>
|
||||
<td>Jade Zirah, Alfred Yip</td>
|
||||
<td>16.0</td>
|
||||
<td>(20.0 DNF)</td>
|
||||
<td>(20.0 DNF)</td>
|
||||
<td>20.0 RET</td>
|
||||
<td>14.0</td>
|
||||
<td>20.0 RET</td>
|
||||
<td>15.0</td>
|
||||
<td>11.0</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>216.0</td>
|
||||
<td>176.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>19th</td>
|
||||
<td>29er</td>
|
||||
<td>Junior , Men</td>
|
||||
<td><img class="natflag" title="HKG" src="29er_files/HKG.jpg"></td>
|
||||
<td>2411</td>
|
||||
<td>Sebastian Chun, Ambrose Chan</td>
|
||||
<td>(20.0 DNC)</td>
|
||||
<td>(20.0 DNC)</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>20.0 DNC</td>
|
||||
<td>240.0</td>
|
||||
<td>200.0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p class="hardleft"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p class="hardright"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p>Sailwave Scoring Software 2.37.00<br><a href="https://www.sailwave.com/">www.sailwave.com</a></p>
|
||||
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
</footer>
|
||||
|
||||
<div id="scrollbottom"></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</body></html>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,422 @@
|
||||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=Big5">
|
||||
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="description" content="sailwave results">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
|
||||
<title>Sailwave results for Sun Hung Kai & Co. Hong Kong Race Week 2025 at 2025</title>
|
||||
|
||||
<style type="text/css">
|
||||
body {font: 72% arial, helvetica, sans-serif; text-align: center;}
|
||||
.hardleft {text-align: left; float: left; margin: 15px 0 15px 25px;}
|
||||
.hardright {text-align: right; float: right; margin: 15px 25px 15px 0;}
|
||||
table {text-align: left; margin: 0px auto 30px auto; font-size: 1em; border-collapse: collapse; border: 1px #fff solid;}
|
||||
td, th {padding: 4px; border: 2px #fff solid; vertical-align: top;}
|
||||
.caption {padding: 5px; text-align: center; border: 0; font-weight: bold;}
|
||||
h1 {font-size: 1.6em;}
|
||||
h2 {font-size: 1.4em;}
|
||||
h3 {font-size: 1.2em;}
|
||||
p {text-align: center;}
|
||||
th {background-color: #aaf;}
|
||||
.contents {text-align: left; margin-left: 20%;}
|
||||
.even {background-color: #bbf;}
|
||||
.odd {background-color: #ddf;}
|
||||
.natflag {border: 1px #999 solid;}
|
||||
.nattext {font-size: 0.8em;}
|
||||
.place1 {font-weight: bold; background-color: #ffffaa;}
|
||||
.place2 {font-weight: bold; background-color: #aaaaff;}
|
||||
.place3 {font-weight: bold; background-color: #ffaaaa;}
|
||||
.placen {}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
</header>
|
||||
|
||||
<div id="wrap">
|
||||
|
||||
|
||||
<h1>Sun Hung Kai & Co. Hong Kong Race Week 2025</h1>
|
||||
<h2></h2>
|
||||
|
||||
<div style="clear:both;"></div>
|
||||
|
||||
<style>
|
||||
div.applicant-break {page-break-after:always;}
|
||||
</style>
|
||||
<h3 class="seriestitle">Results are provisional as of 9:43 on February 16, 2025</h3>
|
||||
<h3 class="summarytitle" id="summaryilca_6">ILCA 6 Class</h3>
|
||||
<div class="caption summarycaption">Sailed: 9, Discards: 2, To count: 7, Entries: 17, Scoring system: Appendix A</div>
|
||||
<table class="summarytable" cellspacing="0" cellpadding="0" border="0">
|
||||
<colgroup span="16">
|
||||
<col class="rank">
|
||||
<col class="class">
|
||||
<col class="nat">
|
||||
<col class="sailno">
|
||||
<col class="helmname">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="total">
|
||||
<col class="nett">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="titlerow">
|
||||
<th>Rank</th>
|
||||
<th>Class</th>
|
||||
<th>Nat</th>
|
||||
<th>Sail No</th>
|
||||
<th>Helm Name</th>
|
||||
<th>R1</th>
|
||||
<th>R2</th>
|
||||
<th>R3</th>
|
||||
<th>R4</th>
|
||||
<th>R5</th>
|
||||
<th>R6</th>
|
||||
<th>R7</th>
|
||||
<th>R8</th>
|
||||
<th>R9</th>
|
||||
<th>Total</th>
|
||||
<th>Nett</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd summaryrow">
|
||||
<td>1st</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>191713</td>
|
||||
<td>Stephanie Norton</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>11.0</td>
|
||||
<td>7.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>2nd</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>211717</td>
|
||||
<td>Nancy Highfield</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>25.0</td>
|
||||
<td>12.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>3rd</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="JPN" src="ILCA6_files/JPN.jpg"></td>
|
||||
<td>208625</td>
|
||||
<td>NANA Funazawa</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>4.0</td>
|
||||
<td>5.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>4.0</td>
|
||||
<td>(7.0)</td>
|
||||
<td>(6.0)</td>
|
||||
<td>38.0</td>
|
||||
<td>25.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>4th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>223750</td>
|
||||
<td>Daniel Kin Chung Chan</td>
|
||||
<td>(10.0)</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>4.0</td>
|
||||
<td>(5.0)</td>
|
||||
<td>4.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>4.0</td>
|
||||
<td>4.0</td>
|
||||
<td>40.0</td>
|
||||
<td>25.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>5th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="JPN" src="ILCA6_files/JPN.jpg"></td>
|
||||
<td>217702</td>
|
||||
<td>Haruka Hattori</td>
|
||||
<td>4.0</td>
|
||||
<td>6.0</td>
|
||||
<td>8.0</td>
|
||||
<td>8.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(9.0)</td>
|
||||
<td>5.0</td>
|
||||
<td>(10.0)</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>60.0</td>
|
||||
<td>41.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>6th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>209319</td>
|
||||
<td>Seb Van Ommeren</td>
|
||||
<td>5.0</td>
|
||||
<td>(8.0)</td>
|
||||
<td>7.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(13.0)</td>
|
||||
<td>8.0</td>
|
||||
<td>6.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>8.0</td>
|
||||
<td>64.0</td>
|
||||
<td>43.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>7th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="CHN" src="ILCA6_files/CHN.jpg"></td>
|
||||
<td>223276</td>
|
||||
<td>Xinran Chen</td>
|
||||
<td>7.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>(9.0)</td>
|
||||
<td>4.0</td>
|
||||
<td>6.0</td>
|
||||
<td>8.0</td>
|
||||
<td>6.0</td>
|
||||
<td>9.0</td>
|
||||
<td>67.0</td>
|
||||
<td>47.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>8th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="CHN" src="ILCA6_files/CHN.jpg"></td>
|
||||
<td>210199</td>
|
||||
<td>Haolun Xia</td>
|
||||
<td>(11.0 SCP30%)</td>
|
||||
<td>5.0</td>
|
||||
<td>6.0</td>
|
||||
<td>5.0</td>
|
||||
<td>6.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>10.0</td>
|
||||
<td>8.0</td>
|
||||
<td>7.0</td>
|
||||
<td>69.0</td>
|
||||
<td>47.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>9th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>213211</td>
|
||||
<td>Xavier Wilde</td>
|
||||
<td>8.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>4.0</td>
|
||||
<td>6.0</td>
|
||||
<td>9.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>9.0</td>
|
||||
<td>5.0</td>
|
||||
<td>70.0</td>
|
||||
<td>48.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>10th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>221934</td>
|
||||
<td>Samuel Tan-Hardy</td>
|
||||
<td>9.0</td>
|
||||
<td>9.0</td>
|
||||
<td>10.0</td>
|
||||
<td>(12.0)</td>
|
||||
<td>8.0</td>
|
||||
<td>5.0</td>
|
||||
<td>9.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>(11.0)</td>
|
||||
<td>76.0</td>
|
||||
<td>53.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>11th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>221401</td>
|
||||
<td>Ziyan Huang</td>
|
||||
<td>11.0</td>
|
||||
<td>10.0</td>
|
||||
<td>9.0</td>
|
||||
<td>10.0</td>
|
||||
<td>11.0</td>
|
||||
<td>10.0</td>
|
||||
<td>7.0</td>
|
||||
<td>(17.0)</td>
|
||||
<td>(15.0 SCP30%)</td>
|
||||
<td>100.0</td>
|
||||
<td>68.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>12th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="SGP" src="ILCA6_files/SGP.jpg"></td>
|
||||
<td>225262</td>
|
||||
<td>John Gabriel LIM</td>
|
||||
<td>(12.0)</td>
|
||||
<td>12.0</td>
|
||||
<td>12.0</td>
|
||||
<td>11.0</td>
|
||||
<td>10.0</td>
|
||||
<td>12.0</td>
|
||||
<td>12.0</td>
|
||||
<td>(13.9 SCP5%)</td>
|
||||
<td>12.0</td>
|
||||
<td>106.9</td>
|
||||
<td>81.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>13th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="CHN" src="ILCA6_files/CHN.jpg"></td>
|
||||
<td>225505</td>
|
||||
<td>Yan Duo Pu</td>
|
||||
<td>(15.0)</td>
|
||||
<td>(16.0)</td>
|
||||
<td>14.0</td>
|
||||
<td>15.0</td>
|
||||
<td>14.0</td>
|
||||
<td>14.0</td>
|
||||
<td>13.0</td>
|
||||
<td>5.0</td>
|
||||
<td>14.0</td>
|
||||
<td>120.0</td>
|
||||
<td>89.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>14th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>213316</td>
|
||||
<td>Adam Kan</td>
|
||||
<td>(13.0)</td>
|
||||
<td>13.0</td>
|
||||
<td>13.0</td>
|
||||
<td>13.0</td>
|
||||
<td>12.0</td>
|
||||
<td>13.0</td>
|
||||
<td>(14.0)</td>
|
||||
<td>12.0</td>
|
||||
<td>13.0</td>
|
||||
<td>116.0</td>
|
||||
<td>89.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>15th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>213251</td>
|
||||
<td>Nick Akov</td>
|
||||
<td>14.0</td>
|
||||
<td>(15.0)</td>
|
||||
<td>(15.0)</td>
|
||||
<td>14.0</td>
|
||||
<td>15.0</td>
|
||||
<td>15.0</td>
|
||||
<td>15.0</td>
|
||||
<td>14.0</td>
|
||||
<td>15.0</td>
|
||||
<td>132.0</td>
|
||||
<td>102.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>16th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>211730</td>
|
||||
<td>Jeremy Chan</td>
|
||||
<td>(16.0)</td>
|
||||
<td>14.0</td>
|
||||
<td>16.0</td>
|
||||
<td>16.0</td>
|
||||
<td>16.0</td>
|
||||
<td>16.0</td>
|
||||
<td>(18.0 DNF)</td>
|
||||
<td>16.0</td>
|
||||
<td>16.0</td>
|
||||
<td>144.0</td>
|
||||
<td>110.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>17th</td>
|
||||
<td>ILCA 6</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA6_files/HKG.jpg"></td>
|
||||
<td>213343</td>
|
||||
<td>Marcello Giamporcaro</td>
|
||||
<td>(18.0 DNC)</td>
|
||||
<td>(18.0 DNC)</td>
|
||||
<td>18.0 DNC</td>
|
||||
<td>18.0 DNC</td>
|
||||
<td>18.0 DNC</td>
|
||||
<td>18.0 DNC</td>
|
||||
<td>18.0 DNC</td>
|
||||
<td>15.0</td>
|
||||
<td>17.0</td>
|
||||
<td>158.0</td>
|
||||
<td>122.0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p class="hardleft"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p class="hardright"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p>Sailwave Scoring Software 2.37.00<br><a href="https://www.sailwave.com/">www.sailwave.com</a></p>
|
||||
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
</footer>
|
||||
|
||||
<div id="scrollbottom"></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</body></html>
|
||||
@@ -0,0 +1,188 @@
|
||||
<!DOCTYPE html>
|
||||
<html><head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=Big5">
|
||||
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||
<meta name="description" content="sailwave results">
|
||||
<meta name="viewport" content="width=device-width">
|
||||
|
||||
<title>Sailwave results for Sun Hung Kai & Co. Hong Kong Race Week 2025 at 2025</title>
|
||||
|
||||
<style type="text/css">
|
||||
body {font: 72% arial, helvetica, sans-serif; text-align: center;}
|
||||
.hardleft {text-align: left; float: left; margin: 15px 0 15px 25px;}
|
||||
.hardright {text-align: right; float: right; margin: 15px 25px 15px 0;}
|
||||
table {text-align: left; margin: 0px auto 30px auto; font-size: 1em; border-collapse: collapse; border: 1px #fff solid;}
|
||||
td, th {padding: 4px; border: 2px #fff solid; vertical-align: top;}
|
||||
.caption {padding: 5px; text-align: center; border: 0; font-weight: bold;}
|
||||
h1 {font-size: 1.6em;}
|
||||
h2 {font-size: 1.4em;}
|
||||
h3 {font-size: 1.2em;}
|
||||
p {text-align: center;}
|
||||
th {background-color: #aaf;}
|
||||
.contents {text-align: left; margin-left: 20%;}
|
||||
.even {background-color: #bbf;}
|
||||
.odd {background-color: #ddf;}
|
||||
.natflag {border: 1px #999 solid;}
|
||||
.nattext {font-size: 0.8em;}
|
||||
.place1 {font-weight: bold; background-color: #ffffaa;}
|
||||
.place2 {font-weight: bold; background-color: #aaaaff;}
|
||||
.place3 {font-weight: bold; background-color: #ffaaaa;}
|
||||
.placen {}
|
||||
</style>
|
||||
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
<header>
|
||||
</header>
|
||||
|
||||
<div id="wrap">
|
||||
|
||||
|
||||
<h1>Sun Hung Kai & Co. Hong Kong Race Week 2025</h1>
|
||||
<h2></h2>
|
||||
|
||||
<div style="clear:both;"></div>
|
||||
|
||||
<style>
|
||||
div.applicant-break {page-break-after:always;}
|
||||
</style>
|
||||
<h3 class="seriestitle">Results are provisional as of 19:08 on February 15, 2025</h3>
|
||||
<h3 class="summarytitle" id="summaryilca_7">ILCA 7 Class</h3>
|
||||
<div class="caption summarycaption">Sailed: 9, Discards: 2, To count: 7, Entries: 4, Scoring system: Appendix A</div>
|
||||
<table class="summarytable" cellspacing="0" cellpadding="0" border="0">
|
||||
<colgroup span="16">
|
||||
<col class="rank">
|
||||
<col class="class">
|
||||
<col class="nat">
|
||||
<col class="sailno">
|
||||
<col class="helmname">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="race">
|
||||
<col class="total">
|
||||
<col class="nett">
|
||||
</colgroup>
|
||||
<thead>
|
||||
<tr class="titlerow">
|
||||
<th>Rank</th>
|
||||
<th>Class</th>
|
||||
<th>Nat</th>
|
||||
<th>Sail No</th>
|
||||
<th>Helm Name</th>
|
||||
<th>R1</th>
|
||||
<th>R2</th>
|
||||
<th>R3</th>
|
||||
<th>R4</th>
|
||||
<th>R5</th>
|
||||
<th>R6</th>
|
||||
<th>R7</th>
|
||||
<th>R8</th>
|
||||
<th>R9</th>
|
||||
<th>Total</th>
|
||||
<th>Nett</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr class="odd summaryrow">
|
||||
<td>1st</td>
|
||||
<td>ILCA 7</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA7_files/HKG.jpg"></td>
|
||||
<td>171979</td>
|
||||
<td>Nicholas Halliday</td>
|
||||
<td class="rank1">(1.0)</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td>10.0</td>
|
||||
<td>7.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>2nd</td>
|
||||
<td>ILCA 7</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA7_files/HKG.jpg"></td>
|
||||
<td>215313</td>
|
||||
<td>Peter Jessop</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank2">(2.0)</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank1">1.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td class="rank2">2.0</td>
|
||||
<td>17.0</td>
|
||||
<td>13.0</td>
|
||||
</tr>
|
||||
<tr class="odd summaryrow">
|
||||
<td>3rd</td>
|
||||
<td>ILCA 7</td>
|
||||
<td><img class="natflag" title="HKG" src="ILCA7_files/HKG.jpg"></td>
|
||||
<td>150109</td>
|
||||
<td>Michael Wilson</td>
|
||||
<td>(5.0 DNF)</td>
|
||||
<td>(5.0 DNF)</td>
|
||||
<td class="rank3">5.0 DNF</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td>41.0</td>
|
||||
<td>31.0</td>
|
||||
</tr>
|
||||
<tr class="even summaryrow">
|
||||
<td>4th</td>
|
||||
<td>ILCA 7</td>
|
||||
<td><img class="natflag" title="SWE" src="ILCA7_files/SWE.jpg"></td>
|
||||
<td>221751</td>
|
||||
<td>Axel Wieland</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">3.0</td>
|
||||
<td class="rank3">(5.0 DNC)</td>
|
||||
<td class="rank3">(5.0 DNC)</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td class="rank3">5.0 DNC</td>
|
||||
<td>5.0 DNC</td>
|
||||
<td>5.0 DNC</td>
|
||||
<td>41.0</td>
|
||||
<td>31.0</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<p class="hardleft"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p class="hardright"><a href="https://"></a><br><a href="mailto:"></a></p>
|
||||
<p>Sailwave Scoring Software 2.37.00<br><a href="https://www.sailwave.com/">www.sailwave.com</a></p>
|
||||
|
||||
</div>
|
||||
|
||||
<footer>
|
||||
</footer>
|
||||
|
||||
<div id="scrollbottom"></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</body></html>
|
||||
+146
@@ -0,0 +1,146 @@
|
||||
package com.sap.sailing.sailwave.html.resultimport.test;
|
||||
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertFalse;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
import static org.junit.Assert.assertNull;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.util.List;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.sap.sailing.resultimport.CompetitorRow;
|
||||
import com.sap.sailing.resultimport.RegattaResults;
|
||||
import com.sap.sailing.sailwave.html.resultimport.impl.SailwaveHtmlParser;
|
||||
import com.sap.sse.common.Util;
|
||||
|
||||
public class SimpleHtmlParsingTest {
|
||||
@Test
|
||||
public void testOpenSampleHtml() throws IOException {
|
||||
BufferedReader br = new BufferedReader(new InputStreamReader(getClass().getClassLoader().getResourceAsStream("ILCA4.html")));
|
||||
final String readLine = br.readLine();
|
||||
assertNotNull(readLine);
|
||||
br.close();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testMultiLineTD() throws IOException {
|
||||
final InputStream resourceAsStream = getClass().getClassLoader().getResourceAsStream("ILCA6.html");
|
||||
SailwaveHtmlParser parser = new SailwaveHtmlParser();
|
||||
final RegattaResults regattaResults = parser.getRegattaResults(resourceAsStream);
|
||||
List<CompetitorRow> result = regattaResults.getCompetitorResults();
|
||||
assertFalse(result.isEmpty());
|
||||
assertEquals(17, result.size());
|
||||
assertTrue(regattaResults.getMetadata().get("seriestitle").contains("Results are provisional as of 9:43 on February 16, 2025"));
|
||||
for (CompetitorRow row : result) {
|
||||
if (Util.contains(row.getNames(), "Daniel Kin Chung Chan")) {
|
||||
assertEquals("HKG 223750", row.getSailID());
|
||||
assertEquals(25.0, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(40.0, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testEmptyAndDashedScores() throws IOException {
|
||||
final InputStream resourceAsStream = getClass().getClassLoader().getResourceAsStream("ILCA7.html");
|
||||
SailwaveHtmlParser parser = new SailwaveHtmlParser();
|
||||
List<CompetitorRow> result = parser.getRegattaResults(resourceAsStream).getCompetitorResults();
|
||||
assertFalse(result.isEmpty());
|
||||
assertEquals(117, result.size());
|
||||
for (CompetitorRow row : result) {
|
||||
if (Util.contains(row.getNames(), "Nicholas Halliday")) {
|
||||
assertEquals("HKG 171979", row.getSailID());
|
||||
assertEquals(7.0, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(10.0, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getRank());
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getScore());
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).isDiscarded());
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getRank());
|
||||
assertEquals((double) 118.00, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).isDiscarded());
|
||||
} else if (Util.contains(row.getNames(), "HAGAN Douglas")) {
|
||||
assertEquals("AUS 8817", row.getSailID());
|
||||
assertEquals(235.00, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(235.00, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getRank());
|
||||
assertEquals("DNF", Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getMaxPointsReason());
|
||||
assertEquals((double) 117.00, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).isDiscarded());
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getRank());
|
||||
assertEquals("DNF", Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getMaxPointsReason());
|
||||
assertEquals((double) 118.00, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).isDiscarded());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetCompetitorRows505() throws IOException {
|
||||
SailwaveHtmlParser parser = new SailwaveHtmlParser();
|
||||
final InputStream resourceAsStream = getClass().getClassLoader().getResourceAsStream("29er.html");
|
||||
List<CompetitorRow> result = parser.getRegattaResults(resourceAsStream).getCompetitorResults();
|
||||
assertFalse(result.isEmpty());
|
||||
assertEquals(75, result.size());
|
||||
for (CompetitorRow row : result) {
|
||||
if (Util.contains(row.getNames(), "HOLZAPFEL Alexander")) {
|
||||
assertEquals("GER 8975", row.getSailID());
|
||||
assertEquals(60.00, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(74.00, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertEquals((int) 11, (int) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getRank());
|
||||
assertEquals((double) 11, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).isDiscarded());
|
||||
} else if (Util.contains(row.getNames(), "BART Cedric")) {
|
||||
assertEquals("SUI 8543", row.getSailID());
|
||||
assertEquals(55.00, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(74.00, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertEquals((int) 2, (int) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 2).getRank());
|
||||
assertEquals((double) 2, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 2).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 2).isDiscarded());
|
||||
assertEquals((int) 19, (int) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 3).getRank());
|
||||
assertEquals((double) 19, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 3).getScore(), 0.000000001);
|
||||
assertEquals(true, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 3).isDiscarded());
|
||||
} else if (Util.contains(row.getNames(), "LEWNS Chris")) {
|
||||
assertEquals("GBR 9057", row.getSailID());
|
||||
assertEquals(64.00, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(140.00, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 7).getRank());
|
||||
assertEquals("DNF", Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 7).getMaxPointsReason());
|
||||
assertEquals((double) 76, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 7).getScore(), 0.000000001);
|
||||
assertEquals(true, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 7).isDiscarded());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetCompetitorRows29er() throws IOException {
|
||||
SailwaveHtmlParser parser = new SailwaveHtmlParser();
|
||||
final InputStream resourceAsStream = getClass().getClassLoader().getResourceAsStream("29er.html");
|
||||
List<CompetitorRow> result = parser.getRegattaResults(resourceAsStream).getCompetitorResults();
|
||||
assertFalse(result.isEmpty());
|
||||
assertEquals(62, result.size());
|
||||
for (CompetitorRow row : result) {
|
||||
if (Util.contains(row.getNames(), "HOLSTE Kim (M1993)")) {
|
||||
assertEquals("GER 1864", row.getSailID());
|
||||
assertEquals(58.00, row.getScoreAfterDiscarding(), 0.000000001);
|
||||
assertEquals(169.00, row.getTotalPointsBeforeDiscarding(), 0.000000001);
|
||||
assertEquals((int) 25, (int) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getRank());
|
||||
assertEquals((double) 25, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).getScore(), 0.000000001);
|
||||
assertEquals(false, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 0).isDiscarded());
|
||||
assertEquals((int) 38, (int) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getRank());
|
||||
assertEquals((double) 38, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).getScore(), 0.000000001);
|
||||
assertEquals(true, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 1).isDiscarded());
|
||||
assertNull(Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 6).getRank());
|
||||
assertEquals("DSQ", Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 6).getMaxPointsReason());
|
||||
assertEquals((double) 63, (double) Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 6).getScore(), 0.000000001);
|
||||
assertEquals(true, Util.get(row.getRankAndMaxPointsReasonAndPointsAndDiscarded(), 6).isDiscarded());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user