class DefaultAnimationPlan implements AnimationPlan {

    @Override
    public TimeSpan getTimeSpanForState(AnimationState state)
    {
        if (isEmptyPlan())
        {
            return TimeSpan.ZERO;
        }
        int stepNumber = getDefaultAnimationState(state).getStepNumber();
        validateStepNumber(stepNumber);
        return getAnimationSequence().get(stepNumber);
    }

    public  DefaultAnimationPlan(List<? extends TimeSpan> sequence, EndBehavior endBehavior);

}