<?xml version="1.0" encoding="UTF-8"?>
<workout_file>
  <author>Kris Stallenberg</author>
  <name>90-min Z4 (Threshold) Medium #02</name>
  <description>This workout challenges your ability to handle changes in pace during hard efforts. By alternating just over and just under your threshold, you'll train your body to recover from surges and clear lactate more effectively. It's perfect for simulating the demands of racing.</description>
  <sportType>bike</sportType>
  <tags>
    <tag name="THRESHOLD" />
  </tags>
  <workout>
    <Warmup Duration="900" PowerLow="0.5" PowerHigh="0.8">
      <textevent timeoffset="300" message="Easy spinning to start. Focus on good posture." />
      <textevent timeoffset="600" message="Bringing the effort up slightly. Prepare for the work ahead." />
      <textevent timeoffset="8" message="Ride right on the edge and stay controlled." />
    </Warmup>
    <SteadyState Duration="540" Power="0.7">
      <textevent timeoffset="10" message="A few minutes in Zone 2 before the main set begins." />
    </SteadyState>
    <IntervalsT Repeat="6" OnDuration="60" OffDuration="60" OnPower="1.05" OffPower="0.95">
      <textevent timeoffset="0" message="First block of Over/Unders. One minute up, one minute down." />
      <textevent timeoffset="360" message="Halfway. Stay controlled during the 'overs' and recover on the 'unders'." />
    </IntervalsT>
    <SteadyState Duration="600" Power="0.6">
      <textevent timeoffset="30" message="Good work. Full recovery now. Grab a drink." />
    </SteadyState>
    <IntervalsT Repeat="6" OnDuration="60" OffDuration="60" OnPower="1.05" OffPower="0.95">
      <textevent timeoffset="0" message="Block 2. You know the drill. Let's get it done." />
      <textevent timeoffset="360" message="Keep that form solid. Don't let your hips rock." />
    </IntervalsT>
    <SteadyState Duration="600" Power="0.6">
      <textevent timeoffset="30" message="Excellent focus. One more block to go." />
    </SteadyState>
    <IntervalsT Repeat="6" OnDuration="60" OffDuration="60" OnPower="1.05" OffPower="0.95">
      <textevent timeoffset="0" message="Final block. Empty the tank. Every rep counts!" />
      <textevent timeoffset="360" message="Last few minutes of hard work. Push through!" />
    </IntervalsT>
    <Cooldown Duration="600" PowerLow="0.6" PowerHigh="0.4">
      <textevent timeoffset="60" message="Fantastic effort today. Let's spin it out." />
    </Cooldown>
  </workout>
</workout_file>