<script lang="ts">
	import { resolve } from '$app/paths';
	import type { ComputedAreas, ComputedSeries, HorizontalRule } from '$lib/chart';
	import {
		AptitudeLevel,
		downhillAccelEnterChance,
		frontModeEnterChance,
		HORSE_LENGTH,
		moveLaneModifier,
		paceUpEnterChance,
		Phase,
		RUNNING_STYLES,
		RunningStyle,
		sectionSpeed,
		skillWitCheck,
		spotStruggleDuration,
		spotStruggleSpeed,
		Stat,
		uphillMod,
	} from '$lib/race';
	import Skill from '$lib/Skill.svelte';
	import StatChart from '$lib/StatChart.svelte';
	import Sec from '../Sec.svelte';

	let raceLen = $state(2000);
	let secSpeedStyle = $state(RunningStyle.FrontRunner);

	function mean2(x: [number, number]): number {
		return (x[0] + x[1]) * 0.5;
	}
	function modemean(x: number, bonus: number, p: number): number {
		return x * (1 - p) + x * bonus * p;
	}

	const uphillSlowPow = 800;
	const uphillFastPow = 1200;
	const uphillBaseSpeed = mean2(sectionSpeed(2500, 1200, 1200, RunningStyle.FrontRunner, Phase.MidRace));
	const uphillSlopes = [
		{ per: 2, len: 110 },
		{ per: 1.5, len: 200 },
	]
		.map((s) => ({ ...s, slowSpeed: uphillMod(uphillSlowPow, s.per), fastSpeed: uphillMod(uphillFastPow, s.per) }))
		.map((s) => ({ ...s, slowTime: s.len / (uphillBaseSpeed + s.slowSpeed), fastTime: s.len / (uphillBaseSpeed + s.fastSpeed) }))
		// TODO(zeph): should include the difference with decel down to uphill speed and accel out of it,
		// since the high power horse is favored for both
		.map((s) => ({ ...s, dx: (s.fastSpeed - s.slowSpeed) * s.fastTime + s.slowSpeed * (s.slowTime - s.fastTime) }));
	const uphillLengths = uphillSlopes.reduce((m, { dx }) => m + dx, 0) / HORSE_LENGTH;

	const secSpeedS = 1200;
	const secSpeedA = 1000;
	const secSpeedExample = $derived(sectionSpeed(raceLen, secSpeedS, secSpeedS * 1.1, RunningStyle.FrontRunner, Phase.EarlyRace));
	const secSpeedInfo = $derived(secSpeedExample.map((x) => x.toFixed(2)).join(' to '));
	const secSpeedPassTime = $derived.by(() => {
		const sSecSpeed = mean2(sectionSpeed(raceLen, secSpeedS, secSpeedS * 1.1, RunningStyle.FrontRunner, Phase.MidRace));
		const sMode = frontModeEnterChance(secSpeedS * 1.1);
		const sOvertakeSpeed = modemean(sSecSpeed, 1.05, sMode);
		const aSecSpeed = mean2(sectionSpeed(raceLen, secSpeedA, secSpeedA, RunningStyle.FrontRunner, Phase.MidRace));
		const aMode = frontModeEnterChance(secSpeedA);
		const aSpeedupSpeed = modemean(aSecSpeed, 1.04, aMode);
		const r = 2 / (sOvertakeSpeed - aSpeedupSpeed);
		return r.toFixed(1);
	});

	const frontModeCheckSeries: ComputedSeries[] = [
		{ label: 'Aptitude S', y: (x) => 100 * frontModeEnterChance(x * 1.1) },
		{ label: 'Aptitude A', y: (x) => 100 * frontModeEnterChance(x) },
	];
	const skillCheckSeries: ComputedSeries[] = [
		{ label: '1 of 1', y: (x) => 100 * skillWitCheck(x, 1, 1) },
		{ label: '1 of 2 or 2 of 2', y: (x) => 100 * (skillWitCheck(x, 2, 1) + skillWitCheck(x, 2, 2)) },
		{ label: '2 of 2', y: (x) => 100 * skillWitCheck(x, 2, 2) },
	];
	const ssBoostSeries: ComputedSeries = { label: 'Target Speed Boost', y: (x) => spotStruggleSpeed(x) };
	const ssDurSeries: ComputedSeries[] = [
		{ label: 'Front Runner S', y: (x) => spotStruggleDuration(x, AptitudeLevel.S) },
		{ label: 'Front Runner A', y: (x) => spotStruggleDuration(x, AptitudeLevel.A) },
	];
	const laneComboSeries: ComputedSeries = { label: 'Target Speed Boost', y: (x) => moveLaneModifier(x) };
	const lcYRule: HorizontalRule[] = [
		{ label: '+0.35', y: 0.35 },
		{ label: '+0.45', y: 0.45 },
	];
	const uphillSeries: ComputedSeries[] = [
		{ label: '+2 Hill', y: (x) => uphillMod(x, 2.0) },
		{ label: '+1.5 Hill', y: (x) => uphillMod(x, 1.5) },
		{ label: '+1 Hill', y: (x) => uphillMod(x, 1.0) },
	];
	const uphillYRule: HorizontalRule[] = [{ label: 'Dominator', y: -0.25 }];
	const downhillSeries: ComputedSeries[] = [
		{ label: 'Style S', y: (x) => downhillAccelEnterChance(x * 1.1) * 100 },
		{ label: 'Style A', y: (x) => downhillAccelEnterChance(x) * 100 },
	];
	const secIsFront = $derived(secSpeedStyle === RunningStyle.FrontRunner || secSpeedStyle === RunningStyle.GreatEscape);
	const secSpeedSeries: Array<ComputedAreas | null> = $derived([
		{
			label: 'Early Race',
			y1: (x) => sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[0],
			y2: (x) => sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[1],
		},
		{
			label: 'Mid Race',
			y1: (x) => sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[0],
			y2: (x) => sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[1],
		},
		secIsFront
			? {
					label: 'Early Race + Mean Speed-Up Mode',
					y1: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[0], 1.04, frontModeEnterChance(x)),
					y2: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[1], 1.04, frontModeEnterChance(x)),
				}
			: {
					label: 'Early Race + Mean Pace-Up Mode',
					y1: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[0], 1.04, paceUpEnterChance(x)),
					y2: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.EarlyRace)[1], 1.04, paceUpEnterChance(x)),
				},
		secIsFront
			? {
					label: 'Mid Race + Mean Speed-Up Mode',
					y1: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[0], 1.04, frontModeEnterChance(x)),
					y2: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[1], 1.04, frontModeEnterChance(x)),
				}
			: {
					label: 'Mid Race + Mean Pace-Up Mode',
					y1: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[0], 1.04, paceUpEnterChance(x)),
					y2: (x) => modemean(sectionSpeed(raceLen, x, x, secSpeedStyle, Phase.MidRace)[1], 1.04, paceUpEnterChance(x)),
				},
	]);
</script>

