it should be a recursive function.
it should be a recursive function.