a recursive elephant