public static IEnumerable <Note> BlueRedStacked( float time, HorizontalPosition horizontalPosition, VerticalPosition lowVerticalPosition) { if (lowVerticalPosition == VerticalPosition.Top) { throw new ArgumentOutOfRangeException(nameof(lowVerticalPosition)); } var cutDirection = horizontalPosition.InSet(HorizontalPosition.Left, HorizontalPosition.CenterLeft) ? CutDirection.Left : CutDirection.Right; return(new[] { new Note(time, Hand.Left, cutDirection, horizontalPosition, lowVerticalPosition), new Note(time, Hand.Right, cutDirection, horizontalPosition, lowVerticalPosition + 1) }); }