Do some recursion.