AC 2
- call self recursively