If `i = 5`

and your name had `5`

letters both equations would be true for `j < 10`

.

It's `j <= 5 + 5`

versus `j - 5 <= 5`

.

Here's my proof that *logically* (not syntactically) it shouldn't matter which side of the inequality you put `i`

on.

Suppose your name length is 2

Case 1: `(var j = i; j < myName.length + i; j++)`

`j`

begins at `i`

. Therefore `j < myName.length + i`

is True. The loop runs for the first time; `j++`

.

Now `j = i + 1`

. Therefore `j < myName.length + i`

is True. The loop runs for the second time; `j++`

.

Now `j = i + 2`

. Therefore `j < myName.length + i`

is False. The loop ends after running twice.

Case 2: (`var j = i; (j - i) < myName.length; j++`

)

`j`

begins at `i`

. Therefore `(j - i) < myName.length`

is True. The loop runs for the first time; `j++`

.

Now `j = i + 1`

. Therefore `(j - i) < myName.length`

is True. The loop runs for the second time; `j++`

.

Now `j = i + 2`

. Therefore `(j - i) < myName.length`

is False. The loop ends after running twice.

The loop would run the same number of times for both cases regardless of `i`

or name length.

.

.

.

Edit: What You'll Be Building accepts all of these, and all of the outputs are the same. It seems like the code checker on parts 5-7 is just picky.

`for(var j = i; j < (myName.length) + i; j++)`

- default

`for(var j = i; (j-i) < (myName.length); j++)`

`for(var j = i; 0 < (myName.length) + i - j; j++)`