<article class="mx-auto max-w-4xl text-justify">
	<Sec h="1" id="top" class="text-center">Front Runner Black Magic</Sec>
	<p>
		Front runners are playing a fundamentally different game versus other running styles. Building them isn't too hard, and their
		careers tend to be easy, but some of the things you need (and don't need) to make a <i>really good</i> front runner are surprising.
	</p>
	<p>
		This document is advanced material. The target audience intends to win Champions Meet Group A Finals and either wants to use
		front runners to do it or wants to understand what front runners they need to beat. This is meant for players who are already
		strong at training: players who can take a target stat line and skill set and turn it into a horse. This document is about the
		mechanics that determine what those stat lines and skill sets should be.
	</p>
	<p>
		It is taken as a premise that the reader of this document is familiar with
		<a href="https://gametora.com/umamusume" target="_blank" rel="noopener noreferrer">GameTora</a>
		and
		<a href="https://uma.moe/" target="_blank" rel="noopener noreferrer">uma.moe</a>.
	</p>

	<Sec h="2" id="me">About Me</Sec>
	<p>
		About three weeks after Global launched, my friend told me to get a job, so I sent him a screenshot of me clicking the install
		button on Umamusume. Since then, I have been an F2P player, with the single exception of the First Anniversary SSR pick
		ticket. (I haven't even spent the accompanying paid carats.)
	</p>
	<p>
		I'm committed to running exclusively triple fronts for every Champions' Meet, starting since CM8 Sagittarius Cup (Arima
		Kinen). When I'm not training for CM, I'm usually making front runner parents, and was at one time the owner of the Seiun Sky
		with the most white sparks on global. I have a lot of experience training, running, and watching front runners.
	</p>
	<p>
		I want to share the knowledge I've accrued about front runners, because teaching is my favorite thing. Definitely not just to
		rationalize running triple fronts for every CM even though it's not actually very good and most of my favorite horses are late
		surgers.
	</p>
	<p>
		That said, most of the information in this document is ultimately my interpretations of <a
			href="https://docs.google.com/document/d/15VzW9W2tXBBTibBRbZ8IVpW6HaMX8H0RP03kq6Az7Xg/edit?usp=sharing"
			target="_blank"
			rel="noopener noreferrer">kuromiAK's Race Mechanics doc</a
		>. Many of those interpretations are also informed by the exceptionally knowledgeable folks on the
		<a href="https://discord.gg/SyAVkbBSkx" target="_blank" rel="noopener noreferrer">GameTora Discord server</a>. I may present
		some of the information from the race mechanics doc in chart form, but I will generally leave out exact mechanic numbers and
		conditions; the doc is already the place for that information.
	</p>

	<Sec h="2" id="mechanics">Race Mechanics</Sec>
	<p>
		Very quick gloss of race fundamentals. Races are divided into four phases: early race, mid race, late race, and last spurt
		phase. They are also divided into twenty-four equal length sections. Early race is sections 1 to 4, mid race is sections 5 to
		16, late race is sections 17 to 20, and last spurt phase is sections 21 to 24. Spot Struggle can start between 150m and the
		end of section 5, and is forced to end at the start of section 9. <i>Position keep</i> ends after section 10.
	</p>
	<p>
		The numeric value of acceleration depends on the Power stat, dueling, surface aptitude, uphills, race phase, running style. At
		the start of early race, horses accelerate to the early race <i>base target speed</i>, which varies by race distance and
		running style but is generally in the vicinity of 20 m/s.
	</p>
	<p>
		At the start of late race, if they have enough HP remaining for their last spurt, horses accelerate from the mid race base
		target speed to their spurt speed, which varies by speed stat, distance aptitude, running style, race distance, and guts stat,
		in decreasing order of effect. "Last spurt" and "last spurt phase" are different and unrelated things; the latter is only used
		mechanically in the condition for <Skill skill={200512} hint="homestretch haste" mention />.
	</p>
	<p>
		Speed skills add a flat amount of target speed, generally +0.15 m/s for white skills, +0.25 m/s for double circle skills and
		some inherited uniques, +0.35 m/s for gold skills and most speed uniques, and +0.45 m/s for a handful of speed uniques. Accel
		skills similarly add a flat amount of acceleration, typically +0.1 or +0.2 m/s² for white skills and inherited uniques, or
		+0.3 or +0.4 m/s² for gold skills and uniques.
	</p>

	<Sec h="3" id="runaway">Runaway</Sec>
	<p>
		The skill <Skill skill={202051} hint="runaway" /> converts front runners into the <i>Great Escape</i> running style. However,
		no player has ever uttered the words "Great Escape" when talking about Umamusume, presumably because Runaway is a much cooler
		name. ("Great Escape" is a direct translation of Japanese 大逃げ <i>oonige</i>, whereas "Front Runner" is a more liberal
		localization of 逃げ <i>nige</i> that technically just means "escape.")
	</p>
	<p>
		Runaways are still front runners for all purposes. The difference is just different numbers for things like base speed and
		acceleration, stamina to HP conversion, and distance thresholds for running modes. Other mechanics that are specific to front
		runners also apply to runaways.
	</p>

	<Sec h="3" id="phase-speed">Phase Speed</Sec>
	<p>
		Race base speed is multiplied by the speed strategy&ndash;phase coefficient for each horse. As the name suggests, SSPC is
		different per running style and per race phase. It's the thing that makes runaways take off in early race, and the thing that
		makes pace chaser promotion scary in late race (for those not using any of the correct running style).
	</p>
	<p>
		Front runners, and even moreso runaways, have particularly punishing SSPC for late race. This makes sense; if they weren't
		forced to be substantially slower than the late surgers they're thirty meters ahead of at late race start, then they would be
		guaranteed to win every time.
	</p>
	<p>
		The late race speed difference means that, in a competitive setting, the speed stat (and, correspondingly, distance aptitude)
		aren't what make front runners win most of the time. Capped speed with distance S is ideal, but 1100 speed with distance A
		will likely lose only a couple races within the difference throughout a CM event.
	</p>

	<Sec h="3" id="win-cons">Win Conditions</Sec>
	<p>
		Generally more important than speed itself (for all running styles) is landing an acceleration skill at the beginning of late
		race. The strength of front runners is having the most consistent options for doing so.
	</p>
	<ul class="mb-4 list-disc pl-4">
		<li>
			<Skill skill={900201} hint="angling" />, sometimes called Rod, is currently the second best skill in the game. Its condition
			is to be in first place on any late race corner, which is the case immediately at the start of late race on all medium
			tracks,
			<a href="#niigata-1600">all but one mile</a>, and some sprints.
		</li>
		<li>
			On long distance tracks, <Skill skill={900681} hint="vc" /> takes that role instead. The front two horses get it, and it has half
			the acceleration value.
		</li>
		<li>
			On those sprints where Angling is dead, the front-specific option is <Skill skill={900141} hint="pasta" /> (VPP, or Pasta). Multi-front
			builds also have access to <Skill skill={910451} hint="mummy creek" /> (HCreek). It takes both of them to equal Angling, so such
			sprints may be better served gambling on <Skill skill={200651} hint="turbo sprint" mention />, <Skill
				skill={200371}
				hint="rushing gale"
				mention
			/>, and possibly <Skill skill={200551} hint="unrestrained" mention /> instead. Front runners are especially strong on sprints
			for <a href="#spot-struggle">other reasons</a> anyway.
		</li>
	</ul>
	<p>
		<Skill skill={200491} hint="nsm" /> is the best skill in the game. Unfortunately, for the most part, it's bad on front runners;
		generally not a win condition. Activating NSM requires not being in first, which means whoever <i>was</i> used Angling and is
		pulling away from you before you accumulate the blocked time to activate it. That said, on VC tracks specifically, NSM or its
		white version <Skill skill={200492} hint="nn" mention /> can be an option for multi-front builds, since the two frontmost horses
		get VC and final corner lane movement hasn't happened.
	</p>

	<Sec h="2" id="positioning">Positioning Mechanics</Sec>
	<p>
		The theme among front runner win conditions is requiring being in or very close to first place when late race starts. So,
		lesser running styles aside, beating other fronts is a matter of manipulating skills and race mechanics to win in early and
		mid race.
	</p>

	<Sec h="3" id="front-modes">Speed-Up and Overtake Modes</Sec>
	<p>
		During the first 41.67% of the race, <i>position keep</i> is busy arranging each running style into their respective packs.
		During position keep, all horses have access to <i>running modes</i> that influence how they run.
	</p>
	<p>
		The running modes for front runners are speed-up (+4% target speed for first among that front type) and overtake (+5% for
		not-first). Entering these modes requires meeting certain conditions relating to positioning, which collectively can be read
		as "solo fronts are heavily penalized." They also require passing a wit check, with the same chance for both modes.
	</p>
	<div class="mx-auto h-60 w-full max-w-3xl md:h-96">
		<StatChart
			class="mx-auto h-full w-full max-w-3xl"
			stat={Stat.Wit}
			y={frontModeCheckSeries}
			yLabel="Entry Chance (% each 2 seconds)"
			range={[25, 50]}
			xRule={1200}
		/>
	</div>

	<Sec h="3" id="pdm">Pace Down Mode</Sec>
	<p>
		The running modes for all other running styles are pace-up, which is similar to speed-up, and paced-down, which activates
		whenever a horse gets what their style defines as too close to first place.
	</p>
	<p>
		Watch a MANT late surger with 1000+ power and wit in a daily legend race. As long as they don't get blocked, they should <a
			href="#section-speed">slide forward</a
		> throughout the early race. Then, around when they reach the pace chaser pack, they'll suddenly start moonwalking back to the rest
		of the late surgers, often near the back of the group. That's PDM.
	</p>
	<p>
		On styles with PDM, early race and sometimes mid race speed skills are effectively converted from distance gain into HP
		conservation. The thing that really makes front runners good is that they don't have to worry about that &ndash; they aren't
		subject to PDM at all. Their mid race speed skills always gain distance.
	</p>

	<Sec h="3" id="spot-struggle">Spot Struggle</Sec>
	<p>
		For each of runaways and non-runaways, there is at most one spot struggle per race. Runaways will not spot struggle with
		non-runaways, nor vice-versa. When a spot struggle triggers, all front runnners of that type within range participate; I've
		had a horse join while in 6th a couple times.
	</p>
	<p>
		Spot struggle provides a target speed bonus that scales with the guts stat. If it isn't cut short, which will approximately
		never happen, its duration also scales with the guts stat. Unlike skills, its duration <i>does not</i> scale with race distance.
	</p>
	<div class="mb-4 grid h-60 w-full grid-cols-2 md:h-96">
		<StatChart stat={Stat.Guts} y={ssBoostSeries} yLabel="Speed Bonus (m/s)" range={[0, 0.3]} />
		<StatChart stat={Stat.Guts} y={ssDurSeries} yLabel="Duration (s)" range={[0, 12]} />
	</div>
	<p>
		Spot struggle also greatly increases HP consumption. For normal front runners, the rate is slightly less than Rushed. For
		runaways, it's more than double Rushed. (This is the reason people say you can't get enough stamina for runaways on Global.)
		Actually getting Rushed during spot struggle dramatically increases HP consumption, much more than just adding them together;
		red-light green-light pretty much guarantees that horse won't spurt.
	</p>
	<p>
		In medium+ races, the extra HP consumption is a serious consideration; front runners need more stamina and recoveries than
		other styles. At 1600m and shorter, the fact that Spot Struggle doesn't scale with race distance means that it can be worth
		multiple gold speed skills in total distance gained. See the <a href={resolve('/mspeed')}>mechanical speed calculator</a> for precise
		analysis.
	</p>

	<Sec h="3" id="lane-combo">Lane Combo</Sec>
	<p>
		While under the influence of a skill that increases lane movement speed (shoe icon skills), and while actively changing lanes
		(i.e. moving sideways), horses gain a (forward) target speed boost that scales with power. This was a change Global received
		with the Unity Cup scenario.
	</p>
	<div class="mb-4 h-60 w-full md:h-96">
		<StatChart
			class="mx-auto h-full w-full max-w-3xl"
			stat={Stat.Power}
			y={laneComboSeries}
			yLabel="Speed Boost"
			yRule={lcYRule}
			range={[0.2, 0.5]}
		/>
	</div>
	<p>
		Front runners have access to the skill <Skill skill={201262} hint="dd" />, which forces a horse who uses it to move outward to
		a specific distance from the rail. DD almost always ends shortly before the horse has finished accelerating to early race
		speed, so it does not convert the move lane speed modifier into distance.
	</p>
	<p>
		We get advantage from move lane speed modifier by following DD with <Skill skill={200452} hint="pp" /> or <Skill
			skill={210052}
			hint="ignited wit"
		/>. DD created an opportunity for those return skills to convert into huge forward speed. This setup is called
		<i>lane combo</i>.
	</p>
	<p>
		Lane combo is best on tracks where early race ends before or at most very early into the first corner. PP and Ignited WIT can
		activate at the very end of early race. If there's a corner there, and your horse is still on the outside from DD, you are now
		physically running a longer distance than those on the inside. That can more than undo the gain from the lane combo itself.
	</p>
	<p>
		For similar reasons, DD <i>without</i> PP or Ignited WIT is likely to be a net negative on some tracks, especially Nakayama 2500,
		Kyoto 3000, and Chukyo 1800 dirt. In sprints, it gives no benefit because it can't outlast early race accel. Otherwise, DD can be
		an efficient pickup as a short burst of high speed to gain position.
	</p>
	<p>
		The gold versions of lane combo skills &ndash; <Skill skill={201261} hint="gold dd" mention />, <Skill
			skill={200451}
			hint="gold pp"
			mention
		/>, <Skill skill={210051} hint="burning wit" mention /> &ndash; are excellent to take on parents, but they generally make lane combo
		itself less effective. They have stronger lane change movement boosts, which does not affect the forward speed boost and is likely
		to make it last a shorter time, since the horse will return to the rail more quickly.
	</p>
	<p>
		The <a href={resolve('/mspeed')}>mechanical speed calculator</a> has an approximation of lane combo's benefit. A more precise
		lane combo simulator exists at
		<a href="https://lanecalc.hf-uma.net/" target="_blank" rel="noopener noreferrer">危険回避シミュ</a>, but I am not sufficiently
		confident in my Japanese to try to guide readers through it.
		<!-- TODO(zeph): i could totally annotate a picture though, or find someone else's explanation -->
	</p>

	<Sec h="3" id="uphills">Uphills</Sec>
	<p>
		Running uphill carries a penalty to target speed. This penalty scales negatively with the power stat; that is, higher power
		means faster uphill running. It scales positively with slope angle. There is also a flat reduction in base acceleration for
		running uphill, which does not change with stats nor slope angle.
	</p>
	<div class="mb-4 h-60 w-full md:h-96">
		<StatChart
			class="mx-auto h-full w-full max-w-3xl"
			stat={Stat.Power}
			y={uphillSeries}
			yLabel="Uphill Speed Modifier (m/s)"
			yRule={uphillYRule}
			range={[-2, 0]}
		/>
	</div>
	<p>
		Note that surface aptitude <i>does not</i> affect uphill speed, nor power generally. It only affects acceleration.
	</p>
	<p>
		The practical impact is that steep early- and mid-race hills filter out front runners with low power. All else equal, a Seiun
		Sky with {uphillFastPow} power gains an average of about {uphillLengths.toFixed(1)} lengths over a VBourbon with {uphillSlowPow}
		power on the Arima Kinen mid-race hills.
	</p>

	<Sec h="3" id="downhills">Downhills</Sec>
	<p>
		Running downhill allows horses to enter <i>downhill accel mode</i>. Contrary to its name, downhill accel mode does not affect
		acceleration at all; it gives horses a target speed boost that scales with the slope angle, plus lowered HP consumption via a
		flat multiplier.
	</p>
	<p>
		Entering downhill accel mode requires passing a wit check. The success rate scales linearly with wit. Style aptitude <i
			>does</i
		> affect the chance to pass the check. Its duration is random with a geometric distribution; it does not scale with stats.
	</p>
	<div class="mb-4 h-60 w-full md:h-96">
		<StatChart
			class="mx-auto h-full w-full max-w-3xl"
			stat={Stat.Wit}
			y={downhillSeries}
			yLabel="Entry Chance (% each second)"
			range={[0, 60]}
		/>
	</div>
	<p>
		Similar to uphills disproportionately rewarding front runners with higher power, downhills tend to reward high wit. However,
		the random elements of downhill accel mode mean that lower wit horses may still keep up on downhills, depending on luck.
		Conversely, the HP savings on long downhills can be enough to drop a recovery skill or two on some tracks.
	</p>

	<Sec h="3" id="section-speed">Section Speed</Sec>
	<p>
		Each section, each horse gets a random modifier to target speed. The modifier's range is determined by the wit stat.
		(Curiously, the calculation uses both wit as modified by style proficiency and green skills as well as base wit.)
	</p>
	<div class="mb-24 h-60 w-full md:mb-20 md:h-96">
		<StatChart
			class="mx-auto mb-12 h-full w-full max-w-3xl md:mb-10"
			stat={Stat.Wit}
			yArea={secSpeedSeries}
			yLabel="Section Speed (m/s)"
			range={[17.5, 22.5]}
			plotOptions={{ color: { legend: true } }}
		/>
		<div class="mx-auto flex w-full md:max-w-2xl">
			<label class="my-auto hidden flex-1 pr-2 text-right text-sm md:inline" for="secSpeedRaceLen">Race Length</label>
			<input
				class="my-auto max-w-40 flex-1 md:flex-2"
				type="range"
				id="secSpeedRaceLen"
				min="1000"
				max="3600"
				step="100"
				bind:value={raceLen}
			/>
			<span class="my-auto flex-1 pl-2 text-sm">{raceLen}m</span>
			<label class="my-auto hidden flex-1 pr-2 text-right text-sm md:inline" for="secSpeedStyle">Style</label>
			<select class="my-auto flex-1 text-sm" id="secSpeedStyle" bind:value={secSpeedStyle}>
				{#each RUNNING_STYLES as [name, style] (style)}
					<option value={style}>{name}</option>
				{/each}
			</select>
		</div>
	</div>
	<p>
		Section speed is generally very small. For a {secSpeedS} wit style S front runner at {raceLen}m, it's an actual speed range of {secSpeedInfo}
		m/s.
	</p>
	<p>
		It isn't negligible, though, since it applies during the portion of the race where front runners are trying to become frontest
		runners. All else equal, including the effects of <a href="#front-modes">running modes</a>, such a horse blocked in front by a {secSpeedA}
		wit front A horse will pass in {secSpeedPassTime} seconds on average at mid race speeds.
	</p>

	<Sec h="3" id="no-zone">No-Overtake Zone</Sec>
	<p>
		The NO zone is the 200m portion of the race prior to the first corner. For unclear reasons, while in the NO zone, horses
		cannot enter overtake lane mode, which is what allows them to move away from the rail. (Overtake lane mode is different from
		overtake mode, which is a front runner <a href="#front-modes">position keep running mode</a>.)
	</p>
	<p>
		Inside the NO zone, if a horse is blocked in front, the only action available to her is to slow down. Speed skills are
		generally wasted when they fire in the NO zone, unless the horse is either in the lead or still on the outside from DD or gate
		position.
	</p>
	<p>
		For the most part, there's nothing you can do about the NO zone. The exception to this is with Smart Falcon, who has a speed
		unique that can fire on any mid race straight. On Tokyo 1600 (both turf and dirt), the first corner is far enough into mid
		race that <Skill skill={100461} hint="falco ult" /> is likely to fire before entering the NO zone, helping to propel her into a
		lead that other front runners can't challenge until the corner begins &ndash; which is especially strong because it's harder to
		pass on corners, and on those tracks, that corner lasts all the way into late race.
	</p>

	<Sec h="2" id="skills">Skills</Sec>
	<p>Since competitive horses in the MANT+ era tend to have similar stat lines, skills are especially important.</p>
	<p>
		Speed skills are especially valuable for front runners, because they assist in overtakes and defense. Some skills are worth
		special mention.
	</p>
	<ul class="mb-4 list-disc pl-4">
		<li>
			On miles, <Skill skill={201082} hint="speed eater" /> is the strongest speed skill in the game, because it is both a full strength
			speed skill (i.e. +0.15 target speed for base 3s) and a full strength speed debuff. It plays both offense and defense simultaneously.
			Every front runner should have it on every mile. Speed Eater technically has a gold version, <Skill
				skill={201081}
				hint="gold speed eater"
			/>, but Cygames apparently recognized that it must not ever be allowed to exist, because there's still no source of it on
			JP.
		</li>
		<li>
			<Skill skill={201611} hint="thh" /> is a full strength speed skill that is triggered by other skills, so it excels at stacking
			&ndash; triggering THH with another speed skill is very likely to secure a pass.
		</li>
		<li>
			<Skill skill={200462} hint="ramp" /> is only a half strength speed skill (base 1.8s), but it fires upon overtake, which helps
			to turn that into a complete pass.
		</li>
		<li>
			<Skill skill={201661} hint="pto" /> and <Skill skill={201651} hint="slipstream" /> are mechanically similar full-strength speed
			skills with cooldowns, so they can fire multiple times per race. Slipstream requires not being in first, and it's always wasted
			if it triggers during the <a href="#no-zone">NO zone</a>, so it's marginally weaker. Both want multi-front builds.
		</li>
	</ul>

	<Sec h="3" id="gate-skills">Gate Skills</Sec>
	<p>
		Gate skills are <Skill skill={201601} hint="gw" /> (GW), <Skill skill={200532} hint="early lead" />, and <Skill
			skill={200431}
			hint="conc"
		/> (Conc), as well as all green skills including <Skill skill={202051} hint="runaway" mention /> (but excluding <Skill
			skill={201562}
			hint="lucky 7"
			mention
		/>). These skills activate the moment the race starts. Other running styles can largely ignore them, but for front runners,
		they are critical.
	</p>
	<p>
		GW is an absolutely mandatory skill for all front runners. Even runaway blockers should have it, otherwise they will be passed
		by the normal fronts they're trying to block. It requires three other gate skills, which should be applicable greens to avoid
		overreliance on wit checks &ndash; for reference, the chart below shows wit check pass chances of one of one, one of two, or
		two of two skills.
	</p>
	<div class="mb-4 h-60 w-full md:h-96">
		<StatChart
			class="mx-auto h-full w-full max-w-3xl"
			stat={Stat.Wit}
			y={skillCheckSeries}
			yLabel="% Chance"
			range={[50, 100]}
			xRule={1000}
		/>
	</div>
	<p>
		GW must be combined with <Skill skill={200532} hint="el" /> if you want any chance of being first out of early race. The gold version
		of EL, <Skill skill={200531} hint="ttl" />, is highly accessible as the skill from the Mihono Bourbon Wit event SSR. In
		practice, I've found it adds fewer lengths over the white, and hence less positioning ability, than a mid race gold speed
		skill. It is still absolutely <i>good</i>, and Bourbon Wit is a very usable card (treat her as a speed card that gives extra
		energy on wit), but I don't consider it mandatory anymore.
	</p>
	<p>
		Conc is less critical. It's worth taking on horses who have it, but it isn't worth using support card slots just to get it. On
		the other hand, its white version, <Skill skill={200432} hint="focus" />, is bad; its only real use is as a backup gate skill
		for GW when you don't have enough greens available.
	</p>

	<Sec h="3" id="spurt-skills">Spurt Skills</Sec>
	<p>
		Because they are post-Angling, skills that activate in the final spurt are typically less interesting to front runners.
		Notable exceptions are <Skill skill={910151} hint="barcarole" /> and, on Tokyo turf, <Skill
			skill={900311}
			hint="ines inherit"
		/><!-- skill name ends with ! -->
		These are good inherits for those who don't have easy access to <Skill skill={910261} hint="cacao" mention /> and <Skill
			skill={910041}
			hint="kfc"
			mention
		/>.
	</p>
	<p>
		<Skill skill={900061} hint="pulse" /> is another spurt skill that may come up sometimes and is interesting to think about. It's
		a 0.25 speed skill that requires being in at best second place to activate. Is it worth it to take?
	</p>
	<p>
		In a typical race, exactly one horse triggered Angling. All other front runners are far behind that horse by the time Pulse
		can trigger. It's very unlikely they will have enough speed to catch up. So, if a horse has passed the front runner who used
		Angling, they are almost certainly a different running style.
	</p>
	<p>
		The <a href={resolve('/spurt')}>spurt speed calculator</a> analyzes this situation. A 1200 speed front runner with a 0.25 speed
		skill active has speed equivalent to an 1187 speed pace chaser. In other words, as long as that pace chaser is built the way Global
		players tend to build, Pulse does not allow the front runner to pass back. So, if you happen to inherit it off a grandparent, it
		is not worth taking.
	</p>

	<Sec h="3" id="others-skills">Other Horses' Skills</Sec>
	<p>There are two categories of other horses' skills to think about.</p>
	<p>
		The first is stamina debuffs: <Skill skill={201441} hint="eyes" />, <Skill skill={201161} hint="murmur" />, <Skill
			skill={201221}
			hint="siphon"
		/>. My conclusion is that Global doesn't understand how to build debuffers, so front runners can mostly ignore these &ndash;
		assume one will hit you, but not three.
	</p>
	<p>
		Eyes especially has the potential to be threatening, since it's roughly unconditional. However, it hits others <i>in vision</i
		>, which is essentially always a range of 20m. Debuffers are typically built with very little stamina and power, so Eyes is
		almost never going to reach front runners, especially the front who got Angling.
	</p>
	<p>
		The other category of skills to think about is other horses' uniques.
		<Skill skill={100101} hint="sfv" />, <Skill skill={100321} hint="u=ma2" />, and a number of others need tight positioning,
		requiring something like 2-4 or 3-4 in CM. The number of front runners in the match can dictate whether it's ever possible for
		those uniques to activate. This is the fundamental idea behind <a href="#triple-front">triple front</a> builds.
	</p>

	<Sec h="3" id="skill-timing">Skill Timing</Sec>
	<p>Thought experiment.</p>
	<p>
		Picture two cars driving on a straight freeway, both at exactly 59 mph because I am American, adjacent lanes, keeping exactly
		side by side.
	</p>
	<p>
		The one on the right then drives 1 mph faster for three seconds, creating a slight gap between them before returning to the
		previous speed. They now maintain this new gap.
	</p>
	<p>
		There is a 65 mph speed limit sign. As each of the cars pass it, they accelerate at identical rates from 59 to 69 mph over a
		duration of exactly 10.2 seconds. Since the car on the right is slightly ahead from the speed skill it used, it reaches the
		speed limit sign first, so it starts accelerating first.
	</p>
	<p>
		Until the left car reaches the sign, the right car is building a speed advantage. Having a higher speed during the accel
		period, it continually increases the gap it had, until both of them have reached the new target speed.
	</p>
	<p>
		Now the left car drives 1 mph faster for three seconds. It closes the gap between them by the same distance that the right
		car's speed skill had done prior to the speed limit change. However, since the right car also added a distance advantage over
		the accel period, it remains slightly ahead of the left car.
	</p>
	<p>
		This thought experiment shows that speed skills are actually more valuable before late race than during it. Thus, front
		runners not having to worry about <a href="#pdm">PDM</a> is even more of an advantage. Everything they want to do for Angling positioning
		is already the best possible thing to do!
	</p>

	<Sec h="2" id="teams">CM Teams</Sec>
	<p>
		Obviously, CM is run in teams of three. While spamming the highest stats you can manage is a valid strategy that will get
		wins, building a team holistically will lead to higher win rates.
	</p>

	<Sec h="3" id="solo-front">Solo Front</Sec>
	<p>
		Because solo fronts essentially don't have access to their <a href="#front-modes">running modes</a>, they are unlikely to
		build enough of a lead over paces to win, even with Angling.
	</p>
	<p>
		In particularly front-dominated metas, this is manageable, since you'll have opponent fronts to run against. When any other
		style is viable, which is probably always now that Nishino Flower exists, you'll have matches where your team's solo front is
		truly solo.
	</p>
	<p>
		For that reason, it is my belief that solo fronts should not be built as aces; they're better left to a support role. And,
		generally, the best support front runners are runaways, to block other teams' front runners from Angling and to keep pace up
		to mitigate PDM on your other horses.
	</p>
	<p>
		I say that they shouldn't be built as aces, but right now, building a runaway that can block MANT front runners requires all
		the early and mid race skills you can manage.
		<a href="#gate-skills">Gate skills</a> are especially important, because runaways have a tremendously higher early race target
		speed. If there is a real difference between a correctly built runaway blocker and a runaway ace, it's that <Skill
			skill={910261}
			hint="cacao"
			mention
		/>
		and <Skill skill={910041} hint="kfc" mention /> are arguably more appropriate inherits than Angling, but the argument isn't strong
		if you're still able to hit a good stat line on your runaway.
	</p>
	<p>
		Runaway blockers come with some caveats. Because they're so far ahead during the first half of the race, they essentially
		disable <a href="#pdm">pace-down mode</a> for everyone. That especially benefits pace chasers, who have more forgiving PDM limits
		in the first place, and it disfavors late surgers and end closers who are less equipped to move forward during position keep.
	</p>

	<Sec h="3" id="double-front">Double Front</Sec>
	<p>
		Doubling up on front runners is a build that intends to win with them. Which is to say, they should <i>both</i> be built to win
		mid race and proc Angling.
	</p>
	<p>
		There is still a difference between dual ace double front and double front with an ace and a backup. The ideal stat lines and
		skill lists will be the same between the two styles, but character choice will be different. In particular, dual ace wants
		both to have strong speed uniques &ndash; VBourbon, SMaru, Ines Fujin on Tokyo turf.
	</p>
	<p>
		With an ace and a backup, the ace is the one with the speed unique, and the other is a horse who gambles on winning mid race
		and turns that into a first place finish. Seiun Sky is the strongest such option; as an own unique rather than inherited,
		Angling gives so much perfectly timed accel that speed inherits give her more lengths than other accel skills.
	</p>
	<p>
		Since your two front runners are both meant to be winners, making your third horse a support type is likely to give the best
		overall win rate. This usually means a speed debuffer of whatever type is appropriate for the track. Adding another gambler is
		also effective.
	</p>

	<Sec h="3" id="long-double-front">Long Double Front</Sec>
	<p>
		At long distances, double front has different implications.
		<Skill skill={900681} hint="vc" /> is the front runner win condition, and the front two horses both get it. With late race being
		before the final corner and hence extra move lane not having started, you can take advantage of <Skill
			skill={200492}
			hint="nn"
		/> to turn the <i>second place</i> front runner into the winner.
	</p>
	<p>
		Building for second place to bunny with NN does not mean manipulating stats and skills to force one of the front runners into
		second. Both fronts need to be strong enough to be adjacent at late race start, and you have to beat other people's front
		runners, too. (Especially since VC and <Skill skill={200641} hint="encroaching" mention /> are currently the only consistent accels
		for long distance.) So, double front for long is ultimately about the same as double front for other distances, just with different
		goals when choosing the legacy.
	</p>
	<p>
		Given that NN is good, it's also worth considering the gold version, <Skill skill={200491} hint="nsm" /><!-- ends with ! -->
		NSM is a better skill for the long double front build, but for now, the only way to get it while running MANT is from Yukino Bijin
		Wit. That card's numbers are not great. It's still possible to get a good stat line using her, but it will take more careers to
		get there than to just get NN from Fine Motion.
	</p>
	<p>
		If you're feeling adventurous, runaway is another consideration for double (and triple) front on long distances. Your ace
		(hopefully) still gets VC, but the runaway paces up the race. As mentioned in the <a href="#solo-front">solo front</a>
		section, this especially punishes end closers, who tend to be popular on long tracks because of <Skill
			skill={200642}
			hint="straight spurt"
			mention
		/>. It also keeps your ace in <a href="#front-modes">overtake mode</a>, which is better than speed-up mode, for position keep.
	</p>
	<p>
		I haven't tried a long runaway, but I probably will next time it comes up, especially since I pulled for Palmer. My worry is
		that it will trade off fronts' consistency for meta hate, when I'd rather just be stronger.
	</p>

	<Sec h="3" id="triple-front">Triple Front</Sec>
	<p>
		Triple front is pretty similar to running double front; the difference is that your support is also using the correct running
		style. That said, you don't really want a front debuffer; different types of support are better.
	</p>
	<p>
		One type of support that all front runners do automatically is helping to kill position-based pace chaser skills. Such skills
		have conditions that translate into needing to be in 3rd or 4th, or sometimes 2nd through 4th, to activate. When you're
		bringing three front runners, if anyone else brings a single other one, they're going to occupy 2-4 naturally. If there happen
		to be three others, then even late/end win cons like <Skill skill={900591} hint="beyond" mention /> and <Skill
			skill={900271}
			hint="pump"
			mention
		/> are dead.
	</p>
	<p>
		The fact that triple front tries to occupy positions 3-4 lets you do some very interesting team comps where you run pace
		chasers as front runners. E.g., I ran Taiki Shuttle as front in dirt CM and Curren Chan as front in sprint CM. This is not
		terribly consistent because they're readily equipped to get into first just as easily as third, but then they just get Angling
		instead and follow the normal front runner game plan. If you see people talking about a pace chaser being especially strong
		for a given CM, consider running them as a front runner in a triple front build instead.
	</p>
	<p>
		A more mechanical type of support is to build for <a href="#spot-struggle">spot struggle</a> and have her pull your less gutsy fronts
		forward into mid race. GW + TTL is especially important for this type of horse, and otherwise equivalent early race to your other
		fronts &ndash; everyone has lane combo if it's applicable, for example. Front S is also a major benefit, because it makes spot struggle
		last 10% longer.
	</p>
	<p>
		An SS support doesn't strictly need as much in the way of mid race skills, since her main job is to give the others overtake
		mode and then be passed. It's nonetheless a good idea to take those skills for less risk if your other fronts have a poor
		showing. In addition to the normal front win cons, it's potentially strong to take unconditional gambles like <Skill
			skill={200341}
			hint="corner conn"
			mention
		/> and <Skill skill={210061} hint="radiant" mention />.
	</p>
	<p>
		SS supports do best on medium and long tracks, because you want to be building <i>everyone</i> for spot struggle on miles and
		sprints. However, spot struggle is the only mechanic in the game that scales superlinearly with stats, so even the difference
		between 1200 and 1000 guts can matter. See the <a href={resolve('/mspeed')}>mechanical speed calculator</a> for details.
	</p>

	<Sec h="3" id="chariot">Chariot</Sec>
	<p>
		A front runner build that I have seen but not attempted is the chariot: a runaway with a strong mid race but insufficient HP
		to spurt stays in front of one or two other front runners who have <Skill
			skill={200491}
			hint="nsm"
			mention
		/><!-- ends with ! -->
	</p>
	<p>
		I saw a team using a chariot in CM13 round 2 day 2; that team had an overall eleven wins at the time. Maybe their horses just
		weren't strong enough. I'm not sure. My opinion is that this build gives up the consistency of front runners to pursue a game
		plan that is hardly stronger when it does work.
	</p>
	<p>
		If this build ever had an era, it was during Unity Cup, when NSM was essentially free and there was no VC. I don't think it's
		viable now.
	</p>

	<Sec h="2" id="career">Career</Sec>
	<p>Most front runners enjoy easy careers thanks to strong kits and little chance to be blocked.</p>
	<p>
		Currently, this chapter is about MANT (a.k.a. Trackblazer). Unity Cup is still useful &ndash; obviously for runaways, but also
		for spinning up an <Skill skill={210052} hint="ignited wit" mention /> legacy.
	</p>

	<Sec h="3" id="support-cards">Support Cards</Sec>
	<p>
		In MANT, it's relatively easy to get front-specific skills from rivals, so the support cards that are best for front runners
		have changed a bit.
	</p>
	<ul class="mb-4 list-disc pl-4">
		<li>
			Ines Fujin gives <Skill skill={201082} hint="speed eater" mention />, <Skill skill={201661} hint="pto" mention />, and <Skill
				skill={201651}
				hint="slipstream"
				mention
			/>. Her guts SSR is the Kitasan Black of guts cards, with 15% training effectiveness and 80 specialty priority. She also has
			a relatively new wit SR that is decently strong even at LB0, though still objectively beaten by Marv SR until MLB.
		</li>
		<li>
			Marvelous Sunday, both power SSR and wit SR versions, give <Skill skill={200462} hint="ramp" mention /> and <Skill
				skill={201611}
				hint="thh"
				mention
			/> as hints. The SSR has 15% race bonus, while the SR has 10% race bonus and gives +3 hints. The numbers on both are otherwise
			disappointing, but those elements alone are enough to justify using them.
		</li>
		<li>
			Cards that give generic or distance-specific gold speed skills, especially mid race ones, are very valuable to front
			runners. Since <Skill skill={200331} hint="professor" mention /> is strong, Kitasan Black is still around despite only 5% race
			bonus. El Condor Pasa gives <Skill skill={200721} hint="tunes" mention />.
		</li>
		<li>
			For parent runs, Smart Falcon SSR is mandatory. She gives guaranteed <Skill skill={201601} hint="gw" mention /> in her chain,
			and her gold skill is <Skill skill={200451} hint="gold pp" mention />, which you want for building a
			<a href="#lane-combo">lane combo</a> legacy. On ace runs, she is acceptable if you own her at MLB, but you'd rather get her skills
			from inheritance and use the card slot for a strong speed skill.
		</li>
		<li>
			Seiun Sky SSR is another good parent card for parents. Her chain starts with <Skill skill={201262} hint="dd" mention /> and ends
			with
			<Skill skill={200541} hint="escape artist" mention /> (albeit agemasen). She also carries a <Skill
				skill={201611}
				hint="thh"
				mention
			/> hint. Unfortunately, between being a stamina card and not being Super Creek, she isn't viable for ace runs.
		</li>
		<li>Other parenting cards include Kawakami Princess speed and Hishi Akebono guts, for gold versions of lane combo skills.</li>
	</ul>
	<p>
		A future sight advisory: Maruzensky's speed SSR is coming in early July. At this point, you should probably be saving all your
		carats for her. She is an extremely strong stat stick and gives <Skill skill={201271} hint="top runner" mention />, the gold
		version of <Skill skill={201272} hint="leader's pride" mention />.
	</p>

	<Sec h="3" id="career-skills">Taking Skills</Sec>
	<p>
		Contrary to advice I sometimes see, you can, in fact, take skills during career without Fast Learner. When you take skills
		mid-run without Fast Learner, and you happen to get it later, you effectively lose 10% of the SP you spent to that point.
		However, you also <i>prune</i> hints: taking the first level of a skill removes it from the pools for support card hint bubbles,
		MANT rivals, UC bursts, and everything else except events that grant specific hints. Each front-specific skill you own improves
		your chance of getting skills you don't have hints for.
	</p>
	<p>
		<Skill skill={200532} hint="early lead" /> is a snap take skill. The <i>only</i> time to sit on EL is when you happen to get
		the first +1 hint the turn before inspiration. (Even then, I'd probably still take it, since there's still a race to run.)
		Early Lead is one of the strongest skills in terms of lengths gained, it applies to all tracks and conditions, and
		<i>it saves late starts</i>, which are your only source of losses on most races after junior year. Moreover, it has a base
		cost of only 120 SP; even if you do get Fast Learner after taking it, your opportunity cost was 12 SP. If you prune EL and a
		hint lands on <Skill skill={200542} hint="fast-paced" mention /> or <Skill skill={201272} hint="leader's pride" mention /> instead,
		you gave up that potential 12 SP to save 18. It's incredibly good to take early.
	</p>
	<p>
		On parent runs, or exactly one of your three CM horses, <Skill skill={201641} hint="lone wolf" /> is another snap take. Base cost
		of 60 SP for +40 speed, which can secure a lot of races, especially early in career. Be extremely careful not to take it on multiple
		horses on a team. Save and quit from the career if you need to check. It's technically better to have it on two horses than zero,
		but it's tremendously better than that to have it on one.
	</p>
	<p>
		<Skill skill={900201} hint="angling" /> is a strong consideration as a mid-career take. Inheritance events are more likely to activate
		green sparks than white sparks, so the risk of missing out on SP by taking it early is higher. However, Angling is an almost automatic
		win condition for career (outside of <a href="#3k">3Ks</a> and <a href="#niigata-1600">Niigata 1600</a>). Taking Angling early
		can save a lot of clocks, and it can rescue runs that don't get what is normally the minimum speed to win races before summer.
	</p>
	<p>
		I've had debate about this one, but I feel that <Skill skill={201522} hint="savvy" /> is a skill you will pretty much always want
		at least the first level of. Wit is a strong stat for front runners, and Savvy is a guaranteed Groundwork trigger. It's also the
		second cheapest front-specific skill, after Dodging Danger. On parent runs, it could arguably be worth sitting on it until the +2
		or +3 hint, because taking the second level gives a slightly boosted chance to generate the spark, and hints save twice as much
		SP on the double circle.
	</p>
	<p>
		<Skill skill={201242} hint="front straights" /> and <Skill skill={201252} hint="front corners" /> are strong and cheap. If you've
		taken Early Lead and Angling, they probably won't change the outcomes of any races, but it's still reasonable to take the first
		level to prune. As a corollary, outside parent runs, you should have a specific distance in mind, so your distance straights/corners
		should usually be even quicker takes.
	</p>

	<Sec h="3" id="niigata-1600">Niigata Junior Stakes</Sec>
	<p>
		Niigata Junior Stakes is the first non-sprint graded race in career, which means it's very likely to be one you run in MANT.
		It's also an oddly anti-front race. Late race starts a good bit past the final corner, which means front runners don't have
		any skills that can secure a win. (Unless you're inheriting Pasta? But VPP isn't really a good take mid-career.)
	</p>
	<p>
		An interesting consequence of the shape of Niigata 1600 is that duels can start before late race. If you're doing a guts
		build, having that happen will give quite a good chunk of accel and speed for the entire spurt, which is usually enough to get
		the win. Duels are also pretty likely, because career races have more runners&mdash;as long as you're not a solo front.
	</p>
	<p>
		If you do commit to the race and find yourself as the only front runner, consider switching to pace. Moreso than other races,
		you are unlikely to win this race as a solo front. Even one or two other fronts will be rough.
	</p>
	<p>
		As a corollary, you also cannot win this race with B mile. A miraculous start can get to 350 speed for this race; a B mile
		runner with 350 speed is equivalent to an A mile runner with only 207 speed in career. See the <a href={resolve('/spurt')}
			>spurt calculator</a
		>. (This race is why I made it.)
	</p>

	<Sec h="3" id="jbc-sprint">JBC Sprint</Sec>
	<p>
		An even more anti-front track is Ooi 1200 Dirt. This one is actively malicious. Visually, it looks like late race starts on a
		corner, but the portion before the stretch is a special <i>neither corner nor straight</i> property. That means Angling won't activate,
		and VPP is delayed (though still within the accel period).
	</p>
	<p>
		Fortunately, JBC Sprint is after summer, which means you should be able to stat diff your opponents. If you are planning to
		win this race, e.g. for the +30 stat epithet for doing it twice, you may want to prioritize a bit of extra speed training, or
		take Front Straights/Corners. Don't be too surprised if you lose a clock or five to a Taiki Shuttle rival.
	</p>

	<Sec h="3" id="3k">Kikuka Sho &amp; Tenno Sho (Spring)</Sec>
	<p>
		The main concern with 3K races is always stamina. Front runners are punished on long distances because they convert stamina to
		HP less efficiently than other styles, and because Spot Struggle drains an extra chunk.
	</p>
	<p>
		A stat line like x/400/x/500/600 should be enough for a guts/wit build to win Kikuka Sho against most rivals, possibly at the
		expense of a clock or two. TSS seems to need something more like x/700/x/700/700 if you don't have any recoveries; I haven't
		tested much without them, because I don't like throwing away my runs.
	</p>
	<p>
		<Skill skill={201282} hint="moxie" /> is the only front-specific recovery skill you can get from MANT rivals. It also is a guaranteed
		option in Bourbon Wit's first chain event. That makes it pretty often available for the 3Ks. However, if you end up overstam at
		the end of the run, buying Moxie can be as much as -162 SP, which is certainly not a trivial amount.
	</p>
	<p>
		An alternative option to buying a recovery is to switch to Late Surger for those races. I've won Kikuka Sho with circa 300
		stamina this way.
	</p>
	<p>
		All that said, the stamina requirement is instantly much higher if the rival is Super Creek, Matikanetannhäuser, Mejiro
		McQueen, or Rice Shower. As rivals, those four will have very strong HP-oriented builds: on TSS, 650 stamina and at least one
		gold recovery, in addition to the recovery unique in Creek's and Mambo's cases. You will burn clocks rolling for them to fail
		wit checks unless you also have a gold.
	</p>
	<p>
		One last consideration for front runners on 3K races: Angling is a dead skill. If you're borderline on stamina, you'll have a
		hard time if you're on Long C.
	</p>

	<Sec h="3" id="kitasan-black">Kitasan Black</Sec>
	<p>
		Kitasan Black doesn't get the easy careers that other front runners do. For one thing, if you're training Kitasan, you
		probably don't have Sei as a parent since their uniques don't mesh (except on Nakayama 2500). Kitasan's own unique is also
		very weak outside of long races and unable to even activate on some miles, notably Niigata 1600. And for early races, notably
		Niigata 1600, you likely won't even have the opportunity to get Front Straights/Corners, especially since you don't need
		Bourbon Wit.
	</p>
	<p>
		Kitasan benefits a lot from running as a Pace Chaser early on, just for the higher effective speed. Rivals are best defeated
		with your intended style, but in career, winning is more important than front running.
	</p>

	<Sec h="2" id="umas">Front Runners</Sec>
	<ul class="mb-4 list-disc pl-4">
		<li>
			Valentine's Mihono Bourbon (VBourbon) is the easiest font runner to train because she has <Skill
				skill={201601}
				hint="gw"
				mention
			/> built in, whereas most others have to get it from either inheritance or cards that aren't terribly strong. She is also the
			strongest front runner, because <Skill skill={110261} hint="cacao" mention /> is full strength, mid race, extremely forgiving
			in activation, and even has a heal. And she has <Skill skill={200431} hint="conc" mention /> and <Skill
				skill={200541}
				hint="escape artist"
				mention
			/> built in, both strong distance-agnostic front runner skills with awkward sources otherwise. And she's a great parent for all
			the same reasons that her unique is strong (except that the heal becomes irrelevant).
		</li>
		<li>
			Summer Maruzensky (SMaru or KFC) is just shy of VBourbon in strength with her unique, <Skill
				skill={110041}
				hint="kfc"
				mention
			/>. It uses a heal to trigger instead of having a heal built in, but that means it sometimes has carryover potential. Using
			VBourbon as a parent for SMaru works as a trigger, too, which is especially good for shorter distances that don't want to
			spend SP on pure recoveries.
		</li>
		<li>
			Seiun Sky is the source of <Skill skill={900201} hint="angling" mention /> and therefore the best horse for front runner parenting
			in the game, forever. As a runner, she is outshone by the former two and others who will come later, but she is an excellent choice
			for a <a href="#double-front">second front runner</a> in a team comp.
		</li>
		<li>
			Kitasan Black is the definitive front runner of long distance, both as a parent and as a competitor.
			<Skill skill={201173} hint="blast" mention /> is the gold version of <Skill skill={201172} hint="long straights" mention />,
			which is extremely strong to have built in (especially noting that hints on Long Straights take 27 SP off the price of
			Blast).
		</li>
		<li>
			Silence Suzuka and Mejiro Palmer are currently the only runaways in the game. Both of them have uniques that are
			inconsistent normally but very consistent as runaways:
			<Skill skill={100021} hint="view" mention /> and <Skill skill={100641} hint="palmer" mention />. Outside of Team Trials,
			runaways aren't very useful in the MANT era. (My Suzuka runaway remains my #1 top scorer in TT, though. Runaway and Conc are
			both busted for points.)
		</li>
	</ul>
	<p>
		Aside from these, there are some less obvious front runners, which is to say horses who function well even after fixing
		aptitudes.
	</p>

	<Sec h="3" id="coc">Christmas Oguri Cap</Sec>
	<p>
		As is perhaps expected, Christmas Oguri Cap (COC) is very strong as a front runner on specific tracks. The front-specific heal
		is <Skill skill={201282} hint="moxie" mention />, which activates at the very start of the first uphill. When that first
		uphill is at the start of late race, as in the case of Tokyo 1600 Dirt, COC is online as a front runner.
	</p>
	<p>
		I've been told COC is very hard to train as a front runner. Something about aptitudes. I don't have any variety of Oguri, but
		how hard could it be?
	</p>
	<p>
		Another rare manifestation of Front COC is as a third place horse in a <a href="#triple-front">triple front</a> build where <Skill
			skill={900321}
			hint="u=ma2"
			mention
		/> is strong. I convinced Werseter, the Umadump guy, to try this for CM12 after he accidentally made an 8★ front Tachyon parent.
		He reported a 7% win rate for her. (But a much higher win rate overall &ndash; after all, he was using triple front.)
	</p>

	<Sec h="3" id="taiki-shuttle">Taiki Shuttle &amp; Curren Chan</Sec>
	<p>
		When building <a href="#triple-front">triple fronts</a>, you will naturally have a horse in third. This presents an
		opportunity to use a horse who is normally a pace chaser as a type of gambler.
	</p>
	<p>
		Taiki Shuttle and original Curren Chan are notable for having C and B front, respectively, which is quite reasonable to fix.
		Most other paces that could otherwise be called good are not so fortunate, or the things that make them good won't function as
		fronts e.g. due to requiring other nearby horses on the final straight.
	</p>

	<Sec h="2" id="cm">My CM Teams</Sec>

	<Sec h="3" id="cm14">CM14 &ndash; Gemini Cup (Yasuda Kinen, NHK Mile Cup, Victoria Mile)</Sec>
	<p>
		The ultimate lane combo map, and also the ultimate <a href="#no-zone">NO zone</a> map, and also the ultimate dueling map. Dueling
		is so good that everyone needs guts builds, not just front runners. Kinda hoping that message doesn't get out, because duels generally
		benefit other styles more than fronts. We get VPP instead, though, which gives similar accel to 1000 guts dueling.
	</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			Suzuka!
			<span class="inline-block">1109/563/935/1140/1200 A/A/A</span>. I might revisit this if I have time, but just this took four
			days of grinding, and Suzuka likes guts builds.
		</li>
		<li>
			Wouldn't you just know it, VBourbon appears as an ace again. Not especially happy with it, but <span class="inline-block"
				>1048/728/1113/1190/866 A/A/A</span
			>. Imagine if 200 of that stam had been anything else...
		</li>
		<li>
			Since I know that I don't have the cards for a guts build on Seiun Sky, I'm going to try it on Smart Falcon instead and see
			how good this NO zone thing really is.
		</li>
	</ol>

	<Sec h="3" id="cm13">CM13 &ndash; Taurus Cup (Tokyo Derby)</Sec>
	<p>
		Maruzensky's unique, <Skill skill={900041} hint="redshift" mention />, is live for approximately everyone. Filling the ranks
		with front runners should be a strong means to delay it for later positions, especially COC.
	</p>
	<p>
		Ended up running the same composition as in CM12, for the same reasons. This time, I knew better than to waste runs on guts
		builds for Sei and VBourbon.
	</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			VBourbon is the primary ace. It's a bit worrying to need to pass wit checks on both Angling and Red Shift, but eh, I'm sure
			it'll be fine.
			<span class="inline-block">1200/727/1103/619/1088 S/A/A</span> with lane combo.
		</li>
		<li>
			Sei is the gambler. I forced a wacky build with my LB2 Top Road and got the highest roll conceivable, with double rainbows
			or better on every turn of senior summer, fast learner, and approximately every desirable skill hint.
			<span class="inline-block">1200/955/1200/540/1020 A/A/S</span> with lane combo. First UG that wasn't just letting Taiki Shuttle
			guts build happen.
		</li>
		<li>
			Suzuka is a spot struggle support. Got <span class="inline-block">1200/814/731/1034/1200 A/A/A</span> quickly; I could have kept
			trying for higher, but I didn't. The low power is fine anyway, since the uphills are after position keep ends.
		</li>
	</ol>
	<p>
		Win rates after 40: I didn't actually record it anywhere, but I had a 3/3/3/5 day 1 and got five-win streaks on both VBourbon
		and Sei, so pretty good. I want to say it was something like VBourbon 35%, Sei 25%, Suzuka 15%.
	</p>
	<p>
		Win rates after 80: Sei 30%, VBourbon 25%, Suzuka 7.5%. Very confusing <span class="inline-block">3/5/1/1</span>
		<span class="inline-block">1/1/4/4</span> records in round 2.
	</p>
	<p>Finals saw two COCs both get perfect ults and Radiant during accel. You can always simply lose to better luck.</p>

	<Sec h="3" id="cm12">CM12 &ndash; Aries Cup (Satsuki Sho)</Sec>
	<p>
		One of COC's best tracks, because U=ma2 is at worst only slightly less good than 777 as a trigger. If there is any other front
		runner, triple front pushes pace COC out of range for U=ma2, making her at best as reliable as the usual.
	</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			Seiun Sky's Angling is a 0.4 accel that lasts for the entire accel period, better than COC's 0.3 that's only up for 2/3 of
			it. I want her to be my ace in front, so capped wit, high power, strong spot struggles, huge mid-race skills. Didn't get a
			guts build to come together after three weeks of attempts, so switched to a standard speed/power/wit build and got a high
			roll on the first try. <span class="inline-block">1181/786/1185/474/1185 A/A/S</span>.
		</li>
		<li>
			VBourbon is a horse that exists. She can beat other people's front runners, so great as a backup. Ideally she lets Sei in
			front, but it's better to let this happen naturally off the lack of TTL than to force low stats. Second attempt got charming
			and fast learner for free, medium S, and manageable stats. Skill hints were a bit sparse, but not worth rolling more.
			<span class="inline-block">1164/662/1010/599/1167 A/S/A</span>.
		</li>
		<li>
			Silence Suzuka is my favorite front runner, so I will run her. Her primary task is to be in third or fourth so COC can't be,
			so I don't need amazing stats. To maximize her effectiveness, there are two possible plans: I could make her a debuffer,
			which needs 1200 power and wit but no other stats matter, or I could experiment with something wacky like NSM into duels.
			The latter sounds more fun, even if it is obviously bad. First attempt didn't get aptitudes but did get Lone Wolf to disable
			it for everyone else and surprisingly decent stats, which is good enough for me; her job isn't to win anyway.
			<span class="inline-block">1200/623/1042/910/1165 A/A/A</span>.
		</li>
	</ol>
	<p>Win rates after 40: VBourbon 35%, Sei 17.5%, Suzuka 15%. Not quite executing the plan, but I'll take the wins.</p>
	<p>
		Win rates after 80: VBourbon 30%, Sei 22.5%, Suzuka 12.5%. I believe this is my best round 2 performance ever. I lose more to
		other fronts than to COC. "Most dominant racing horse for a year" continues to get trounced by the wacky triple front build.
	</p>

	<Sec h="3" id="cm11">CM11 &ndash; Pisces Cup (Hanshin 3200 Heavy Rain)</Sec>
	<p>N.B. This CM was before I started writing this document, so henceforth, there is much less info.</p>
	<p>Late race starts on the back stretch, which means the end closers are out to play.</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			Kitasan Black is a snap take. Her unique is the only reliable accel outside of Straightaway Spurt, and it's quite a lot
			better. <span class="inline-block">1200/1200/816/777/742 A/S/A</span>.
		</li>
		<li>
			VBourbon's unique has a built-in recovery, which makes her the perfect choice as the survivor if stamina debuffers show up.
			<span class="inline-block">1200/902/1022/704/816 A/S/A</span>.
		</li>
		<li>Silence Suzuka is coming. <span class="inline-block">1200/1145/653/608/1000 A/A/A.</span></li>
	</ol>
	<p>
		I floundered on parenting and ended up with not enough time to make runners. Suzuka had more wit than Kitasan could handle, so
		I rarely got Kitasan uniques.
	</p>
	<p>Win rates after 80: VBourbon 31.25%, Kitasan 21.25%, Suzuka 2.5%.</p>
	<p>Extremely unlucky finals gave me third place for the first time ever.</p>

	<Sec h="3" id="cm10">CM10 &ndash; Aquarius Cup (February Stakes)</Sec>
	<p>
		Everyone is terrified of Taiki Shuttle, who has a 3-4 ult. Triple fronts would like to have a word. It's a dirt track, but
		every horse can run dirt if you're brave enough.
	</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			Smart Falcon is the obvious choice, being the only actual dirt front runner to exist. Her unique isn't terribly strong for
			this track, but her gold skills are &ndash; Trending makes it extremely difficult for others to overtake her.
			<span class="inline-block">1200/467/920/410/930 A/S/A</span>.
		</li>
		<li>
			Silence Suzuka in runaway mode will make positioning much easier. I don't have to think about Unrestrained on my other
			horses because they won't be able to get in position for it anyway. Other Suzukas will be rare because she has G dirt and
			people don't realize distance aptitude hardly matters for runaways. <span class="inline-block"
				>1200/674/820/470/774 B/A/A</span
			>.
		</li>
		<li>
			Taiki Shuttle is a front runner now. She has B dirt and C front at base. Very easy to fix. Falco's mid-race is probably
			stronger than Taiki's between her unique and Trending, so Taiki should often be in position for her ult in this build.
			<span class="inline-block">1200/447/825/423/1195 A/A/A</span>.
		</li>
	</ol>
	<p>
		This is probably the strongest gameplan I've been able to use, but I failed to execute it properly. In particular, this was
		the CM that taught me through experience how important mid race speed skills are for front runners. Final win rate was a bit
		over 50%. Insane luck with Unrestrained at the same time as Angling made Suzuka the champion of the Aquarius Cup.
	</p>

	<Sec h="3" id="cm9">CM9 &ndash; Capricorn Cup (Takamatsunomiya Kinen)</Sec>
	<p>
		A race with no Angling, and also with the largest proportion of downhill in any race. If you build wit, you literally cannot
		finish a career without enough stamina for a full spurt.
	</p>
	<p>As a sprint, this is also where spot struggle shines. Time for Unity Cup guts builds.</p>
	<p>
		I forgot that <Skill skill={200551} hint="unrestrained" mention /> requires being in first place, so I thought it would be reasonable
		to base my team around gambling on it. That turned out not to be a great decision.
	</p>
	<ol class="mb-4 list-decimal pl-4">
		<li>
			Silence Suzuka has Unrestrained built in, and she's my favorite front runner. Welcome to the team.
			<span class="inline-block">1013/289/790/1177/1008 A/A/S</span>. Absolutely nailed the target stat line. We didn't even know
			yet that spot struggle scales with front aptitude, but I got that, too.
		</li>
		<li>
			Smart Falcon has an accel ult that can fire on the 1m portion of mid race stretch before the start of late race. This
			requires her not getting into second place before the corner, and then overtaking during it. Fixing the aptitudes is a bit
			tough with the parents I have, but it's doable.
			<span class="inline-block">1155/373/930/388/1072 A/S/S</span>. I could do better on the stat line and the skills, but I'm
			never going to see those aptitudes again.
		</li>
		<li>
			Everyone is afraid of Curren Chan's pace chaser nonsense, so I'll use her as a front runner instead.
			<span class="inline-block">1055/390/858/1098/780 S/A/A</span>.
		</li>
	</ol>
	<p>
		The plan worked exactly as I hoped, but what the plan lacked was <Skill skill={900141} hint="vpp" mention />. While I was
		suppressing it on other teams' front runners with my outstanding mid race, they were also gambling on <Skill
			skill={200651}
			hint="gale"
			mention
		/> and <Skill skill={200371} hint="turbo sprint" mention />, and I didn't have enough accel to beat them. I found a mention in
		my chat history that, as of round 2 day 1, I had a 78% top two rate with a 32% win rate. Lessons learned. Still managed to get
		2nd in the finals, and also my first ever group A round 2 sweep.
	</p>
</article>
