<?xml version="1.0" encoding="UTF-8"?>
<MeOSListDefinition version="4.0">
<ListName>Kinder, Gentler Results</ListName>
<ListOrigin>Mike Avery (2025-01-31)</ListOrigin>
<UID>A-2001990942344476199B38260240</UID>
<SortOrder>CustomSort</SortOrder>
<ListType>Runner</ListType>
<SubListType>None</SubListType>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<MeOSResultCalculationSet>
<Name>Results, by Good Punches, by Time</Name>
<Tag>result-4368-020F-1_v2_v2</Tag>
<Description>Eliminates 'MP' as a status and ranks competitors in order of number of controls correctly punched, then by time.</Description>
<Origin>Mike Avery 2025 E1 (2025-01-25)</Origin>
<Date>2025-02-09 07:41:02</Date>
<Rule name="RunnerScore">
<Method>// assign no-shows with a higher-than-possible result&#13;
if (Status == StatusDNS &amp;&amp; CardControls.size() == 0) {&#13;
   return 900000;&#13;
} else&#13;
&#13;
// for others, determine the number of good controls and calculate their result score&#13;
if (Status == StatusOK || Status == StatusMP || Status == StatusDNS || Status == StatusDNF) {&#13;
   j=0; // missed punch counter&#13;
&#13;
   for (i=0; i &lt; SplitTimes.size();i++) { // loop thru runner's split times&#13;
      if (SplitTimes[i] == -1) {&#13;
         j = j+1;&#13;
      }&#13;
   }&#13;
&#13;
   // output the number of good controls&#13;
   if (Finish != 0) {&#13;
      OutputNumbers[0] = Course.size() - j; // runner's count of good controls&#13;
   } else {&#13;
      OutputNumbers[0] = Course.size() - j + 1; // discount finish control if runner did not punch it&#13;
   }&#13;
&#13;
   // output the runner's place and time behind&#13;
   if (j == 0) { // runner missed no controls&#13;
      OutputNumbers[1] = Place;&#13;
      OutputTimes[0] = Time - ShortestClassTime;&#13;
   } else { // runner had some missed controls&#13;
      OutputNumbers[1] = 0;&#13;
      OutputTimes[0] = 0;&#13;
   }&#13;
   // result is 20000 * number of missed controls, plus time&#13;
   return j * 20000 + Time; &#13;
}&#13;
&#13;
</Method>
</Rule>
<Rule name="RunnerStatus">
<Method>if (Status == StatusMP) {&#13;
   return StatusOK;&#13;
}&#13;
&#13;
else {&#13;
   return Status;&#13;
}</Method>
</Rule>
</MeOSResultCalculationSet>
<Filter name="FilterResult"/>
<Filter name="FilterPrelResult"/>
<Filter name="FilterNoCancel"/>
<HeadFont scale="100" above="0">arial</HeadFont>
<SubHeadFont scale="100" above="0">arial</SubHeadFont>
<ListFont scale="100" above="0">arial</ListFont>
<SubListFont scale="100" above="0">arial</SubListFont>
<Head>
<Line>
<Block Type="CmpName">
<Text>Resultat - X</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
</Block>
</Line>
<Line>
<Block Type="CmpDate">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
</Block>
</Line>
</Head>
<SubHead>
<Line>
<Block Type="ClassName">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
</Block>
<Block Type="ClassResultFraction">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
</Block>
<Block Type="String">
<Text>Club</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
<IndentMin>52</IndentMin>
</Block>
<Block Type="CourseNumControls">
<Text>Controls/X</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
<IndentMin>-80</IndentMin>
</Block>
<Block Type="String">
<Text>Tid</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
<IndentMin>-10</IndentMin>
</Block>
<Block Type="String">
<Text>Efter</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
<TextAdjust>Right</TextAdjust>
</Block>
</Line>
</SubHead>
<List>
<Line>
<Block Type="ResultModuleNumber">
<Text>@;X</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Leg>1</Leg>
<Align BlockAlign="true">None</Align>
<BlockWidth>12</BlockWidth>
<TextAdjust>Right</TextAdjust>
</Block>
<Block Type="PatrolNameNames">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">ClassName</Align>
</Block>
<Block Type="PatrolClubNameNames">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">None</Align>
</Block>
<Block Type="ResultModuleNumber">
<Text>X</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Leg>0</Leg>
<Align BlockAlign="true">CourseNumControls</Align>
<BlockWidth>25</BlockWidth>
<IndentMin>-120</IndentMin>
<TextAdjust>Center</TextAdjust>
</Block>
<Block Type="RunnerTimeStatus">
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Align BlockAlign="true">Tid</Align>
<IndentMin>-10</IndentMin>
</Block>
<Block Type="ResultModuleTime">
<Text>X</Text>
<ResultModule>result-4368-020F-1_v2_v2</ResultModule>
<Leg>0</Leg>
<Align BlockAlign="true">Efter</Align>
<BlockWidth>15</BlockWidth>
<TextAdjust>Right</TextAdjust>
</Block>
</Line>
</List>
<SubList>
</SubList>
</MeOSListDefinition>
