Well, it seems simple. But from your tone I'm guessing it's not?
a: (a)
aaa: (a(a)a)
aaaaa: (a(a(a)a)a)
etc a: (a)
aaa: (a(a)a)
aaaaa: (a(a(a)a)a)
etc (a(a(a(a)a)
and can't complete the (aXa) parse for the second a, so it backtracks to try the (a) parse (a(a)
The issue is since the parse of the third a as (a(a)a) succeeded, it will never try the (a) parse for the third a.It parses this: a a aaa a a But not this: a aaa a