Calculate the current time based on the current frame

In UAnimSequenceBase::GetTimeAtFrame(const int32 Frame) function,FrameTime = GetNumberOfFrames() - 1

float UAnimSequenceBase::GetTimeAtFrame(const int32 Frame) const
{
	const float FrameTime = GetNumberOfFrames() > 1 ? SequenceLength / (float)(GetNumberOfFrames() - 1) : 0.0f;
	return FMath::Clamp(FrameTime * Frame, 0.0f, SequenceLength);
}

But In SAnimTimeline::OnMouseButtonUp, did not subtract 1

uint32 NumFrames = AnimSequence->GetNumberOfFrames();
int32 CurrentFrameNumber = CurrentFrameFraction * NumFrames;

float CurrentFrameFraction = CurrentFrameTime / SequenceLength;
CurrentFrameFraction = (float)CurrentFrameNumber / (float)NumFrames;

In order to use the function UAnimSequence::CropRawAnimData, the method in SAnimTimeline::OnMouseButtonUp is correct,and the time given by the function GetTimeAtFrame will cause CropRawAnimData to cut one more frame. I want to know why?